在真實硬體上使用 Redox OS 的進展

Джереми Соллер (Jeremy Soller), основатель операционной системы 氧化還原, написанной на языке Rust, 我告訴 об успешном использовании Redox на ноутбуке System76 Galaga Pro (Джереми Соллер работает в компании System76). Из уже полностью работоспособных компонентов отмечаются клавиатуры, тачпад, накопитель (NVMe) и Ethernet.

Эксперименты с Redox на ноутбуке уже позволили улучшить работу драйверов, добавить поддержку HiDPI в некоторые приложения и создать новые компоненты, такие как pkgar, упрощающие установку Redox с Live-образов. Среди задач, на которых теперь сфокусировано внимание упоминается достижение возможности самосборки системы (сборки Redox из окружения на базе Redox). Через несколько месяцев Соллер планирует на одном из компьютеров перейти к постоянной работе над Redox из рабочего окружения на базе Redox, после того как будут внесены некоторые доработки, связанные с компилятором rustc.

Применяемая в Redox концепция микроядра упрощает разработку драйверов, так как можно перекомпилировать и перезапускать подсистему, обеспечивающую функционирование драйверов, без остановки работы. Ожидается, что разработка в окружении на базе Redox позволит повысить эффективность портирования программ и решения проблем с поддержкой оборудования. Например, планируется довести до полноценного состояния USB-стек и добавить графические драйверы.

在真實硬體上使用 Redox OS 的進展

Напомним, что операционная система развивается в соответствии с философией Unix и заимствует некоторые идей из SeL4, Minix и Plan 9. Redox использует концепцию микроядра, при котором на уровне ядра обеспечивается только взаимодействие между процессами и управление ресурсами, а вся остальная функциональность вынесена в библиотеки, которые могут использоваться как ядром, так и пользовательскими приложениями. Все драйверы выполняются в пространстве пользователя в изолированных sandbox-окружениях. Для совместимости с существующими приложениями предоставляется специальная POSIX-прослойка, позволяющая запускать многие программы без портирования.

В системе применяется принцип «все есть URL». Например, для записи в лог может использоваться URL «log://», для взаимодействия между процессами «bus://», для сетевого взаимодействия «tcp://» и т.п. Модули, которые могут быть реализованы в форме драйверов, расширений ядра и пользовательских приложений, могут регистрировать свои обработчики URL, например, можно написать модуль обращения к портам ввода/вывода и привязать его к URL «port_io://», после чего можно использовать его для доступа к 60 порту через открытие URL «port_io://60». Наработки проекта 傳播 под свободной лицензией MIT.

Пользовательское окружение в Redox 建成 на базе собственной графической оболочки 軌道 (不要混淆 其他 оболочной 軌道, использующей Qt и Wayland) и тулкита OrbTk, предоставляющего API, похожий на Flutter, React и Redux. В качестве web-браузера применяется Netsurf. Проектом также развивается собственный 套件管理器, набор стандартных утилит (binutils, coreutils, netutils, extrautils), командная оболочка 離子, стандартная Си-библиотека relibc, vim-подобный текстовый редактор , сетевой стек и файловая система TFS, развиваемая на основе идей ZFS (модульный вариант ZFS на языке Rust). Конфигурация задаётся на языке 湯姆.

在真實硬體上使用 Redox OS 的進展

來源: opennet.ru

添加評論