Cookies op Tweakers

Tweakers maakt gebruik van cookies, onder andere om de website te analyseren, het gebruiksgemak te vergroten en advertenties te tonen. Door gebruik te maken van deze website, of door op 'Ga verder' te klikken, geef je toestemming voor het gebruik van cookies. Wil je meer informatie over cookies en hoe ze worden gebruikt, bekijk dan ons cookiebeleid.

Meer informatie

Door , , 20 reacties

Apple heeft de broncode van de Zettabyte File System-versie voor Mac OS X vrijgegegeven. De publicatie zou een opmaat zijn voor volledige ondersteuning voor het bestandssysteem van Sun.

ZFS Apple-styleHet vrijgeven van de zfs-broncode werd afgelopen weekend aangekondigd op Mac OS Forge, de website waar opensource-projecten van Apple een plek vinden. De binaries en de broncode betreffen een developer preview en vormen in feite bijgewerkte versies van de bestanden die Apple in oktober vrijgaf aan een beperkte groep ontwikkelaars.

In de huidige vorm kent het bestandssysteem nog de nodige beperkingen, zo constateert ook Techworld, en waarschijnlijk hoopt Apple dat opensource-ontwikkelaars gaan helpen om alle oneffenheden glad te strijken. Zfs voor Mac OS X biedt bijvoorbeeld nog geen ondersteuning voor Spotlight en via iTunes gedownload materiaal kan nog niet rechtstreeks op een zfs-volume worden opgeslagen. Verder kan de prullenbak alleen geleegd worden via de commandline en kan OS X nog niet opgestart worden vanaf een zfs-partitie.

Sun-ceo Jonathan Schwartz liet zich in juni al ontvallen dat zfs hét bestandssysteem van Mac OS X 10.5 ging worden, maar uiteindelijk bleek de versie die in Leopard geïmplementeerd werd een read-only-versie. De publicatie van de broncode en de laatste versie van de binaries geven echter aan dat Apple de voordelen van de technologie van Sun inziet en voornemens lijkt deze in zijn geheel in het besturingssysteem te integreren. De voordelen van het bestandssysteem liggen op het vlak van schaalbaarheid en data-integriteit en -beveiliging.

Moderatie-faq Wijzig weergave

Reacties (20)

Hoera hoera eindelijk van HFS+ af! De grootste performance bottleneck in OS X. Bovendien kan Time Machine dan sector-level backups gaan maken.

