Fa'asa'olotoina o le Redox OS 0.7 faiga fa'aoga na tusia i le Rust

После полутора лет разработки опубликован выпуск операционной системы Redox 0.7, разработанной с использованием языка Rust и концепции микроядра. Наработки проекта распространяются под свободной лицензией MIT. Для тестирования Redox OS предложены установочные и Live-образы, размером 75 МБ. Сборки сформированы для архитектуры x86_64 и доступны для систем с UEFI и BIOS.

При подготовке нового выпуска основное внимание было уделено обеспечению работы на реальном оборудовании. Основные новшества:

  • Полностью переписан загрузчик, в котором унифицирован и преимущественно написан на Rust код для загрузки на системах с BIOS и UEFI. Изменение загрузчика позволило существенно расширить спектр поддерживаемого оборудования.
  • В ядре помимо исправления ошибок проведена работа по повышению производительности и расширению поддержки оборудования. Специфичные для CPU переменные переведены на использование регистра GS. Обеспечено отражение (мапинг) всей физической памяти, прекращено использование рекурсивных страниц памяти. Ассемблерный код в inline-вставках переписан для улучшения совместимости с будущими выпусками компилятора.
  • Добавлена начальная поддержка архитектуры AArch64.
  • Осуществлён переход на обработку всех файловых путей в кодировке UTF-8.
  • Код для работы с ACPI AML (ACPI Machine Language) Specification — uefi.org перенесён из ядра в фоновый процесс acpid, выполняемый в пользовательском пространстве.
  • Содержимое Initfs перенесено в новый файл, что упростило формирование пакетов.
  • Файловая система RedoxFS переписана и переведена на использование механизма CoW (Copy-on-Write), при котором изменения не перезаписывают информацию, а сохраняются в новое место, что позволило добиться существенного повышения надёжности. Из новых возможностей RedoxFS отмечается поддержка транзакционных обновлений, шифрования данных с использованием алгоритма AES, а также заверения данных и метаданных цифровыми подписями. Обеспечено совместное использование кода ФС в системе и загрузчике.
  • Продолжено усовершенствование развиваемой проектом стандартной Си-библиотеки Relibc, способной работать не только в Redox, но и в дистрибутивах на базе ядра Linux. Внесённые изменения упростили перенос различных программ в Redox и решили проблемы со многими программами и библиотеками, написанными на языке Си.
  • Подготовлена версия компилятора rustc, способная запускаться в Redox. Из остающихся задач отмечается оптимизация производительности и адаптация пакетного менеджера cargo для работы в окружении Redox.

Fa'asa'olotoina o le Redox OS 0.7 faiga fa'aoga na tusia i le Rust

O loʻo faʻatulagaina le faiga faʻaogaina e tusa ai ma le filosofia a Unix ma nono mai nisi o manatu mai SeL4, Minix ma Fuafuaga 9. Redox faʻaaogaina le manatu o se microkernel, lea e naʻo fegalegaleaiga i le va o faiga ma le puleaina o punaoa e tuʻuina atu i le kernel level, ma isi mea uma. galuega fa'atino e tu'u i totonu o faletusi e mafai ona fa'aogaina uma le fatu ma fa'aoga fa'aoga. O aveta'avale uma e taufetuli i avanoa fa'aoga i totonu o si'osi'omaga pu'upu'u oneone. Mo le fetaui ma talosaga o loʻo i ai, o loʻo tuʻuina atu se faʻapitoa POSIX layer, lea e mafai ai ona e faʻatautaia le tele o polokalame e aunoa ma le faʻaogaina.

E faʻaaogaina e le faiga le "mea uma o se URL" mataupu faavae. Mo se faʻataʻitaʻiga, o le URL "log: //" e mafai ona faʻaogaina mo le taina, "bus://" mo fegalegaleaiga i le va o faiga, "tcp://" mo fesoʻotaʻiga fesoʻotaʻiga, ma isi. Module, lea e mafai ona faʻatinoina i le tulaga o avetaavale, faʻaopoopoga o kernel, ma faʻaoga faʻaoga, e mafai ona resitalaina a latou lava URL, mo se faʻataʻitaʻiga, e mafai ona e tusia se I / O port access module ma fusifusia i le URL "port_io: // ", a maeʻa e mafai ona e faʻaogaina e maua ai le taulaga 60 e ala i le tatalaina o le URL" port_io: // 60 ".

O le siosiomaga faʻaoga i Redox e fausia i luga o le faʻavae o le atigi faʻataʻitaʻi a le Orbital (e le faʻafefeteina ma se isi atigi Orbital e faʻaaogaina Qt ma Wayland) ma le OrbTk toolkit, lea e maua ai se API e tutusa ma Flutter, React ma Redux. Netsurf o loʻo faʻaaogaina e avea o se 'upega tafaʻilagi. O loʻo faʻapena foi e le poloketi lona lava pule o pusa, se seti o faʻaoga masani (binutils, coreutils, netutils, extrautils), o le atigi o le ion command, le C standard library relibc, le sodium vim-like text editor, se faʻapipiʻi fesoʻotaiga ma se faila. faiga. O lo'o fa'atulaga i le gagana Toml.

puna: opennet.ru

Faaopoopo i ai se faamatalaga