Wenn PCs starten (oder auch nicht)

by , on
last update by Peter Ludikovsky, on

Nach einer Diskussion auf der Debian User Mailinglist ist mir (wieder) mal aufgefallen, dass das Grundwissen zu grundlegenden Computer-Themen immer mehr fehlt. Wobei „Grundlegend“ hier nicht als „notwendig um einen Computer zu bedienen“ zu verstehen ist, sondern „notwendig, damit ein Computer funktioniert“. Deswegen werde ich anfangen, immer wieder mal einen Beitrag zu schreiben, wie bestimmte Dinge eigentlich funktionieren. Den Anfang macht der notwendige Ablauf von „Strom an“ zu „Ich kann arbeiten“.

Strom an

Also, am Anfang steht der Ein/Aus-Schalter. Bei den frühen AT-PCs waren das tatsächliche Schalter, und nur solange der Stromkreis geschlossen war lief das Gerät auch wirklich. Die modernen PCs im ATX-Format nutzen dagegen nur noch einen Taster, welcher einen kurzen Impuls an das Mainboard liefert, welches dann den eigentlichen Stromkreis im Netzteil schliesst. Damit ist es nicht mehr notwendig, ein Kabel mit Strom quer durch das Gehäuse zu schleifen.

Die Lichter gehen an

So, jetzt hat die CPU also mal Strom. Und weiter? Im ersten Schritt lädt diese jetzt eine Basis-Firmware. Früher war das das BIOS1, modernere Systeme nutzen das UEFI2 welche die Hardware anfängt zu initialisieren, und dabei auch einen ersten Selbst-Test durchführt. Beim BIOS war dies der Power On Self Test (POST). Dabei wird überprüft ob CPU, RAM, Grafikkarte, … funktionieren. Wenn mal was nicht funktioniert hat, hat es, je nach Hersteller verschiedene, Beep-Codes gegeben, bei denen der eingebaute Lautsprecher eine Sequenz von Piepsern ausgegeben hat, mit denen Wissende (oder Leute, die das Handbuch nicht weggeworfen hatten) herausfinden konnten, was genau nicht funktioniert.

Beim UEFI ist das schon etwas komplizierter. Erstens können die modernen Chips wesentlich mehr, zweitens wollte man von der recht starren Konstruktion BIOS auf ein moderneres, flexibleres System. Deswegen wurden die Fähigkeiten bei UEFI dahin erweitert, dass man es schon fast als ein kleines Betriebssystem bezeichnen kann. So können sich z.B. bei UEFI Netzwerkkarten als normales Geräte für den Betriebssystem-Start registrieren, was zu BIOS-Zeiten nur umständlich durch Extra-Firmware möglich war. Der normale Benutzer wird allerdings von den Unterschieden wenig bemerken.

Kann ich jetzt dann endlich arbeiten?

Fast. Wir sind von der Zeit her circa bei 1/3. Auf modernen PCs sind bis jetzt höchstens 1-2 Sekunden vergangen. Auf älteren, noch mit BIOS, wären es eher 5 bis 10 gewesen. Im nächsten Schritt unterscheiden sich BIOS und UEFI nur in Details. Beide haben bis jetzt hoffentlich zumindest 1 Medium initialisiert, von dem aus ein sogenannter Bootloader gelesen werden kann. Das ist ein kleines Programm dessen Aufgabe es ist, den Kernel eines Betriebssystems einzulesen und auszuführen. Und mit diesem Kernel beginnt erst das, was die meisten als „Starten“ erkennen. Ab hier werden nämlich die Treiber3 geladen, gefolgt von den Programmen für die Benutzeroberfläche, Hintergrundprogrammen für die Verwaltung, … Nachdem das alles erledigt ist, bekommt der Benutzer meist eine Anmeldemaske zu sehen, und kann beginnen zu arbeiten4.

Und weiter

Das soll jetzt erst mal nur ein „kurzer“, oberflächlicher Einblick sein, was alles notwendig ist damit ein PC startet. Wenn jemand Korrekturen und/oder Ergänzungen hat, nur her damit. Genauso bei Fragen einfach melden. Vielleicht ergibt sich ja ein Folgeartikel daraus.


  1. Basic Input Output System↩︎

  2. Universal Extended Firmware Interface↩︎

  3. Kleine Programme, die wissen wie ein Stück Hardware angesprochen werden muss, damit es funktioniert.↩︎

  4. Oder spielen. Oder Film schauen. Oder, oder, oder…↩︎