Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.
sluthy said:
So will this require another rewrite of Mac software?

This is a filesystem, ideally applications do not need to know at all whether they are running with fat31, hfs+, or zfs. OS X already supports several - in addition to these, ntfs (for read-only), iso9660 (CD media) + joliet (long filename extensions), and several network filesystems (for ftp, webdav, and cifs/smb). There may be more, but these are the ones I hit on a weekly basis.
 
sluthy said:
So will this require another rewrite of Mac software? "Okay guys, you've rewritten your programs to port from 68k to PPC, then from OS9 to Carbon and then OSX, now could you please rewrite them for another processor again (Universal)? Oh, and after that, could you rewire it for a completely different file system while you're at it?" :confused:
Assuming the software is written properly, a change of filesystem should make absolutely no difference whatsoever. The structure goes something like:
  • Application: "I want to open such an such a file."
  • Kernel: "Application wants to open such and such a file. Which filesystem is that on?"
  • Kernel: "Right, we know which filesystem we want, where's the file actually stored?"
  • Kernel: "Ok, we have the info we need. Give the application a handle by which it can access the data."
  • Application: "Great. Give me the first kB of data from the file."
  • Kernel: "The first kB ... that's stored on blocks X, Y, and Z. Here you go."
  • ... and so on.
The application knows nothing, and cares nothing, about the structure of the filesystem. That's the kernel's job. The only way you'd get application breakage, assuming that the app sticks to the publicised APIs, would be if the application were written assuming case insensitivity, and accessed a file with varying case (eg: "File1" vs "FILE1"), and the filesystem was in fact case sensitive. Or the other way around.

In short: if an app works on both UFS and HFS+, it should work happily on ZFS.

Actually, I tell a slight lie: if the app uses (eg) 32 bit file offset data, it'll break with a file that's over the 2GB (or 4GB, depending on whether the offset is signed) limit. But files below that limit will still work just fine, no matter what the FS.
 
DTphonehome said:
So....ZFS can store "16 billion billion times the capacity of current 64-bit systems" (acc. to wikipedia). So I would actually expect MS to integrate this into Vista, which is estimated to be 16 billion billion times the size of XP.

Now that's funny!
 
sluthy said:
So will this require another rewrite of Mac software? "Okay guys, you've rewritten your programs to port from 68k to PPC, then from OS9 to Carbon and then OSX, now could you please rewrite them for another processor again (Universal)? Oh, and after that, could you rewire it for a completely different file system while you're at it?" :confused:

Nope. 99.9% of applications don't care about what filesystem is running (look at Linux, where you can choose between tons of different filesystems).

The only apps that *really* care are disk repair apps, like Disk Warrior.

From an application developer's point of view, there is a very simple interface to a file system (and all file systems present the same interface). What goes on underneath is generally unimportant to the application developer.
 
sluthy said:
So will this require another rewrite of Mac software? "Okay guys, you've rewritten your programs to port from 68k to PPC, then from OS9 to Carbon and then OSX, now could you please rewrite them for another processor again (Universal)? Oh, and after that, could you rewire it for a completely different file system while you're at it?" :confused:
No it won't. Its just the filesystem, to the user the change will be transparent. UNIX system generally have many different filesystems. For example, Linux uses ext2, ext3, reiserfs, xfs and many more. None of the programs require any changes to work with these different filesystems.

ZFS has some really cool features, for example you can undo things: You remembered you deleted a file you needed 2 days ago, simply rewind the file system to how it was 2 days ago, grab the file and revert back to current.

ZFS is pretty much the filesystem re-imagined. As for the guy who mentioned Reiser 4, well its not stable yet, ZFS is. No matter how cool a filesystem is, if it can cause data loss, its not useful.
 
sluthy said:
So will this require another rewrite of Mac software? "Okay guys, you've rewritten your programs to port from 68k to PPC, then from OS9 to Carbon and then OSX, now could you please rewrite them for another processor again (Universal)? Oh, and after that, could you rewire it for a completely different file system while you're at it?" :confused:

no. if you install linux, you can choose from a number of filesystems, all with different features, all run the same software.

even on windows you can choose fat 16 32 or NTFS depending on the windows you install. only the OS cares about the filesystem (well not some apps can use the plus sides to a better system, but i am rounding the corers off here) not the apps.
 
English definition

For those who wonder what this ZFS thing is, it is a project by Sun to rethink from the ground up how data gets stored and structured on a hard disk. Some people at Sun observed that as hardware has matured, the requirements of original systems turned into assumptions that actually were no longer true. This is partially because raw CPU power has gone up at a faster pace than hard disk speed.

This kind of innovation has attracted a little bit of attention from people who care about such things. Note that most innovation at this low level does not affect users tremendously, as it classifies more as required infrastructure.

Beyond that, ZFS promises to make:

  • data storage more reliable - and more efficient than systems like journaling, which actually lower IO speed for the sake of some reliability. There is also a checksum on the file data so that corruption can be determined.
  • adding storage simpler - instead of multiple volumes, new hard disks become part of the existing filesystem. Of course, this feature only makes sense for non-removable drives.
  • space used more efficiently - we all know advertized size != real size != formated size. For example, if a file is smaller than 4k, chances are you'll see the size padded for 'size on disk', with the difference wasted.
  • hard disks faster - existing systems overwrite data to prevent the hard disk from getting fragmented, ZFS takes a different approach that makes writes extremely fast.
 
