Состоялся (https://blog.minocacorp.com/minoca-os-0-4-we-love-the-eighti...) релиз операционной системы Minoca 0.4 (http://www.minocacorp.com), ориентированной на потребительские интернет-устройства и встраиваемую технику. Код распространяется (https://github.com/minoca/os) под лицензией GPLv3. Сборки подготовлены (http://www.minocacorp.com/download/) для архитектур x86, ARMv6 и ARMv7, в том числе сформированы загрузочные образы для плат Raspberry Pi 1/2/3, BeagleBone Black, Asus C201, PandaBoard и Galileo, а также эмулятор на основе QEMU.Операционная система примечательна низким потреблением ресурсов и способна работать на оборудовании с 5 Мб ОЗУ. Система также изначально нацелена на обеспечение минимального энергопотребления и использует встроенные средства для переключения режимов процессоров, влияющих на потребление энергии, а также может минимизировать число пробуждений фоновых процессов в условиях простоя, что позволяет дольше находиться в глубоких режимах экономии энергопотребления.
Minoca имеет событийно-ориентированную архитектуру, поддерживает многопроцессорные конфигурации, вытесняющую многозадачность, сетевой, беспроводной и USB стеки, файловую систему FAT, ACPI, AHCI, ATA, SD/MMC. Пользователям предоставлен набор драйверов (http://www.minocacorp.com/documentation/developers/knowledge.../) для различных контроллеров, сетевых адаптеров и компонентов аппаратных платформ.
Система модульная (http://www.minocacorp.com/documentation/developers/knowledge.../) - подсистемы ядра отделены друг от друга, а взаимодействие с оборудованием абстрагировано, что позволяет поставлять для разных архитектур единое унифицированное ядро, расширяемое через систему надстроек. Драйверы устройств не привязаны (http://www.minocacorp.com/documentation/developers/knowledge.../) к ядру и оформляются в виде универсальных исполняемых файлов, не зависящих от версии ядра (обновление ядра не требует обновления драйверов) и загружаемых по необходимости.
Для разработки приложений предлагается POSIX-подобный интерфейс, благодаря которому в Minoca уже удалось собрать множество существующих популярных пакетов. В настоящее время для установки из специального репозитория (https://gitlab.com/minoca/third-party) доступно более 260 приложений, среди которых GCC, Python 2.7/3.5, Perl, PHP, Ruby, Lua, zsh, bash, binutils, boost, cmake, vim, emacs, git, apache httpd, nginx, MySQL, PostgreSQL, Node.js, OpenLDAP, OpenSSH, unbound, X.Org, GTK+, miniDLNA, Mesa, SDL.
Для установки и обновления программ задействован пакетный менеджер opkg (https://code.google.com/archive/p/opkg/), также применяемый в OpenEmbedded и OpenWrt. В качестве командной оболочки и для выполнения shell-скриптов проектом развивается интерактивный интерпретатор Chalk.
Ключевые новшества Minoca 0.4:
- Реализация графического режима и простого пользовательского окружения на базе X.Org, Mesa3D, GTK+, SDL и оконного менеджера twm. Рассматривались варианты создания графического стека на базе DirectFB и Wayland, но DirectFB был отклонён из-за ограниченного числа приложений, а Wayland/Weston из-за излишних привязок к Linux.
- В состав включён fceux (http://www.fceux.com/web/home.html), эмулятор приставок Nintendo Entertainment System (NES), Famicom и Dendy, который используется для тестирования графической и звуковой подсистем, и оценки производительности;
- Реализованы драйверы для контроллеров AHCI (SATA), сетевых карт e1000 (Intel Gigabit Ethernet), USB HID, мышей с интерфейсами USB и PS/2, звуковых карт на базе Intel HD Audio и Raspberry Pi PWM Audio;
URL: https://blog.minocacorp.com/minoca-os-0-4-we-love-the-eighti...
Новость: http://www.opennet.ru/opennews/art.shtml?num=46787