Diskussion:Mikrokernel/Archiv/1

aus Wikipedia, der freien Enzyklopädie
Letzter Kommentar: vor 13 Jahren von 196.201.51.16 in Abschnitt Mikrokern != Mikrokernel
Zur Navigation springen Zur Suche springen

- 2004 -

Redirect in der englischen WP

In der Englischen Wikipedia ist Mikrokernel ein Redirect nach Kernel. Vielleicht sollten wir das auch so machen ? -- Maarten Bosma (nicht mit einer Zeitangabe versehener Beitrag von Maarten Bosma (Diskussion | Beiträge) 12:12, 9. Jul. 2004 (CEST))

das stimmt heute zwar nicht mehr, aber diese Katastrophe wäre mit einem Link auf Betriebssystemkern und einer dementsprechenden Ergänzung dort sicher gedient.
Der Unterschied zwischen einem monolitischen und einem micro-kernel kommt nicht klar heraus und welches OS nun welchen Kernel hat, darüber gibt es verschiedenste Meinungen. Letzlich ist jedes OS IMHO eine hybride Lösung. --Nobby1805 21:00, 28. Jun. 2008 (CEST)

L4

Ist L4 wirklich so bekannt? Ich selbst habe die populören Beispiele BeOS und Windows NT (was ja jetzt nur noch als einzige Platform von Microsoft vermarktet wird) hinzugefüht. -- ckorff 6. März 2004 (nicht mit einer vollständigen Zeitangabe versehener Beitrag von Ckorff (Diskussion | Beiträge) 21:32, 6. Mär. 2004 (CET))

Natürlich ist L4 bekannt? Was BeOS betrifft: Ist das wirklich ein Microkernel? Windows NT könnte man ja vielleicht noch als vermurksten Microkernel der 1. Generation bezeichnen... (nicht signierter Beitrag von 193.159.31.196 (Diskussion | Beiträge) 17:08, 30. Apr. 2004 (CEST))

WinNT

Der englische Artikel meint, dass WinNT ein Hybridkernel ist. -- Maarten Bosma (nicht mit einer Zeitangabe versehener Beitrag von Maarten Bosma (Diskussion | Beiträge) 12:38, 9. Jul. 2004 (CEST))

WinNT ist kein Mikrokern. Microsoft wird aber mittelfristig mit der NGSCB (Next Generation Secure Computing Base) einen Mikrokern unter Windows laufen haben (Nexus). --BjoernD (nicht mit einer Zeitangabe versehener Beitrag von BjoernD (Diskussion | Beiträge) 15:58, 17. Mai 2005 (CEST))

Laut Andrew Tanenbaum in seinem Modern Operating Systems Buch ist Win NT (zumindest ab Version 5 - also W2K) ein Microkernel. Das geht halbwegs konform mit dem englischen Wikipedia-Artikel, dass Win 2K und Win XP modifizierte Mikrokernels sind, Win NT (also inkl Version 4) aber monolithisch. --Dunkeltron 00:07, 2. Sep 2005 (CEST)
Was an Windows NT bis 4.0 soll bitte monolithisch sein? Tanenbaum in allen Ehren, aber das ist IMHO Quatsch. Ich würde eher sagen: mit Version 4.0 und der teilweisen Verlagerung des GDI in den Kernel-Mode hat sich die NT-Reihe in Richtung Hybrid-Kernel entwickelt. --Novox 23:49, 30. April 2006 (CEST)

Fiasco-Kernel

Ist es wirklich nötig den Fiasco-Kernel extra mit aufzuzählen ? Er ist schließlich eine Implementierung der L4-Api. -- Maarten Bosma (nicht mit einer Zeitangabe versehener Beitrag von Maarten Bosma (Diskussion | Beiträge) 17:54, 8. Jul. 2004 (CEST))

Fiasco hat von mir eine Erwähnung in Fiasco bekommen, da nur die andere Wortbedeutung stehen zu lassen, mir nicht gefiel. Und sobald es diesen Eintrag gibt, sollte er aich Hyperlinks von passenende Seiten bekommen, oder?

Im Prinzip ist die gesamte Mikrokernel-Seite unbefriedigend: Wenig Fließtext, viel Aufzählung. Aber das wird erst dann besser wenn jemand den Hauptttext ausbaut. Ansonsten hängt meine Seele nicht daran, und wenn jemand meint, der Artikel würde durch die Streichung besser: 'Sei mutig!'

Pjacobi 01:57, 9. Jul 2004 (CEST)

Ich hab Fiasco mal hinter L4 geschrieben -- Maarten Bosma (nicht mit einer Zeitangabe versehener Beitrag von Maarten Bosma (Diskussion | Beiträge) 12:24, 9. Jul. 2004 (CEST))

- 2005 -

Mac OSX

