Smart File System
Smart File System (SFS) — журналируемая файловая система, используемая на компьютерах Amiga. Проектировалась с учётом требований производительности, масштабируемости и целостности данных. Используются блоки размером от 512 (29) до 32 768 (215) байт, а максимальный размер раздела может достигать 128 Гб.
Хорошая производительность файловой системы реализуется путём группирования множественных записей каталогов в единый блок и группированием блоков метаданных совместно в кластеры. Для отслеживания свободного места используется битовая карта, а файл данных следит за использованием экстентов упорядоченных в структуру B+ дерева.
Целостность поддерживается ведением журнала откатов всех изменений сделанных с метаданными за определенный период времени. Журнал записывается на диск сначала в свободное место, а затеи непосредственно поверх него записываются блоки метаданных. В случае отказа системы, сразу после монтирования файловая система будет помнить о незавершенной операции и откатит её назад к последнему целостному состоянию. По причинам связанным с производительностью гарантируется целостность только метаданных. Актуальные данные в файлах могуть оставаться повреждёнными, если операция записи была прервана на середине.
Интересной специфической особенностью SFS является способность дефрагментации самой себя непосредственно во время использования файловой системы, даже для заблокированных файлов. Процесс дефрагментации почти не имеет состояний (отдельно от местоположения, в котором работает), что означает возможность мгновенно его остановливать и запускать. В ходе дефрагментации сохранение целостности данных гарантируется и для метаданных, и для обычных данных.
SFS является свободной файловой системой написанной на Си в 1998 году Джоном Хендрикксом. После его ухода со сцены Amiga в 2000 году, исходный код SFS был опубликован и её развитие продолжилось.
С мая 2005 года исходный код SFS доступен по лицензии LGPL.
См. также
- Amiga Old FileSystem
- Amiga Fast File System
- Professional File System
- Список файловых систем
- MorphOS
- Страница ADFlib и ADF спецификации
Спецификации ADFLib также доступны в Aminet Archive.
Ссылки
- Official site (англ.) (Дата обращения: Ошибка: неправильное время)
- SourceForge (англ.) (Дата обращения: Ошибка: неправильное время)
- SfsRecoverTool