Выпуск Minoca 0.4, операционной системы для потребительских интернет-устройств
30 июня 2017 года
Состоялся релиз операционной системы Minoca 0.4, ориентированной на потребительские интернет-устройства и встраиваемую технику. Код распространяется под лицензией GPLv3. Сборки подготовлены для архитектур x86, ARMv6 и ARMv7, в том числе сформированы загрузочные образы для плат Raspberry Pi 1/2/3, BeagleBone Black, Asus C201, PandaBoard и Galileo, а также эмулятор на основе QEMU.
Операционная система примечательна низким потреблением ресурсов и способна работать в консольном режиме на оборудовании с 5 Мб ОЗУ. Система также изначально нацелена на обеспечение минимального энергопотребления и использует встроенные средства для переключения режимов процессоров, влияющих на потребление энергии, а также может минимизировать число пробуждений фоновых процессов в условиях простоя, что позволяет дольше находиться в глубоких режимах экономии энергопотребления.
Minoca имеет событийно-ориентированную архитектуру, поддерживает многопроцессорные конфигурации, вытесняющую многозадачность, сетевой, беспроводной и USB стеки, файловую систему FAT, ACPI, AHCI, ATA, SD/MMC. Пользователям предоставлен набор драйверов для различных контроллеров, сетевых адаптеров и компонентов аппаратных платформ.
Система модульная - подсистемы ядра отделены друг от друга, а взаимодействие с оборудованием абстрагировано, что позволяет поставлять для разных архитектур единое унифицированное ядро, расширяемое через систему надстроек. Драйверы устройств не привязаны к ядру и оформляются в виде универсальных исполняемых файлов, не зависящих от версии ядра (обновление ядра не требует обновления драйверов) и загружаемых по необходимости.
Для разработки приложений предлагается POSIX-подобный интерфейс, благодаря которому в Minoca уже удалось собрать множество существующих популярных пакетов. В настоящее время для установки из специального репозитория доступно более 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, также применяемый в OpenEmbedded и OpenWrt. В качестве командной оболочки и для выполнения shell-скриптов проектом развивается интерактивный интерпретатор Chalk.
Ключевые новшества Minoca 0.4:
- Реализация графического режима и простого пользовательского окружения на базе X.Org, Mesa3D, GTK+, SDL и оконного менеджера twm. Рассматривались варианты создания графического стека на базе DirectFB и Wayland, но DirectFB был отклонён из-за ограниченного числа приложений, а Wayland/Weston из-за излишних привязок к Linux.
- В состав включён fceux, эмулятор приставок Nintendo Entertainment System (NES), Famicom и Dendy, который используется для тестирования графической и звуковой подсистем, и оценки производительности;
- Реализованы драйверы для контроллеров AHCI (SATA), сетевых карт e1000 (Intel Gigabit Ethernet), USB HID, мышей с интерфейсами USB и PS/2, звуковых карт на базе Intel HD Audio и Raspberry Pi PWM Audio;
Источники
править
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.
Комментарии
Если вы хотите сообщить о проблеме в статье (например, фактическая ошибка и т. д.), пожалуйста, используйте обычную страницу обсуждения.
Комментарии на этой странице могут не соответствовать политике нейтральной точки зрения, однако, пожалуйста, придерживайтесь темы и попытайтесь избежать брани, оскорбительных или подстрекательных комментариев. Попробуйте написать такие комментарии, которые заставят задуматься, будут проницательными или спорными. Цивилизованная дискуссия и вежливый спор делают страницу комментариев дружелюбным местом. Пожалуйста, подумайте об этом.
Несколько советов по оформлению реплик:
- Новые темы начинайте, пожалуйста, снизу.
- Используйте символ звёздочки «*» в начале строки для начала новой темы. Далее пишите свой текст.
- Для ответа в начале строки укажите на одну звёздочку больше, чем в предыдущей реплике.
- Пожалуйста, подписывайте все свои сообщения, используя четыре тильды (~~~~). При предварительном просмотре и сохранении они будут автоматически заменены на ваше имя и дату.
Обращаем ваше внимание, что комментарии не предназначены для размещения ссылок на внешние ресурсы не по теме статьи, которые могут быть удалены или скрыты любым участником. Тем не менее, на странице комментариев вы можете сообщить о статьях в СМИ, которые ссылаются на эту заметку, а также о её обсуждении на сторонних ресурсах.