Пускането на операционната система Redox OS 0.8, написана на езика Rust.

Издадена версия на операционната система 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. Като уеб браузър се използва Netsurf. Проектът също така развива собствен пакетен мениджър, набор от стандартни утилити (binutils, coreutils, netutils, extrautils), команден интерпретатор ion, стандартната C библиотека 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

Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри 🔥 Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри | ProHoster