The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Индекс форумов
Составление сообщения

Исходное сообщение
"Выпуск операционной системы Redox OS 0.5, написанной на язык..."
Отправлено opennews, 25-Мрт-19 08:03 
После года разработки подготовлен (https://www.redox-os.org/news/release-0.5.0/) выпуск операционной системы Redox 0.5 (http://www.redox-os.org), разработанной с использованием  языка Rust и концепции микроядра. Наработки проекта распространяются (https://github.com/redox-os/redox) под свободной лицензией MIT. Для тестирования в VirtualBox или QEMU предложены (https://gitlab.redox-os.org/redox-os/redox/-/jobs/10824/arti.../) готовые загрузочные образы.

Пользовательское окружение в Redox построено на базе графической оболочки  Orbital (https://www.opennet.ru/opennews/art.shtml?num=38934), работающей поверх Wayland. В качестве web-браузера применяется Netsurf (https://www.opennet.ru/opennews/art.shtml?num=41855). Операционная система использует концепцию микроядра, при котором на уровне ядра обеспечивается только взаимодействие между процессами и управление ресурсами, а вся остальная функциональность вынесена в библиотеки, которые могут использоваться как ядром, так и пользовательскими приложениями. Все драйверы выполняются в пространстве пользователя  в изолированных sandbox-окружениях. Для совместимости с существующими приложениями предоставляется специальная POSIX-прослойка, позволяющая запускать многие программы без портирования.

Redox развивается в соответствии с философией Unix c заимствованием некоторых идей из  SeL4, Minix и Plan 9.  В системе применяется принцип "все есть URL". Например, для записи в лог может использоваться URL "log://", для взаимодействия между процессами "bus://", для сетевого взаимодействия "tcp://" и т.п. Модули, которые могут быть реализованы в форме драйверов, расширений ядра и пользовательских приложений, могут регистрировать свои обработчики URL, например, можно написать модуль обращения к портам ввода/вывода и привязать его к URL "port_io://", после чего можно использовать его для доступа к 60 порту через открытие URL "port_io://60".


Проектом также развивается собственный пакетный менеджер (https://github.com/redox-os/pkgutils), набор стандартных утилит (binutils, coreutils, netutils, extrautils), командная оболочка ion (https://github.com/redox-os/ion), vim-подобный текстовый редактор sodium (https://github.com/redox-os/sodium), сетевой стек и файловая система TFS (https://github.com/redox-os/tfs), развиваемая на основе идей ZFS (модульный вариант ZFS на языке Rust). Конфигурация задаётся на языке Toml (https://github.com/toml-lang/toml). Система поддерживает запуск на процессорах с архитектурой x86_64 c VBE-совместимой графической картой (nvidia, intel,  amd), AHCI-дисками и сетевыми картами на базе чипов E1000 или RTL8168.


Из новшеств, добавленных в выпуске Redox 0.5, можно отметить:


-  Предложена собственная стандартная Си-библиотека Relibc (https://github.com/redox-os/relibc), написанная на языке Rust. Relibc позиционируется как переносимая реализация стандартной библиотеки Си, соответствующая стандарту POSIX и способная работать не только в Redox, но и в дистрибутивах на базе ядра Linux.
Ранее в Redox в качестве стандартной библиотеки применялся форк (https://github.com/redox-os/newlib) библиотеки newlib (https://github.com/redox-os/newlib) от проекта Сygwin, но он не устраивал разработчиков с точки зрения безопасности и кросс-платформенности. На текущей стадии развития Relibc уже намного превосходит newlib по функциональности;

-  Подготовлены новые загрузчики bootloader-coreboot (https://gitlab.redox-os.org/redox-os/bootloader-coreboot) и bootloader-efi (https://gitlab.redox-os.org/redox-os/bootloader-efi) для coreboot и EFI, на основе которых сформированы загрузочные образы. Написаны библиотеки для работы с EFI на языке Rust и загрузочный код (payload для coreboot) на Rust. Загрузчики могут применяться обособленно от Redox и в других проектах;


-  Система обработки событий переработана для предоставления корректной поддержки вызовов  select и poll;
-  Реализована полноценная поддержка функций отображения в память (mmap);
-  Добавлена поддержка Pthreads и предложены дополнительные системные вызовы для обработки сигналов;

-  Улучшена совместимость с LLVM, что позволило обеспечить сборку rustc и Mesa (c llvmpipe);


-  Благодаря переходу на новую системную библиотеку удалось добиться поддержки многих новых приложений (https://static.redox-os.org/pkg/x86_64-unknown-redox/repo.toml). Для установки в Redox подготовлены готовые пакеты с библитеками SDL2, ffmpeg, cairo, gstreamer, pcre, glib, pixman, libiconv, libsodium и gettext, набором компиляторов llvm, реализацией OpenGL/Vulkan Mesa, эмуляторами  scummvm, dosbox и mgba, играми eduke32 (Duke Nukem 3D), openttd и FreeDoom. Всего добавлено 62 новых пакета.

URL: https://www.redox-os.org/news/release-0.5.0/
Новость: https://www.opennet.ru/opennews/art.shtml?num=50387

 

Ваше сообщение
Имя*:
EMail:
Для отправки ответов на email укажите знак ! перед адресом, например, !user@host.ru (!! - не показывать email).
Более тонкая настройка отправки ответов производится в профиле зарегистрированного участника форума.
Заголовок*:
Сообщение*:
 
При общении не допускается: неуважительное отношение к собеседнику, хамство, унизительное обращение, ненормативная лексика, переход на личности, агрессивное поведение, обесценивание собеседника, провоцирование флейма голословными и заведомо ложными заявлениями. Не отвечайте на сообщения, явно нарушающие правила - удаляются не только сами нарушения, но и все ответы на них. Лог модерирования.



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру