Szoftverfejlesztési igazgató a Western Digitalnál a kernel fejlesztők levelezőlistáján Linux egy új fájlrendszer, a Zonefs, amelynek célja az alacsony szintű munka egyszerűsítése a A Zonefs minden egyes zónát egy külön fájlhoz társít a meghajtón, amely nyers módban, szektor- vagy blokkszintű manipuláció nélkül tárolható adatok tárolására használható.
A Zonefs nem POSIX-kompatibilis fájlrendszer, és meglehetősen szűk alkalmazási körre korlátozódik, lehetővé téve az alkalmazások számára, hogy a fájl API-t használják a blokkeszköz közvetlen elérése helyett az ioctl használatával. A zónákhoz kapcsolódó fájlok szekvenciális írási műveleteket igényelnek, a fájl végétől kezdve (hozzáfűző módban történő írás).
A Zonefs-ben biztosított fájlok adatbázisok tárolására használhatók zónázott tárolóeszközökön naplószerkezetű egyesítés (LSM) naplótárolási struktúrák használatával, amelyek a tárolási zónánként egy fájl koncepcióján alapulnak. Például hasonló struktúrákat használnak a RocksDB és a LevelDB adatbázisokban. Ez a megközelítés csökkenti az eredetileg fájlok, nem pedig a blokkeszközök kezelésére tervezett kód portolásának költségeit, és lehetővé teszi a zónázott tárolóeszközökhöz való alacsony szintű hozzáférést a C-től eltérő nyelven írt alkalmazásokból is.
Zónázott tárolótartályok eszközök bekapcsolva vagy , amelynek tárhelye zónákra van osztva, amelyek blokk- vagy szektorcsoportokat alkotnak, és amelyekbe csak egymást követő adatok hozzáadása engedélyezett, frissítve a teljes blokkcsoportot.
Például a felvételi zónázást csempézett mágneses rögzítéssel rendelkező eszközökben használják (, SMR), amelyben a sávszélesség kisebb, mint a mágneses fej szélessége, és az írás a szomszédos sáv részleges átfedésével történik, ami azt jelenti, hogy bármilyen átíráshoz a teljes sávcsoport átírása szükséges. Az SSD-k eredendően szekvenciális írási műveletekre vannak elkötelezettek előzetes adattörléssel, de ezek a műveletek rejtve vannak a vezérlő szintjén és az FTL-ben (Flash Translation Layer). Bizonyos munkaterhelések hatékonyságának javítása érdekében az NVMe szervezet szabványosította a Zoned Namespaces (ZNS) interfészt, amely lehetővé teszi a zónákhoz való közvetlen hozzáférést, megkerülve az FTL-t.
В Linux zónázott merevlemezekhez, 4.10-es kernellel kezdődően A ZBC (SCSI) és ZAC (ATA) blokkeszközök támogatottak, és a 4.13-as kiadástól kezdődően hozzáadták a dm-zoned modult, amely a zónázott meghajtót normál blokkeszközként jeleníti meg, elrejtve a működés közben alkalmazott írási korlátozásokat. Fájlrendszeri szinten a zónázási támogatás már integrálva van az F2FS fájlrendszerbe, és a Btrfs fájlrendszerhez egy javításkészlet fejlesztés alatt áll, amely megkönnyíti a zónázott meghajtókhoz való adaptálását a CoW (másolás íráskor) módban való működés révén.
Zónázott meghajtókon futó Ext4 és XFS dm-zoned használata. A fájlrendszer-fordítás egyszerűsítése érdekében javasolták a ZBD interfészt, amely a véletlenszerű írási műveleteket fájlokba fordítja szekvenciális írási műveletek folyamaivá.
Forrás: opennet.ru
