Himmel OS

SkyOS ("Himmel o-ess") war ein Prototyp kommerzielles, grafisches für die x86 Computerarchitektur geschriebenes Eigentumstischbetriebssystem. Bezüglich am 30. Januar 2009 Entwicklung ist gehinkt und keine Pläne fortzusetzen, dass seine Entwicklung bekannt gegeben worden ist.

Geschichte

SkyOS ist das Ergebnis von mehr als zehn Jahren der Arbeit von Robert Szeleney und Freiwilligen.

Ein junger Mann an der Universität, Szeleney und mehreren Freunden hat das "Himmel-Betriebssystem" als ein Experiment im OS Design begonnen. Als die Jahre fortgeschritten sind und die anderen Gründungsmitglieder von aus dem Projekt übergeholtem SkyOS, hat Szeleney Arbeit am Betriebssystem in seiner Freizeit fortgesetzt.

Die Vollzeitstellung von Szeleney war in der Automationsprogrammierung, und er hatte bereits ein schönes Verstehen des Betriebssystemdesigns. Aber er hat fortgesetzt, SkyOS als ein Lerngerät zu verwenden, vier Versionen laut einer offenen Quelllizenz veröffentlichend.

Das Projekt hat die Höhe seiner Beliebtheit 2004 erreicht, als sich Szeleney dafür entschieden hat, die Quelle von SkyOS zu schließen und Arbeit an der fünften Version zu beginnen. Am Anfang des Jahres hat Szeleney ein bezahltes Beta-Programm angefangen, um Entwicklung und Vertrieb des OS finanziell zu unterstützen, das Annehmen, sehr wenige (wenn irgendwelcher) zu haben, hat Unterzeichnete interessiert. Zur gleichen Zeit haben Mitglieder der Gemeinschaft einen Streit veranstaltet, um den Blick des GUI zu bestimmen, der bedeutende Aufmerksamkeit auf das Projekt gelenkt hat. So viel Aufmerksamkeit, tatsächlich, dass am Ende dieses desselben Jahres, hatte sich die Gemeinschaft von SkyOS in der Größe verdreifacht, und Szeleney hatte Hunderte von energischen Beta-Prüfern, die herunterladen und seinen zweimal monatig Ausgaben prüfen.

SkyOS hat viele Änderungen nach dieser Woge in der Beliebtheit erlebt. Wegen bedeutender Unterschiede am Quellniveau hat Szeleney aufgehört zu denken, was unter der Entwicklung als die fünfte Version seines Betriebssystems war, und der Name "SkyOS 5.0" zu einfach "SkyOS" wiedergebrandmarkt wurde. Ein mehr berufliches Verhalten wurde überall im Projekt genommen, und Szeleney hat sogar gedacht, unter dem Namen "Djinnworks" zu vereinigen. Die Gemeinschaft von SkyOS ist bedeutsam von seiner Spitze 2004 seitdem zurückgewichen.

Bezüglich am 1/30/2009 wird die Entwicklung auf SkyOS zurzeit gehalten. Der Entwickler entscheidet sich der Kurs der Handlung, bezüglich der zukünftigen Entwicklung zu nehmen:

  • Offene Quelle SkyOS
  • Stellen Sie SkyOS für freien bereit
  • Spezialisieren Sie sich auf noch, um definierte Nische zu sein
  • Hören Sie Entwicklung von SkyOS auf

Es gibt auch einen experimentellen Versuch, NetBSD oder Linux zu verwenden, um die Fahrer-Probleme zu lösen.

Beta-Ausgaben

Technologie

Kern

Benutzerraum von SkyOS liegt oben auf einer Gewohnheit, modularized, Kern der präemptiven Multitasking mit der Unterstützung für gemeinsame Merkmale wie Prozess und Faden-Isolierung, Speichermanagement/Paginierung, das Kernbeseitigen, die auf niedriger Stufe sich schließen lassenden Primitiven und die PIC/APIC Echtzeitzeitmesser. Es ist ein monolithischer Kern mit Fahrern, die in den Kernraum über eine Erweiterungs-API dynamisch geladen werden.