dr_lha said:
As for the guy who mentioned Reiser 4, well its not stable yet, ZFS is. No matter how cool a filesystem is, if it can cause data loss, its not useful.

It is somewhat hurtful to say, but the biggest problem with Reiserfs is that nobody wants to work with Hans Reiser. The reason his filesystems have such a problem getting into the linux kernel isn't due to some conspiracy, it is because he won't listen to some people and give them the respect they deserve when they try to work with him.
 
sluthy said:
So will this require another rewrite of Mac software? "Okay guys, you've rewritten your programs to port from 68k to PPC, then from OS9 to Carbon and then OSX, now could you please rewrite them for another processor again (Universal)? Oh, and after that, could you rewire it for a completely different file system while you're at it?" :confused:

Mac OS X already offers a few different file systems from which you can choose including MSDOS(FAT), UNIX, HFS and HFS+ (Journaled, Case-Sensitive and Non). I have only installed X on volumes formated for HFS+ and UNIX but either are completly transparant when working on the system. UNIXs' prep-time takes a little bit longer on format however, it appears fairly seemless once complete. Also mind you, thumb drives and memory cards and other devices that are used regularly on Mac OS X (unless formatted otherwise) all conform to the FAT file system. Applications installed on those devices run as they normally would if they were installed on HFS. Most applications running in X don't require a certain file system and therefore, the transition would be seemless.
 
ZFS demo video

Here's a demo video of ZFS's self-healing powers.

One thing to note for you who are not familiar with Solaris... the "c0d1" and "c1d0" things are Solaris's device names for disk drives, analogous to MacOS's "disk1s2" and so forth.

http://www.opensolaris.org/os/community/zfs/demos/selfheal/

I'm already using ZFS at work on a production server with 7TB of disk under its control (soon to be 14TB - all on, coincidentally enough, Apple Xserve RAIDs). The server itself is a Sun X4100.

Works like a dream.

/dale
 
Doctor Q said:
I'd be quite surprised if current system calls (what software does to access a disk file) weren't provided in an upward compatible way. Disk utility programs would need to be augmented, but there should be little or no impact on almost all software if Apple does what it should. Assuming this story is correct in the first place.

I'm still surprised that UFS2 or a virtual file system (VFS) hasn't been implemented on Mac OS X.

A VFS would hide the details of what kind of file system is hosting a file and just allow access to it. Think of the way that Open Transport hid the various communication protocols from the programmer and user.

Of course, using a VFS would help Apple into the enterprise with its servers but Apple seems to be in limbo once again concerning the enterprise.
 
I think this is my favorite quote about the ZFS from the Wiki article

Bonwick stated "Populating 128-bit file systems would exceed the quantum limits of earth-based storage. You couldn't fill a 128-bit storage pool without boiling the oceans."
 
sluthy said:
So will this require another rewrite of Mac software? "Okay guys, you've rewritten your programs to port from 68k to PPC, then from OS9 to Carbon and then OSX, now could you please rewrite them for another processor again (Universal)? Oh, and after that, could you rewire it for a completely different file system while you're at it?" :confused:
I don't think this has been addressed yet, so I'll answer: no, it wouldn't require another rewrite.

And the Chinese characters mean what, now?

PS, although ZFS sounds great, could this be just Apple supporting more filesystems for servers and sharing, rather than Apple intending to make it the OS X default?
 
i seriously hope they do this as the ability to swap files between OSX and Solaris on a mac owuld be awsome
not to mentionall of ZSF's l33tness
 
Would integrating ZFS into Mac OS X be very difficult? They seem to have added support for UFS and, if I remember correctly, FAT32 without much major renovation to the kernel (not that I would know, but it seemed easy enough). Would it be any harder to add ZFS to the Mac? If not, why couldn't this be done by the time 10.5 is released?
 
I like it how ZFS is the only one to support "Variable file block sizes". This could be huge. Do you know how much disk space is wasted because of blocks only being partially full?
There is a few other neat sounding things there too. Lots of metadata support for search and organization, ECC for security, and data snapshots for undoing changes, and these could be killer features for an OS. It would make OS X seem even more modern robust and secure.

:D
 
cyberakuma said:
(...) Beyond that, ZFS promises to make:

  • data storage more reliable - and more efficient than systems like journaling, which actually lower IO speed for the sake of some reliability. There is also a checksum on the file data so that corruption can be determined.
  • adding storage simpler - instead of multiple volumes, new hard disks become part of the existing filesystem. Of course, this feature only makes sense for non-removable drives.
  • space used more efficiently - we all know advertized size != real size != formated size. For example, if a file is smaller than 4k, chances are you'll see the size padded for 'size on disk', with the difference wasted.
  • hard disks faster - existing systems overwrite data to prevent the hard disk from getting fragmented, ZFS takes a different approach that makes writes extremely fast.

Very nicely put. Thank you very much for this clarification!
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.