Apple intern's thesis leaks secret project to port Mac OS X to ARM processors

Posted:
in macOS edited January 2014


An academic paper written by a former Apple intern who now serves as a Core OS engineer at the company has revealed that it was working on a secret experiment to port Mac OS X Snow Leopard to the ARM architecture.



In 2010, Tristan Schaap published a Bachelor thesis on his 12 week stint as an intern with Apple's Platform Technologies Group, a subdivision of the Core OS department. The thesis was originally embargoed because it contained sensitive information, but it was eventually published by the Netherland's Delft University of Technology several months ago, as reported by iMore.



According to the paper, Schaap worked with the group to get Darwin, the "lower half" of Apple's Mac OS X operating system, to boot onto an ARM processor from Marvell. During the course of the project, he achieved his goal of "booting into a multi-user prompt," though some issues still remained due to a "poor implementation on the debug hardware."



It is, however, highly possible that Apple's explorations into porting Mac OS X to the ARM architecture were not meant to ever ship in an actual product. The company has been known to place new engineers on decoy projects in order to determine their trustworthiness.



But, it is interesting to note that, according to Schaap's LinkedIn profile, he joined Apple as a "CoreOS Engineer" after graduation and has worked there for almost a year and a half. His profile lists his 2009 intern position as an "Embedded Bringup Engineer."



Schaap wrote in his thesis that he faced three technical issues during the 12-week project. Having to create a build system, including a filesystem and kernelcache, from the ground up was one of the obstacles. A stale kernel source was also a problem, since bugs snuck in due to the ARMv5 branch of XNU not having been exercised "in a long time." Finally, Schaap said issues with the JTAG debugger resulted in an "entire instruction set" being unusable.



In order to get the product ready to ship, Schaap noted that the L2 cache would need to be reworked. Several more drivers would also need to be written for the hardware in order to "fully utilize the potential." Also, Schaap recommended that several applications be written or ported from other platforms since the userland the team had ported was "not enough to perform the tasks the unit needs to perform."



Though rumors that Apple has been interested in switching from Intel-based Macs to ARM-based ones have been around for some time, one analyst poured cold water on that likelihood last week after a meeting with Apple CEO Tim Cook. Citi's Richard Gardner said he walked away from the meeting "with the impression that Apple feels iPad satisfies--or will soon satisfy--the needs of those who might have been interested in such a product" as an ARM-based MacBook Air.



Misek had previously predicted that Apple would being merging Mac OS X and iOS this year with the release of an A6-powered MacBook Air. Last May, a rumor surfaced that Apple had built a test MacBook Air with the same ARM-based A5 processor that was used in the iPad 2. Company executives reportedly felt the prototype performed "better than expected."



Speculation that Apple would port OS X to ARM has also been fueled by the fact that Microsoft announced early last year that Windows 8 will run on the ARM architecture. However, Microsoft's strategy differs from Apple in that it is making plans for tablets with a full desktop operating system accompanied by a Metro UI layer on top that is optimized for touch. For its part, Apple has itself preferred to take inspiration from the iPad and bring it back to the Mac, rather than the other way around.



From PowerPC to Intel



Apple spent years preparing for the last major architecture switch on the Mac: the move from PowerPC to Intel. In fact, former executives revealed that the company's failed effort to port Mac OS to Intel was one of the circumstances that brought co-founder Steve Jobs back to the company. The failure apparently made it clear to Apple that it needed to modernize its operating system, so it decided to purchase NeXT, which Jobs had founded after leaving Apple, to do so.



Jobs went on to accomplish the company's goals, first modernizing Mac OS in 2001 with the release of Mac OS X and then announcing the switch to Intel in 2005. Parallel Intel-compatible versions of Mac OS X existed alongside the official PowerPC variants for five years prior to the switch, as Jobs reportedly had wanted to go with Intel back then, though he ultimately decided to adopt the G5 processor.



[ View article on AppleInsider ]

«13

