Deutschsprachige Literaturempfehlungen für
diejenigen die sich intensiver mit dem BIOS beschäftigen wollen
kann ich leider keine machen. Es gibt leider zu viele und zu viel
davon sind für den Normaluser einfach nicht geeignet. Entweder weil
am Thema vorbei geschrieben wurde oder weil vieles unverstaändlich
ist. |
Die Bedeutung des
BIOS für den PC oder "Die Seele des Ganzen"
Das BIOS (Basic Input Output System) gehört zu den wichtigsten
Bestandteilen des IBM-PC.
Es ist die Schnittstelle zwischen Hardware und der Software.
Aufgaben, die das BIOS erfüllen muss, sind unter anderem der
Selbsttest und die Initialisierung des Computersystems.
Außerdem erfolgt die Initialisierung der Komponenten beim
Einschalten und ggf. die Bereitstellung von Routinen, die es
erlauben, die Systemkomponenten zu steuern und mit ihnen Daten
auszutauschen.
Das BIOS muss so programmiert sein, dass es mit der Hardware
konfliktfrei zusammenarbeitet.
Im allgemeinen ist es aus diesem Grund nicht möglich das BIOS
beliebig auszutauschen.
Obwohl die Anpassung an die Hardware erfolgt, ist die Schnittstelle
zur Software immer die gleiche.
Damit ist gewährleistet, dass diese auf jedem PC-System
(IBM-kompatibel) funktioniert. |
Das
Arbeitsprinzip des BIOS
Beim Start erfolgt der POST (Power On Self Test), die
System-Initialisierung und die Boot-Routine.
Danach der Runtime-Service mit Hardware-Interrupt und
Dienstprogrammverwaltung.
Die Hardware-Interrupt- und Dienstprogrammverwaltung sind die
eigentliche Schnittstelle zwischen Hardware und
Software. |
Ja wo steckt es
denn, das BIOS?
Der Hauptteil des BIOS zusammen mit dem dazugehörigen
Konfigurationsprogramm, dem Setup, befindet sich auf einem oder
zwei ROM-Bausteinen (üblicherweise EPROMs oder EEPROMs; siehe
Glossar) auf dem Motherboard. Auf manchen Boards gibt es ein
doppeltes BIOS. Eines davon als Ersatz für den Ernstfall. |
Der POST (Power
On Self Test) hat nichts mit der Post zu tun ;-)
Der Power On Self Test erfüllt die Aufgabe, die zentrale
PC-Hardware und Hardware-Erweiterungen zu testen und zu
initialisieren.
Am Anfang steht eine Sprunganweisung zu den POST-Routinen des
BIOS.
Der Test beginnt immer bei der CPU, wenn dieser Test nicht
erfolgreich ist, wird das System normalerweise angehalten.
Dann wird eine Checksumme über das BIOS gebildet und mit der im
BIOS gespeicherten verglichen.
Genauso wird mit dem batteriegepufferten CMOS-RAM der Echtzeituhr
verfahren.
Danach erfolgen diese Tests, deren Reihenfolge verschieden sein
kann. |
Test und Initialisierung |
DMA-Controller |
Test und Initialisierung |
Tastatur-Controller |
Test |
die ersten 64 KB des RAMs |
Test und Initialisierung |
Interrupt-Controller |
Test und Initialisierung |
Cache-Controller |
|
Danach werden die verschiedenen
Hardware-Erweiterungen getestet.
Das es die Aufgabe des POST ist, Fehler im System festzustellen,
werden auch ggf. Fehlermeldungen ausgegeben (siehe bei den
einzelnen BIOS).
Wenn der POST erfolgreich beendet ist erlaubt das BIOS den Zugriff
auf die Hardware, mit ihr Daten auszutauschen und sie zu
steuern.
Der Umfang der Funktionen ist abhängig von den vorhandenen
BIOS-Erweiterungen, reicht aber aus um die notwendigsten
Fähigkeiten des IBM-PCs zu nutzen. |
Das BIOS und
seine Konfiguration
Da jeder PC über eine andere Hardwarekonfiguration verfügt, ist es
notwendig, dass das BIOS entsprechende Infos über das System
erhält.
Dafür stellt es ein Konfigurationsprogramm, das Setup, zur
Verfügung, welches es erlaubt bestimmte Einstellungen, die die
Hardware betreffen vorzunehmen.
Das beginnt bei der Uhrzeit, geht über Festplatten,
Speicherbausteine, Plug&Play bis zu den Chipsätzen des Board
und der Passwortsicherung.
Die Setup-Programme der jeweiligen Hersteller unterscheiden sich
stark voneinander.
Man sieht das an der Anzahl, der manchmal textlich unsinnig
abweichenden Optionen und der Menügestaltung.
Ich habe allerdings berechtigte Zweifel, dass dies dem/der User/in
besonders zuträglich ist. |
Plug & Play,
oder der Weg durchs Tal der Tränen
Plug and Play ist (soll sein) ein Standard für PC-Hardware und
Software, der von der Plug and Play Association definiert wird, um
die Hardwarekonfiguration zu vereinfachen und das problemlose
Starten des Rechners zu gewährleisten.
Für das PnP-BIOS sind daher unter anderem folgende Ziele gesetzt
worden:
maximale Unterstützung von PnP Komponenten |
volle Kompatibilität zu nicht PnP Komponenten |
Erkennung (Isolation), Nummerierung und
Konfiguration von PnP Karten |
dynamische PnP Hardware Konfiguration durch
Software (z.B. OS) |
Systemereigniserkennung und -behandlung |
Runtime Configuration Support |
BIOS Routinen, die es ermöglichen, der rufenden
Software Informationen über PnP Komponenten zur Verfügung zu
stellen, und diese zu konfigurieren (ein für den Programmierer sehr
wichtiger Teil). |
Erkennung von PnP Hardware Ereignissen, und deren
Behandlung zur Laufzeit
(z.B. wenn eine Einsteckkarte ausgewechselt wurde). |
|
Mit Plug and Play bietet sich bestimmt eine sehr
gute Möglichkeit, Hardware Installationen zu vereinfachen.
Allerdings müssten dann alle Komponenten den PnP-Standard
unterstützen. Billig- und Ramschware hält sich garantiert nicht an
den Standard. Es gibt aber hin und wieder auch bei den "Guten"
Ausreißer. Außerdem muss aber auch das Betriebssystem in der Lage
sein die Funktionalitäten des PnP zu nutzen. Die meisten tun dies
auch, obwohl es hie und da noch Probleme gibt. |
|