(edit: er stond op de Wiki van HFS+ een paar maanden terug een link naar een artikel waarin oa werd uitgelegd dat het zoeken in de B*-Tree bij HFS+ erg inefficient gebeurt waardoor er meer leesacties nodig zijn dan bv bij ext3/ntfs/zfs en het bestandssysteem vooral bij veel kleine files voor een behoorlijke performance hit zou zorgen. Dit is nog een erfenis van het aloude originele HFS uit de jaren '80. Helaas is die link weer weggehaald.)

[Reactie gewijzigd door Dreamvoid op 15 januari 2008 14:02]

Nee, dat kan helaas niet. Snapshots op een ZFS volume kunnen namelijk alleen worden opgeslagen op dezelfde drive, niet op een andere. Dus voor backup doeleinden a la timemachine is de ZFS snapshot functie niet geschikt. Dit komt doordat hij bij het maken van snapshots eigenlijk niets kopieert, hij schrijft gewoon vanaf dat moment alle veranderde blocks apart weg terwijl hij de oude behoudt.
Je kunt datasets/snapshots wel senden en receiven (bijv. door de stream door ssh heen te sturen) met het zfs send of zfs receive.
Heb je daar een linkje van met benchmarks of zo? Ik heb nog nooit gehoord dat HFS+ een bottleneck zou zijn (maar indien dit zo is ben ik wel geinteresseerd voor mijn server).
Zo te zien hebben ze nog wel e.e.a. te doen, willen ze de release van 10.6 over iets meer dan anderhalf jaar halen. om aldaar de standaard te worden. Voor 10.5 is het rijkelijk te laat.
Zoveel hoeft er nou ook weer niet te gebeuren. 10.6 zullen ze makkelijk gaan halen en een write-enabled versie voor latere 10.5 update zie ik ook nog wel gebeuren. Het is een kwestie van porten en integreren, ze hoeven niet een heel FS van de grond af op te bouwen.

Het verruilen van HFS+ voor ZFS en ZFS het standaard filesystem i.p.v. optioneel maken zal inderdaad niet meer in 10.5 gebeuren. Voor 10.6 lijkt me dat overigens wel mogelijk. Vergeet niet dat ZFS op Solaris al een tijdje gewoon beschikbaar is (en volgens mij tegenwoordig zelfs met experimentele boot-ondersteuning).
Waarschijnlijk gaan ze het helemaal niet standaard aanbieden in de gewone versies maar geven ze het meer als optie voor de servers?
Is dit niet gewoon de ZFS support die in FreeBSD 7.0 zit? Lijkt me het meest logisch aangezien Darwin daar op gebaseerd is. En ook erg toevallig dat die net uit is.

Zoveel zal er dan niet door Apple zelf zijn geschreven gezien de rest van Darwin

[Reactie gewijzigd door GrooV op 15 januari 2008 16:04]

Alle implementaties zijn natuurlijk uiteindelijk een port vanuit Solaris. Echter, een OS is vaak vrij nauw verweven dus Apple heeft waarschijnlijk nog wel redelijk wat werk gehad om ZFS geschikt te maken voor OS X en OS X voor ZFS.

OS X heeft overeenkomsten met BSD maar ook forse verschillen, onder andere alle hardware interactie (IOKit) is compleet anders. Daarnaast heeft Apple ook nog twee hardware platformen te onderhouden. Sun heeft de implementatie voor x86 en Sparc geschreven, Apple moest het waarschijnlijk ook nog ombouwen voor PPC. Nou schijnt ZFS redelijk Endian transparant te zijn dus misschien viel dat wel mee.

Als je niet voor OS X of PPC ontwikkeld zul je weinig aan deze source hebben vermoed ik, dan kun je net zo goed rechtstreeks naar de bron kijken, de Solaris source.

[Reactie gewijzigd door Maurits van Baerle op 15 januari 2008 16:28]

FreeBSD werkt ook gewoon met PowerPC dus dat verhaal gaat niet op (http://www.freebsd.org/platforms/ppc.html)

Vind het altijd laf van Apple dat ze weinig terug doet tegen de OSS community, terwijl ze er bakken met geld mee verdienen.
Sun's versie van ZFS was toch al open source met OpenSolaris?
Wat voegt dit dan nog toe aan de ZFS codebase?
Wellicht niet veel...Gewoon het feit dat het nu ook door OSX gesupport wordt en dat de code waarmee dat gebeurt nu openbaar is. Misschien kunnen bepaalde OSS programmeurs daaruit leren hoe het moet en het implementeren in Linux of andere OSS kernels. Ik ben hier luidop aan het fantaseren hoor, ik zou zelf niet weten waarom dit zo'n groot nieuws is...
De manier waarop filesystems geimplementeerd worden (op kernel nivo) verschillen nogal tussen BSD (darwin) en Linux. Linux developers gaan hier dus niet zo heel veel aan hebben. Groter probleem is overigens dat de licentie waaronder Sun ZFS vrijgeeft compleet incompatible is met GPL en dus met Linux. Of ja, eigenlijk is het jammer dat Linux GPL gebruikt en geen BSD achtige licentie... In iedergeval jammer dat we de komende tijd dus nog geen ZFS onder Linux gaan zien, ZFS heeft een aantal erg leuke concepten/features.
ZFS bestaat gewoon voor Linux hoor. Net zoals NTFS-3g draait het in FUSE (Filesystem in Userspace).
Dat klopt inderdaad, ZFS draait al lekker stabiel in FUSE onder linux, maar daarbij vergeet je een belangrijk puntje te melden; FUSE is een geweldig platform om arbitraire filesystems en pseudo-filesystems (zoals SSHFS, iPod-FS, etc) te implementeren, waar het er vooral om gaat dat je stabiel bij je gegevens kunt. ZFS is een zwaar bestandsysteem dat eigelijk niet in FUSE thuis hoort imho, naast rescue acties dan. (stabiele) kernel level ondersteuning laat nog wel even op zich wachten.
Vervang `de komende tijd` maar met `niet zolang ZFS niet onder de GPL valt`. Het is uiteraard wel mogelijk om ZFS via Fuse te implementeren en dat bestaat blijkbaar ook al (zie post van JoetjeF), maar ZFS support in de kernel zal er niet komen tenzij de licentie verandert naar een GPL-compatible licentie.
Tja. Ik begrijp het niet helemaal. Linux zealots vinden het een lage steek van Sun om ZFS in een licentie uit te geven waarvan die Linux-zealots vinden dat hij niet compatibel is met GPL-2.
Echter, het is het recht van Sun om dat te doen, net zoals het is het recht van Linus was om de Linux kernel uit te geven onder GPL-2.
Echter, niets voorkomt dat de Linux community een module interface kiest voor de kernel die andere open-source software de mogelijkheid biedt om te integreren.
(Een soort omgekeerde LGPL)
Er zijn echter lui die geen enkele niet-GPL code in de kernel willen.
Wat je hierdoor krijgt is ofwel geen ondersteuning voor hardware, of GPL code wat een binary blob loader is. Ben je daar beter mee af?
Je kunt sommige hardware drivers niet zelf schijven als je geen info hebt van de leverancier...

Wat volgens mij de Linux community wil, is dat de code die in de kernel draait als module open source is en blijft en dat verbeteringen terug komen in de code base. DIt hoeft niet noodzakelijkerwijs pure GPL te zijn.

De licentie van Sun voor ZFS is, naar ik begrijp, GPL-achtig in de zin van: Je mag gebruiken, maar moet veranderingen terug geven, met een extra regel in de licentie dat de licentie nietig is als je probeert om met patenten dat stuk software aan te vallen. Lijkt me een hele zinnige uitbreiding op de GPL.
Niets, maar dat is ook het doel van Apple niet natuurlijk. Het moet wat gaan toevoegen aan de codebase van Mac OS X (of eigenlijk van Darwin) :)
Overigens heet het filesystem gewoon ZFS. Het Zetta File System idee is maar een verklaring naderhand en wordt officieel niet (meer) gebruikt:
You say zeta, I say zetta

Verder is het in het Nederlands gebruikelijk om eigennamen gewoon met hoofdletters te schrijven (ZFS, IBM, SAP, ...) dus het is ook ZFS en niet zfs. (De kleine letters zijn alleen voor ingeburgerde termen die niet meer als eigennaam worden gezien, zoals cd of dvd.)
Inderdaad.. het heet gewoon ZFS. De Z staat nergens meer voor, behalve dat het de laatste letter van het alfabet is. Vandaar ook de slogan: ZFS, the final word in filesystems. Na ZFS is er geen ander FS meer nodig.

Ik ben het daar wel mee eens. ZFS doet alles waar normaal een RAID controller, volume manager software en een hoop vendor lock-in bij komt kijken. Voor desktops niet zo nuttig maar voor (alle formaten) servers is het super.

Op dit item kan niet meer gereageerd worden.



Apple iOS 10 Google Pixel Apple iPhone 7 Sony PlayStation VR AMD Radeon RX 480 4GB Battlefield 1 Google Android Nougat Watch Dogs 2

© 1998 - 2016 de Persgroep Online Services B.V. Tweakers vormt samen met o.a. Autotrack en Carsom.nl de Persgroep Online Services B.V. Hosting door True