Comments

  • Reply 1 of 48
    Correction:



    "An academic paper written by a former Apple intern who USED TO SERVE as a Core OS engineer at the company..."



  • Reply 2 of 48
    Quote:
    Originally Posted by iansilv View Post


    Correction:



    "An academic paper written by a former Apple intern who USED TO SERVE as a Core OS engineer at the company..."







    Why not? He started as an intern, wrote the paper, got hired and then left a year and half later.... Anything wrong with that?
  • Reply 3 of 48
    It's not a question of if, but when. Problem is that ARM would be in addition to, not replacement of, x86, especially in desktops. And I doubt they'd pull a Rosetta and make an x86-to-ARM instruction translator, that would be wasteful and slow. Not sure Apple wants to go through that again.



    Regardless, let's keep in mind that OS X was running on Intel for 4 years before we ever heard about it, so OS X on ARM is likely to be a very long term project.
  • Reply 4 of 48
    "Mac OS X has been leading a secret double life" -- Steve Jobs, WWDC 2005
  • Reply 5 of 48
    solipsismxsolipsismx Posts: 19,566member
    Darwin already runs on x86 and ARM so it shouldn't come as a surprise to anyone that Apple would be working on this internally for the entire OS.
  • Reply 6 of 48
    tylerk36tylerk36 Posts: 1,037member
    Well there goes the neighbor hood. Sell all your stock and leave town. (sarcasm) Who gives a shit.
  • Reply 7 of 48
    Quote:
    Originally Posted by bdkennedy1 View Post


    "Mac OS X has been leading a secret double life" -- Steve Jobs, WWDC 2005



    Make that a secret triple life
  • Reply 8 of 48
    Quote:
    Originally Posted by SolipsismX View Post


    Darwin already runs on x86 and ARM so it shouldn't come as a surprise to anyone that Apple would be working on this internally for the entire OS.



    It must be obvious that OSX already runs on ARM. It is called iOS.
  • Reply 9 of 48
    wizard69wizard69 Posts: 13,377member
    Quote:
    Originally Posted by jodyfanning View Post


    It must be obvious that OSX already runs on ARM. It is called iOS.



    It should also be obvious that a employee on a work study / internship program isn't going to be involved in critical code for hardware about to ship. So they give him a board built around a marvel chip and let him at it. It is a great way to learn from both sides of the fence. The student gets a bit of experience bringing up real hardware and the staff gets a chance to observe the students cunning.
  • Reply 10 of 48
    nagrommenagromme Posts: 2,834member
    The shocking news would be if Apple hadn’t been running various form of OS X on Arm for over 5 years already; a) for iOS, which was originally referred to as OS X when the iPhone was announced, and which clearly is a variation of OS X regardless of name; and b) because Apple likes to keep all options open to be ready for any future (e.g. Intel) and they have the R&D capability to keep lots of back-burner projects going even if no concrete plans ever come to pass.



    Still interesting to hear more specifics, of course.
  • Reply 11 of 48
    Quote:
    Originally Posted by nagromme View Post


    The shocking news would be if Apple hadn?t been running various form of OS X on Arm for over 5 years already; a) for iOS, which was originally referred to as OS X when the iPhone was announced, and which clearly is a variation of OS X regardless of name; and b) because Apple likes to keep all options open to be ready for any future (e.g. Intel) and they have the R&D capability to keep lots of back-burner projects going even if no concrete plans ever come to pass.



    Still interesting to hear more specifics, of course.



    Decoy... In the best tradition of American "skunkworks". Mac OS X has obviously been compiled for ARM, x86 and PPC for several years now.



    This was probably a decoy/test project to give the intern experience, test his chops and see how he approached the problem.



    Obviously there has been high-end teams working on porting OS X to ARM for at least five years, given as mentioned iOS is OS X in many other forms.



    It's a brilliant head-fake from Apple. Embargo the thesis, then release it, leading pundits, the press and competitors to go into their respective frenzies.



    Obviously (to me) somewhere in Cupertino there is a nice little ARM Mac running OS X Lion. This is not the kind of thing only an intern works on.
  • Reply 12 of 48
    Quote:
    Originally Posted by wizard69 View Post


    It should also be obvious that a employee on a work study / internship program isn't going to be involved in critical code for hardware about to ship. So they give him a board built around a marvel chip and let him at it. It is a great way to learn from both sides of the fence. The student gets a bit of experience bringing up real hardware and the staff gets a chance to observe the students cunning.



    Bingo. Someone gets it.
  • Reply 13 of 48
    mcarlingmcarling Posts: 1,106member
    Porting an OS to a different processor architecture is a great way to find existing bugs in low-level OS code. With the resources available to Apple, they would be nuts if they were not routinely porting OS X to every processor architecture (even including some no longer shipping like PA RISC) with each major OS X release i.e. about every second year.



    The above is an ideal project to give to a new hire because while important, it has little urgency and the consequences of failure are not severe. I could imagine Apple independently giving the project to several new hires to work on separately without knowing about the others, just to find low-level bugs and to test how capable the new hires are. I would judge them based on how much time they needed for to complete the port and the number and quality of the bug reports.



    In my opinion, the idea that this project evidences an intention to ship OS X on ARM is very, very weak.
  • Reply 14 of 48
    Yep, Apple has had Darwin running on ARM for several years now...



    Its commonly known as iOS...
  • Reply 15 of 48
    First, iOS and OSX basically are the same OS. The main difference between the two flavors being the use of different GUI frameworks and of different strategies to deal with memory management.



    The reason behind iOS features trickling through to OSX is that the GUI frameworks, though being similar, are developed separately. They first are optimized for the purpose they are needed for, after which they may be generalized to also offer a unified experience on OSX. The opposite may also be true, but since the OSX frameworks were already in existence, the similarities were mostly present from the start (by design).



    Running full OSX on ARM on a MacBook Air would entail more powerful peripheral hardware, in particular loads of memory and a proper file system. This seems a precondition for the deployment of these additional frameworks to support OSX.



    It is very Apple like to explore the feasibility of a processor switch, and of concurrent evolution of ARM and Intel implementations. If only to put pressure on Intel.
  • Reply 16 of 48
    Quote:
    Originally Posted by wizard69 View Post


    It should also be obvious that a employee on a work study / internship program isn't going to be involved in critical code for hardware about to ship. So they give him a board built around a marvel chip and let him at it. It is a great way to learn from both sides of the fence. The student gets a bit of experience bringing up real hardware and the staff gets a chance to observe the students cunning.



    Correct. In fact, they get the grunt work.
  • Reply 17 of 48
    Hum here is in what I believe personally



    Steve Jobs: WWDC 2005 Video

    Quote:

    Now, I have something to tell you today. Mac OS X has been leading a secret double life for the past five years...

    for the last five years every release of OS X has been compiled to run on Intel processors.



    Does a version of Mac OS X exist for ARM? yes.. "Just in case" just as Steve jobs said, and even better, Is there a version of IOS for intel processor? I'll say yes, if you follow this logic: Just in case



    I think Mac OS X on ARM for customers, Apple will consider Performance per watt as explained by Steve jobs (see the video below), and since Intel processors already have the best performance and now it's getting better and better about power consumption, the chances to see Macbook with ARM are still small, at least for next 3 years



    Steve Jobs: WWDC 2005 video

    Quote:

    Just as important as performance, is power consumption. And the way we look at it is performance per watt. For one watt of power how much performance do you get? And when we look at the future road maps projected out in mid-2006 and beyond, what we see is the PowerPC gives us sort of 15 units of performance per watt, but the Intel road map in the future gives us 70, and so this tells us what we have to do.



  • Reply 18 of 48
    asciiascii Posts: 5,936member
    In the paper he admits it was already building on ARM, he was just porting it to a new kind of chip.
  • Reply 19 of 48
    Quote:
    Originally Posted by VanFruniken View Post




    ...



    Running full OSX on ARM on a MacBook Air would entail more powerful peripheral hardware, in particular loads of memory and a proper file system. This seems a precondition for the deployment of these additional frameworks to support OSX.



    ,,,





    In other words: PFF... Port the Fine Finder

  • Reply 20 of 48
    Quote:
    Originally Posted by AppleInsider View Post


    An academic paper written by a former Apple intern who now serves as a Core OS engineer at the company has revealed that it was working on a secret experiment to port Mac OS X Snow Leopard to the ARM architecture.



    In 2010, Tristan Schaap published a Bachelor thesis on his 12 week stint as an intern with Apple's Platform Technologies Group, a subdivision of the Core OS department. The thesis was originally embargoed because it contained sensitive information, but it was eventually published by the Netherland's Delft University of Technology several months ago, as reported by iMore.



    According to the paper, Schaap worked with the group to get Darwin, the "lower half" of Apple's Mac OS X operating system, to boot onto an ARM processor from Marvell.



    Yes, right, Darwin was ported to ARM in late 2005 and in 2007 first commercial product was released, that was Apple iPhone. You should be ashamed to publish such a crap.
Sign In or Register to comment.