Es gibt einige bemerkenswerte Eigenschaften, die den Kern von SkyOS von anderen unterscheiden. Diese schließen ein:

  • Kernweise VESA Unterstützung, grafische Anzeige sofort nach der Macht berücksichtigend
  • Architektur-Abstraktionsschicht, SkyOS erlaubend, zu anderen Architekturen leicht getragen zu werden
  • Fortgeschrittene Zentraleinheitsunterstützung, einschließlich Multi-Core/SMP/HyperThreading und aller x86 Haupterweiterungen
  • Voller DMA, ATAPI und ATA/SATA-Unterstützung (mit SATA Fahrern für mehrere größere chipsets)
  • Unterstützung für populäre Busse

Gegen eine populäre falsche Auffassung wird der Kern aus Linux oder einigen der verschiedenen BSDs nicht abgeleitet. Es wurde völlig von Szeleney über den Kurs von mehreren Jahren geschrieben, und verwendet keinen Außencode.

SkyGI

Das Design der API von SkyGI basiert lose um die Konzepte der Fenstertechnik-Werkzeuge von Qt und Swing. Ein Kerngrundsatz von SkyGI ist die "Ansicht". Jeder GUI-Gegenstand wird aus dem Grund-"Ansicht"-Gegenstand, und, als solcher abgeleitet, alle haben ähnliche Eigenschaften und benehmen sich auf ähnliche Weisen.

SkyGI hat in der Unterstützung für die Internationalisierung und Lokalisierung gebaut, Drittentwicklern erlaubend, mehrsprachige Anwendungen leicht zu schaffen, die um den leichten basieren, um 'Übersetzungs'-Dateien zu schreiben. Das Fachwerk erleichtert auch Zugänglichkeit durch das Gebäude in der Unterstützung für die fortgeschrittene Tastatur-Navigation.

Heimische Steuerungen können durch das Stellen einer 'Thema'-Datei unter einem bestimmten Thema stehend sein, die syntaktisch dem MSStyles-Format in einem Verzeichnis entsprechend der Position des rechtskräftigen ähnlich ist.

Bestandteile

SkyOS GUI folgt nah der im ganzen modernen GUIs verwendeten SCHLAPPSCHWANZ-Tischmetapher. Jedoch gibt es mehrere Hauptbestandteile von SkyOS GUI, die von anderen Betriebssystemen verschieden sind:

Die Tafel ist die funktionelle Entsprechung zur Aufgabe-Bar in Windows oder dem Dock in Mac OS X. Es wird verwendet, um Programme und Schalter zwischen Anwendungsfenstern zu starten, sowie Information dem Benutzer zu zeigen. Einfügefunktionen erlauben Entwicklern, die Funktionalität der Tafel zu erweitern. Vorhandene Einfügefunktionen haben zum Beispiel anfragenbasierten schnellen Anwendungsstapellauf hinzugefügt, und haben den Hinweis des Tages/Nacht modifiziert, um stattdessen lokalisierte Wetterinformation zu zeigen.

Der Notifier ist ein eingebautes Benutzerschnittstelle-Element, für den Benutzer zu jeder Zahl von Dingen, einschließlich Anwendungsunfälle und Hardware-Hinzufügungen/Eliminierungen zu alarmieren. Anwendungsprogrammierer können den notifier zu ihren eigenen Zwecken über den Tischnachrichtendienst verwenden.

Der Zuschauer ist der heimische Dateibrowser auf SkyOS. Es zeigt vielfache Ansicht-Typen, Daumennägel, und mit Sitz in metadata Anzeige der Information, sowie "Suche, weil Sie" das Durchsuchen und die fortgeschrittenen Abfragen tippen. Der Zuschauer ist einer der ersten Dateisystembrowser, um Tabbed-Betrachtung zu unterstützen.

SkyFS

SkyFS ist eine Gabel von OpenBFS filesystem. Es unterstützt die folgenden bemerkenswerten Eigenschaften:

  • 64-Bit-Datenstrukturen
  • Journaling
  • Unterstützung von Metadata, das Berücksichtigen, unter anderem, ACLs
  • Das Indexieren von Metadata und Fragen
  • POSIX Dateierlaubnis

