System plików XFS

Julian Kania

Wstęp

XFS jest systemem plików stworzonym przez Silicon Graphics Incorporation. Początkowo był przewidziany jako system plików dla systemu Irix, od maja 2001 istnieje również implementacja tego systemu plików dla Linuksa na licencji GPL.

Jaki jest ten XFS

Przy projektowaniu XFSa podjęto szereg założeń co do możliwości, jakie ma dawać ten system plików. Mianowicie, główne cechy tego systemu to:

Transakcjonowanie operacji

Każda operacja na dysku modyfikująca jego zawartość zostaje najpierw opisana w dzienniku, a następnie dopiero wykonana.
Dziennik może być rozłączny z samym systemem plików ( w szczególności może być zapisany na NFS), co może być korzystne w przypadku trwałej awarii sprzętu. \ ile dziennik jest na tym samym nośniku co dane, blokady na pliki są zakładane najpóźniej jak to jest możliwe, czyli w chwili rozpoczęcia zatwierdzania transakcji. Gdy dziennik leży gdzie indziej, pliki blokowane są natychmiast.

Budowa XFS

Nośnik danych zostaje podzielony na bloki o rozmiarze do 64kB. Większą jednostką, na jaką podzielony jest nośnik, są grupy alokacji . Grupa alokacji to struktura zawierająca:
B+drzewa są bardzo lubianą przez konstruktorów xfs strukturą, one właśnie zostały użyte do implementacji ww list.

Użycie grup alokacji ma, oprócz zapewne wielu innych, tę zaletę, że obsługiwanie dostępu do danych przez wiele wątków staje się dużo łatwiejsze, wystarczy przyjąć że różne wątki mają dostęp do różnych grup alokacji (por. gwarantowany transfer).

Co zna i-węzeł

w I-węźle znajduje się następujące informajce:
Atrybuty i dane właściwe są realizowane podobnie. W zależności od ich rozmiaru, może to być:


Lokalne systemy plików