r   e   k   l   a   m   a
r   e   k   l   a   m   a

APFS to wielka zmiana w macOS-ie. Apple wreszcie z nowoczesnym systemem plików #WWDC16

Strona główna AktualnościOPROGRAMOWANIE

30 lat gotowania się w tym samym sosie? Aż trudno uwierzyć, że współczesne Maki, przedstawiane jako najnowocześniejsze i najlepsze komputery osobiste, działają na bazie najprymitywniejszego dziś spośród powszechnie używanych systemów plików, pamiętającego jeszcze czasy dyskietek elastycznych. Coś się jednak w świecie Jabłek wreszcie zmieni. Choć na wczorajszym otwarciu deweloperskiej konferencji Apple’a nie było o tym mowy (Tim Cook z kolegami woleli się skupić na cyferblatach z Myszką Minnie dla Apple Watcha), to jednak programiści firmy z Cupertino wreszcie pokazali nowoczesny system plików dla urządzeń z Jabłkiem. Apple File System (APFS) ma być bezpośrednim następcą używanych dziś HFS/HFS+, który zapewni solidny fundament dla pamięci masowych w urządzeniach tej firmy na następne dekady.

Tak jak przewidywaliśmy, Apple nie zdecydowało się na sięgnięcie po system plików ZFS, ale zarazem jak to Apple nie skorzystało też z rozwiązań znanych już w świecie Open Source. Wymyśliło nowy własny system plików, który wygląda bardzo interesująco i który powinien rozwiązać wiele dzisiejszych bolączek Maków – i zarazem uczynić je naprawdę nowocześniejszymi niż maszyny z Windowsem.

Z nanosekundową dokładnością w 64-bitowy XXI wiek

W opublikowanej na stronach deweloperskich Apple’a dokumentacji przedstawiono najważniejsze cechy APFS. Jak wiele innych uniksowych systemów plików bazuje on na i-węzłach (inodes), czyli jednorodnych strukturach, które zawierają inne niż nazwa i dane pliku informacje związane z plikiem. APFS jest w pełni 64-bitowym systemem plików (HFS był 32-bitowy), co oznacza, że może obsłużyć ok. 9 trylionów plików na jednym wolumenie.

r   e   k   l   a   m   a

Znacznie wzrosła dokładność czasoznaczków. HFS+ utrzymywał logi operacji z dokładnością do 1 sekundy. APFS robi to z dokładnością do jednej nanosekundy, co pozwoli na precyzyjne śledzenie operacji plikowych i zachowanie atomowości transakcji (czyli tego, że transakcja albo wykona się w całości, albo w ogóle). Nowy system plików ma być bardziej też odporny na awarie: mechanizm o nazwie „Crash Protection” to po prostu implementacja znanego dobrze schematu obsługi metadanych kopiowania przy zapisie (copy-on-write) – ma to zapewnić, że wpisy do dziennika i zmiany w systemie plików bedą zawsze w synchronizacji, nawet jeśli coś wydarzy się podczas zapisu.

Inne ważne nowości to niskopoziomowe wsparcie dla mechanizmu TRIM, możliwość szybkiej inicjalizacji dużych wolumenów (Extensible Block Allocation), obsługa rozszerzonych atrybutów plików oraz wbudowane w system plików udostępnianie wolumenów po protokole SMB. Zmniejszy się też fragmentacja danych na dysku, mechanizm łączenia zapisów (write coalescing) pozwoli nie zapisywać danych od razu, ale poczekać na zgromadzenie się w buforze niepowiązanych danych – i zapisanie ich w jednej operacji.

APFS obsługuje też wreszcie pliki rozrzedzone (sparse files), efektywniej wykorzystujące miejsce na dysku w sytuacji, gdy sam plik jest w większości pusty. Apple wspomina też o możliwości współdzielenia fizycznej przestrzeni między logicznymi wolumenami, tworząc np. kilka terabajtowych wolumenów na jednym terabajtowym nośniku – a później ich rozszerzaniu na inne fizyczne dyski w miarę wzrostu ilości danych.

Warto na koniec wspomnieć o pewnym drobiazgu, który był jedną z najgorszych rzeczy w HFS+, tj. kwestii rozróżnienia wielkości liter. Standardem Uniksów jest ich odróżnianie, unix, Unix i UNIX to trzy różne nazwy. OS X standardowo jednak nie rozróżniał wielkości liter, traktując je jak jedną nazwę. Można było sobie włączyć rozróżnianie, ale to z kolei wiązało się z różnymi problemami systemowymi. APFS wraca do uniksowej tradycji. Wielkość liter będzie rozróżniana, nie da się tego wyłączyć.

Szyfrowanie, migawki, klony – nie ma co płakać za ZFS-em

Zatroskanych o prywatność swoich danych ucieszy na pewno to, że Apple zdecydowało się wbudować szyfrowanie bezpośrednio w APFS, zamiast posiłkować się rozwiązaniami takimi jak File Vault. Mamy do dyspozycji trzy tryby działania – bez szyfrowania, z szyfrowaniem pojedynczym kluczem oraz z szyfrowaniem wieloma kluczami – odzielnymi dla plików i metadanych. W zależności od możliwości sprzętu, stosowane ma być łańcuchowanie bloków w trybie AES-CBC lub AES-XTS.

Podobnie jak ZFS, APFS udostępni też mechanizmy migawek i klonowania. Migawki pozwolą na zapisanie specjalnej instancji pliku tylko do odczytu, a następnie w miarę zmian w pliku, zapisywania jedynie przypisanych do niego bloków z różnicami (delta). W ten sposób będzie można zbudować płynnie działającą „maszynę czasu”, pozwalajacą na wygodne przeglądanie całej historii zmian w plikach, zamiast bawienie się w sztywne linki obecnego Time Machine.

Klony działają niemal tak samo jak migawki, tyle że można je też zapisywać. System plików jest w stanie sklonować pliki i katalogi natychmiastowo, bez czekania na ich kopiowanie. Sklonowana struktura zachowuje wszystkie zmiany wprowadzone do oryginału, więc przysłuży się to przy tworzeniu mechanizmów wersjonowania.

Póki co APFS jest dostępny tylko w deweloperskiej wersji macOS-a Sierra, i ma wiele ograniczeń. Nie możemy użyć go do partycji systemowej. Nie działa też na dyskach Fusion Drive, ani jako wolumen Time Machine. Wciąż nie ma żadnych gwarancji, że nie nie stracimy wszystkich danych na sformatowanym w APFS dysku. Do jesieni zostało jednak trochę czasu, a gdy macOS Sierra zadebiutuje wreszcie na Makach, powinniśmy zobaczyć poprawę działania całego systemu pod każdym względem.

© dobreprogramy
r   e   k   l   a   m   a
r   e   k   l   a   m   a

Komentarze

r   e   k   l   a   m   a
r   e   k   l   a   m   a
Czy wiesz, że używamy cookies (ciasteczek)? Dowiedz się więcej o celu ich używania i zmianach ustawień.
Korzystając ze strony i asystenta pobierania wyrażasz zgodę na używanie cookies, zgodnie z aktualnymi ustawieniami przeglądarki.