Wenige Änderungen sind mit dem filesystem seit der Gabel vorgenommen worden. Der Magische Personalausweis ist geändert worden, um zwischen Teilungen von SkyFS und BFS Teilungen zu differenzieren, und Raum wird jetzt am Anfang jeder Teilung für einen bootloader vorbestellt. Sonst, das Lay-Out auf der Platte des filesystems sind identisch.

SkyOS kann auch vom folgenden filesystems geführt werden:

Schnell Suche

Mit der Hilfe des SQL-basierten Index-Essers unterstützt SkyFS schnellen metadata und vollen Text, der ähnlich im Konzept zu WinFS und Scheinwerfer sucht. Das berücksichtigt sofortige weites System Suchen sowie "Suche, weil Sie" das Dateidurchsuchen tippen.

Das Konzept virtueller Mappen, das neben einem anfragenbasierten Suchfachwerk allgemein durchgeführt wird, besteht in SkyOS als die Fähigkeit, Abfragen im Zuschauer für die spätere Ausführung zu sparen.

Hier ist eine Beispiel-Zuschauer-Abfrage, die alle.txt Dokumente zeigen würde, die heute modifiziert wurden:

Um eine Suche durchzuführen, ist es nicht notwendig, die Syntax der obengenannten Abfrage zu verstehen. Abfragen können mit einem GUI gebaut werden, oder einfachere Schlüsselwort-basierte Suche kann sein (und ist standardmäßig) verwendet.

Entwicklung

Während es mehrere gut entwickelte APIs gibt sowie außergewöhnliche POSIX Vereinbarkeit, schreibend und Anwendungen für SkyOS veröffentlichend, wegen geringer binärer Inkompatibilitäten zwischen Betas schwierig sein kann. Entwickler, die eine Anwendung für SkyOS anbieten möchten, müssen mit den Änderungen Schritt halten, die zum APIs machen werden, und sind gewöhnlich erforderlich, ihre Anwendungen nach der Ausgabe jedes neuen Betas zu modifizieren und wiederzukompilieren. Es gibt keine Pläne, einigen der APIs zu beenden, bevor SkyOS öffentlich befreit wird, weil Szeleney die Fähigkeit vorbestellen möchte, sie weiter zu verbessern, als Entwicklung fortschreitet.

SkyOS executables werden ins ELF-Format mit der GNU-Bearbeiter-Sammlung kompiliert. Allgemein treffen sich Entwickler kompilieren ihre Anwendungen für den Gebrauch auf SkyOS. Jedoch, weil GCC getragen worden ist und aktiv aufrechterhalten wird, ist es auch möglich, Anwendungen innerhalb einer laufenden Installation von SkyOS zu entwickeln. Am meisten namentlich wurde Scribis, ein Mehrprotokoll-Moment-Bote, von einem Freiwilligen exklusiv unter einer laufenden Umgebung von SkyOS entwickelt.

Entwickler, die ihre Anwendungen über einen offiziellen Kanal verteilen möchten, können ein Softwarelager-Behältnis online aufstellen. Der Softwareladen von SkyOS ist ein GUI-basiertes Softwareverteilersystem, das ein kundenspezifisches Paket-Format und einfaches Behältnis-Protokoll durchführt.

Die Evolution von SkyOS selbst geschieht eher sporadisch mit wenig dokumentierter langfristiger Planung. Das hat häufig Sorge in der Gemeinschaft verursacht, aber hat einen Entwicklungsschritt viel schneller berücksichtigt als demokratisch gesteuerte Projekte.

Heimischer APIs

C ++ ist die einzige Programmiersprache, die offiziell für die heimische Entwicklung auf SkyOS unterstützt ist. Perl und Python sind getragen worden, aber die virtuellen Maschinen haben keinen bindings zu einigen geborener SkyOS APIs..NET Anwendungen, die gestützte Befehl-Linie sind, kann Mono abspielbar, aber wieder durchbohrt werden, weil es keinen bindings zu SkyGI gibt, können gestützte GUI Anwendungen von Formen des Windows nicht geführt werden.

