Недавно анонсирован выход проекта ЭЛКС 0.6 (подмножество встраиваемого ядра Linux), разрабатывает Linux-подобную операционную систему для 8086-разрядных процессоров Intel 8088, 80188, 80186, 80286, 20 и NEC V30/V16.
Операционная система может использоваться как на старых компьютерах класса IBM-PC XT/AT, так и на SBC/SoC/FPGA которые воссоздают архитектуру IA16. Проект находится в разработке с 1995 года и начинался как форк ядра Linux для устройств без блока управления памятью (MMU).
Существует два варианта сетевого стека: обычный стек 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-совместимую оболочку, диспетчер окон консоли дисплея, текстовые редакторы Kilo и vi, графическую среду на базе сервера Nano-X X. Многие компоненты пользовательского пространства заимствованы из Minix, включая формат исполняемого файла.
Основные новые возможности ELKS 0.6
В этой новой версии добавлен интерпретатор языка BASIC, подходит для рабочих станций и систем с прошивкой ПЗУ. Сюда входят команды для работы с файлами (LOAD/SAVE/DIR) и графикой (MODE, PLOT, CIRCLE и DRAW).
Еще одно важное изменение: в стандартную библиотеку C добавлена математическая библиотека а возможность работы с числами с плавающей запятой реализована в функциях printf/sprintf, strtod, fcvt, ecvt. Код функции strcmp был переписан и значительно ускорен. Предложена более компактная реализация функции printf. Добавлены функции in_connect и in_resolv.
Также подчеркивается, что в ядре улучшена поддержка файловой системы FAT, увеличено максимальное количество точек монтирования до 6, добавлена поддержка установки часового пояса, добавлены вызовы uname, usatfs и alarm system, переписан код для работы с таймером.
Помимо этого добавлена программа для работы с tar архивами, добавлены команды man и eman для отображения руководств и предоставлена поддержка отображения сжатых справочных страниц, а также добавлена команда «сброс сети». Переписана команда nslookup, добавлена возможность отображать информацию о смонтированных разделах в команду mount.
С другой стороны, это также выделяется улучшена производительность команды ls на разделах FAT, а также значительно улучшена производительность и поддержка 8-битных систем в сетевом драйвере NE2K.
Из других изменений которые выделяются:
- FTP-сервер ftpd был переписан для поддержки команды SITE и возможности установки времени ожидания.
Поддержка разрешения DNS-имен через вызов in_gethostbyname реализована для всех сетевых приложений. - Команда test ("[") встроена в реализацию bash.
- Добавлена поддержка копирования всего диска в команду sys.
- Добавлена новая команда конфигурации для быстрой настройки имени хоста и IP-адреса.
- В /bootopts добавлены параметры LOCALIP=, HOSTNAME=, QEMU=, TZ=, sync= и bufs=.
- В порт для компьютера PC-98 добавлена поддержка жестких дисков SCSI и IDE, добавлен новый загрузчик BOOTCS, реализована поддержка загрузки из внешнего файла, расширена поддержка разделов диска.
В порт для процессоров 8018X добавлена поддержка запуска из ПЗУ и улучшена обработка прерываний.
В конце концов Если вам интересно узнать об этом больше, вы должны знать, что исходный код распространяется под лицензией GPLv2. Система поставляется в виде образов для записи на дискеты или запуска на эмуляторе QEMU, подробности можно узнать По следующей ссылке.
Будьте первым, чтобы комментировать