Apple File System in detail

“Apple announced a new file system that will make its way into all of its OS variants (macOS, tvOS, iOS, watchOS) in the coming years,” Adam Leventhal blogs. “With a dearth of detail I decided to attend the presentation and Q&A with the APFS team at WWDC. Dominic Giampaolo and Eric Tamura, two members of the APFS team, gave an overview to a packed room; along with other members of the team, they patiently answered questions later in the day.”

“APFS, the Apple File System, was itself started in 2014 with Dominic as its lead engineer. It’s a stand-alone, from-scratch implementation,” Leventhal writes. “I asked him about looking for inspiration in other modern file systems such as BSD’s HAMMER, Linux’s btrfs, or OpenZFS (Solaris, illumos, FreeBSD, Mac OS X, Ubuntu Linux, etc.), all of which have features similar to what APFS intends to deliver. (And note that Apple built a fairly complete port of ZFS, though Dominic was not apparently part of the group advocating for it.) Dominic explained that while, as a self-described file system guy (he built the file system in BeOS, unfairly relegated to obscurity when Apple opted to purchase NeXTSTEP instead), he was aware of them, but didn’t delve too deeply for fear, he said, of tainting himself.”

“I’m impressed by Apple’s goal of using APFS by default within 18 months,” Leventhal writes. “Regardless of how it goes, it will be an exciting transition.”

Much more in the full article here.

MacDailyNews Take: Big changes. Coming soon.

SEE ALSO:
APFS: New Apple File System promises more speed, flexibility, reliability – June 17, 2016
The feds’ll hate this: Apple’s new APFS file system ‘engineered with encryption as a primary feature’ – June 14, 2016
Buh-bye HFS+, hello APFS (Apple File System) for macOS! – June 14, 2016
Apple can do better than Sun’s ZFS – October 26, 2009
Apple discontinues ZFS project, turns attention to own next-gen file system – October 24, 2009
Apple’s Mac OS X Snow Leopard Server’s ZFS goes MIA – June 9, 2009

13 Comments

  1. Now we know APFS wasn’t bootlegged off ZFS. Giampaolo admitted he was aware of competing file systems, “but didn’t delve too deeply for fear, he said, of tainting himself.” Starting from scratch and meditating on first principles was the best way to build a solid system free of inherited weaknesses hidden in others.

    Reminds me of Randy Newman’s songwriting. He insulated himself from songwriters and exposed himself directly to American culture by watching television. “There’s no such thing as an original song,” he said, “there’s only one—the song in your heart. If you can get away from all the calliopes, you can hear it better.”

    1. Apple has good reason to worry about the owner of ZFS suing them, even if that seems unjustified. Guess who the owner is? Oracle. Remember them? They are certainly not afraid of suing people on dubious claims. So, it makes sense that Giampaolo carefully avoided looking at ZFS so they can’t argue he took any actual methods from it.

  2. A little surprised by the claim this was initiated in 2014 when ZFS was junked in what was it, 2009. One would have thought and indeed others have stated Apple would have been working on its own since then but this suggests not. Would seem odd considering that a new file system has been needed eventually since before 2009 anyway. Anyway better late than never.

  3. There IS NO complete APFS ‘in detail’ yet. It’s still forming and a huge swath of it is merely intention rather than fact. It’s fun to read about what’s intended! But what it will actually BE remains a question. I just hope it IS rather than turning into another good intentioned dead idea like ZFS on the Mac.

    1. And note that Apple built a fairly complete port of ZFS

      Although the facts of the project’s demise are largely unknown and mis-reported, I recall there were fundamental problems that were never solved. Saying ZFS on Mac was ‘fairly complete’ is not an accurate or helpful statement.

Reader Feedback

This site uses Akismet to reduce spam. Learn how your comment data is processed.