Ядро Redox: call и std_fs_call научились принимать несколько дескрипторов сразу

29.05.2026

В ядре добавлены варианты системных вызовов call и std_fs_call, принимающие сразу несколько файловых дескрипторов. Обёртки появились в крейтах libredox и event.

Что было неудобно

Обмен данными между двумя дескрипторами — типичная задача, и в Redox она ложилась на пользователя. Передать данные из одного файла в другой внутри одной операции нельзя: есть только один вызов на дескриптор. Код вынужден был читать в буфер и записывать сам, то есть держать данные у себя.

Для программы на Rust это означало лишнее промежуточное хранение там, где обойтись можно было без него.

Что добавлено

Появились варианты call и std_fs_call, которые принимают несколько файловых дескрипторов в одной операции. Объявление добавлено 27 мая, реализация — 29-го.

Одновременно обёртки выложены в крейты: libredox — базовая обвязка системных вызовов, event — цикл событий. То есть новое доступно не только из Rust, но и в привычных Rust-крейтах.

Оригинал

Коммиты feat: Add multiple fds variant от 27 мая и feat: Implement multiple fds variant от 29 мая 2026 года в репозитории redox-os/kernel, обёртки — Add multiple fds от 27 мая в redox-os/libredox и redox-os/event; сводка «This Month in Redox — May 2026», раздел «System Improvements»

Упоминаний: 1 · Просмотров: 2