Вышла ОС на Rust и микроядерной архитектуре — Redox OS 0.9.0
13:18, 11.09.2024
Операционная система Redox 0.9, которая разработана на языке Rust и концепции микроядра, была официально выпущена 9 сентября 2024 года сообществом Redox OS после двух лет разработки. Исходный код был опубликован на GitLab под лицензией MIT, а для тестирования Redox OS предлагает загрузочные live-окружения для физического оборудования и виртуальных машин.
Демонстрационная версия содержит набор игр (DOOM, Neverball, Neverputt, sopwith, syobonaction), а также обучающие программы. Включает музыкальный плеер с поддержкой FLAC и WAV, web-браузер, ридер изображений, текстовый редактор Sodium для работы через консоль, файловый менеджер, терминальный эмулятор и текстовый редактор из проекта COSMIC. Вся система работает на основе собственной графической оболочки Orbital.
В Redox используется микроядерная архитектура, где на уровне ядра реализуются только межпроцессное взаимодействие и управление ресурсами, а остальная функциональность ядра и пользовательских программ, размещенная в библиотеках. Все драйверы работают в пространстве пользователя в изолированных средах. Для обеспечения совместимости с существующими программами система предоставляет POSIX-слой, позволяющий запускать многие приложения без необходимости их переноса.
Среди оборудования, поддерживаемого Redox 0.9 находятся клавиатуры, мыши, тачпады (устройства с USB-интерфейсом), выводы графики и звуковые карты, интерфейсы SATA (AHCI, IDE) и NVMe.
Что нового в Redox 0.9:
- Улучшенная работа приложения благодаря расширенным возможностям управления потоками, памятью и сигналами.
- Перенесенные файловый менеджер, текстовый редактор, и эмулятор терминала из окружения COSMIC.
- Новый уровень переносимости программ из Linux и BSD-систем, наряду с увеличением количества портов до 1700.
- Портирование HTTP-сервера Apache, Simple HTTP Server, RustPython, GNU Make, Lua, Perl 5, текстовых редакторов GNU Nano и Helix.
- Повышенная производительность системы, включая файловую — RedoxFS, систему управления памятью, и т.д.
- Ускоренная работа с виртуальными машинами.
- Поддержка GUI-библиотек (Slint, Iced и winit) в дисплейном сервере Orbital и воспроизведение музыки и видео из GUI-программ через двойной щелчок мышью.
- Лучшая совместимость с программами и библиотеками POSIX/Linux благодаря использованию Unix-формата файловых путей.
- Переформатирование Си-библиотеки Relibc на полноценную Rust структуру.
- Улучшена поддержка архитектуры ARM64 (Aarch64) и достигнута частичная совместимость с платой Raspberry Pi 3B+.
- Более быстрая работа загрузчика для UEFI.
- Расширенные возможности драйвера Contain и его добавленная демонстрация (через desktop-contain.toml).
- Улучшены знакомые, PCI и PCIe, и добавлены новые, VirtIO, драйверы.