Linux Foundation представила первый выпуск открытой платформы для программно управляемых Flash-накопителей SEF (Software Enabled Flash), построенной на основе кода, переданного компанией KIOXIA (ранее Toshiba Memory Corporation), в которой в 1980 году была изобретена Flash-память. Исходные коды проекта написаны на языке C и распространяются под лицензией BSD.
Инструментарий включает в себя набор патчей для ядра Linux, блочный драйвер для устройств SEF, утилиты для управления из командной строки, паравиртуализированные SEF‑драйверы для QEMU, библиотека с API для разработки приложений, патчи для nvme‑cli и FIO, добавляющие поддержку SEF. SDK также включает эталонную реализацию программного уровня FTL (Flash Translation Layer), обеспечивающего трансляцию команд блочных устройств в обращения к фактическому чипу Flash‑памяти, сборку мусора и распределение данных по ячейкам памяти. FTL реализует поддержку гибкого размещения данных (FDP — Flexible Data Placement), зонирования (ZNS — Zoned Namespace) и спецификации NVMe.
SEF позволяет напрямую управлять физическим размещением данных, менять алгоритмы распределения нагрузки, управлять приоритетами и QoS, избавляет от дополнительного слоя трансляции блоков, задействует всю доступную память, помогает разделить накопитель на изолированные виртуальные устройства, имеющие разный приоритет в обработке.
В обычных Flash для внешних систем накопитель представляет собой чёрный ящик с зарезервируемой частью памяти.
Источник: OpenNET.