Для ramfs появился системный вызов relpathat с обёртками в libredox

29.05.2026

Для файловой системы в памяти реализован вызов relpathat, возвращающий канонический путь разрешения символических ссылок относительно корня. Обёртки добавлены в крейты libredox и redox-scheme.

Зачем это нужно

В файловой системе, собранной в памяти при загрузке ОС, пути — единственное, что связывает программу с объектом. Имя файла, путь через символическую ссылку, путь с .. — всё это разные строки, указывающие на один объект.

Системе, работающей с такими путями, нужен способ спросить: как этот путь выглядит после разрешения ссылок и относительно корня? Ответ — один канонический вид, который можно сравнивать, хранить и передавать дальше. Именно это и возвращает новый вызов.

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

Вызов relpathat реализован в ramfs — файловой системе в памяти, которая живёт в userspace и обслуживает файлы загрузки. Реализация датирована 29 мая.

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

Почему это касается Rust

libredox — крейт-обвязка системных вызовов для Redox. Новая функция в нём — это новая точка API для любого кода на Rust, который работает с путями внутри userspace. Для автора схемы это инструмент, которого раньше просто не было.

Оригинал

Коммит feat: Implement realpathat for ramfs от 29 мая 2026 года в репозитории redox-os/base, обёртки — feat: Add relpathat и feat: Add relpathat and MultipleFds от 27 мая в redox-os/libredox и redox-os/redox-scheme; сводка «This Month in Redox — May 2026», раздел «Security Improvements»

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