Sind Treiber Teil der Betriebssysteme?

15

Ich habe Schwierigkeiten zu verstehen, was in einem Betriebssystem enthalten ist und was nicht. Ist ein Gerätetreiber wie ein Druckertreiber oder ein Grafiktreiber Teil eines Betriebssystems? Wenn ich über die Definition eines Betriebssystems nachdenke, glaube ich, dass Treiber Teil von Betriebssystemen sind.

Feuerameise
quelle
6
Ja und nein. Sie sind insofern Teil des Betriebssystems, als sie auf niedriger Ebene arbeiten und Zugriff auf interne Schnittstellen haben. Und viele sind für den Betrieb des Betriebssystems von entscheidender Bedeutung. Es handelt sich jedoch im Allgemeinen um separate "durch Stecker austauschbare" Teile, die häufig von einem anderen Unternehmen als dem Betriebssystem hergestellt werden. Hängt von Ihrer Definition von "Betriebssystem" ab, und es gibt keine einzige feste.
Daniel R Hicks
Bitte definieren Sie "enthalten". Garantiert auf der Windows-DVD für die Installation auf einem neuen Laufwerk? Oder konzeptionell Teil des Betriebssystems?
Sägemehl

Antworten:

13

Ja, Treiber sind Teil des Betriebssystems. Sie werden mit derselben Berechtigungsstufe wie der Betriebssystemkern ausgeführt. Um einen Treiber zu schreiben, müssen Sie viel über die Interna des Betriebssystems wissen. Die Rolle der Treiber besteht darin, eine Abstraktion der Hardware bereitzustellen, damit Anwendungen sie über die OS-API (Application Programming Interface) verwenden können, anstatt bestimmte Details zu kennen. In vielen Fällen kann auch dieselbe Hardware für viele Anwendungen gleichzeitig freigegeben werden.

Etwas, das Benutzer in die Irre führt, zu denken, dass Treiber möglicherweise nicht Teil des Betriebssystems sind, ist, dass viele Anbieter Treiber für Hardware bereitstellen, die sie separat vom Betriebssystem herstellen. In der Tat werden viele Treiber als ladbare Module dargestellt, die geladen werden können und dann dynamisch am Betriebssystem teilnehmen. Sobald sie nicht mehr verwendet werden, können sie vom Betriebssystem "getrennt" werden und es läuft normal weiter.

Ob ladbar oder nicht, Treiber sind immer spezifisch für die Geräte, die sie dem System zur Verfügung stellen sollen. Obwohl sie manchmal "optionale" Teile des Betriebssystems sind, nehmen sie während des Betriebs daran teil.

Claudio
quelle
1
Ich bin anderer Meinung (werde mich aber bei einer Abstimmung zurückhalten), einfach weil Sie es so angegeben haben, werden Treiber NICHT immer eingeschlossen oder verwendet. Das Betriebssystem ist der Kernel. Zeitraum. Windows Explorer ist nicht Teil des Betriebssystems, obwohl es mit ihm geliefert wird . Der Kernel ist der eigentliche Verarbeitungsteil, daher würde ich das Betriebssystem in Betracht ziehen. Andere Elemente, die enthalten sind, sind nicht Teil des Betriebssystems
Kanadier Luke
Sie können Treiber auch auf Benutzerebene ausführen, sodass Sie sie nicht auf Kernelebene ausführen müssen, obwohl dies bei den meisten der Fall ist.
Matt
Ich kann deinen Standpunkt sehen, Luke. Es gibt viele optionale Geräte, die für den Betrieb des Systems nicht benötigt werden. Daher kann ich zustimmen, dass ihre Treiber in diesem Sinne nicht Teil des Betriebssystems sind . Wie @Matt sagte, können einige Treiber sogar Benutzermodus-Treiber sein (viele Druckertreiber sind es), aber mein Punkt ist, dass die Mehrheit der Treiber, insbesondere strukturelle Treiber (Video, Festplatten-Controller usw.), Kernel-Modus-Treiber sind und als solche oder werden beim Laden zu einem echten Teil des laufenden Kernels. Da ein Kernel allein nichts Nützliches tun kann, ist es fair genug zu sagen, dass Treiber Teil des Betriebssystems sind (oder werden).
Claudio
1
Es ist wirklich eine Ja / Nein-Frage. Technische Treiber sind zwar nicht im Betriebssystem enthalten, Sie benötigen sie jedoch für die Kommunikation mit verschiedenen Geräten. Zum Beispiel Video. Sie stellen eine Anfrage an den Kernel, dann leitet der Kernel die Anfrage an den Anzeigetreiber weiter und gibt dann Informationen zurück, damit Sie tatsächlich etwas sehen können.
Matt
3
@ Luke - Anscheinend räumst du ein, dass der Kernel Teil des Betriebssystems ist, wenn nicht das gesamte Betriebssystem. Haben Sie jemals den Quellcode für ein Betriebssystem oder einen Kernel gesehen? Wenn Sie nicht für MS arbeiten oder eine NDA unterschreiben, wird der Windows-Kernel-Code nie angezeigt. Der Linux-Kernel ist jedoch Open Source, und alle (nicht proprietären) Linux-Treiber sind Teil des Kernel-Quellcodes. Der Linux-Kernel-Quellcode ist nicht in einen Kernel-Teil und einen Treiber-Teil unterteilt. Der Quellbaum enthält alle Kern- und Treibermodule zusammen. Ich würde erwarten, dass MS ihren Quellcode für Windows auf ähnliche Weise handhabt.
Sägemehl
5

