На данном этапе разработки в Moss реализован 51 системный вызов Linux и обеспечена бинарная совместимость с приложениями для Linux, достаточная для запуска командной оболочки Bash и большинства утилит из набора BusyBox. Из особенностей архитектуры Moss отмечается использование модели async/await для обеспечения асинхронного выполнения компонентов ядра, исключающей основные классы взаимных блокировок. В форме асинхронно выполняемых функций реализованы все нетривиальные системные вызовы.
Основные возможности:
- Система управления памятью с поддержкой страниц памяти в режиме CoW (Copy-on-Write), таблиц страниц памяти, асинхронных функций копирования памяти между ядром и пространством пользователя, обработки исключений (page fault) на стороне ядра и пространства пользователя.
- Система управления процессами с планировщиком задач и поддержкой миграции задач через IPI (inter-processor interrupt). Поддержка ответвления процессов через вызов clone(). Возможности для доставки сигналов процессам и потокам.
- Асинхронно работающий слой VFS (Virtual File System), блочное устройство Ramdisk, драйвер FAT32 и устройство devtmpfs.
- Вынос основной функциональности в библиотеку libkernel, не привязанную к аппаратным архитектурам.
- HAL-прослойка (Hardware Abstraction Layer) для обеспечения поддержки оборудования.
- Тестовый набор, включающий более 230 тестов.
Из существенных ограничений отмечается отсутствие сетевой подсистемы и наличие лишь урезанного драйвера файловой системы, поддерживающего ФС Fat32 в режиме толь для чтения. Среди приоритетных задач упомянуто продолжение реализации системных вызовов Linux, создание TCP/IP стека, поддержка балансировки нагрузки в планировщике задач и предоставление полноценного драйвера для файловой системы (ext2/4).
Источник: http://www.opennet.ru/opennews/art.shtml?num=64342
