Публикувана е платформата SEF за програмирано управлявани Flash устройства

Организация Linux Foundation представи първия брой на отворената платформа за софтуерно управлявани Flash-накопители SEF (Software Enabled Flash), изградена на базата на кода, предоставен от компанията KIOXIA (преди преименуването на Toshiba Memory Corporation), в която през 1980 година е изобретена Flash-паметта. Исходните кодове на инструмента са написани на езика Си и се разпространяват под лицензия BSD.

Инструментарий включает в себя набор патчей для ядра Linux, блочный драйвер для устройств SEF (Software Enabled Flash), утилиты для управления из командной строки, паравиртуализированные SEF-драйверы для QEMU, библиотека с API для разработки приложений, патчи для nvme-cli и FIO, добавляющие поддержку SEF. SDK также включает эталонную реализацию программного уровня FTL (Flash Translation Layer), обеспечивающего трансляцию команд блочных устройств в обращения к фактическому чипу Flash-памяти, сборку мусора и распределение данных по ячейкам памяти. FTL реализует поддержку гибкого размещения данных (FDP — Flexible Data Placement), зонирования (ZNS — Zoned Namespace) и спецификации NVMe.

В обикновените Flash за външни системи, накопителят представлява черна кутия, част от паметта в която е резервирана за служебни операции, производителността е непостоянна и възникват непредсказуеми закъснения заради вътрешната активност на контролера, например по време на събиране на боклук. В отличие от традиционните Flash-накопители, при които разпределението на данни, изолацията на повредени блокове и събирането на боклук се управляват от фърмуера на контролера, SEF-поддържаните устройства позволяват логиката за нискоуровнева работа с чипа на Flash-паметта да бъде извлечена на страната на софтуера и операционната система.

SEF ви позволява да управлявате директно физическото разположение на данните, да променяте алгоритмите за разпределение на натоварването, да управлявате приоритетите и QoS, да се избавите от допълнителния слой на транслация на блокове, да използвате целия наличен памет, да постигнете предсказуема работа с устройството за съхранение и да разделите диска на виртуални устройства, изолирани на ниво вход/изход и с различен приоритет в обработката. Предложеният в SEF подход позволява да се намалят разходите и да се увеличи ефикасността на взаимодействието с устройството за съхранение чрез адаптиране към текущите нужди на логиката за събиране на боклука, резервирането на памет и разпределението на блоковете за намаляване на износа.

Например, SEF позволява да се нормализира производителността в условията на използване на масив от устройства за съхранение, закупени в различно време и с отличаващи се характеристики. За устройства, които предимно се използват само за четене, благодарение на SEF могат да се използват по-прости алгоритми за разпределение на блоковете и да се намали паметта, резервирана за служебни цели.

Източник: opennet.ru

Купете надежден хостинг за сайтове с защита от DDoS, VPS VDS сървъри 🔥 Купете надежден хостинг за сайтове с защита от DDoS, VPS VDS сървъри | ProHoster