The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Представлена ФС DAXFS, похожая на ramfs и tmpfs, но работающая в обход страничного кэша

25.01.2026 12:14 (MSK)

Конг Ванг (Cong Wang), сопровождающий подсистему управления трафиком (TC, Traffic Control) в ядре Linux и развивающий проект Multikernel, представил в списке разработчиков ядра Linux новую файловую систему DAXFS. DAXFS использует для хранения данных оперативную память, работает в режиме только для чтения и напоминает по функциональности урезанные файловые системы ramfs и tmpfs. Модуль ядра с реализацией DAXFS, а также утилита mkdaxfs для создания ФС опубликованы под лицензией GPLv2. После рецензирования рассматривается возможность интеграции DAXFS в основной состав ядра.

Ключевой особенностью новой ФС является задействование подсистемы DAX (Direct Access) для работы в обход страничного кэша и прямого обращения к разделяемой физической памяти. В ramfs и tmpfs содержимое сохраняется в страничном кэше, что при использовании одной ФС в нескольких контейнерах или ядрах, запущенных при помощи технологии Multikernel, приводит размещению нескольких копий данных в физической памяти. Наполнение ramfs и tmpfs также требует выполнения лишних операций копирования без возможности выполнить маппинг существующей области памяти.

Прямой доступ к памяти в DAXFS позволяет исключить лишние операции копирования и организовать работу в обход традиционного стека ввода/вывода на базе блочных устройств и механизмов буферизации, а также избавиться от фрагментации выделения памяти при совместном использовании одной ФС в разных контейнерах и multikernel-ядрах. DAXFS работает в режиме Zero-Copy и напрямую отдаёт содержимое файлов из памяти без лишнего дублирования данных в страничном кэше и с возможностью маппинга непрерывных областей физической памяти в каждый экземпляр контейнера или ядра. Дополнительно поддерживается использование API dma-buf для использования памяти, экспортируемой GPU, FPGA/SmartNIC или CXL-устройствами.

ФС работает в режиме только для чтения и инициализируется через загрузку в память предварительно подготовленного образа ФС, что упрощает реализацию, позволяет избавиться от выполнения операций выделения памяти во время работы и исключает усложнённые механизмы управления устройством.

Ключевой областью использования DAXFS называется применение совместно с технологией Multikernel, позволяющей на одном физическом компьютере выполнять несколько независимых экземпляров ядра Linux, которые имеют прямой доступ к аппаратным ресурсам и могут использоваться для запуска нескольких изолированных системных окружений.