Lohnt es sich wirklich, Mac OSX als Microkernel aufzufassen? Laut http://arstechnica.com/reviews/2q00/macos-qna/macos-x-qa-3.html steckt zwar ein Machkernel drunter, dem aber ein Teil eines BSD-Kernels aufgesetzt wurde, der auch mit Kernprivilegien läuft. Ob man da noch von Mikrokernel sprechen will? Ich würde da eine Bemerkung "modified microkernel" hinzufügen.

JoergHoh 09:03, 23. Mai 2005 (CEST)

Dann sollte man es vielleicht besser gleich der englischen Fassung nachtun und Mikrokernel und modifizierter Mikrokernel jeweils einzeln listen. --Dunkeltron 00:07, 2. Sep 2005 (CEST)

- 2006 -

Dauer von Kontextwechseln PowerPC <-> Intel

Mir leuchtet nicht ein warum der Kontextwechsel auf PowerPCs schneller gehen soll, wo doch wesentlich mehr Register zu sichern sind, bin mir aber auch nicht sicher, daher habe ich es mal nicht im Artikel geaendert, sondern nur hier in die Diskussion gestellt. --134.102.116.3

Ich weiss es nicht und die Information mag tatsaechlich veraltet sein. en:context_switch#Software_vs_hardware_context_switching gibt zumindest ein paar Hinweise. IIRC war der CPU-Befehl in aelteren Modellen auch langsamer als die manuelle Variante. Dass speichern der FPU-Register wird auch gern vermieden, weil es viel Zeit kostet. Moeglicherweise unterstuetzt PPC das Speichern mehrerer Kontexte in einem dedizierten Cache. --82.141.61.129 19:58, 28. Mär 2006 (CEST)

Der Eintritt in den Kernel-Mode ist auf PPCs einfach viel schneller als auf x86. Das hat sich aber mit sysenter and friends wieder etwas relativiert. Boelthorn 03:24, 7. Jul. 2008 (CEST)

Hybrid-Kernel

Mac OSX ist eigentlich ein Hybrid-Kernel, meint fuer mich nachvollziehbar [1] --Jluebeck 21:50, 15. Mai 2006 (CEST)

- 2007 -

MINIX

Ich dachte nur MINIX 3 verfügt über einen Microkernel???

Nein, Tanenbaum ist schon sehr lange vom Mikrokernel-Konzept überzeugt und entwickelte Minix dementsprechend. Daher kams in der Entstehungszeit von Linux zum historischen Disput zwischen Tanenbaum und Torvalds. --Matthäus Wander 15:52, 2. Jun. 2007 (CEST)

Diese Wikipedia-Seite ist eine Katastrophe!!!

Ok, wo fang ich an...

Kapitel Einleitung

Ein Mikrokernel hat nicht einfach nur "weniger Funktionen", er bietet umso mehr nur die grundlegenden Funktionen an, nämlich:

  • Scheduling
  • Message Passing
  • grundlegendes Speichermanagement (ohne VM)
  • evt. I/O-Verwaltung

Kapitel Entwicklung

Schlechte Leistung führt sicher nicht zu Unübersichtlichkeit. Die ist durch die Komplexität von Mikrokernel-Designs bzw. früherer Implementierungen bedingt!

Kapitel Entwicklung

Das Problem mit der Geschwindigkeit bei Mikrokernel sind kaum die häufigen Kontextwechsel, sondern das unter vielen Situationen nötige zweimalige Kopieren von Objekten bei einem Systemaufruf: nämlich einmal vom Client in den Speicher des Kernels, dann vom Kernel zum Server (Driver). In Makrokerneln kann der Driver direkt am Kernelspeicher operieren. Nur so als Beispiel.

Auch bei einem Mikrokernel können sich Programme Speicher teilen. Das Problem besteht nur bei schlechten Umsetzungen des Mikrokernel-Prinzips. --84.153.71.225 15:42, 26. Feb. 2008 (CET)
Es gibt ein Paper, was zeigt, daß das Hauptproblem von Machs Performance sein großer TLB Footprint ist, also das bei einem Systemcall zu viele TLB Einträge der laufenden Programme verdrängt werden. Boelthorn 03:29, 7. Jul. 2008 (CEST)

Kapitel Vorteile

Eine klare Schnittstelle (API) hat jeder Kernel.

Der Absturz einer Komponente soll nicht nur zwangsläufig zum Systemabsturz führen, er soll es unmöglich machen! Das ist ja gerade der Vorteil von Mikrokerneln!

Eie ersten zwei Punkte kann man in zusammenfassen als "separierte Komponenten (Client-Server-Architektur)" und "eingeschränkte Rechte (User-Mode)". Die Vorteile beim ersten Punkt sind:

  • Komponenten sind austauschbar
  • im Falle eines Absturzes neu startbar

