ELKS 0.8: возрождение Linux для 16-разрядных процессоров

Проект продолжает поддержку старых компьютеров и расширяет возможности для сборки программ.


gz4wa51yy1te5rckntwvtcspbkat497j.webp


Опубликован новый выпуск проекта ELKS 0.8 (Embeddable Linux Kernel Subset), который продолжает развитие операционной системы, предназначенной для 16-разрядных процессоров Intel 8086, 8088, 80188, 80186, 80286 и NEC V20/V30. Эта операционная система может функционировать на старых компьютерах, таких как IBM-PC XT / AT, советском компьютере MK-88, а также на различных системах на кристалле (SBC), встроенных системах и FPGA, имитирующих архитектуру IA16.

История проекта ELKS начинается в 1995 году. Он зародился как ветвь ядра Linux для устройств, не оснащённых блоком управления памятью (MMU). Исходные ntrcns распространяются под лицензией GPLv2, что открывает возможности для свободного использования и модификации. ELKS поставляется в виде образов, которые можно записать на floppy-диск или использовать для эмуляции в QEMU.

Проект включает не только адаптированное ядро Linux, но и целый набор стандартных утилит , таких как «ps», «grep», «find», «tar», «netstat», а также инструменты для работы с сетью и текстом. В системе предусмотрены совместимый с bash командный интерпретатор, оконный менеджер screen и текстовые редакторы Kilo и vi. В дополнение к этому, ELKS поддерживает графическое окружение на основе Nano-X, обеспечивающее работу с X-сервером.

Проект предлагает два варианта сетевого стека: встроенный TCP/IP стек ядра Linux и пользовательский стек ktcp. Для работы с сетью поддерживаются Ethernet-адаптеры, совместимые с NE2K и SMC. Также возможно использование последовательных портов с протоколами SLIP и CSLIP. Система поддерживает несколько файловых систем, включая Minix v1, FAT12, FAT16 и FAT32, а настройка загрузки осуществляется через сценарии.

В свежем выпуске ELKS 0.8 разработчики добавили множество нововведений. Теперь система поддерживает загрузку и запуск файлов в формате OS/2. Также была предоставлена возможность сборки программ при помощи компилятора Open Watcom. Одним из интересных нововведений стал порт игры Doom, что добавляет нотку ностальгии для пользователей.

Новый выпуск также включает оптимизацию для сетевых адаптеров NE2K, WD и 3COM. Исполняемые файлы теперь подвергаются сжатию, что позволяет уместить больше приложений на образе floppy-диска. В ядре реализована поддержка асинхронного ввода/вывода, что повышает эффективность работы с дисковыми устройствами. Новый драйвер дисковода позволяет выполнять другие задачи параллельно с операциями ввода/вывода, что улучшает многозадачность системы.

Дополнительно были улучшены возможности отладки, внедрены дизассемблер и средства трассировки системных вызовов. Также добавлены новые команды, такие как ttyclock, ttypong, ttytetris и md5/md5sum, что расширяет функционал системы.