Slashdot Mirror


Apple Looking at ZFS For Mac OS X

Udo Schmitz writes "Apples Filesystem Development Manager, Chris Emura, is looking into porting Sun Microsystems' file system ZFS to OS X. At least this is what Sun's Eric Kustarz states on the ZFS mailing list. Is this a glimpse of hope for all those of us who think HFS+ isn't up to par for a 21st century OS? Next thing you know and they'll rewrite the Finder ..."

13 of 261 comments (clear)

  1. This is meaningless by squiggleslash · · Score: 5, Insightful
    Here's a listing of the file systems currently supported on OS X Panther (it may be more for Tiger, I don't know):
    $ ls -l /System/Library/Filesystems/
    total 0
    drwxr-xr-x 8 root wheel 272 14 Mar 12:46 AppleShare
    drwxr-xr-x 7 root wheel 238 12 Apr 2005 URLMount
    drwxr-xr-x 6 root wheel 204 14 Mar 12:47 cd9660.fs
    drwxr-xr-x 3 root wheel 102 22 Dec 2004 cddafs.fs
    drwxr-xr-x 4 root wheel 136 14 Mar 12:48 ftp.fs
    drwxr-xr-x 5 root wheel 170 14 Mar 12:47 hfs.fs
    drwxr-xr-x 4 root wheel 136 14 Mar 12:47 msdos.fs
    drwxr-xr-x 4 root wheel 136 14 Mar 12:47 ntfs.fs
    drwxr-xr-x 4 root wheel 136 14 Mar 12:47 udf.fs
    drwxr-xr-x 4 root wheel 136 14 Mar 12:46 ufs.fs
    $
    HFS and UFS are the official choices of file system for installing your bootable OS X or Darwin system. The rest are either network based file systems or are specific choices for interoperability with other operating systems.

    There are many reasons why Apple might be looking at ZFS. Only one is that Apple intends to actually make Mac OS X use it as a home filesystem.

    Now, here's a reason the write-up author didn't think of: Apple is rumoured to be working on a virtualization layer for OS X, with the intent being that OS X will run in parallel with multiple operating systems. Even if that rumour is false, it's clear that with BootCamp, Apple is taking the idea of Macs running multiple operating systems (albeit not at the same time...) seriously. Solaris and GNU/Linux are the two most popular Intel platforms save for Mac OS X and Windows.

    Isn't it more likely that Apple wants Mac OS X its multi-OS Macs to "just work" with the other operating systems, able to achieve a high degree of interoperability without forcing the other platforms to support HFS+?

    I'm not saying a move to ZFS would be a bad thing, though it doesn't, so far as I can see, support arbitrary metadata so it'd be as practical as UFS in its current form, which is barely used by Mac users. I just think a port of the main Solaris file systems is, in practice, something Apple would be doing anyway, as part of the Intel OS-agnostic direction they're going in.

    --
    You are not alone. This is not normal. None of this is normal.
  2. Re:Great if it's true by Fweeky · · Score: 2, Insightful
    "But why just ZFS? Why not add JFS or XFS as well? Hell, why not add in ext3 while they're at it?"

    Supporting lots of filesystems is hard. Mistakes are difficult to track down and harshly punished, licenses and API's generally aren't amenable to straight ports, and it's a lot of work for what's typically a fairly small ROI. Also, porting one filesystem doesn't generally make porting another significantly easier. You might as well ask:

    "But why just a skyscraper? Why not add a warehouse or a subterranean bunker as well? Why not add in a bridge while you're at it?"

    Might be nice to have them all, and they certainly share certain requirements, but trying to build them all at once isn't necessarily a good idea when all most people want is a nice place to keep things.
  3. Re:BSD leads, Apple follows once again by Anonymous Coward · · Score: 2, Insightful

    Obligatory: Why are you waiting on your ass for a feature in an OS for which you have all the code? Drive the development of ZFS on Linux yourself. Ask for help when you get lost, but don't just sit around wasting oxygen.

  4. Why stop at ZFS? by dnessl · · Score: 2, Insightful

    I read that Darwin has trouble scaling thread concurrency. Maybe Apple should just switch to Solaris, either licensed or OpenSolaris, and get ZFS with it. (Of course they would still run the MacOS personality and GUI environment on top of it.)

  5. that's nice. now fix network file systems. by dschuetz · · Score: 5, Insightful

    I just wish we could come up with a network file system that's worth the trouble. Right now, I'm using a Linux server with three Macs (two Tiger, one Panther), and everything is over NFS. Most of the time, it works fine, but if there's a weird hiccup, then the Mac will freeze solid and has to be hard power-cycled. Also, some apps simply won't run from a network share (or they'll run, but one thing or another won't be right). Install that app to a local drive, and it works fine. And this isn't even to mention security issues.

    I've looked at AFP, but that essentially mounts the remote system as if it were an external drive, and assigns everything to the logged in user, so ownership, permissions, etc., are all really screwy. Plus that gets even worse if you use fast user switching -- now two people are independently trying to mount the same network drive, each claiming to own it outright. And it doesn't look as seamless as, say, simply going to /Server/Shared or /Server/Apps.

    SMB isn't much better.

    There's always AFS, but that's so bloody complicated that I'd take a lot of convincing before I seriously considered it.

    This isn't even to mention the problems that most apps have in working in a networked environment -- applications simply aren't designed for, say, networked home directories, and *especially* aren't designed to be running simultaneously on multiple systems. So if I've got Mail.app running in the den and I log in upstairs to check mail just before I go to bed, things could get messed up.

    I'm not sure there's even been a new network file system since the mid 90's, has there? Certainly, nothing with broad support that fixes some of these issues? All I want is UNIX filesystem features -- simple locking (I guess), owners, regular permissions. Doesn't even need to do ACLs. Transparently mounted so it looks like it's part of the local filesystem. And at least reasonably tolerant of network glitches, so a momentary drop at the server (or whatever else happens to screw NFS connections to the wall) doesn't put all apps which have even heard of the mount point into an uninterruptible kernel-level deep-freeze (what's the point of kill -9, dammit?). Is that so difficult?

  6. Most excellent! by csoto · · Score: 2, Insightful

    ZFS is one of the more interesting filesystem developments of late. While the address space is nice, it's the data replication features included that make this a potential candidate to threaten the proprietary (and expensive) DR features of modern SAN and NAS storage systems. Need a synchronous or asynchronous mirror? No problem. Just issue a ZFS command on your OSX/Solaris/Linux server...

    --
    There exists no way of exchanging information without making judgments. --Bene Gesserit Axiom
  7. Re:Intel Macs good oppurtunity to make a clean bre by littlerubberfeet · · Score: 2, Insightful

    Speaking of resource forks, I miss ResEdit. It was an awsome little program, and it did awsome things...

    --
    Sig (appended to the end of comments you post, 120 chars)
  8. HFS is big endian by KonoWatakushi · · Score: 4, Insightful
    One of the reasons proposed over at Arstechnica has to do with byte ordering. Currently on intel macs, all disk IO has to be byte swapped, degrading performance. ZFS on the other hand will store data in the machines native format.

    Even so, all of the other features of ZFS are worth much more than this. If Apple is anything more than a consumer widget company now, ZFS should definitely be under consideration.

    ZFS is far from "just another filesystem," and comparing it to existing filesystems indicates a lack of understanding. Take a look at this presentation for more information.

  9. Re:Great if it's true by moof1138 · · Score: 2, Insightful

    Unlike Open Source projects Apple has to do a lot of regression testing and QA, and already isn't perfect there. I imagine they take a lot of time already. Imagine having to run all those tests on five or so filesystems not only for all the OS bits, but for all their other software projects.

    Also imagine Disk Utility having a popup to format a Disk that made users choose between:

    EXT3
    FAT
    HFS+
    HFS+ (case sensitive)
    JFS
    UFS
    XFS
    ZFS

    Then try to explain to Grandma which is the correct one for them to choose in a litle help blurb.

    Sometimes Apple has to make choices as to which is the best approach which limit things that might annoy power users, but make things simpler for everyone else. If Apple took the Linux approach, OS X would run on every piece of hardware out there, would have three or four window managers, five filesystems, fourty text editors, and would be hated by typical users for the brief time Apple was around before they went out of business.

    --

    Hyperbole is the worst thing ever.
  10. Re:Think you'll get it? by vought · · Score: 2, Insightful

    I've made a few "what about UFS?" comments in this story, but I hope I don't come across as some weird filesystem fanboy. It's just that I can't figure out why this announcement is so exciting. ZFS is cool, sure, but I see it as an incremental improvement to widely used Unix filesystems rather than a quantum leap.

    I think part of what makes this story so interesting is that despite the past few years' developments, most of us still expect Apple to act as it used to with regard to adopting new technology. In other words, we expect Apple to adhere to the 1980s and 1990s playbook of "NIH" - in other words, if Apple didn't come up with it, it's crap.

    I think Steve Jobs changed all that, but I think there are lots of us who still find it interesting when Apple drops some in-house technology (Intel chipset over Apple's ASICs, Mach over NuKernel, KHTML over ????, etc.) for free software or technology for equal or better alternatives. We spent years wishing they'd do it, and now they are.

    If the rumor is true, someone somewhere got ZFS working already, made a cool demo of a feature, showed it someone who showed it to Jobs, and now it's a real, honest-to-God feature.

  11. Re:Comparison of Filesystems. by dfghjk · · Score: 1, Insightful

    Drives don't have independent read/write heads. They have a single actuator that can process only one I/O at a time. You can queue commands into them and get optimizations that way, but heads can't be used independently.

    It's discomforting to know that engineers recommend that you not use 1/3 of your storage so that the OS doesn't have to work so hard. That employee needs to be fired.

    I would tend to agree with the BS theory.

  12. Re:dunno bout m$... by Minstrel+Boy · · Score: 2, Insightful

    "People just don't think that way until they've been conditioned to do so by Unix."

    Demonstrably not true. I've thought that way since I learned to read. In fact, I was confused the first time I dealt with an MS-DOS machine (before I ever heard of Unix), because the instructions showed commands in upper case and I thought I had to type them that way. Everything I do is based on identifying and classifying differences - "F" and "f" are patently not the same thing to me.

    People, at least people familiar with written romance languages, use capitalization explicitly throughout their lives. You can argue that they don't think that way until they've been conditioned by literacy, but don't drag Unix into it.

    KeS

  13. ZFS on a {Power|Mac}Book{| Pro} by Gekke+Eekhoorn · · Score: 3, Insightful
    The rest of the stuff, pooling and mirroring and stuff is less interesting in my laptop. :-)

    Quite to the contrary! The most unreliable element in your laptop is your drive. It will fail at some point, have no doubts about it. ZFS will detect silent failures through its checksumming.

    ZFS also makes it possible to do super-fast backups to external disk. Combine that with snapshots and you have the kind of data security enterprises pay a whole lot of money for. Here's how it works:

    1. Find an external disk that is at least as big as your laptop drive. For example, a 6th Gen iPod ;-) (You could also protect only part of your disk, by partitioning it)
    2. Now create a mirrored ZFS pool containing your laptop drive and your iPod. This pool is where your ZFS filesystems get their storage space.
    3. Now, every time you want to do a backup, simply connect the iPod. ZFS will see the re-attached mirror, and synchronize all changed blocks.
    4. If your laptop disk breaks, simply mount up your backup disk, and you will have all of your data AND all of your snapshots.

    See? It can be that simple. And there's more:

    • ZFS is always consistent on-disk, unlike any other filesystem. So you can unplug that iPod at any time, no harm done.
    • ZFS keeps checksums of everything, and is both the filesystem and the volume layer. This means that as soon as the data leaves the application, it is safe from undetected changes. No more bitrot.
    • You can have as many ZFS filesystems as you like, and each has independent snapshots. You could keep a snapshot of your $HOME/Documents/Important folder for every minute, if you make it into its own filesystem, and just make a snapshot of your root filesystem just before you upgrade your OS/install updates.
    • Compression can be enabled per-filesystem, which is great for laptops. Compression means higher read bandwidth and more diskspace.
    • Encryption is being worked on and will be per-filesystem. Apple's Filevault encryption is ok, but could do with a lot more stability.

    So what if ZFS does things that VMS did. No-one else has made anything quite like the summit of cool stuff that ZFS is. Apple makes a living bringing cool stuff together and making it cooler. It's a natural match :)

    ZFS would yet again boost OS X's position as ultimate laptop OS. Here's hoping that Apple does implement it.