Der Begriff "Betriebssystem" kann viele Dinge bedeuten.

Während unter den meisten Betriebssystemen der Kernel der Code ist, der alles verwaltet und "ausführt" und Zugriffe auf Hardware vermittelt, kann er normalerweise nichts Interessantes alleine tun - seine Aufgabe ist es, ein Framework für die Ausführung von Anwendungen bereitzustellen. " oben "wenn es. Die Definition eines Betriebssystems durch so viele Menschen umfasst Dienstprogramme, Shells und Programme, die eine vertraute, standardisierte Umgebung bilden.

Treiber hängen vom Kernel ab, und es ist wahrscheinlich am richtigsten zu sagen, dass sie ihn wie Plugins "erweitern". Linux unterstützt den Begriff "ladbare Kernelmodule" - und alle Gerätetreiber können ein ladbares Kernelmodul sein. Es ist auch möglich, einen Kernel zu erstellen, in dem eines oder mehrere dieser Module "eingebaut" und nicht vom Kernel getrennt sind. Sie könnten also wirklich einen "modullosen" Kernel unter Linux erstellen, der keine andere Hardware als die darin integrierten Module unterstützen könnte.

Ich bin mit den Eingeweiden von Windows weniger vertraut, aber ich glaube, bis auf einige wenige "Miniport" -Treiber sind alle Treiber externe Dateien, die beim Booten geladen werden. Wenn Sie sich ein wenig mit dem Erstellen von Diensten unter Windows beschäftigen, scheinen Treiber unter Windows wirklich nur spezielle Formen von Diensten zu sein. Einige Programme installieren Treiber, um auf Hardware auf niedriger Ebene zuzugreifen, aber nicht unbedingt, um ein Gerät zu betreiben. Dies sind normalerweise die "Nicht-Plug-and-Play" -Treiber unter Geräte-Manager. Daher scheinen Treiber konzeptionell dieselbe Funktion zu haben wie ladbare Kernelmodule unter Linux.

Ich würde der Einfachheit halber sagen, dass sie Teil des Betriebssystems sind, da sie ohne das Betriebssystem wirklich nicht verwendet werden können und nur dann nützlich sind, wenn das Betriebssystem gestartet wird, aber die gezeichnete Linie ist auf jeden Fall eher willkürlich.

LawrenceC
quelle
1

Keine Treiber sind nicht Teil des Betriebssystems. Sie können sagen, dass Treiber dem Betriebssystem helfen, mit dem Gerät oder der Hardware zu kommunizieren. Das Betriebssystem enthält standardmäßig nicht alle Treiber wie in Windows XP und Vista, aber in Windows 7 sind die meisten erforderlichen Treiber enthalten, sodass Sie nicht verwechseln, dass sie nicht Teil des Betriebssystems sind.

Deb
quelle
Die Tatsache, dass Sie sagen, dass Trockner nicht Teil eines Betriebssystems sind, beweist, dass Sie nicht wissen, was Sie tun. Windows XP enthält viele der gleichen Treiber wie Windows Vista und Windows 7. Microsoft hat große Anstrengungen unternommen, um noch MEHR generische Treiber für Geräte für diese Versionen aufzunehmen.
Ramhound
Ja. Ohne Treiber können wir kein Gerät benutzen. Wir können also sagen, dass der Treiber dem Betriebssystem hilft, mit dem Gerät zu kommunizieren, und zu der Frage werde ich sagen, dass einige Teil des Betriebssystems sind und andere nicht. Es gibt viele Treiber, die nicht mit dem Betriebssystem geliefert werden.
Deb
Auch wenn ein Treiber nicht mit dem Betriebssystem geliefert wird, ist er Teil des Betriebssystems, wenn Sie ihn installieren und verwenden. Der Beweis dafür ist, dass ein schlecht geschriebener Treiber Ihr gesamtes System blockieren kann, da es sich nicht um eine reguläre Anwendung handelt, die vom Betriebssystem beendet werden kann, sondern ein Teil von sich selbst.
Claudio