Olivetti M24 8086 CPU
Olivetti M24 8086 CPU

21 марта 2026 года состоялся релиз ELKS 0.9 (Embeddable Linux Kernel Subset) — открытого проекта ядра Linux для работы на ПК с устаревшими 16-разрядными процессорами Intel. Исходные коды решения распространяются на GitHub под лицензией GPLv2.

Проект ELKS работает с процессорами Intel 8086, 8088, 80188, 80186, 80286 и NEC V20/V30 и может использоваться на старых компьютерах класса IBM-PC XT / AT, а также советском компьютере MK-88, винтажной плате Monotech NuXT 2.0 и на SBC / SoC / FPGA, воссоздающих архитектуру IA16.

ELKS Basic на PC-9801UV21 (NEC V30 CPU)
ELKS Basic на PC-9801UV21 (NEC V30 CPU)

Проект ELKS развивается с 1995 года. Разработка решения начиналась как ответвление ядра Linux для устройств без блока управления памятью (MMU). Система поставляется в форме образов для записи на floppy-диски или запуска в эмуляторе QEMU.

Для тестирования доступен онлайн-эмулятор ELKS (для входа набрать root, без пароля).

Помимо ядра Linux, адаптированного для 16-разрядных систем, проект ELKS развивает набор стандартных утилит (ps, bc, tar, du, diff, netstat, mount, sed, xargs, grep, find, telnet, meminfo и т.п.), включая совместимый с bash командный интерпретатор, консольный оконный менеджер screen, текстовые редакторы Kilo и vi, графическое окружение на базе X-сервера Nano-X.

В ELKS предлагается два варианта сетевого стека. Это штатный TCP/IP стек ядра Linux и стек ktcp, работающий в пространстве пользователя. Из сетевых карт в проекте поддерживаются Ethernet-адаптеры, совместимые с NE2K и SMC. Также возможно создание каналов связи через последовательный порт при помощи SLIP и CSLIP. Из файловых систем ELKS поддерживает Minix v1, FAT12, FAT16 и FAT32. Настройка процесса загрузки ELKS осуществляется через сценарий /etc/rc.d/rc.sys. Формат исполняемых файлов заимствован из ОС Minix.

Выпуск ELKS 0.8 состоялся в сентябре 2024 года. Тогда в проект была портирована игра Doom.

По информации OpenNET, основные изменения и доработки в ELKS 0.9:

  • обеспечена интеграция с проектом, развивающим графическую оконную систему Microwindows (Nano‑X), имеющую архитектуру клиент‑сервер и пригодную для создания сред рабочего стола, а также для запуска эмулятора терминала, игр и графических приложений;

  • на базе оконной системы Nano‑X реализована новая среда рабочего стола NXDSKTOP, способная работать на старейших x86-системах, таких как IBM 5150/5160 (8 MHz) и Amstrad 1640, а также на более мощных ПК на базе CPU 286, 386 и 486 с VGA‑виреокартами. Предоставляются типичные для пользовательских окружений графические компоненты, такие как интерфейс запуска приложений nxselect, диалоговые окна, меню приложений, просмотрщик изображений nxjpeg и текстовый редактор;

  • предоставлен инструментарий ELKS 8086 Toolchain, работающий поверх ELKS и включающий компилятор для языка С C86, ассемблер, утилиту make и компоновщик для систем с процессорами 8086;

  • добавлена поддержка компилятора DeSmet C (DCC), основанного на инструментарии 1989 DeSmet;

  • добавлена поддержка работы в эмуляторах Bochs, PCem, copy.sh/v86, MartyPC, EMU86 и Swan, в дополнение к ранее поддерживаемым DOSBox‑X и QEMU;

  • реализован драйвер Direct ATA и добавлена поддержка оборудования с XT‑IDE. Для эмулятора v86 обеспечена поддержка мыши PS/2;

  • выполнено портирование на компьютеры NEC V25, Solo/86 и WonderSwan;

  • реализована поддержка игр Doom, Paint, Elksmoria, ttypong, tetris, invaders, advent, nxtetris, nxmine, nxworld, matrix и sl.