Выпуск операционной системы Redox OS 0.8, написанной на языке Rust

Автор Сообщение
news_bot ®

Стаж: 4 года 9 месяцев
Сообщений: 23523

Создавать темы news_bot ® написал(а)
24-Ноя-2022 09:58

Опубликован выпуск операционной системы Redox 0.8, разработанной с использованием языка Rust и концепции микроядра. Наработки проекта распространяются под свободной лицензией MIT. Для тестирования Redox OS предложены демонстрационные сборки размером 768 МБ, а также образы с базовым графическим окружением (256 МБ) и консольным инструментарием для серверных систем (256 МБ). Сборки сформированы для архитектуры x86_64 и доступны для систем с UEFI и BIOS. Демонстрационный образ кроме графического окружения Orbital включает эмулятор DOSBox, подборку игр (DOOM, Neverball, Neverputt, sopwith, syobonaction), обучающие программы, музыкальный проигрыватель rodioplay и текстовый редактор Sodium.
Операционная система развивается в соответствии с философией Unix и заимствует некоторые идеи из SeL4, Minix и Plan 9. Redox использует концепцию микроядра, при котором на уровне ядра обеспечивается только взаимодействие между процессами и управление ресурсами, а вся остальная функциональность вынесена в библиотеки, которые могут использоваться как ядром, так и пользовательскими приложениями. Все драйверы выполняются в пространстве пользователя в изолированных sandbox-окружениях. Для совместимости с существующими приложениями предоставляется специальная POSIX-прослойка, позволяющая запускать многие программы без портирования.
В системе применяется принцип "все есть URL". Например, для записи в лог может использоваться URL "log://", для взаимодействия между процессами "bus://", для сетевого взаимодействия "tcp://" и т.п. Модули, которые могут быть реализованы в форме драйверов, расширений ядра и пользовательских приложений, могут регистрировать свои обработчики URL, например, можно написать модуль обращения к портам ввода/вывода и привязать его к URL "port_io://", после чего можно использовать его для доступа к 60 порту через открытие URL "port_io://60".
Пользовательское окружение в Redox построено на базе собственной графической оболочки Orbital (не путать с другой оболочкой Orbital, использующей Qt и Wayland) и тулкита OrbTk, предоставляющего API, похожий на Flutter, React и Redux. В качестве web-браузера применяется Netsurf. Проектом также развивается собственный пакетный менеджер, набор стандартных утилит (binutils, coreutils, netutils, extrautils), командная оболочка ion, стандартная Си-библиотека relibc, vim-подобный текстовый редактор sodium, сетевой стек и файловая система. Конфигурация задаётся на языке Toml.
В новом выпуске продолжена работа по обеспечению работы на реальном оборудовании. Помимо архитектуры x86_64 добавлена возможность работы на 32-разрядных системах x86 (i686, Pentium II и новее). Ведётся портирование на CPU ARM64 (aarch64). Работа на реальном ARM-оборудовании пока не поддерживается, но возможна загрузка при эмуляции ARM64 в QEMU. По умолчанию активирована звуковая подсистема и обеспечена начальная поддержка многомониторных конфигураций (на системах с фреймбуфером UEFI). Из оборудования, которое поддерживается в Redox OS, названы звуковых чипы AC’97 и Intel HD Audio, вывод графики через API VESA BIOS или UEFI GOP, Ethernet (Intel 1/10 Gigabit Ethernet, Realtek RTL8168), устройства ввода (клавиатуры, мыши, тачпады), SATA (AHCI, IDE) и NVMe. Поддержка Wi-Fi и USB пока не доведена до готовности (USB работает только в QEMU).
Другие новшества:
  • Объединены загрузочные образы для систем с BIOS и EFI.
  • Реализация системных вызовов clone и exec перенесена в пространство пользователя.
  • Упрощён процесс загрузки. Внедрена программа bootstrap, запускаемая ядром и обеспечивающая дальнейшую загрузку ELF-файлов, таких как процесс init.
  • Добавлена программа escalated для обеспечения работы setuid-программ, таких как sudo.
  • Для упрощения создания и установки фоновых процессов предложен crate-пакет redox-daemon.
  • Переделана сборочная система, в которой появилась возможность сборки для разных архитектур в одном дереве исходных текстов. Для упрощения сборки разных конфигураций предложен скрипт build.sh. Добавлена поддержка сборки с использованием инструментария podman. Сборка ядра, загрузчика и initfs унифицирована с другими пакетами.
  • Добавлена демонстрационная конфигурация для сборки примеров программ, не входящих в базовый загрузочный образ с графическим окружением.
  • В звуковую подсистему audiod добавлена поддержка программного управления громкостью.
  • Добавлен драйвер для звуковых чипов на базе AC’97. Улучшен драйвер для чипов Intel HD Audio.
  • Добавлен драйвер для IDE-контроллеров.
  • Улучшена поддержка накопителей NVMe.
  • Улучшены драйверы PCI, PS/2, RTL8168, USB HID, VESA.
  • Переработана организация процесса установки: загрузчик, bootstrap, ядро и initfs теперь размещаются в каталоге /boot.
  • В ядре упрощена работа с памятью, добавлена возможность манипуляции с адресными пространствами из пользовательского уровня.
  • В графической оболочке Оrbital добавлена поддержка многомониторных систем, улучшена обработка курсора мыши, добавлен индикатор для изменения громкости. В меню реализована возможность разделения приложений по категориям.

===========
Источник:
OpenNet.RU
===========

Похожие новости: Теги для поиска: #_redox, #_rust
Профиль  ЛС 
Показать сообщения:     

Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы

Текущее время: 04-Дек 13:45
Часовой пояс: UTC + 5