Kod Bcachefs został przyjęty do rdzenia Linux 6.7

Linus Torvalds zatwierdził wniosek o włączenie systemu plików Bcachefs do głównej gałęzi jądra Linux i dodał implementację Bcachefs do repozytorium, w którym rozwijana jest gałąź jądra 6.7, której wydanie przewidziano na początku stycznia. Dodany do jądra patch zawiera około 95 tysięcy linii kodu. Projekt rozwija Kent Overstreet od ponad 10 lat, który również stworzył dołączony do jądra system cache'owania urządzeń blokowych na dyskach SSD Bcache.

Próby promocji Bcachefs do głównej gałęzi jądra rozpoczęły się w 2020 roku, po czym minęły prawie trzy lata na usunięcie uwag i niedociągnięć ujawnionych podczas przeglądów. Na wiosnę tego roku zaproponowano zaktualizowany zestaw patchy, który kilka razy był odrzucany, ale ostatecznie we wrześniu został przyjęty do gałęzi linux-next, przeznaczonej do testowania możliwości przyszłych wydań jądra Linux.

Bcachefs rozwija się z wykorzystaniem technologii, które były już testowane podczas tworzenia urządzenia blokowego Bcache, zaprojektowanego do cache'owania dostępu do wolnych dysków twardych na szybkich dyskach SSD (jest częścią jądra od wydania 3.10). W Bcachefs zastosowano mechanizm Copy-on-Write (COW), w którym zmiany nie prowadzą do nadpisywania danych - nowe stany są zapisywane w nowym miejscu, a następnie zmienia się wskaźnik aktualnego stanu.

W Bcachefs podjęto próbę osiągnięcia połączenia poziomu wydajności, niezawodności i skalowalności, charakterystycznego dla XFS, oraz rozszerzonej funkcjonalności dostępnej w Btrfs i ZFS, takiej jak włączenie wielu urządzeń w część, warstwowe układy dysków, replikacja (RAID 1/10), cache'owanie, przezroczysta kompresja danych (tryby LZ4, gzip i ZSTD), migawki stanu, weryfikacja integralności za pomocą sum kontrolnych, możliwość przechowywania kodów korekcji błędów Reeda-Solomona (RAID 5/6), przechowywanie informacji w zaszyfrowanej formie (z wykorzystaniem ChaCha20 i Poly1305). Pod względem wydajności Bcachefs przewyższa Btrfs oraz inne systemy plików oparte na mechanizmie Copy-on-Write, i wykazuje prędkość pracy zbliżoną do Ext4 i XFS.

Cechą Bcachefs jest wsparcie dla wielowarstwowego podłączenia nośników danych, w którym przechowywanie składa się z kilku warstw — do dolnej warstwy podłączane są najszybsze nośniki (SSD), które służą do buforowania często używanych danych, a górna warstwa składa się z bardziej pojemnych i tańszych dysków, które zapewniają przechowywanie mniej wymaganych danych. Między warstwami może być stosowane buforowanie w trybie opóźnionego zapisu (writeback). Nośniki można dynamicznie dodawać i odłączać od partycji bez zatrzymywania korzystania z systemu plików (dane migrują automatycznie).

Źródło: opennet.ru

Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS 🔥 Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS | ProHoster