SCAL/UX ™ - Das Betriebssystem für diejenigen, die Skalierbarkeit ernst nehmen
Willkommen im Scal/UX -Repository.
Das Betriebssystem des ersten Hobbyisten mit virtueller Speicherkomprimierung
Scal/UX ist ein Unix-ähnliches Betriebssystem, das auf AMD64-PCs abzielt. Es ist intern in drei Komponenten aufgebaut: den Kernkern, den DeviceKit und die POSIX -Dienste.
Der Core-Kernel implementiert grundlegende Primitive: Planung, virtuelle Speicherverwaltung, Synchronisation und einfaches Nachrichtenübergang. Diese Dienste werden verwendet, um eine POSIX -Persönlichkeit durch die POSIX -Dienste zu implementieren. Gerätekit implementiert ein objektorientiertes Treiber-Framework in Objective-C mit Adaptern, um relevante Geräte der POSIX-Persönlichkeit auszusetzen. Alle drei sind im Kernel-Raum implementiert und sind logisch unterschiedlich, aber derzeit ziemlich eng gekoppelt.
Dies ist ein Umschreiben eines Großteils des Systems. Es ist noch nicht sehr funktional . Die vorherige Iteration enthielt eine Reihe von Arbeitshäfen (einschließlich der Bash -Shell- und GNU -CoreUtils), aber viele Komponenten litten darum, eine unzureichende Planung, Synchronisation und Interkommunikationsprimitive aufzunehmen. Diese Iteration zielt darauf ab, diese Fehler anzugehen. Die vorherige Iteration befindet sich in der old-22-08-07 .
Das SCAL/UX-Betriebssystem verfügt über ein BSD-basiertes Meta-Build-System, das lose von PKGSRC inspiriert ist. Sie benötigen vorerst eine vorhandene SCAL/UX -Toolchain und MLIBC -Header, die in einem Systemwurzel installiert sind. Andere Werkzeuge, die zum Erstellen erforderlich sind, sind Meson, Xorriso ...
Es werden mehrere Komponenten von Drittanbietern verwendet. Dies sind einige von ihnen:
kprintf verwendet.kernel-3/dev/fbterm/nbsdbold.psfu ): BOLD8X16-Schrift verwendet für Fbterminal.kernel-3/dev/nvmereg.h ): NVME-Registerdefinitionen.kernel-3/dev/fbterm/sun12x22.psfu ): Sun Demi Gallant-Schrift für FBerde verfügbarlimine-terminal-port (einige Dateien in kernel-3/dev/fbterm/ ): Wird von FBterminal zur Bereitstellung eines Terminals verwendet.kernel-3/dev/acpi/lai ): ACPI-Implementierung aus der von ACPI* -Treibern verwendeten ACPI-Implementierung.kernel-3/libkern/lz4.{c,h} ): Wird vom VM-Kompressor verwendet, um Seiten zu komprimieren.kernel-3/libkern/uuid* )kernel-3/ext2fs/ext2_fs.h ): Ext2-Dateisystemdefinitionen Code Original an Scal/UX ist unter der Mozilla Public License v2.0 lizenziert. Andere Komponenten stehen unter ihren eigenen Lizenzen