Der Tischnachrichtendienst ist ein objektorientiertes überall in SkyOS verwendetes Zwischenprozess-Nachrichtenfachwerk. Es erlaubt Befehl-Linie, und API hat Kommunikation sowohl zwischen Kern als auch zwischen Benutzerraumprozessen in SkyOS gestützt.

In diesem Nachrichtenübermittlungsmodell werden menschlich-lesbare Nachrichten an 'Schnittstellen' gesandt, die durch eine Reihe von Bezeichnern vertreten werden.

Zum Beispiel, diese Nachricht sendend, um "Bekannt zu geben. Medien. Spieler. Kontrolle" würde den Mediaspieler von SkyOS veranlassen, zum folgenden Lied vorwärts zu gehen:

SCHNUR von MessageType "folgendes Lied"

SkyOS strahlt Nachrichten als Antwort auf Hunderte von Ereignissen einschließlich Gerät-Verhaftungen aus, erfolgreiche Software, installiert Batterieniveau-Änderungen und neue Wetterdaten, alle, die für jede Anwendung oder Fahrer verfügbar sind, der die passende Schnittstelle unterschreibt.

Integrated Streaming System (ISS) ist eine Reihe von C ++ APIs hat vorgehabt, Mediawechselwirkung zu erleichtern, die dem Konzept eines gesunden Servers in Linux ähnlich ist. Die API wird abstrahiert, so dass Mediaplay-Back von codec völlig unabhängig ist.

Grundlegende Funktionalität kann in weniger als zehn Linien des Codes in Situationen erreicht werden, wo Verzug-Verhalten für den Programmierer annehmbar ist. Jedoch, durch eine sehr verlängerte API, können alle relevanten Teile der audiovisuellen in einer Prozession gehenden Rohrleitung kontrolliert werden.

"Zum Beispiel können Sie zwei Audioströme, einen Stereo-, 5.1 DolbyDigital schaffen, einen Echo-Filter mit dem zweiten verbindend, den 5.1 Strom mit einem SB Audigy lebend und den Stereostrom mit einem grundlegenden Stereosoundcard vereinigend, und verschiedene Software Digitalfilter auf individuelle Ströme anwenden."

- Robert Szeleney

Halten nach Backbord von Anwendungen

Die meisten Anwendungen der Befehl-Linie, die geschrieben wurden, um mit dem GNU Toolchain kompiliert zu werden, können zu SkyOS mit wenig oder keiner Modifizierung getragen werden. Mehrere große Anwendungen, einschließlich Apachen, GCC, Samba, TASSEN und Heftigen Schlags sind mit Toolchain getragen worden.

Die folgenden Anwendungen sind mit heimischem APIs getragen worden und werden zurzeit auf SkyOS aufrechterhalten:

Die Häfen von GTK und mehreren GTK-basierten Anwendungen sind unbrauchbar mit neuen API-Änderungen geworden. Es ist noch nicht bekannt, ob in der Zukunft sie bis zur Geschwindigkeit zurückgebracht werden.

Empfang

Drittunterstützung

Wegen der beschränkten Beliebtheit des Betriebssystems hat SkyOS sehr wenige Drittentwickler. Das bedeutet, dass viele allgemeine Hardware-Geräte von SkyOS nicht unterstützt werden, und wahrscheinlich ohne bedeutendes Geld und Anstrengung auf dem Teil von Szeleney nicht sein werden.

Weniger wichtig bedeutet das, dass eine beschränkte Vielfalt von Anwendungen für SkyOS verfügbar ist. Während einige der grundlegenden Bedürfnisse wie das Webdurchsuchen und die E-Mail bedeckt werden, sind andere nicht. Diese Bedürfnisse schließen ein:

  • Ein volles Bürogefolge
  • Ein fortgeschrittener Mediabetriebsleiter
  • Populäre kommerzielle Videospiele

