Pêşveçûn di karanîna Redox OS-ê de li ser hardware rast

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

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

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

Pêşveçûn di karanîna Redox OS-ê de li ser hardware rast

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

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

Пользовательское окружение в Redox ava kirin на базе собственной графической оболочки Orbital (ku bi hev re neyê şaş kirin din оболочной Orbital, использующей Qt и Wayland) и тулкита OrbTk, предоставляющего API, похожий на Flutter, React и Redux. В качестве web-браузера применяется Netsurf. Проектом также развивается собственный rêveberê pakêtê, набор стандартных утилит (binutils, coreutils, netutils, extrautils), командная оболочка ion, стандартная Си-библиотека relibc, vim-подобный текстовый редактор sodium, сетевой стек и файловая система TFS, развиваемая на основе идей ZFS (модульный вариант ZFS на языке Rust). Конфигурация задаётся на языке Toml.

Pêşveçûn di karanîna Redox OS-ê de li ser hardware rast

Source: opennet.ru

Add a comment