Forgot your password?
typodupeerror
OS X Software Apple Hardware

Apple Intern Spent 12 Weeks Porting Mac OS X To ARM 368

Posted by timothy
from the really-small-tattoo-gun dept.
An anonymous reader writes "Apple hasn't released a Mac OS X device running on ARM yet, but a recently discovered thesis from a former Apple intern going by the name of Tristan Schapp details a 12-week project carried out in 2010 to port the OS to the ARMv5 architecture. The port got as far as booting to a multi-user prompt, but then hit hurdles to do with drivers and cache. The good news is that same intern now works for Apple as part of the CoreOS team. With rumors last year that a MacBook Air running on ARM could appear by 2013, could he be part of a team making that happen? If he is, I bet it will use the new ARMv8 architecture announced late last year."
This discussion has been archived. No new comments can be posted.

Apple Intern Spent 12 Weeks Porting Mac OS X To ARM

Comments Filter:
  • NVIDIA (Score:5, Informative)

    by Glock27 (446276) on Tuesday February 07, 2012 @10:32AM (#38953357)

    NVIDIA is also working on high-end desktop/workstation ARM CPUs, under "Project Denver".

    If something compelling emerges, perhaps ARM could be a player for sheer compute power.

    Fat binaries might be useful again... ;-)

    • Re:NVIDIA (Score:5, Interesting)

      by fuzzyfuzzyfungus (1223518) on Tuesday February 07, 2012 @11:21AM (#38954141) Journal
      If Nvidia is working on it, it seems quite likely that ARM, as in the instruction set, won't; but ARM, in the same sense that "x86" can also describe a computer built around a specific CPU, quite possibly will.

      Given Nvidia's (comparatively mature) GPU compute ambitions, and their displeasure at the fact that Intel has been shoving them out of all but the fat-'n-bulky laptop designs and discrete GPU desktop/workstation designs, it seems very likely indeed that Nvidia wants two things from ARM:

      1. An ARM fast enough to, when combined with an Nvidia GPU, produce a tablet/laptop that people won't laugh at in comparison to a ULV i3/5/7 + Intel GMA.

      2. An ARM fast enough(and with enough PCIe lanes and memory controller ability) to do boot, housekeeping, and care and feeding, for a big stack of 'Tesla' compute silicon.

      Neither really requires(nor would it be obviously sensible) ARM to go up against high-wattage and relatively low thread-count x86 parts(in which struggle Intel is a very, very, dangerous adversary, and AMD a dogged and inexpensive one); but they likely would want something that can provide an adequate user experience compared to the intel power-constrained stuff, and something that can allow them to sell all-Nvidia Tesla compute stacks.
    • Project Denver is one of three implementations of the ARMv8 architecture expected to appear Real Soon Now. The ARMv8 architecture was mentioned in the summary.
    • Apple has spent years and millions on research and development into LLVM which while not currently ideal as a solution for producing VM code friendly with both ARM and x86 or ARM8 and x64, is in theory supposed to be able to handle this. Apple has worked very hard to develop the LLVM project in such a way that it will sooner than later take over the role GCC currently plays on Mac OS X. LLVM and CLang have certainly reached a level of maturity where GCC can soon be the optional compiler as opposed to the ma
  • by Maury Markowitz (452832) on Tuesday February 07, 2012 @10:36AM (#38953397) Homepage

    It's always disconcerting to be on the wrong end of the power/performance curve when it means your computer will have less raw CPU in search of lower power requirements.

    However, a change of platform generally means new compilers and fresh code.

    I'm not convinced there will be any real-world performance difference when this is factored in.

  • Apple history (Score:5, Insightful)

    by OzPeter (195038) on Tuesday February 07, 2012 @10:39AM (#38953447)

    Its not like Apple hasn't changed CPU architectures before. 68K->ppc->intel and if you want to count the Apple II, you can also include 6502->68k

    • Re:Apple history (Score:5, Interesting)

      by brwski (622056) on Tuesday February 07, 2012 @10:57AM (#38953753)

      And not only that, this is in NeXTStep's DNA. That OS was made for portability, and ran on at least (if this link is accurate) four different [wikipedia.org] processor families. Apple also had a concurrent build of OS X on Intel while they sold PowerPC machines. Fat Binaries also would allow Apple, if they felt like it, to make the CPU all but invisible to the user for properly recompiled programs, letting them have multiple processors in their lineup (this does, however, leave anything older or not recompiled out in the cold; that doesn't seem to matter much to Apple, however).

      This is just smart business; something goes wrong with Intel, they're ready. A new, decent competitor pops up? port it, and if it proves to be better, run with it. To not to have these projects going would seem to be a mistake.

      • by jo_ham (604554)

        I think it does matter to them - on every architecture/major OS change they went to great lengths to provide legacy support, with the 68k emulator, the Classic Environment, keeping Carbon around for 10 years, Rosetta etc.

        Big changes like that are always a bit bumpy, but it's not like they simply said "tough luck everyone on PPC".

        They got serious flak from developers for finally pulling Carbon in Lion, which has been deprecated officially since the launch of OS X 10.1 or earlier, and apparently a decade is s

      • Re:Apple history (Score:5, Interesting)

        by SethJohnson (112166) on Tuesday February 07, 2012 @12:31PM (#38955137) Homepage Journal

        This is just smart business; something goes wrong with Intel, they're ready.

        Mr. Otellini. Thank you for meeting with us to discuss the Intel hardware performance-per-watt roadmap. It certainly looks like you have top engineers working very hard on this issue.

        We have to head back to Cupertino in just a few moments, but before we conclude, I want to introduce you to young Tristan Schapp. He's an intern with us this semester and we've really enjoyed having him around the office. Now Tristan, can you show these nice gentlemen what it was you were able to cobble together in your cubicle over the summer?

      • by mbessey (304651) on Tuesday February 07, 2012 @04:27PM (#38958995) Homepage Journal

        If you're willing to include software that was developed, but not released, there are:
            m68k (original NeXT hardware)
            i386 (NEXTSTEP for Intel processors)
            SPARC (NEXTSTEP for SPARC)
            HPPA (NEXTSTEP for PA-RISC)
            Motorola m88k (NeXT RISC Workstation - never released, but a working copy was at Apple when I worked there)
            PowerPC (Mac OS X Server 1.0, later developed into Mac OS X)

        Significant bits of NeXT software were also ported to Intel i860 and DEC Alpha, but not enough of the OS to actually qualify as a "NEXTSTEP port"

    • Re:Apple history (Score:5, Insightful)

      by wvmarle (1070040) on Tuesday February 07, 2012 @11:02AM (#38953809)

      And considering an intern could port a complete OS port in a mere 12 weeks, shows how portable it is. This person presumably had never touched the OS-X source before, yet manages to pull it off. And indeed I recall rumours that OS-X was running on Intel from before the time the rumours came that Apple was planning to switch to Intel. I suppose portability is simply part of the demands by management. I don't think Microsoft will have such an easy time if they were ever to switch to another architecture.

      And those driver issues: no surprise. That's by nature fairly low-level stuff talking directly to hardware so will need more work. Not counting third-party drivers of course.

      • And considering an intern could port a complete OS port in a mere 12 weeks, shows how portable it is. This person presumably had never touched the OS-X source before, yet manages to pull it off ...

        It sounds more like Darwin that Mac OS X in a form the average user would recognize. From the summary: "The port got as far as booting to a multi-user prompt, but then hit hurdles to do with drivers and cache." If so he probably was familiar with it since Darwin is open source, http://www.apple.com/pr/library/2000/04/05Apple-Releases-Darwin-1-0-Open-Source.html [apple.com].

        That said, the intern did great work, I'm happy he got hired by the CoreOS team.

        ... I suppose portability is simply part of the demands by management ...

        I would not be surprised to find that this is just an internal e

    • Apple is probably hedging bets with R&D like any manufacturer would do. I wouldn't be surprised it they had a PPC port still in development. After all, IBM and HP probably have teams working on various hardware platforms that won't ever become a product.
  • Dissertation PDF (Score:5, Informative)

    by Nick Fel (1320709) on Tuesday February 07, 2012 @10:39AM (#38953451)
    You have to click through a lot of links to get there, but the PDF of his dissertation is online at his university's website: http://repository.tudelft.nl/assets/uuid:2f66fe0c-4080-4148-a01c-acd530160797/Report_BSc_complete.pdf [tudelft.nl]
  • by Anonymous Coward on Tuesday February 07, 2012 @10:44AM (#38953523)

    Sounds like standard intern hazing.

    "Hey, Tim, take this source code (*drops huge book of source on desk*) and port it to... uh... ARM."

    **12 weeks later.**

    "Holy crap, he made it work."

    At least it wasn't SPARC.

  • by Joe_Dragon (2206452) on Tuesday February 07, 2012 @10:45AM (#38953527)

    As how meany big apps will want to change architecture on apple yet again?

    This may brake Photoshop plugins as well

    Dropping X86 will take away windows dual boot as well.

    Steam games and other games may also die on the mac

    • by alen (225700)

      i doubt they will stop selling Intel based MBP's. this will probably be for a lower end laptop for the $500 laptop market.

      as it is now a $500 laptop about $200 goes to Intel/MS for the hardware and OS. add in the screen and other hardware. the margins on them are razor thin. it take 8 cheap HP laptops to equal the profit of one MBP.

      If apple can make a $500 laptop that does the basic tasks for most people it's all over for Intel/MS in the lower end laptop market. Internet, email, basic games, basic apps. the

    • by Glock27 (446276) on Tuesday February 07, 2012 @10:50AM (#38953629)

      Apple is certainly big enough at this point to support two architectures. You may or may not be aware that, with Xcode, generating a fat binary supporting multiple CPU architectures involves nothing more than a setting. Of course testing may not be quite that smooth, especially at first.

      At any rate, I'm quite sure Apple won't drop x86 support for the foreseeable future. However, there may be some real advantages to supporting both, including price competition for Intel.

      Don't forget that Microsoft has already promised Windows for ARM (NVIDIA's "Project Denver"), so it may also be in Apple's best interest to be a player there as well - especially if the NVIDIA CPUs have some real advantages.

      • by jackbird (721605)

        Sure, Apple is, but how about Adobe? As I recall they were dragged kicking and screaming into native x86 Mac code after years of procrastinating.

        • by guruevi (827432) <evi @ s m o k i n g c u be.be> on Tuesday February 07, 2012 @11:20AM (#38954115) Homepage

          Adobe deserves to die imho. They were indeed dragged kicking and screaming. Same for MS Office. You either adapt or die, if your code is so shitty you can't port it between slightly different architectures without breaking it, you have a really bad development team.

        • Re: (Score:3, Interesting)

          by jo_ham (604554)

          They didn't learn from history either - Adobe InDesign (then Pagemaker) was an also-ran to Quark Xpress' stallion, but then Quark got complacent after the release of OS X and thought "nah, no need to do any work to release an OS X native version - everyone uses us, no one will is going anywhere" and then InDesign came along and said "thanks for the user base!".

          Sad that Adobe forgot that with the move to x86 on the Mac. Still, I guess they just didn't care about the Mac platform all that much.

    • Windows 8 is supposed to have ARM support, so may still be able to dual boot.

      • Except that unlike x86 Windows, Windows 8 ARM is likely to be locked down, i.e. it's doubtful whether an ordinary consumer can install their own copy on generic ARM hardward. I don't think Microsoft wants to subsidize the cheap Android tablet hardware market.
    • I'm willing to bet that Fusion and Parallels users outnumber Boot Camp users by magnitudes. If that's the case, Boot Camp may go the way of the dodo.

    • by V!NCENT (1105021)

      Windows 8 is ported to ARM as well (also Office). About Steam... If it was actually working on OS X with their shitty and outdated fixed-pipeline-driver architecture that is slower than a snail...

    • by MrMickS (568778)

      This is just Apple keeping its options open. If Intel fails to deliver its promised low power CPUs Apple needs to know what effort would be needed to switch processor families. If it was a real strategy to move to ARM then it would have been more than a 12 week Intern project. What would be suicide for Apple would be to stuck in the PPC debacle again, ensuring OS portability is a good way to avoid that.

      The apps will go where the market is. If there is a big enough market they would eat the porting costs, es

  • apple tv? (Score:5, Interesting)

    by vlm (69642) on Tuesday February 07, 2012 @10:48AM (#38953579)

    Assumption is its for the new mac book.
    Would be funny if it turns out to be the much rumored apple tv.

  • by Kagato (116051) on Tuesday February 07, 2012 @10:51AM (#38953643)

    It's no secret that one of the reasons Intel is subsidizing manufacturers over $100M for the Ultrabook project is to keep ARM at bay. This is compounded by Microsoft offering a ARM version of Windows. Apple putting out a really nice A8 MacBook Air could really shake things up.

    However, the real issue Apple is going to have is MacOS or iOS. There's a lot of compelling reasons to move to iOS for Apple, but ultimately the closed nature of iOS would likely alienate the large programmer base they have built up.

    • by Glock27 (446276)

      However, the real issue Apple is going to have is MacOS or iOS. There's a lot of compelling reasons to move to iOS for Apple, but ultimately the closed nature of iOS would likely alienate the large programmer base they have built up.

      I don't think Apple is doing away with MacOS X. Remember that something like 80-90% of the code is shared between MacOS X and iOS. Apple has plenty of money for developers to maintain the two.

    • by Locutus (9039) on Tuesday February 07, 2012 @12:32PM (#38955149)
      they might not be in such a position had they and Microsoft not put artificial limits on what netbooks could be. Both companies limited the screen size, CPU performance and amount of memory which could be shipped in devices of the netbook genre. So now they are declaring a new class of device and setting limits there.

      Just goes to show you that there is not an open market in the PC sector and who has been controlling it for so very long. IMO

      LoB
  • by Anonymous Coward

    Since the various ARM SoC devices are radically different in how they boot and ennumerate devices a 12 week port time is pretty impressive but Darwin aready runs on arm v5 (and v7). iOS uses the darwin kernel. Since this was a marvell and not a samsung/apple A device a lot of work would have to be done to get the kernel to boot but the basic build system already fully supports ARM.

    It's not a secret Apple keeps their options open arch-wise. After the switch the Intel it came out apple had an x86 build of

  • by Anonymous Coward on Tuesday February 07, 2012 @11:15AM (#38954029)

    http://www.osnews.com/story/25588/No_Mac_OS_X_wasn_t_ported_to_ARM_by_an_intern

  • Some people get all the cool gigs.

  • by treerex (743007) on Tuesday February 07, 2012 @11:54AM (#38954659) Homepage
    One undergraduate spending 12 weeks porting Darwin (!) to a new CPU architecture as part of their senior internship should not be used to infer anything about what Apple will be doing moving forward. Have people lost their minds? This is the biggest non-story I've ever read. He could just as easily been doing this with *BSD or Linux or OpenVMS or whatever. Honestly.
  • Darwin != OS X (Score:5, Informative)

    by itsdapead (734413) on Tuesday February 07, 2012 @11:54AM (#38954667)

    TFA says he ported Darwin - the open-source version of the OS X kernel - and got as far as a multi-user login prompt (he'd need some of the BSD toolchain to get that far, but you could run BSD on the ARM-based Acorn Archimedes in the early 90s). Not to be sneezed at as an intern project - but a long, long way from porting "OS X".

    Its the difference between porting "Linux" (in the correct sense of the name - i.e. the kernel) and porting Linux + GNU tools + X.Org + KDE/Gnome + ... in order to make something resembling modern Linux distro.

    Not that its remotely unfeasible to port OS X to ARM (nobody outside of Apple knows how much of iOS code is directly ported from OS X but economic common sense says "as much as possible") and I'd be unsurprised if Apple had an ARM-based Mac lashed up behind a closed door at Infinite Loop. Apple know a thing or two about supporting multiple processor architectures and It might just make sense as a stop-gap between the iPad and the Air if it offered size/weight/power savings over Intel. Feasible, but probably not likely.

    • by Guy Harris (3803)

      TFA says he ported Darwin - the open-source version of the OS X kernel

      Kernel and core bits of userland, actually.

      What's more, what he ported was the (not-completely-open-source) ARM version of Darwin (little if any of ARM support is open-source), which already exists - it lives, for example, in every one of those mobile phones with the apple-with-a-bite-out-of-it logo on the back, for example - and what he ported it to was an ARMv5 platform, and a lot of difficulties were due to bitrot in the ARMv5 support, as stated in The Fine Intern Thesis [tudelft.nl]

      So, as you say, this says little

  • by lwriemen (763666) on Tuesday February 07, 2012 @01:31PM (#38956127)

    Twelve weeks is a specious number. Interns (i.e., no life) given an interesting project (and they're more likely to be interesting to interns) or trying to impress will often put in 80+ hours a week, so 12 weeks can easily mean 24 or 36 weeks. Granted there'll be some time wasted due to lack of knowledge, but that'll be more than compensated for in poor quality; Not necessarily in terms of errors, but quality in terms of usability by whoever takes over after the internship term ends. (Maybe Apple had to hire the intern.) As someone else posted, "Free lunch!" Indeed!

    IOW, the real news has very little to do with the inaccurate, misleading title.

  • by rew (6140) <r.e.wolff@BitWizard.nl> on Tuesday February 07, 2012 @04:59PM (#38959419) Homepage

    His name must be Tristan Schaap. Not Schapp.

    He used to work for me, but Apple made him an offer he couldn't refuse. When he left, he said he was going to work in security. Apparently they found something else for him to do :-).

    As far as I know he went to apple for an internship, and after that they asked him: finish your studies and come work for us after that.

The unfacts, did we have them, are too imprecisely few to warrant our certitude.

Working...