ELKS, une variante Linux pour les anciens processeurs Intel 16 bits

Récemment la sortie du projet ELKS 0.6 a été annoncée (sous-ensemble de noyau Linux intégrable), développe un système d'exploitation de type Linux pour les processeurs Intel 8086, 8088, 80188, 80186, 80286 et NEC V20/V30 16 bits.

Le système d'exploitation peut être utilisé à la fois sur les anciens ordinateurs de classe IBM-PC XT/AT et SBC/SoC/FPGA qui recréent l'architecture IA16. Le projet est en développement depuis 1995 et a commencé comme un fork du noyau Linux pour les appareils sans unité de gestion de la mémoire (MMU).

Il existe deux options pour la pile réseau : la pile TCP/IP normale du noyau Linux et la pile ktcp qui s'exécute dans l'espace utilisateur.

des cartes réseau, Les adaptateurs Ethernet compatibles NE2K et SMC sont pris en charge. Il est également possible de créer des canaux de communication via le port série en utilisant SLIP et CSLIP. Les systèmes de fichiers pris en charge incluent Minix v1, FAT12, FAT16 et FAT32. Le processus de démarrage est configuré à l'aide du script /etc/rc.d/rc.sys.

En plus du noyau Linux adapté aux systèmes 16 bits, le projet développe un ensemble d'utilitaires standards (ps, bc, tar, du, diff, netstat, mount, sed, xargs, grep, find, telnet, meminfo, etc. ) , y compris le shell compatible bash, le gestionnaire de fenêtres de la console d'affichage, les éditeurs de texte Kilo et vi, l'environnement graphique basé sur le serveur Nano-X X. De nombreux composants de l'espace utilisateur sont empruntés à Minix, y compris le format de fichier exécutable.

Principales nouveautés d'ELKS 0.6

Dans cette nouvelle version un interpréteur de langage BASIC a été ajouté, adapté aux stations de travail et aux systèmes flashés ROM. Cela inclut des commandes pour travailler avec des fichiers (LOAD/SAVE/DIR) et des graphiques (MODE, PLOT, CIRCLE et DRAW).

Un autre changement qui ressort est que une bibliothèque mathématique a été ajoutée à la bibliothèque C standard et la possibilité de travailler avec des nombres à virgule flottante a été fournie dans les fonctions printf/sprintf, strtod, fcvt, ecvt. Le code de la fonction strcmp a été réécrit et considérablement accéléré. Une implémentation plus compacte de la fonction printf a été proposée. Ajout des fonctions in_connect et in_resolv.

Il est également souligné que le noyau a amélioré la prise en charge du système de fichiers FAT, augmenté le nombre maximum de points de montage à 6, ajouté la prise en charge de la définition du fuseau horaire, ajouté uname, usatfs et les appels système d'alarme, réécrit le code pour qu'il fonctionne avec la minuterie.

à côté un programme pour travailler avec les archives tar a été ajouté, ajout des commandes man et eman pour afficher les manuels et prise en charge de l'affichage des pages de manuel compressées et ajout de la commande "network reset". Commande nslookup réécrite, ajout de la possibilité d'afficher des informations sur les partitions montées à la commande mount.

D'autre part, il se distingue également amélioration des performances de la commande ls sur les partitions FAT, ainsi qu'une amélioration significative des performances et de la prise en charge des systèmes 8 bits dans le pilote réseau NE2K.

Des autres changements qui se démarquent:

  • Le serveur FTP ftpd a été réécrit pour prendre en charge la commande SITE et la possibilité de définir des délais d'attente.
    La prise en charge de la résolution des noms DNS via l'appel in_gethostbyname est implémentée pour toutes les applications réseau.
  • La commande de test ("[") est intégrée à l'implémentation de bash.
  • Ajout de la prise en charge de la copie d'un disque entier dans la commande sys.
  • Une nouvelle commande de configuration a été ajoutée pour configurer rapidement le nom d'hôte et l'adresse IP.
  • Ajout des options LOCALIP=, HOSTNAME=, QEMU=, TZ=, sync= et bufs= à /bootopts.
  • La prise en charge des disques durs SCSI et IDE a été ajoutée au port de l'ordinateur PC-98, un nouveau chargeur BOOTCS a été ajouté, la prise en charge du chargement à partir d'un fichier externe a été implémentée, la prise en charge des partitions de disque a été étendue.
    Le port pour les processeurs 8018X a ajouté la prise en charge de l'exécution à partir de la ROM et amélioré la gestion des interruptions.

Enfin Si vous souhaitez en savoir plus, vous devez savoir que le code source est distribué sous la licence GPLv2. Le système est fourni sous forme d'images à graver sur disquettes ou à exécuter sur l'émulateur QEMU, vous pouvez consulter les détails dans le lien suivant.


Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont marqués avec *

*

*

  1. Responsable des données : AB Internet Networks 2008 SL
  2. Finalité des données: Contrôle du SPAM, gestion des commentaires.
  3. Légitimation: votre consentement
  4. Communication des données: Les données ne seront pas communiquées à des tiers sauf obligation légale.
  5. Stockage des données: base de données hébergée par Occentus Networks (EU)
  6. Droits: à tout moment, vous pouvez limiter, récupérer et supprimer vos informations.