For the last few years, there has been periodic speculation whether Apple intends to merge OS X and iOS. Before I examine current arguments, here is what I wrote four years ago:
Exponents of human-powered vehicle design seldom come up with anything resembling the ‘state of the art’ bikes that hurtle round during the Tour de France. Arbitrary and controversial regulations imposed by cycle sport’s governing body ensure that what the champions ride, and we are offered in bike shops, is rigidly conventional, archaic in engineering conception.
Just as sporting rules have frozen the development of consumer bikes, so the development of computer systems is now being shaped by their threats. Apple is being driven down two distinct routes, iOS and OS X, and is finding it hard to unify them.
iOS has many great strengths, but it is not an operating system for those tasks that are best-suited to computers. One of the cornerstones in its security model is that users cannot create or install applications that have not passed through the security checks of the App Store. Jailbreak your iOS device and of course you are free to run anything that you (or your favourite malware author) write. Although not perhaps the best of developer platforms, there is no intrinsic reason that you cannot develop your own software on a jailbroken iPhone or iPad.
However if you want to live and work under Apple’s protective umbrella, you cannot install software allowing you to create and run scripts or anything remotely like an application. So long as Apple keeps good control of the App Store, nothing there will support scripting or other features that could compromise your device.
OS X systems are of necessity very different, and have to provide powerful scripting environments, software development tools, database design and reporting products, and much more. One potential answer might be to constrain most users to scripting languages that are completely ‘safe’.
Central to the original philosophy behind the design of Java and JavaScript was that they would be robust in the face of hackers. Instead of having the low-level features of older languages like C, that made it so attractive to malware authors, Java would be different and keep programmers’ hands and lusts away from anything low-down. Sixteen years ago, when Sun’s James Gosling released the first implementation of Java, it was applauded as a ‘safe’ language that would be ideal for use over the Internet.
A few Java Trojans (including Boonana that affected OS X) later we are all a bit wiser and realise that any form of programming language, script, or other means of controlling a computer invites the appearance of malware. If you want consumer-safe smartphones, tablets, and similar appliances, then you must completely control the platform and lock out the threat of rogue applications.
As we have seen in Apple’s response to MacDefender, OS X can perform some basic security screening, but it cannot be locked down in the way that iOS has to be. Power users need to write AppleScripts to go where apps do not, developers must craft FileMaker Pro databases, and system administrators have to take complete control in Terminal. Locking OS X down, in the way that iOS is, would emasculate it and render it unfit for most of our purposes.
So long as Apple remains in the computer market, it will need to develop OS X (and its successors) for server and client computer systems, not some hybrid iOS X. It may have dropped the word ‘computer’ from its corporate identity four years ago, and most recently the ‘Mac’ from OS X, but it has shown no signs of dropping Macs from its product – or bottom – line.
In 2015
None of us can know Apple’s plans or its longer-term aspirations. However there is, for the foreseeable future, a very major obstacle in the way of making OS X ‘like’ iOS, let alone merging the two operating systems: Apple. And FileMaker, Adobe, Microsoft, and every other hardware and software vendor for OS X (and iOS, too).
Every platform needs a development environment, in which software engineers can create and maintain the apps, content, hardware drivers and other support, and everything else which makes that platform a success. Ever since the introduction of iOS, and now with watchOS and tvOS, developers for those devices have had to rely on cross-platform development on the Mac.
Whatever anyone might try to tell you, making Macs which run only a merged OS X – iOS hybrid and can only run apps supplied by the Mac App Store would stop anyone, including Apple, from developing any products for OS X, iOS, watchOS, and tvOS.
So yes, Apple will inevitably increase the security strictures in OS X to address the changing threat landscape. But it cannot stop users from creating and running their own, unsigned apps, and from having much more extensive access to hardware and software than can ever be provided in iOS.
An excellent illustration of how this works is with SIP, the specially-protected system folders in El Capitan. Because Apple and other engineers have to be able to interfere with files in those folders, you can turn SIP off. If you couldn’t, Apple couldn’t develop and maintain OS X.
So the next time that you hear or see of speculation about OS X merging into iOS, ask whether Apple’s engineers will be migrating to Windows.
Updated from the original, which was first published in MacUser volume 27 issue 16, 2011.