Lowlevel
Lowlevel => OS-Design => Thema gestartet von: micha am 26. March 2012, 17:24
-
Hallo!
Ich bin am überlegen, ob ich mich für einen Monotholitischen Kernel oder für ein Microkernel entscheide.
Dabei kann ich mich eben nicht entscheiden!
Kann mir jemand vorteile bzw. nachteile von den verschiedenen Kernelarten nennen, damit ich mich besser entscheiden kann.
Grüße
Micha
-
Verschieb die Frage mal auf nächstes Jahr und fuchs dich erstmal in die Materie. Bloß weil die Leute gerne über Kernelarten reden, heißt das nicht, dass es nicht 100 wichtigere Sachen gibt. Bis die Kernelart für dich interessant wird, wird das noch ein Weilchen dauern.
-
Microkernel!
-
Monolithischer Kernel!
-
Exokernel!
-
Hypridkernel!
Haben wir jetzt alle?
-
Er hat nicht gefragt, was ihr am besten findet, sondern was welche Vorteile hat. Wie bereits gesagt, ist die Kernelart erst interessant, wenn die Basics (Bildschirmausgabe, einfache Speicherverwaltung und Multitasking sicher laufen).
Ganz Kurz (alle Angaben sind relativ, man kann die Vorteile auch teilweise nur mangelhaft ausschöpfen oder Nachteile verringern).
monolithischer Kernel
pro:
- Einfache Kommunikation zwischen Kernel und Trieben durch simple Funktionsaufrufe.
- sehr schnell, da wenige Ringwechsel.
- Nur eine saubere Schnittstelle für Userspaceprogramme
kontra:
- Eventuell unübersichtlich.
- Fehlerhafter Treiber bringt das System zum Absturz.
- Treiber müssen bei jedem Kernelrease angepasst werden.
- Alle Treiber müssen vertrauenswürdig sein.
Microkernel
pro:
- Modularer Aufbau
- Ein fehlerhafter Treiber bringt nur sich selbst zum Absturz und kann neu gestartet werden
- Saubere Schnittstelle für Treiber, die so auch noch bei der Folgeversion funktionieren können.
kontra:
- Viele Schnittstellen zwischen Modulen und Treibern notwendig
- Langsam, durch die vielen Ringwechsel
- Der Bootloader muss neben dem Kernel auch noch die minimal notwendigen Treiber laden, die dann gestartet werden müssen.
- Kernel verfügt selbst über weniger Möglichkeiten oder muss auf externe Treiber zurückgreifen.
Jetzt musst du deine Schwerpunkte setzten.
-
Ein Link ins Wiki hätte vermutlich auch gereicht...
-
Kaputter Kernel.
Alle anderen Merkmale sind doch nun wirklich zweitrangig, oder? ;)
-
Ein Link ins Wiki hätte vermutlich auch gereicht...
Hab ich mir im Vorhinein auch gedacht, aber dann irgendwie trotzdem alles noch mal aufgeschrieben.
Was taljeth mit kaputter Kernel meint? Seine eigenen Projekte?
-
Was taljeth mit kaputter Kernel meint? Seine eigenen Projekte?
tyndur (http://www.lowlevel.eu/wiki/Tyndur) natürlich :wink:
-
Was taljeth mit kaputter Kernel meint? Seine eigenen Projekte?
tyndur (http://www.lowlevel.eu/wiki/Tyndur) natürlich :wink:
Immer schön in die Nierengegend ;)
-
nah, im Kanal #lost (http://www.lowlevel.eu/wiki/IRC) ist "kaputt" eine Auszeichnung und keine Beleidigung. :wink:
-
Na das wird ja ein geläster hier :wink:
-
Naja micha, an deiner Stelle würde ich mal über die stümperhaften Antworten dieser recht unerfahrenen Nutzer hier, allen voran dieser "Taljeht", hinwegsehen und auf eine hochproffesionele Meinung wie die meiner hören:
Die einzig wahre Kernelart ist natürlich der micromonolithische Modularhybrid. Er vereint ich höchstoptimierter und enormsteffizientester Weise die Vorteile aller bekannten und beliebten Kernelarten und verbindet diese zu einem höchstergonomischen und hochperformanten Konzept, welches das Maximum aus der Rechnerarchitektur x86 herausholt.
-
micromonolithische Modularhybrid
Interressant... das scheint ein toller mix zu sein :wink:
-
Spalter!
-
micromonolithische Modularhybrid
Interressant... das scheint ein toller mix zu sein :wink:
Klingt auf jeden Fall nach einer sehr geilen und einheitlichen API.
Wenn du einen Kernelspace-Treiber ohne Probleme in den Userspace ziehen kannst :D
-
Das wird ja glaub sorgar erklärt. Der Kernel startet Treiber als eigene Tasks, die dann wahlweise im Ring 0 oder Ring 3 laufen können.
Der Name ist natürlich ein bis NiwohlOS-artig. Aber als Konzept für einen modularen Hybridkernel ist es gar nicht so dumm. Das Rum schieben braucht man eigentlich nicht, starte die Treiber gleich im Richtigen Ring