Um zu helfen, Drittentwicklung zu stimulieren, verwendet SkyOS ein "" Lösegeld-Codesystem, wo Leute Geld Projekten schenken können, die sie vollendet sehen möchten. Entwickler, die diese Projekte vollenden, werden dann jedes Geld erhalten, das dem Projekt geschenkt worden ist. Wenn möglich, hofft Szeleney, irgendwelche Projekte zu vollenden, die nicht durch das Codelösegeld vor dem Blatt-Beta-Status von SkyOS gefordert sind.

Sicherheit und Stabilität

Obwohl die APIs, um mit dem Benutzer und der Dateierlaubnis zu arbeiten, gut entwickelt werden, wird keiner der angewandten Erlaubnis wirklich durch das System gefolgt. Während SkyOS unter der Entwicklung ist, wird das das beabsichtigte Verhalten bleiben.

Der in SkyOS verwendete Netzstapel ist ein kundenspezifisches Design, das in einer Produktionsumgebung größtenteils ungeprüft wird. Keine bekannten Versuche sind gemacht worden, in ein lebendes System vom Internet einzudringen, bedeutend, dass die Verwundbarkeit von SkyOS unbekannt ist.

"passworded Mappen" wird Eigenschaft am filesystem Niveau durchgeführt, so können keine Anwendungen von SkyOS den heimischen APIs verwenden, um auf Dateien ohne das richtige Kennwort zuzugreifen, das durch den Benutzer worden ist eingeht. Jedoch werden Dateien in einer passworded Mappe auf der Platte in einem zu un-passworded Dateien identischen Weg versorgt, so konnte ein kluger Programmierer einem userspace Fahrer von SkyFS schreiben, der einfach das Kennwort ignoriert und das Verzeichnis an der Laune liest.

Die Stabilität von SkyOS ändert sich vom Benutzer dem Benutzer, obwohl, als Ganzes, es sich verbessert. Mit der richtigen Hardware kann ein Benutzer fast einen Unfall, aber mit der falschen Hardware nie erfahren, das System kann nicht sogar starten. Keine umfassende Hardware-Vereinbarkeitsliste kann wegen des unbeständigen Staates des Systems behalten werden.

Beteiligung mit der kostenlosen Software

Als ein ehemaliges offenes Quellprojekt ist SkyOS das Thema von vielen Debatten gewesen, die mit kostenloser Software verbunden sind.

Häufig wird SkyOS angeklagt, wegen den GPL zu verletzen. D. h. seit dem Entwickeln eines Betriebssystems wird gedacht, eine außerordentlich komplizierte Aufgabe zu sein, der Schluss wird durch einen gezogen, dass Szeleney Code der kostenlosen Software in der Größenordnung von ihm gestohlen haben muss, um die Fortschritte gemacht zu haben, die er hat. Tatsächlich wird das Gegenteil durch den öffentlichen Verkehr von Szeleney mit offenen Quellentwicklern einbezogen. Selbst wenn nicht erforderlich laut der Lizenz Szeleney Änderungen durchweg veröffentlicht hat, die vorgenommen sind, um in SkyOS verwendete Quellarbeiten zu öffnen.

Einige Beta-Prüfer fürchten, dass ihre Investition verloren wird, wenn Szeleney unfähig oder widerwillig wird, die Entwicklung von SkyOS fortzusetzen. Diese Angst wird als eines der mehr gut begründeten Argumente für offenen sourcing SkyOS allgemein verwendet. Im Anschluss an die Beendigung der aktiven Entwicklung hat Szeleney das als eine Möglichkeit erwähnt.

Siehe auch

Außenverbindungen

  • SkyOS.org — die Einstiegsseite von SkyOS
  • SkyOS.at — die Einstiegsseite von SkyOS (alternative Adresse)
  • TechIMO — Entwickler-Interview von SkyOS
  • Slashdot — Durch SkyOS 5.0 Beta Spazieren gehend
  • Slashdot — Thunderbird und Firefox, der zu SkyOS getragen ist
  • OSNews.com — SkyOS, Das 7. Beta und Robert Szeleney

Jonathan Miller / Wu Guanzheng
Impressum & Datenschutz