Wird das BIOS als Betriebssystem betrachtet? [geschlossen]

11

Diese Frage stellt sich beim Umgang mit RAID-Arrays, ist jedoch nicht unbedingt auf das betreffende Thema anwendbar.

Wie kann das BIOS von einer Festplatte lesen, um das Betriebssystem effektiv zu laden, wenn viele Betriebssysteme Treiber benötigen, um dasselbe tun zu können? Verfügt das BIOS über eine Liste von Treibern, aus denen es wie eines der gängigen Betriebssysteme wie Windows oder Linux gezogen wird?

Chad Harrison
quelle
2
SU-Administratoren sind nicht konstruktiv
Stumbler

Antworten:

10

Zunächst einmal ist das BIOS das grundlegende Eingabe- / Ausgabesystem, technisch gesehen kein Betriebssystem ... Was das Laden von RAID und dergleichen betrifft, fragt der Computer während des Startvorgangs alle hinzugefügten Karten ab und fragt, ob sie ein BIOS zum Laden haben. Die RAID-Karte von Herrn schreit: "Ja, ich muss zuerst etwas tun", dann startet er sein "BIOS" (in diesem Fall ein Betriebssystem), führt einige Berechnungen selbst durch und gibt die Kontrolle an das Haupt-BIOS zurück ("Hey, Ich bin fertig, hier sind alle Informationen, die Sie wissen müssen, um zu wissen, wissen Sie? ").

Sobald das Haupt-BIOS wieder die Kontrolle hat, kann es wie folgt lauten: "Ahhh, ich sehe, dass Herr RAID ein bootfähiges Volume hat. Ich werde das nach Möglichkeit durchlaufen und dann meine anderen Tricks ausprobieren."

Das BIOS ist also nicht "technisch" ein Betriebssystem, sondern ein Eingabe- / Ausgabesystem zur Vorbereitung auf das eigentliche Betriebssystem

Kanadischer Luke
quelle
11
" Er startet sein" BIOS "(in diesem Fall ein Betriebssystem) " - BIOS oder BIOS-Erweiterungen sind einfach kein Betriebssystem. Der Hauptzweck eines Betriebssystems ist das Ressourcenmanagement . Das BIOS kümmert sich als eigenständiges Startprogramm nicht darum, Informationen zur Ressourcenzuweisung zu verwalten. Das BIOS bietet keine open () - oder close () -Routinen, um den Zugriff auf Hardware einzuschränken. Jeder ausführende Code kann BIOS-Lese- / Schreibfunktionen verwenden. Das BIOS erfüllt nicht den grundlegenden Zweck des Betriebssystems.
Sägemehl
@sawdust Was ist mit dem Aktivieren oder Deaktivieren von Onboard-Geräten? Das würde den Zugang zu Hardware einschränken.
Bon Gart
@BonGart - Das Aktivieren / Deaktivieren durch das BIOS ist einfach ein Konfigurationstool, das die physische Installation oder Entfernung des Geräts ersetzt. Dies ist eine systemweite Aktion, die bis zu einer Neukonfiguration oder einem Gerätefehler wirksam ist. Ich bezog mich tatsächlich auf Betriebssystemkonzepte für Synchronisation und Ausschluss wie Mutexe und Semaphoren, die auf Prozess- und / oder Thread-Ebene gesteuert / eingeschränkt werden können. Oder zum Beispiel einen Druckspooler; Das Spool-Programm des Betriebssystems besitzt den Drucker und verbietet jegliche direkte Verwendung dieses Druckers. Sie müssen Ihren Druckauftrag an den Spooler senden, der die Druckanforderungen in die Warteschlange stellt.
Sägemehl
10

Das BIOS , wörtlich "grundlegendes Eingabe- / Ausgabesystem", besteht aus einer Reihe kleiner Programme, die fest auf dem Motherboard eines Computers codiert sind (normalerweise in einem EEPROM gespeichert ). Diese Programme bieten die Möglichkeit, Einstellungen zu ändern, Text zu schreiben und Benutzereingaben von grundlegenden E / A-Geräten zu übernehmen (das Motherboard muss sie für erweiterte VGA- und USB-Maus- / Tastaturgeräte emulieren) und bieten vor allem die Funktionalität zum Suchen und Starten Betriebssysteme, die auf angegriffenen Speichergeräten vorhanden sind.

