Smart File System

Материал из Википедии — свободной энциклопедии
Это старая версия этой страницы, сохранённая LaaknorBot (обсуждение | вклад) в 06:50, 28 августа 2008 (робот изменил: pl:SFS). Она может серьёзно отличаться от текущей версии.
Перейти к навигации Перейти к поиску

Smart File System (SFS) — журналируемая файловая система, используемая на компьютерах Amiga. Проектировалась с учётом требований производительности, масштабируемости и целостности данных. Используются блоки размером от 512 (29) до 32 768 (215) байт, а максимальный размер раздела может достигать 128 Гб.

Хорошая производительность файловой системы реализуется путём группирования множественных записей каталогов в единый блок и группированием блоков метаданных совместно в кластеры. Для отслеживания свободного места используется битовая карта, а файл данных следит за использованием экстентов упорядоченных в структуру B+ дерева.

Целостность поддерживается ведением журнала откатов всех изменений сделанных с метаданными за определенный период времени. Журнал записывается на диск сначала в свободное место, а затеи непосредственно поверх него записываются блоки метаданных. В случае отказа системы, сразу после монтирования файловая система будет помнить о незавершенной операции и откатит её назад к последнему целостному состоянию. По причинам связанным с производительностью гарантируется целостность только метаданных. Актуальные данные в файлах могуть оставаться повреждёнными, если операция записи была прервана на середине.

Интересной специфической особенностью SFS является способность дефрагментации самой себя непосредственно во время использования файловой системы, даже для заблокированных файлов. Процесс дефрагментации почти не имеет состояний (отдельно от местоположения, в котором работает), что означает возможность мгновенно его остановливать и запускать. В ходе дефрагментации сохранение целостности данных гарантируется и для метаданных, и для обычных данных.

SFS является свободной файловой системой написанной на Си в 1998 году Джоном Хендрикксом. После его ухода со сцены Amiga в 2000 году, исходный код SFS был опубликован и её развитие продолжилось.

С мая 2005 года исходный код SFS доступен по лицензии LGPL.

См. также

Спецификации ADFLib также доступны в Aminet Archive.

Ссылки