Lansarea ELKS 0.6, o variantă de nucleu Linux pentru procesoarele Intel mai vechi pe 16 biți

A fost publicată lansarea proiectului ELKS 0.6 (Embeddable Linux Kernel Subset), care dezvoltă un sistem de operare asemănător Linux pentru procesoarele pe 16 biți Intel 8086, 8088, 80188, 80186, 80286 și NEC V20/V30. Sistemul de operare poate fi utilizat atât pe computere mai vechi IBM-PC XT/AT, cât și pe SBC/SoC/FPGA-uri care recreează arhitectura IA16. Proiectul se dezvoltă din 1995 și a început ca o furcă a nucleului Linux pentru dispozitive fără o unitate de gestionare a memoriei (MMU). Codul sursă este distribuit sub licența GPLv2. Sistemul este furnizat sub formă de imagini pentru înregistrarea pe dischete sau rularea în emulator QEMU.

Există două opțiuni pentru stiva de rețea - stiva standard TCP/IP a nucleului Linux și stiva ktcp care rulează în spațiul utilizatorului. Adaptoarele Ethernet compatibile cu NE2K și SMC sunt acceptate de plăcile de rețea. De asemenea, este posibil să se creeze canale de comunicație printr-un port serial folosind SLIP și CSLIP. Sistemele de fișiere acceptate includ Minix v1, FAT12, FAT16 și FAT32. Procesul de pornire este configurat prin scriptul /etc/rc.d/rc.sys.

Pe lângă nucleul Linux, adaptat pentru sisteme pe 16 biți, proiectul dezvoltă un set de utilități standard (ps, bc, tar, du, diff, netstat, mount, sed, xargs, grep, find, telnet, meminfo, etc.), inclusiv interpret de comandă compatibil cu bash, manager de ferestre pentru consolă de ecran, editori de text Kilo și vi, mediu grafic bazat pe serverul Nano-X X. Multe componente ale spațiului utilizatorului sunt împrumutate de la Minix, inclusiv formatul de fișier executabil.

În noua versiune:

  • A fost adăugat un interpret de limbă BASIC, potrivit pentru stațiile de lucru și sistemele flash în ROM. Inclusiv comenzi pentru lucrul cu fișiere (LOAD/SAVE/DIR) și grafice (MODE, PLOT, CIRCLE și DRAW).
  • S-a adăugat un program pentru lucrul cu arhivele tar.
  • Comenzile man și eman au fost adăugate pentru a afișa manualele man și a fost oferit suport pentru afișarea paginilor de manual comprimate.
  • Implementarea bash are o comandă de testare încorporată („[“).
  • S-a adăugat comanda „net restart”. Comanda nslookup a fost rescrisă.
  • S-a adăugat posibilitatea de a afișa informații despre partițiile montate la comanda mount.
  • Viteza comenzii ls pe partițiile cu un sistem de fișiere FAT a fost crescută.
  • Performanță îmbunătățită semnificativ și suport pentru sistemele pe 8 biți în driverul de rețea NE2K.
  • Serverul FTP ftpd a fost rescris, adăugând suport pentru comanda SITE și capacitatea de a seta timeout-uri.
  • Toate aplicațiile de rețea acceptă acum rezoluția numelui DNS prin apelul in_gethostbyname.
  • S-a adăugat suport pentru copierea unui întreg disc la comanda sys.
  • O nouă comandă de configurare a fost adăugată pentru a configura rapid numele de gazdă și adresa IP.
  • S-au adăugat parametrii LOCALIP=, HOSTNAME=, QEMU=, TZ=, sync= și bufs= la /bootopts.
  • Suport pentru hard disk-uri SCSI și IDE a fost adăugat la portul computerului PC-98, a fost adăugat un nou bootloader BOOTCS, a fost implementat suportul pentru încărcarea dintr-un fișier extern și suportul pentru partițiile de disc a fost extins.
  • Portul pentru procesoarele 8018X a adăugat suport pentru rularea din ROM și o gestionare îmbunătățită a întreruperilor.
  • O bibliotecă matematică a fost adăugată la biblioteca standard C și a fost oferită capacitatea de a lucra cu numere în virgulă mobilă în funcțiile printf/sprintf, strtod, fcvt, ecvt. Codul funcției strcmp a fost rescris și accelerat semnificativ. A fost propusă o implementare mai compactă a funcției printf. S-au adăugat funcțiile in_connect și in_resolv.
  • Nucleul a îmbunătățit suportul pentru sistemul de fișiere FAT, a crescut numărul maxim de puncte de montare la 6, a adăugat suport pentru setarea fusului orar, a adăugat uname, usatfs și apeluri de sistem de alarmă și a rescris codul pentru lucrul cu cronometrul.



Sursa: opennet.ru

Adauga un comentariu