Das BIOS selbst ist kein Betriebssystem. Das BIOS ist ein kleines Programm zum Laden eines Betriebssystems. Während es in einigen Betriebssystemen möglich ist, die verschiedenen BIOS-Subsysteme aufzurufen, muss die CPU in den Real-Modus zurückkehren, da das BIOS keine Unterstützung für virtuellen Speicher, keine Taskumschaltung (und damit keine Möglichkeit zum Ausführen von Programmen) bietet ) oder Gerätetreiberunterstützung (und kann daher nicht direkt auf Hardware außerhalb des direkt zugeordneten Zugriffsbereichs oder auf etwas zugreifen, das nicht in den BIOS-Interrupt-Aufrufen behandelt wird ).

Wie Linus Torvalds sagte :

Nicht, dass ich jemals behaupten würde, dass das BIOS wunderbar ist, aber zumindest weiß jeder, dass das BIOS nur ein Bootloader ist und versucht nicht, etwas anderes daraus zu machen.

Der absolut größte Vorteil eines BIOS ist, dass es so unpraktisch und offensichtlich altmodisch ist, dass man verrückt sein muss, um [...] etwas Ernstes daran tun zu wollen. Man bekommt keine Ahnung, dass es ein grandioses Framework für irgendetwas anderes ist als "Laden Sie einfach das Betriebssystem und raus zum Teufel".

Schließlich ist anzumerken, dass sich ein BIOS erheblich von einem UEFI ( Unified Extensible Firmware Interface ) unterscheidet, wobei letzteres der Bereitstellung einer grundlegenden Betriebssystemschnittstelle (Bereitstellung von Gerätetreibern und Anwendungsunterstützung) erheblich näher kommt. Es ist immer noch fraglich, ob selbst das UEFI als echtes Betriebssystem betrachtet werden kann oder nicht, obwohl es einem Betriebssystem wesentlich näher kommt als ein BIOS.

cp2141
quelle
2

Um auf die vielen Kommentare und Punkte einzugehen, habe ich die Antwort noch einmal bearbeitet.

Ist das BIOS ein Betriebssystem?

Nun, wenn ein Betriebssystem als Software definiert ist, die es einem Benutzer ermöglicht, mit der Hardware eines „Computers“ zu interagieren, dann ja… technisch und buchstäblich ist es ein Betriebssystem.

Definiert Task Switching, was ein Betriebssystem ausmacht?

In Anbetracht der Tatsache, dass MS-DOS ein gültiges Betriebssystem war und bis Version 5 Task Switching nicht unterstützt wurde, hat das Task Switching keinen Einfluss darauf, ob oder ob Software ein Betriebssystem ist.

Definiert die Virtualisierung des Speichers, was ein Betriebssystem ausmacht?

Auch hier wurde am Beispiel von MS-DOS die Unterstützung für die Speichervirtualisierung durch Ausführen von Extendern während des Ladevorgangs hinzugefügt. Es war jedoch nicht erforderlich, diese zu verwenden. Daher ist die Speichervirtualisierung auch keine Voraussetzung für das, was ein Betriebssystem ausmacht.

Wenn es in der Firmware gespeichert ist, ist es ein Betriebssystem?

Einige würden argumentieren, dass ein Router kein Betriebssystem verwendet. Beispielsweise scheint es Streit darüber zu geben, ob DD-WRT als Betriebssystem betrachtet wird. Gibt es Geräte, die ein Betriebssystem in der Firmware speichern? Moderne Telefone, iPods und andere speichern komplexe Betriebssysteme, denen Programme in der Firmware hinzugefügt werden können. Nur weil ein Betriebssystem in die Firmware geladen ist, schließt dies nicht aus, dass die betreffende Software als Betriebssystem betrachtet wird.

Wenn Sie keine Programme hinzufügen können, handelt es sich nicht um ein Betriebssystem.

Schritt weg von einem modernen Smartphone. Schauen Sie sich ein billiges Einweg-Handy an. In der Firmware ist ein Betriebssystem gespeichert, Sie können jedoch keine Programme hinzufügen. Es läuft wie es ist und nur mit der Funktionalität, die angeboten wird. Sie navigieren wie bei jedem anderen Betriebssystem durch die Menüs, wählen aus, was Sie tun möchten (Spiele spielen usw.), und mit einer guten Anzahl von ihnen vor einigen Jahren konnten sie keine zusätzliche Software hinzufügen.

Wenn es nicht modern ist, ist es kein Betriebssystem?

Der Zeitpunkt in der Geschichte, an dem das Betriebssystem erstellt und gestartet wurde, hat keinen Einfluss darauf, ob es sich um ein Betriebssystem handelt oder nicht.

