В списке рассылки разработчиков ядра Linux представлена (https://lkml.org/lkml/2012/8/18/164) новая файловая система LanyFS (https://www.nonattached.net/lanyfs/), рассчитанная на использование в извлекаемых накопителях и мобильных устройствах. Основной задачей (https://www.nonattached.net/lanyfs/spec.php) при создании новой ФС было решение проблем, наблюдаемых при использовании существующих файловых систем на переносных накопителях, в сочетании с обеспечением простоты реализации и структуры.
При разработке возможности LanyFS сознательно были сведены к минимуму, полагая, что на переносных накопителях требуется в основном чтение/запись файлов. Подобное упрощение позволило добиться существенного снижения требований к ресурсам и дало возможность использовать LanyFS на встраиваемых системах и таких платформах, как Arduino.
Несмотря на доступность предварительного выпуска только для Linux, ФС LanyFS разработана с оглядкой на обеспечение переносимости и легко может быть портирована в другие операционные системы. При использовании LanyFS параметры ФС в процессе форматирования автоматически подстраиваются под тип и размер накопителя. ФС поддерживает работу с накопителями размером от 4 KiB до 64 ZiB (http://en.wikipedia.org/wiki/ZiB), при этом размеры структур определяются на стадии создания ФС, что обеспечивает минимальные накладные расходы вне зависимости от размера накопителя.
Среди достоинств LanyFS отмечается использование современных структур хранения данных и технологий, таких как задействование бинарного дерева для обеспечения быстрого поиска, ведение счётчиков записи для блоков не с данными, адресация блоков переменной длины, возможность использование разных размеров блоков. Для файлов и директорий осуществляется хранение следующих метаданных: время создания и изменения, простой набор атрибутов. Не поддерживается хранение времени доступа к файлу, нет информации о владельце, отсутствуют списки контроля доступа, не поддерживаются традиционная для UNIX схема разграничения доступа.
Кроме отсутствия разграничения доступа, слабой стороной LanyFS также является рекурсивный алгоритм обхода блоков, что ограничивает масштибируемость при работе с очень большими файлами. Реализация LanyFS не поддерживает MTD/UBI и не использует уровень абстракции блочных устройств, что является следствием оптимизации для встраиваемых систем. LanyFS также не привязывается к определённому типу накопителей, что подразумевает возможность использования, как на Flash, так и на переносных жестких дисках.
URL: https://lkml.org/lkml/2012/8/18/164
Новость: http://www.opennet.ru/opennews/art.shtml?num=34612