Die Version des Betriebssystems Sculpt 22.04 wurde vorgestellt, in deren Rahmen auf Basis der Technologien des Genode OS Framework ein Allzweckbetriebssystem entwickelt wird, das von normalen Benutzern zur Durchführung alltäglicher Aufgaben verwendet werden kann. Der Quellcode des Projekts wird unter der Lizenz AGPLv3 verbreitet. Zum Download steht ein LiveUSB-Image mit einer Größe von 28 MB zur Verfügung. Der Betrieb auf Systemen mit Intel-Prozessoren und Grafikschnittstellen wird unterstützt, sofern die VT-d- und VT-x-Erweiterungen aktiviert sind.
Hauptneuerungen:
- Die Treiber für Intel-WLAN-Karten, Intel-GPU und USB-Controller wurden vollständig neu gestaltet. Der Code der neuen Treiber wurde aus dem Linux-Kernel 5.14.21 portiert. Im Gegensatz zu Linux wird jeder Treiber in Sculpt OS im Benutzerspeicher in einer separaten isolierten Umgebung (Sandbox) ausgeführt.
- Der Code für die hardwarebasierte Grafikbeschleunigung, die auf Mesa basiert, wurde optimiert und stabilisiert, einschließlich des Multiplexing-Mechanismus für den Zugriff auf die GPU. In der neuen Version ist es möglich, nicht nur OpenGL-Anwendungen auszuführen, sondern auch Grafikbeschleunigung in Gastsystemen von VirtualBox zu nutzen, die über Sculpt ausgeführt werden.
- Ein Sandbox-Isolationsmechanismus auf Ebene einzelner Dienste wurde implementiert. Zudem wurde eine Komponente namens „black hole“ hinzugefügt, die als Platzhalter für verschiedene systeminterne Ressourcen verwendet werden kann. Beispielsweise kann ein Dienst vom Netzwerk isoliert werden, indem der Netzwerkverkehr ins „black hole“ geleitet wird. Ähnlich kann der Zugriff auf Audio, Videoaufzeichnung und andere typischen Systemressourcen blockiert werden.

Das System wird mit der grafischen Benutzeroberfläche Leitzentrale geliefert, die es ermöglicht, typische Aufgaben zur Systemadministration durchzuführen. In der oberen linken Ecke der grafischen Benutzeroberfläche wird ein Menü mit Werkzeugen zur Benutzerverwaltung, zum Anschluss von Speichergeräten und zur Netzwerkeinrichtung angezeigt. In der Mitte befindet sich ein Konfigurator zur Zusammenstellung der Systemkomponenten, der eine grafische Darstellung der Wechselwirkungen zwischen den Systemkomponenten bietet. Der Benutzer kann interaktiv beliebig Komponenten hinzufügen oder entfernen und so die Zusammensetzung der Systemumgebung festlegen. virtuelle Maschinen.
Der Benutzer kann jederzeit in den Konsolenverwaltungsmodus wechseln, der eine größere Flexibilität bei der Verwaltung bietet. Der traditionelle Desktop kann durch das Starten der TinyCore Linux-Distribution in virtuellen Maschine mit Linux erhalten werden. In dieser Umgebung stehen die Browser Firefox und Aurora, ein textbasierter Editor auf Basis von Qt und verschiedene Anwendungen zur Verfügung. Zum Starten von Befehlszeilen-Dienstprogrammen wird eine noux-Umgebung angeboten.
Genode bietet eine einheitliche Infrastruktur zur Erstellung benutzerdefinierter Anwendungen, die über den Linux-Kernel (32 und 64 Bit) oder die Mikrokerne NOVA (x86 mit Virtualisierung), seL4 (x86_32, x86_64, ARM), Muen (x86_64), Fiasco.OC (x86_32, x86_64, ARM), L4ka::Pistachio (IA32, PowerPC), OKL4, L4/Fiasco (IA32, AMD64, ARM) und Kerne, die direkt auf ARM- und RISC-V-Plattformen ausgeführt werden, laufen. Der in das paravirtualisierte Linux-Kernel L4Linux integrierte Mikrokernel Fiasco.OC ermöglicht die Ausführung herkömmlicher Linux-Programme in Genode. Der L4Linux-Kernel arbeitet nicht direkt mit der Hardware, sondern nutzt die Dienste von Genode über eine Reihe virtueller Treiber.
Für Genode wurden verschiedene Linux- und BSD-Komponenten portiert, Gallium3D unterstützt, die Integration von Qt, GCC und WebKit realisiert und die Möglichkeit zur Organisation hybrider Linux/Genode-Softwareumgebungen implementiert. Ein Port von VirtualBox, der auf dem Mikrokernel NOVA läuft, wurde vorbereitet. Eine große Anzahl von Anwendungen wurde angepasst, um direkt auf Mikrokerne und die Umgebung Noux zu laufen, die eine Virtualisierung auf OS-Ebene ermöglicht. Um nicht portierte Programme auszuführen, besteht die Möglichkeit, den Mechanismus zur Erstellung virtualisierter Umgebungen für einzelne Anwendungen zu nutzen, sodass Programme in einer virtuellen Linux-Umgebung unter Verwendung von Paravirtualisierung ausgeführt werden können.
Quelle: opennet.ru