DAXFS также может применяться для организации совместного доступа нескольких контейнеров или ядер к базовому системному образу, размещённому в разделяемой памяти; снижению накладных расходов при обращении к информации в памяти аппаратных ускорителей; организации обращения к памяти с нескольких хостов без сетевого ввода-вывода или к постоянной памяти, используя устройства на базе шины CXL (Compute Express Link).

  1. Главная ссылка к новости (https://lore.kernel.org/lkml/C...)
  2. OpenNews: Представлен Multikernel, механизм для одновременного выполнения нескольких ядер Linux
  3. OpenNews: Выпуск отказоустойчивой файловой системы LittleFS 2.10
  4. OpenNews: Открыт код распределённой файловой системы 3FS, используемой в DeepSeek
  5. OpenNews: Открыт код распределённой файловой системы TernFS
  6. OpenNews: Компания Huawei предложила новую ФС EROFS для ядра Linux
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/64674-daxfs
Ключевые слова: daxfs, ramfs, tmpfs
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (25) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Аноним (-), 12:26, 25/01/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Эх, а мог бы назвать ее DAFXS
    Такой каламбур пропал.

    > ФС работает в режиме только для чтения и инициализируется через загрузку в память предварительно подготовленного образа ФС

    А как записать полученные вычисления обратно?

     
     
  • 2.2, Аноним (2), 12:33, 25/01/2026 [^] [^^] [^^^] [ответить]  
  • +2 +/
    отправь на рецензию в анебе, они потом добавят в образ
     
  • 2.4, онанист (?), 13:02, 25/01/2026 [^] [^^] [^^^] [ответить]  
  • +/
    FXS знаю
    а причём тут DA?
     
     
  • 3.5, алек емпире (?), 13:13, 25/01/2026 [^] [^^] [^^^] [ответить]  
  • +/
    типа DA-108
     
  • 3.12, Аноним (12), 15:51, 25/01/2026 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Блин какие тут все умные.
    Ты просто прочитай вслух DAFXS как ДАФАКС ))

    Именно нечто подобное будут говорить бетатестеры этой поделки.

     

  • 1.6, Аноним (6), 13:14, 25/01/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Его дерьмо оказалось не нужным, он теперь пристройку к нему делает. В ядро это, если платиновые спонсоры не надавят, никогда не примут. Ибо дублирование подсистем, за это RaiserFS выперли.
     
     
  • 2.7, Аноним (7), 13:26, 25/01/2026 Скрыто ботом-модератором     [к модератору]
  • +2 +/
     
  • 2.13, Аноним (12), 15:54, 25/01/2026 [^] [^^] [^^^] [ответить]  
  • +/
    > В ядро это, если платиновые спонсоры не надавят, никогда не примут.

    А зачем принимать в ядро то, что не нужно платиновым спонсорам?
    Ну не всякие же бомжподелки брать от шишкиных или мутных кентов, за которыми по сути никакой поддержки нет.

    Если нечто нужно корпрации это значти что оно нужно куче людей.
    А корпорация будет помогать в разработке.

     
     
  • 3.17, Аноним (-), 17:06, 25/01/2026 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > Ну не всякие же бомжподелки брать от шишкиных или мутных кентов, за
    > которыми по сути никакой поддержки нет.

    У шишкина и кента есть кое-что общее: оба #$%нутые на всю голову!

    Первый настолько фрик что встал в позу и заявил что переделывать на механизмы линя ничего не будет. Берите, дескать, 100500 дублирующегося кода от гения с той же фичностью. Code reuse, bloat, проблемы майнтайнеров и прочее ненужно? Это не барское дело. Майнтайнеры и вынули свои NAK'и из кармана.

    Второй чуть менее фриканут и все же на минималочках под линуха отрихтовал. Но как оказалось - тоже зазнался, стал с всеми майнтайнерами на ножах, прочитал Торвальдсу лекцию на тему выпуска релизов (лол!) и сам ему сказал что так и сяк bcachefs надо другие тайминги. Торвальдс и сообщил что коли так - майнлайн вам не подходит. И при очередном выпаде в адрес блочнофайлушников - таки применил эту идею, раз по хорошему не допирает.

    > Если нечто нужно корпрации это значти что оно нужно куче людей.
    > А корпорация будет помогать в разработке.

    Сабж в принципе может зайти всяким клаудам-гиперскалерам и прочим любителям контейнеров. Ибо позволяет допустим юзать несколько кернелей и контейнеров - шаря при этом 1 фс в физической памяти. Это нехило экономит место в RAM/flash (везде где DAX актуален, сие подразумевает адресуемый доступ по типу NVDIMM если это энергонезависимое). При ломовой скорости операций.

     
     
  • 4.26, Аноним (12), 19:25, 25/01/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Всё намного проще. Шишкину влом поддерживать ФС в ядре, ему важны математические выкладки. В ядре люди пашут. А он не хотел пахать.

    Кент, как и Рейзер - гений. Про него гадости не говори. Ну были тёрки с Линуксом. Чуток остынет и вернётся в ядро. И будет у нас новая классная файловая система.

     
     
  • 5.28, Аноним (2), 19:34, 25/01/2026 [^] [^^] [^^^] [ответить]  
  • +/
    конечно не будет
     
  • 3.18, Аноним (18), 17:27, 25/01/2026 [^] [^^] [^^^] [ответить]  
  • +/
    >мутных кентов, за которыми по сути никакой поддержки нет

    Ты же в курсе, что без Кента у тебя бы все файловые системы в разы медленее работали?

     
  • 2.14, Аноним (14), 15:54, 25/01/2026 [^] [^^] [^^^] [ответить]  
  • –2 +/
    > Ибо дублирование подсистем, за это RaiserFS выперли.

    Шишкин, перелогиньтесь!

    RaiserFS выперли потому что поддерживать не было некому, когда аффтара-шиза уперли в тюрячку. Плюс сам RaiserFS нечего толкового из себя не представляет.

     
     
  • 3.19, Аноним (19), 17:27, 25/01/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Шишкин, перелогиньтесь!
    > RaiserFS выперли потому что поддерживать не было некому, когда аффтара-шиза уперли в
    > тюрячку. Плюс сам RaiserFS нечего толкового из себя не представляет.

    Называя вещи своими именами это как-то так:
    1) Reiser3 - заброшка, которую никто не собирался рефакторить на актуальные апя. Что начинает клинть развитие ядра. За что и пострадало, собственно.

    2) Reiser4 - технически непригоден для интеграции в майнлайн. Интеграция с линухом - хромая. Куча дублированого кода, "затосвое", во имя луны. В майнлайне кусок проблем - никому не надо. А без нормальной интеграции с ними и процессом разработки это будет - оно. И все в курсе. Шишкин тоже об этом догадался - но потом и сложным способом, профачив проект. Когда разработка ядра ушла вперед, а он заметил что как-то не в теме, с новыми ядрами оно не работает, он в формировании тех апей участие не принимал - и поэтому ему оно "как снег на голову" и надо дофига времени на рефакторы оказывается убить.

    Тем временем оказалось что в тренде low overhead и вообще современные файлухи надо дизайнить совсем не так как ...цать лет назад :)

    3) Reiser5 - это vaporware. Куча скетчей, концептов, набросков и что там еще. Которые, однако, ни во что практически значимое не трансформируются.

    Итого: заброшка, не интегрированый с линем недопилок и vaporware. Выбирайте любой!

     
  • 3.27, Аноним (12), 19:28, 25/01/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Алень ты чо гадости про гениального Рейзера тут пишешь? Ты чо такой борзый?
     
  • 2.24, Аноним (24), 18:47, 25/01/2026 [^] [^^] [^^^] [ответить]  
  • +/
    RaiserFS никто не выпирал, эта гадость оказалась никому не нужна.
     

  • 1.8, Аноним (8), 14:43, 25/01/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    Чем оно отличается от:
    tmpfs on /sys/fs/cgroup type tmpfs (ro)
     
     
  • 2.10, дохтурЛол (?), 14:48, 25/01/2026 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Если бы это только было написано прям в новости... но кто ж её читает дальше заголо
     
  • 2.21, Аноним (19), 17:32, 25/01/2026 [^] [^^] [^^^] [ответить]  
  • +/
    > Чем оно отличается от:
    > tmpfs on /sys/fs/cgroup type tmpfs (ro)

    Тем что новости читать иногда надо до того как коментить. В отличие от tmpfs сие скипает большую часть классического блочнофайлушного стека. Которй так то на тех скоростях вносит немало оверхеда а простые вещи типа дедубликации (sharing памяти) становятся совсем не простыми.

     
  • 2.23, Аноним (23), 17:45, 25/01/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Тем что это DAX
     

  • 1.9, Kilrathi (ok), 14:43, 25/01/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    И чем это лучше встроенных в ядра тех же memmap phram и тп?
    Резервируешь сколько нужно и используешь.
    «Упрощает реализацию, резервирование и операции»
    Да куда уж проще то:
    Есть же старые проверенные
    dd if=~/.ssh/id of=/dev/mem bs=1 seek=$((0xXXX))
    и
    cat /sys/block/pmem0/device/mysshid
     
     
  • 2.22, Аноним (22), 17:37, 25/01/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Дык то сырой кусок памяти, а это ФС. Видать можно весь /usr например в него забить и в куче контейнеров смонтировать напрямую. Безо всякого оверхеда. Каким нибудь хостерам и датацентрам оно может и надо, мне фиолетово.
     

  • 1.15, Аноним (15), 16:53, 25/01/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > для работы в обход страничного кэша и прямого обращения к разделяемой физической памяти. ... интеграции DAXFS в основной состав ядра

    Здесь же не будет 10-летних уязвимостей, нет?

     
     
  • 2.20, Аноним (19), 17:31, 25/01/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Здесь же не будет 10-летних уязвимостей, нет?

    Конечно нет. Если вы написали код вчера - в нем технически невозможно получить десятилетнюю уязвимост. Приходите через десять лет, тогда виднее будет! :)

     

  • 1.25, Аноним (25), 18:55, 25/01/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    (Direct Access)XFS
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2026 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру