GreenHills Software ist ein Unternehmen, das sich auf die Erstellung von Betriebssystemen für militärische eingebettete Systeme spezialisiert hat. Ihr INTEGRITY-System verwendet einen Mikrokernel (weniger Code mit weniger Fehlern), der formal überprüft wurde (noch weniger Fehler).
Solche Spezialdomänen, in denen nur die grundlegendsten Softwarekomponenten wiederverwendet werden können, sind wahrscheinlich der einzige Bereich, in dem die Bereitstellung eines benutzerdefinierten Betriebssystems verwaltet werden kann. Praktisch überall sonst werden die Anforderungen für die Anbindung an die Außenwelt, an reguläre Benutzer und an neue Hardware alle paar Jahre alle Ihre Entwicklungsressourcen vollständig verschlingen.
Darüber hinaus ist dies meines Wissens immer noch nicht gut verstanden wie man sehr große Softwareprojekte verwaltet. Wenn Sie das Geld und die Leute haben, um in ein paar Jahren ein neues Betriebssystem zu bauen, ist es wahrscheinlich viel teurer, dauert viel länger und ist völlig kaputt.
Schließlich gibt es nicht viele Dinge, bei denen eine neue benutzerdefinierte Entwicklung verbessert werden könnte. Nachdem Sie alle Anforderungen des Benutzers und des Richtlinienerzwingers erfüllt haben, werden Sie wahrscheinlich feststellen, dass Ihr spezialisiertes Betriebssystem den vorhandenen Lösungen verdammt ähnlich wird. Zum Beispiel ist es cool, sich Ihr minimales Betriebssystem mit ein paar tausend Codezeilen vorzustellen. Nehmen wir an, Sie haben das gesichert. Jetzt möchten Sie einen Webbrowser mit SSL / X509. Die einfachste Implementierung davon wird wahrscheinlich ein Vielfaches der Größe Ihres Kernels sein. Und wenn Sie keine vorhandenen Bibliotheken verwenden, wird dies mit Kompatibilitäts- und Sicherheitslücken behaftet sein.
Der Hauptbereich, in dem das Betriebssystemdesign heute verbessert werden könnte, ist - vielleicht - die Umstellung auf ein Mikrokernel-Betriebssystem. Ein Design, wie es in der Perseus- und Nizza-Architektur vorgeschlagen wurde, könnte es Ihnen ermöglichen, sicherheitskritische Anwendungen mit hoher Isolationssicherheit neben Ihrem regulären Commodity-Betriebssystem auszuführen und die Commodity-Anwendungen für Aufgaben wie das Signieren von Dokumenten und das Einrichten von Sitzungen auf die sicheren Anwendungen verweisen zu lassen Schlüssel usw. Neuere Beispiele hierfür sind Genode, TrustVisor und Qubes OS. Um ein solches Design jedoch für viele Anwendungen in vielen stark isolierten Fächern skalierbar zu machen, benötigen Sie einen modernen Mikrokernel. Qubes und TrustVisor sind also schon draußen.
Addon: Ich habe gerade bemerkt, dass sich alle auf die USA konzentrieren und Kernel herstellen, also vielleicht eine Randnotiz: Die USA, die Deutschen, Die Franzosen und wahrscheinlich auch die meisten anderen Regierungen haben sich für bestimmte Zwecke mit gehärteten Betriebssystemen befasst. Die Bundesregierung verwendet die SINA-Box, eine gehärtete Linux plus Smartcard, die ein VPN-Gateway für nicht ganz so kritische Aufgaben implementiert. Sie fragen sich, was sie für kritische VPNs verwenden. Sie haben Forschung im Bereich des alternativen Betriebssystemdesigns finanziert. Heute finanzieren sie die Virtualisierung für Android, sodass Sie ein isoliertes Fach auf einem ansonsten meist standardmäßigen Android-Telefon betreiben können. SELinux von den USA ist bekannt und die französische Regierung hat ein ähnliches System. Die NSA versucht nun auch, SELinux in Android zu integrieren. Die Tatsache, dass mehrere Millionen auf diese Weise ausgegeben werden, bestätigt grundsätzlich die oben genannten Probleme.