Випуск ELKS 0.6, варіанта ядра Linux для старих 16-розрядних процесорів Intel

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

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

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

У новому випуску:

  • Доданий інтерпретатор мови BASIC, придатний для робочих станцій та систем, що прошиваються до ПЗП. У тому числі реалізовані команди для роботи з файлами (LOAD/SAVE/DIR) та графікою (MODE, PLOT, CIRCLE та DRAW).
  • Додано програму для роботи з архівами tar.
  • Додані команди man та eman для показу man-посібників, а також забезпечена підтримка показу стислих man-сторінок.
  • У реалізацію bash вбудовано команду test («[«).
  • Додана команда "net restart". Переписано команду nslookup.
  • До команди mount додано можливість показу інформації про примонтовані розділи.
  • Підвищено швидкість роботи команди ls на розділах із ФС FAT.
  • Значно покращено роботу та підтримку 8-розрядних систем у мережевому драйвері NE2K.
  • Переписано FTP-сервер ftpd, у якому з'явилася підтримка команди SITE та можливість виставлення таймаутів.
  • Для всіх мережних програм реалізовано підтримку резолвінгу імен DNS через виклик in_gethostbyname.
  • У команду sys додано підтримку копіювання всього диска.
  • Додано нову команду setup для швидкого налаштування імені хоста та IP-адреси.
  • У /bootopts додані параметри LOCALIP=, HOSTNAME=, QEMU=, TZ=, sync= та bufs=.
  • У порт для комп'ютера PC-98 додано підтримку жорстких дисків SCSI та IDE, додано новий завантажувач BOOTCS, реалізовано підтримку завантаження із зовнішнього файлу, розширено підтримку дискових розділів.
  • У порт для процесорів 8018X додана підтримка запуску з ПЗП та покращена обробка переривань.
  • У стандартній Сі бібліотеці додано математичну бібліотеку та забезпечено можливість роботи з числами з плаваючою комою у функціях printf/sprintf, strtod, fcvt, ecvt. Переписано та значно прискорено код функції strcmp. Запропоновано більш компактну реалізацію функції printf. Додані функції in_connect та in_resolv.
  • У ядрі покращено підтримку файлової системи FAT, збільшено до 6 максимальну кількість точок монтування, додано підтримку встановлення часового поясу, додано системні виклики uname, ustatfs та alarm, переписано код для роботи з таймером.



Джерело: opennet.ru

Додати коментар або відгук