Die Vorteile beim zweiten Punkt sind

  • ein Absturz einer Komponente wirkt sich nicht (direkt) auf andere aus.
  • das Sicherheitsrisiko wird nicht erhöht (steht eh im Artikel, Bufferoverflows und dgl. sind erwähnenswert).

Kapitel Nachteile

Nochmal: das Problem sind nicht die Kontextswitches (tatsächlich gibt es seit dem Pentium II einen sysenter-Befehl, mit dem viel schneller zw. Kernel-User hin- und hergeschaltet werden kann), sondern das häufige Kopieren. Eine der großen Herausforderungen beim Mikrokernel-Design ist es, das doppelte Kopieren zu vermeiden.

Kapitel Bekannte Mikrokernel

NewOS ist weder bekannt (für die Allgemeinheit), noch ein Mikrokernel! NewOS ist ein modularer monolithischer Kernel.

Kapitel Betriebssysteme, die auf Mikrokerneln aufsetzen

BeOS, Haiku und Zeta sind alle modulare monolithische Kernel.

Hoffe, dass sich wer bemüht, die Seite upzudaten (momentan komm ich nicht dazu, aber wenn ich Zeit finde, werd ich's selber machen).

Grüße, Michael Noisternig 10:36, 31. Jul. 2007 (CEST)

PS: Die Seite bekommt einen Überarbeiten-Block!

Ja, warum überarbeitest du sie denn nicht gleich?
Das geht doch viel schneller...
Ad.ac 16:24, 31. Jul. 2007 (CEST)  :)

- 2008 -

L4 nur 10 Befehle

ich denke, dass es reicht, wenn es einmal im Artikel steht. Dafür sollte da stehen in welcher Sprache sie sind.

Diese Textstelle untertrifft die generelle Qualität dieses Artikels sogar noch. Statt Befehle sollte da Systemcall o.ä. stehen. Boelthorn 03:26, 7. Jul. 2008 (CEST)

Du meinst, das API besteht aus 10 Befehlen? Wenn es dafür irgendwo eine Bestätigung gäbe wäre das ja OK, aber so ist das grottig. Ich entferne mal die zwei Minisätze. Dass es der kleinste Kernel weltweit ist kann ich nirgends bestätigt finden, und das mit den 10 „Befehlen“ erst recht nicht. Verlinkt ist der L4 ja sonst mehrfach im Artikel. --dealerofsalvation 20:27, 18. Dez. 2008 (CET)

Mikrokernel == Betriebssystemkern ?