Daher ist das BIOS möglicherweise nicht hübsch und bietet Ihnen möglicherweise keine extreme Funktionalität. Es ist jedoch immer noch ein Betriebssystem.

Bon Gart
quelle
3
Die Definition des Betriebssystems auf Wikipedia ist selbst fraglich. (Ich habe einige andere gehört) Aber trotzdem verpassen Sie völlig [...] die Bereitstellung allgemeiner Dienste für Computerprogramme , die ich für ein Betriebssystem für wesentlich halte.
Baarn
1
Ich neige eher zur Firmware als zum Betriebssystem. Ein BIOS hat keine Intelligenz, es kommuniziert nur auf sehr niedriger Ebene mit der Hardware und gibt diese Informationen an das Betriebssystem weiter. UEFI verändert das Spiel jedoch.
Moab
1
Es ist eine feine Linie zwischen Firmware und Betriebssystem, subjektiv wie die Hölle.
Moab
1
OK, ich gebe nach, es ist ein BIOS, Sie können jetzt meinen Kopf abhacken .. ;-)
Moab
2
@BonGart Ein BIOS bietet keine Unterstützung für virtuellen Speicher und keine Zeitplanung für Aufgaben - und daher keine Möglichkeit , Programme auszuführen (dh es kann nicht gleichzeitig mit anderen ausgeführt werden). Ich bin damit einverstanden, dass es grundlegende E / A-Unterstützung bietet, aber es ist ein kleines Programm und kein Betriebssystem ... Oder würden Sie den kleinen Code auf meinem Mikrocontroller klassifizieren, der ein Passwort empfängt und eine LED einschaltet (und somit grundlegende I bereitstellt)? / O-Unterstützung) auch ein Betriebssystem?
Durchbruch
2

Was ein "Betriebssystem" ist oder nicht, ist eine Frage der Beurteilung. Wohl (und das habe ich 1980 argumentiert) war das ursprüngliche PC / MS-DOS (trotz seines Namens) kein "Betriebssystem", da es nur E / A-Dienste (und einen groben Befehlsanalysator) und keine echten Systemverwaltungsfunktionen bereitstellte .

OTOH, viele BIOS-Implementierungen enthalten jetzt ein gewisses Maß an Hypervisor-Funktion, die Systemressourcen auf ziemlich ausgefeilte Weise verwaltet.

In Bezug darauf, wie das BIOS das Laden von Festplatten usw. ohne Treiber schafft, enthalten "bootfähige" Geräte gemäß Konvention / Standard eine Reihe von Vorgängen, die verwendet werden können, ohne dass eine ausgefeilte Verwaltungsinfrastruktur eingerichtet werden muss. In einigen Fällen ist dies nur die Fähigkeit, einige Sektoren an einem relativ festen Ort zu lesen, aber das ist in den meisten Fällen alles, was benötigt wird.

Daniel R Hicks
quelle
Sie würden also den Computer einschalten, MS-DOS laden und dann Programme ausführen können. Sie sagen, dass MS-DOS kein Betriebssystem war ... wo war das Betriebssystem dann? Es hört sich so an, als würden Sie sagen, dass MS-DOS nicht das ist, was Sie für ein echtes Betriebssystem halten, selbst wenn es technisch als eines funktioniert (und daher eines war).
Bon Gart
1
Früher gab es viele Computer ohne "Betriebssystem", nur einen "Laufzeit-Manager" oder einen solchen, der Dateidienste und einen Befehlsanalysator bereitstellte. Sie nannten sie nie "Betriebssysteme".
Daniel R Hicks
2
@bonGart " Wo war das Betriebssystem damals? " Es ist nicht erforderlich, ein Betriebssystem zu haben, dh einen Ressourcenzuweiser / -manager, um Programme auf einem Computer auszuführen. Frühe (oder einfache) Computer (einschließlich Mikros, auf denen CP / M ausgeführt wird) hatten einfach ein residentes Ladeprogramm, und das geladene Programm hatte vollen Zugriff auf alle Computerressourcen. Es gab keine Konkurrenz um Ressourcen, daher war kein Betriebssystem erforderlich.
Sägemehl
@sawdust - Richtig. Ein Schritt weiter vom "residenten Programmlader" entfernt war eine residente Laufzeitbibliothek (Papierband, Diskette und Tastatur- / Anzeigefunktionen - möglicherweise Drucker) und ein "Monitor" oder "Executive" oder eine solche, die erkennen würde, wann ein Programm ausgeführt wird endete, um den nächsten zu laden. DOS war nicht viel ausgefeilter als diese.
Daniel R Hicks