Доступен ELKS 0.8, вариант ядра Linux для старых 16-разрядных процессоров Intel

in #ru2 months ago

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

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

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

В новом выпуске:

  • Добавлена возможность загрузки и запуска файлов в исполняемом формате OS/2.
  • Предоставлена возможность сборки программ Си-компилятором Open Watcom.
  • Портирована игра Doom.
  • При сборке по умолчанию включена поддержка сетевых адаптеров NE2K, WD и 3COM.
  • Включено сжатие исполняемых файлов, позволившее уместить больше приложений в образе флоппи-диска.
  • В ядре реализована поддержка асинхронного ввода/вывода.
  • Добавлен новый драйвер для дисководов, использующий асинхронный ввод/вывод и позволяющий выполнять другие приложения во время ввода/вывода.
  • Во время загрузки обеспечена настройка параметров ядра, таких как размер кучи, число задач, inode и файлов, для выделения ресурсов в зависимости от размера памяти.
  • Улучшены возможности отладки, такие как дизассемблер и механизмы трассировки системных вызовов и функций.
  • Проведена оптимизация использования кэша L1/L2.
  • Добавлены функции для точного измерения времени.
  • Из других систем портированы команды ttyclock, ttypong, ttytetris и md5/md5sum.
  • Добавлен системный вызов sysctl и связанная с ним команда.

Источник: https://www.opennet.ru/opennews/art.shtml?num=61931

Coin Marketplace

STEEM 0.20
TRX 0.20
JST 0.034
BTC 89846.05
ETH 3077.33
USDT 1.00
SBD 2.96