Die Veröffentlichung des Betriebssystems ToaruOS 2.3

Die Veröffentlichung des Unix-ähnlichen Betriebssystems ToaruOS 2.3 wurde bekanntgegeben. Es wurde von Grund auf neu entwickelt und kommt mit einem eigenen Kernel, Bootloader, Standard-C-Bibliothek, Paketmanager, Benutzerraumkomponenten und einer grafischen Benutzeroberfläche mit einem kompositen Fenstermanager. Ursprünglich wurde das Projekt als Forschungsarbeit zur Entwicklung neuer kompositen grafischer Schnittstellen an der Universität Illinois vorangetrieben, hat sich jedoch zu einem eigenständigen Betriebssystem entwickelt. Der Code des Projekts ist in C geschrieben und wird unter der BSD-Lizenz verteilt. Für den Download ist ein Live-Image mit einer Größe von 7,4 MB vorbereitet, das in QEMU, VMware oder VirtualBox getestet werden kann. Die Veröffentlichung des Betriebssystems ToaruOS 2.3

ToaruOS basiert auf einem Kern, der eine hybride modulare Architektur verwendet, welche die monolithische Basis mit Mechanismen zur Nutzung von ladbaren Modulen kombiniert. In diesem Format sind die meisten verfügbaren Gerätetreiber gestaltet, darunter Festplattentreiber (PATA und ATAPI), das Dateisystem EXT2 und ISO9660, Framebuffer, Tastaturen, Mäuse, Netzwerkadapter (AMD PCnet FAST, Realtek RTL8139 und Intel PRO/1000), Soundchips (Intel AC’97) sowie erweiterungen für VirtualBox zur Unterstützung von Gastsystemen. Der Kern unterstützt Unix-Streams, TTY, ein virtuelles Dateisystem, das Pseudo-Dateisystem /proc, Multithreading, IPC, Ramdisk, ptrace, Shared Memory, Multitasking und andere gängige Funktionen.

Das System ist mit einem kompositen Fenstermanager ausgestattet, unterstützt dynamisch verlinkbare ausführbare Dateien im ELF-Format, Multitasking, und einen Grafik-Stack. Es kann Python 3 und GCC ausführen. Als Dateisystem wird ext2 verwendet. Der Bootloader unterstützt BIOS und EFI. Der Netzwerk-Stack ermöglicht die Verwendung des BSD-System-Stil Socket-API und unterstützt Netzwerk-Interfaces, einschließlich Loopback.

Eine ähnliche Code-Editor-Anwendung wie Vi ist Bim, die seit mehreren Jahren für die Entwicklung spezifischer ToaruOS-Anwendungen verwendet wird, darunter der Dateimanager, ein Terminalemulator, eine grafische Benutzeroberfläche mit Widget-Unterstützung, ein Paketmanager sowie Bibliotheken zur Unterstützung von Bildformaten (PNG, JPEG) und TrueType-Schriften. Für ToaruOS wurden Programme wie Vim, GCC, Binutils, FreeType, MuPDF, SDL, Cairo, Doom, Quake, der Super-Nintendo-Emulator, Bochs usw. portiert.

Das Projekt entwickelt auch eine eigene dynamische Programmiersprache namens Kuroko, die als Ersatz für Python bei der Entwicklung von Tools und Benutzeranwendungen für das System gedacht ist. Die Syntax ähnelt Python (positioniert als eine verkürzte Dialektversion von Python mit klarer Variablenzuweisung) und zeichnet sich durch eine sehr kompakte Implementierung aus. Es wird sowohl die Kompilierung als auch die Interpretation von Bytecode unterstützt. Der Bytecode-Interpreter bietet einen Garbage Collector und unterstützt Multithreading ohne globale Sperren. Der Compiler und der Interpreter können als kleine, gemeinsam genutzte Bibliothek (~500 KB) erstellt werden, die in andere Programme integriert und über eine C-API erweitert werden kann. Neben ToaruOS kann die Sprache auch in Linux, macOS, Windows verwendet werden und in Browsern mit WebAssembly-Unterstützung ausgeführt werden.

In der neuen Version:

  • Im Terminalemulator wurde die Unterstützung für Tabs hinzugefügt, zwischen denen mit Alt-Zahl gewechselt werden kann. Die Emulation von fetter Schriftart wurde durch doppelte Überlagerung von Glyphen implementiert. Es wurden Untermenüs "Terminalzustand" hinzugefügt, um den Zustand verschiedener Modi anzuzeigen, und "Signal senden" zum Senden von Signalen an Hintergrundprozesse. Die Veröffentlichung des Betriebssystems ToaruOS 2.3
  • Ein Systemhandbuchbetrachter wurde implementiert, der man-Seiten im roff-Format unterstützt. Die Veröffentlichung des Betriebssystems ToaruOS 2.3
  • Das Kontextmenü wurde um ein Untermenü zur Verwaltung des Mosaikfenster-Layouts erweitert. Die Veröffentlichung des Betriebssystems ToaruOS 2.3
  • Im Kernel wurden neue Systemaufrufe implementiert, darunter pread/pwrite, sigsuspend, sigqueue, lchown, pipe2, dup3, getrusage und fcntl. Die Unterstützung für die Flags FD_CLOEXEC und FD_CLOFORK wurde hinzugefügt. Die Unterstützung für die Randomisierung der Kernel-Ladeadresse wurde realisiert. Die ABI der Systemaufrufe wurde auf die Verwendung der Befehle syscall/sysret umgestellt.
  • Die Möglichkeiten der virtuellen Konsole (TTY) wurden erheblich erweitert, und die Emulation des Textmodus VGA auf Basis des Framebuffers wurde sichergestellt.
  • In der Version für die Architektur Aarch64 wurde die Möglichkeit implementiert, in virtuellen Maschinen wurde vereinfacht. auf Basis von QEMU zu starten.
  • Im Netzwerkstack wurde die Unterstützung für den gleichzeitigen Betrieb mehrerer ICMP-Sockets hinzugefügt.
  • Die Standardbibliothek libc wurde um die Funktionen getdelim, getline, scandir, telldir, rewinddir, seekdir, ftruncate, fchmod, fchown, popen, pclose, sig2str und str2sig erweitert.
  • Neue Standardwerkzeuge wie rmdir, uniq, cmp, zcat, realpath, id, nohup und cksum wurden hinzugefügt. Zudem wurden neue Optionen zu ls, grep und fgrep hinzugefügt. Die Werkzeuge ps, top, pstree, killall und pidof wurden neu geschrieben und auf die neue Bibliothek libtoaru_procfs umgestellt, die die Arbeit mit dem Pseudo-Dateisystem /proc vereinheitlicht. Der Kommando-Interpreter esh wurde erweitert.
  • Das Tool check-image wurde hinzugefügt, um die Hochladefähigkeit von Bildern durch die Grafikbibliothek zu überprüfen und die Bildgröße auszugeben.
  • Die Programmiersprache Kuroko wurde auf Version 1.5rc2 aktualisiert.
  • Der Texteditor Bim, der an Vim angelehnt ist, wurde auf Version 3.2 aktualisiert. In der neuen Version wurde die Syntaxhervorhebung verbessert, die Unterstützung für Skripte in der Sprache Kuroko erweitert und ein neues System zur Eingabeautomatisierung hinzugefügt.

Quelle: opennet.ru

Купить надежный хостинг для сайтов с защитой от DDoS, VPS VDS серверы 🔥 Купить надежный хостинг для сайтов с защитой от DDoS, VPS VDS серверы | ProHoster