Ist der Mikrokernel wirklich nur ein Betriebssystemkern? Also wir haben in der Vorlesung gelernt, dass ein Mikrokernel mehr ist, und zwar ein Architekturpattern. Mikrokernel beschreibt dabei ein System bei dem wichtigen plattformabhängige Komponenten hinter einem einheitlichen Interface versteckt werden. Die Winapi etc. ist nur eine Anwendung des Mikrokernel. [Quelle: http://wi.wu-wien.ac.at/home/uzdun/publications/ArchPatterns.pdf] (Das ist ein Paper aus dem englischen Wiki - unter Architectural Patterns) --Chris2002 09:59, 8. Jul. 2008 (CEST)

- 2009 -

OS X

Unten heißt es in der Liste, der Mach-Kernel, auf dem OS X basiert, sei ein Mikrokernel. Zwei Sätze weiter heißt es, der Darwin-Kernel, auf dem OS X basiert, sei ein Hybridkernel. Was denn nu? (nicht signierter Beitrag von 80.128.231.185 (Diskussion | Beiträge) 12:03, 17. Jul 2009 (CEST))

Ja, Darwin (= Kernel von OSX) hat grosse Teile des Mach-Kernel übernommen. Aber nicht nur. Es hat auch Teile des monolithischen FreeBSD-Kernels übernommen. Es ist also weder Microkernel noch ist es ein Monolith. Es ist ein klassicher Hybridkernel. Es hat also so viele Vorteile beider Arichdekturen wie nur möglich. Das ist daran zu erkennen, dass viele Funktionen in den Kernel integriert sind, (dies macht man meist wegen der Geschwindigkeit) allerdings nicht so viele wie bei einem monolithischen Kernel. Diese Aussage gilt übrigens auch für alle Windows NT. (inkl. 6.1) --Thomei08 10:44, 22. Jul. 2009 (CEST)

AmigaOS

Ich würde AmigaOS nicht wirklich als klassischen Mikrokernel sehen, da AmigaOS keine verschiedenen Modi (Kernelmode, Usermode) kennt, d.h. es gibt keine Kontextswitche und Nachrichten werden über global adrressierbare Strukturen ausgetauscht. Diese gilt bis AmigaOS 4.1. Ausserdem gilt dies für die AmigaOS Reimplementierung AROS. Nur bei Morphos handelt es sich um einen Mikrokernel (Quark Kernel). Dieser führt eine Applikation aus, die sog. ABox, die eine AmigaOS kompatible Umgebung zuer Verfügung stellt. Derzeit steht keine API/SDK zur Verfügung um direkt mit dem Mikrokernel zu arbeiten, oder eine neue "Box" zu erstellen. (nicht signierter Beitrag von 193.197.74.59 (Diskussion | Beiträge) 15:16, 13. Aug. 2009 (CEST))

Deutsch oder English?

"Microkernel" ist kein deutsches Wort, und ich habe noch nie gehört, das ein Betriebssystemexperte das in einem deutschen Satz benutzt hätte. Richtig ist "Microkern". Die Seite sollte umbenannt werde, aber natürlich muss der alte Name umgeleitet werden. Ich habe nicht die Zeit herauszufinden, wie man das macht... -- Heiser 07:41, 23. Aug. 2009 (CEST)

aber "Mikro" ist ein deutsches Wort? Wir sollten bei den international gebräuchlichen Bezeichnunge bleiben! --Nobby1805 11:10, 23. Aug. 2009 (CEST)
Also ich halte nichts von dieser Verschieberei. Das Wort Mikrokern oder Microkern ist mir noch nicht begegnet. -- 87.144.127.13 15:37, 9. Jan. 2010 (CET)

Windows Vista hat einen Microkernel

Andrew Tanenbaum hat ganz recht wenn er sagt dass nach Windows 3.51 der Microkernel wieder aufgegeben wurde. Da das System zu langsam war, wurde der Grafikteil in den Kernel "zurückverfrachtet". Durch den Windows-Error-Report (WER) hat MS in Windows XP aber herausgefunden was die meisten Abstürze verursacht: es waren mit großem Abstand die Grafiktreiber. Deshalb wurden sie für das nächste Major Release von Windows (Version 6), wieder entfernt. In Windows Vista kann man jetzt ohne Neustart die Grafikkartentreiber updaten, nicht nur theoretisch, ich habe es selber oft genug gemacht. Auch nach einem Absturz können die Treiber einfacher wieder neu gestartet werden. (nicht signierter Beitrag von 82.83.49.118 (Diskussion | Beiträge) 17:50, 23. Jul. 2008 (CEST))

Nein, auch Vista ist auch ein Hybridkenel. Siehe: http://en.wikipedia.org/wiki/Hybrid_kernel Nur das Entfernen der GUI aus dem Kernel macht den Kernel noch lange nicht zu einem Microkernel. (nicht signierter Beitrag von 212.41.104.101 (Diskussion | Beiträge) 23:21, 19. Aug. 2008 (CEST))
Das Nachladen/Neuladen von Treibern im laufenden Betrieb ist sogar bei einem monolithischen Kernel möglich. (z.B. bei Linux mit Modulen) --sth 18:36, 01. oct. 2008 (CEST) (nicht signierter Beitrag von 212.41.73.146 (Diskussion | Beiträge) 18:40, 1. Okt. 2008 (CEST))

Nomenklatur

Die gesamte Nomenklatur die hier verwendet wird ist fehlleitend.

Was mit Mikrokernel im Artikel eigentlich gemeint ist, ist eine Mehr-Kontext-Kern in dem Kernelfunktionen in unterschiedlichen Prozessen und MMU-Kontexten (Adressräumen) ablaufen.

Was mit Monolithischem Kernel im Artikel eigentlich gemeint ist, ist eine Ein-Kontext-Kern in dem alle Kernelfunktionen im gleichen Adressraum ablaufen.

Hielte man sich jedoch an die Namen Monolithisch bzw. Mikrokernel, dann wäre Solaris z.B. definitiv kein Monolith sondern ein Mikrokern in dem nur das absolut Nötigste untergebracht ist (CPU Initialisierung, Basis-Scheduler und Pager) Alle anderen Treiber (auch die für das Root-Filesystem) werden bei Bedarf geladen und bei knapp werdendem Speicher sogar automatisch herausgeworfen, sollten sie nicht in Gebrauch sein.

Als Diskusionsgrundlage zur Überarbeitung habe ich das auch in die anderen relevanten Artikeldiskusionen kopiert. --Schily 12:45, 6. Aug. 2010 (CEST)

Mikrokern != Mikrokernel

Ich finde auch dass dieser Artikel unter 'Mikrokernel' erscheinen sollte. Ist doch der erste Satz "Ein Mikrokernel bezeichnet einen Betriebssystemkern." Und auch sonst im Artikel wird immer wieder von "Kernel" gesprochen. Zudem sind drei 'siehe auch'-Verweise Kombinationen mit '-kernel'. Da gibt es wirklich keinen Grund aus der Reihe zu tanzen. --Hannes (nicht signierter Beitrag von 196.201.51.16 (Diskussion) 13:47, 23. Nov. 2010 (CET))