На выбор предлагаются варианты: QSOE/N с собственным микроядром Skimmer и QSOE/L на базе микроядра seL4, имеющего формальную верификацию надёжности для архитектуры RISC-V. Помимо этого развиваются загрузчик mr-bml на базе GRUB 2.13, стандартная библиотека libc и набор программ quser. В состав набора программ входит командная оболочка qsh на базе mksh, система инициализации и набор типовых unix-утилит, таких как ls, сat, ps, lspci и login.
Микроядро Skimmer использует заимствованную у проекта DragonFly BSD реализацию легковесных потоков в ядре (LWKT, Light Weight Kernel Threads) с привязанными к CPU рабочими очередями и примитивами передачи сообщений msgport. QSOE позволяет использовать разные ядра с одним пользовательским окружением и набором драйверов, не меняющимся при смене ядра. В привязке к ядрам собираются только менеджер задач (taskman) и библиотека libc, выступающая в роли обвязки над QNX-подобными API, предоставляемыми микроядрами.
Код:
┌──────────────────────────────────────────────────────────┐
│ qsh + drivers + utils (dynamically linked)
│
├──────────────────────────────────────────────────────────┤
│ libc.so (shared body; LQ-specific seam in lq/libc/) │
│ rtld
(FreeBSD-derived; BSD-2-Clause)
│
├──────────────────────────────────────────────────────────┤
│ taskman process / memory / path manager
│
│ libtaskman portable taskman body (path / cred /
│
│
syscfg / sync / reloc / cpio / elf)
│
├──────────────────────────────────────────────────────────┤
│ seL4 microkernel (RISC-V Sv39, formally verified)
│
│ elfloader
(loads kernel + taskman)
│
└──────────────────────────────────────────────────────────┘
Источник: https://www.opennet.ru/opennews/art.shtml?num=65768
(opennet.ru, основная лента)