Rheinwerk Computing < openbook > Rheinwerk Computing - Professionelle Bücher. Auch für Einsteiger.
Professionelle Bücher. Auch für Einsteiger

Kompendium der Informationstechnik  von Sascha Kersken
EDV-Grundlagen, Programmierung, Mediengestaltung
(Die Neuauflage ist erschienen als: "Handbuch für Fachinformatiker")
Buch: Kompendium der Informationstechnik
gp Kapitel 3 Hardware
  gp 3.1 Grundlagen
  gp 3.2 Die Zentraleinheit
    gp 3.2.1 Aufbau und Aufgaben des Prozessors
    gp 3.2.2 Der Arbeitsspeicher
    gp 3.2.3 Das BIOS
    gp 3.2.4 Bus- und Anschlusssysteme
  gp 3.3 Die Peripherie
    gp 3.3.1 Massenspeicher
    gp 3.3.2 Eingabegeräte
    gp 3.3.3 Ausgabegeräte
    gp 3.3.4 Sound-Hardware
  gp 3.4 Zusammenfassung

gp

Prüfungsfragen zu diesem Kapitel (extern)


Rheinwerk Computing

3.2 Die Zentraleinheit  downtop

In diesem Abschnitt werden die Bestandteile der Zentraleinheit von Personal Computern näher beschrieben. Die Zentraleinheit besteht bei einem modernen PC im Wesentlichen aus den Komponenten der Hauptplatine, die auch Mainboard oder Motherboard genannt wird. Im Einzelnen gehören die folgenden wesentlichen Bestandteile dazu:

gp  Der Mikroprozessor (Central Processing Unit oder CPU) ist das eigentliche Herzstück des Computers, das für die Ausführung der Programme sowie für die zentrale Steuerung und Verwaltung der Hardware zuständig ist. Die meisten Desktop-PCs besitzen nur einen Mikroprozessor, maximal sind es in diesem Bereich zwei. Highend-Workstations, beispielsweise für professionelle 3-D-Grafik, sowie leistungsfähige Serverrechner haben dagegen oft zwei, vier, acht oder noch mehr parallel arbeitende Prozessoren. Wichtig ist in diesem Fall, dass das verwendete Betriebssystem und die Anwendungsprogramme die Verteilung der Arbeit auf mehrere Prozessoren überhaupt unterstützen.
gp  Der Arbeitsspeicher (das Random Access Memory, kurz RAM) enthält während der Laufzeit die Programme, die gerade ausgeführt werden, sowie die von ihnen verwendeten Daten. Die meisten modernen Betriebssysteme unterstützen die virtuelle Speicheradressierung, die die von Programmen verwendeten Speicheradressen von den physikalischen Adressen abstrahiert und auf diese Weise das Auslagern nicht benötigter Inhalte auf die Festplatte ermöglicht.
gp  Der ROM-Speicher (für Read-only Memory, also Nur-Lese-Speicher) ist bei modernen PCs nicht mehr so wichtig wie früher. Statt des gesamten Betriebssystems und anderer Programme enthält es heutzutage in der Regel nicht viel mehr als ein Programm, das beim Einschalten die wichtigsten Hardwarekomponenten überprüft und dann das Booten des Betriebssystems von einem Datenträger in Gang setzt. Dieses Progamm wird bei Intel-PCs BIOS genannt; beim Macintosh heißt es aus traditionellen Gründen einfach ROM.
    Bei 80er-Jahre-Heimcomputern war das ROM erheblich wichtiger: Fast alle hatten ein einfaches Betriebssystem sowie einen Editor und einen Interpreter für die Programmiersprache BASIC fest im ROM eingebaut. Der Vorteil solcher Systeme war, dass sie unmittelbar nach dem Einschalten verfügbar waren. Der Nachteil bestand natürlich darin, dass es kaum möglich war, ein anderes Betriebssystem zu verwenden als das eingebaute.
       
    Fest ins ROM eingebaute Betriebssysteme oder Anwendungsprogramme besitzen heute nur noch Spezialcomputer: kleine, leicht konfigurierbare Router-Boxen, Industrie-PCs, die aufgrund der unwirtlichen Umgebung ohne mechanische Teile auskommen müssen, oder auch die weit verbreiteten Embedded Systems, also die eingebauten Computer in Automotoren, Spülmaschinen oder Produktionsanlagen.
       
gp  Der Chipsatz (englisch chipset) ist in der Regel fest auf der Mainboard verlötet. Es handelt sich um eine Gruppe von Schaltkreisen, die spezielle Steuerungsaufgaben übernehmen. Sie enthalten vor allem die Steuerfunktionen für sämtliche Anschlüsse, die die Mainboard zu bieten hat. Die Qualität der unterschiedlichen Chipsätze hat einen erheblichen Einfluss auf die Performance eines Rechners.
gp  Die verschiedenen Busse und Schnittstellen dienen zum einen der Kommunikation zwischen den Bestandteilen der Mainboard, zum anderen dem Anschluss aller Arten von Peripheriekomponenten, angefangen bei den diversen Steckkarten wie Sound-, Grafik- oder Netzwerkkarten über verschiedene Arten von Laufwerken bis hin zu Druckern, Scannern oder Digitalkameras.

Bitte beachten Sie, dass die auf vielen Mainboards enthaltenen Onboard-Komponenten, also die fest verlöteten Grafik-, Sound- oder Netzwerkchips, formal kein Bestandteil der Zentraleinheit sind; sie gehören trotz ihrer Unterbringung auf der Hauptplatine zur Peripherie.

Im Übrigen kann es vorkommen, dass in älterer Literatur die Begriffe »Zentraleinheit« und »Central Processing Unit« (CPU) synonym gebraucht werden; laut einer solchen Begriffsverwendung besteht diese »CPU« aus Mikroprozessor und Arbeitsspeicher. Der Fehler kommt zustande, weil die Autoren die Verhältnisse bei Großrechenanlagen der 60er- und 70er-Jahre vor Augen hatten. Diese Geräte besaßen noch keine Mikroprozessoren, das Rechenwerk und der Arbeitsspeicher (core) ließen sich tatsächlich nicht ohne weiteres voneinander trennen. Ärgerlich ist an diesem Fehler vor allem, dass er als »Wissen« für IHK-Prüfungen verlangt wurde. Besonders in EDV-Kursen für kaufmännische Berufe war er noch in der zweiten Hälfte der 90er-Jahre verbreitet.


Rheinwerk Computing

3.2.1 Aufbau und Aufgaben des Prozessors  downtop

Mikroprozessoren sind komplexe integrierte Schaltkreise, die anfangs aus einigen Tausend Transistoren bestanden. Heute setzen sie sich sogar aus mehreren Millionen Transistoren zusammen, sind aber nicht viel größer als die ursprünglichen Prozessoren: Wegen des Fortschritts der fotolithografischen Verfahren, mit denen die Schaltungen auf die Siliziumscheiben aufgebracht werden, wird die Integrationsdichte immer höher.

Die CPU als Bauteil

Der Mikroprozessor wird auf die Hauptplatine aufgesteckt. Es gibt zahlreiche verschiedene Bauformen und Prozessorsockel, die sich im Laufe der Jahre stark verändert haben. Selbst innerhalb der Welt der Intel-kompatiblen PCs passt bei weitem nicht jeder Prozessor auf jede Mainboard.

Bis zum Pentium Pro steckten alle Intel-Prozessoren waagerecht in einem Sockel; sie waren rechteckig (bis zum 386er-Prozessor) und später quadratisch und besaßen unterschiedliche Anzahlen von Pins (Anschlüssen). Der Pentium II, die ersten Pentium III-Modelle und manche ältere AMD-Athlon-CPUs waren erheblich größer und wurden senkrecht in einen Slot gesteckt. Das liegt daran, dass bei diesen Prozessoren erstmals der weiter unten besprochene Level-2-Cache, ein schneller Zwischenspeicher, in das Prozessorgehäuse integriert wurde.

Da die Integrationsdichte der Transistoren auf dem Prozessor jedoch immer noch weiter gesteigert werden konnte, gelang es, spätere Pentium-III-Modelle, den Pentium 4 und den AMD Athlon XP mitsamt L2-Cache wieder in die klassische Sockelform zu bringen, die weniger Strom verbraucht und besser zu kühlen ist.

Technischer Überblick

Schematisch gesehen besitzt ein Mikroprozessor die folgenden Bestandteile:

gp  Die ALU (Arithmetic-Logical Unit oder zu deutsch Arithmetisch-logische Einheit) ist die moderne Verwirklichung eines Rechenwerks. Dieser Teil des Prozessors führt mathematische Operationen und logische Verknüpfungen durch. Heutige Prozessoren besitzen in der Regel getrennte ALUs oder ALU-Teile für ganzzahlige Operationen und für Fließkomma-Operationen. Bei früheren Prozessoren mussten die Fließkomma-Operationen durch komplexe Ganzzahlberechnungen simuliert werden; später verwendete man externe Fließkomma-Einheiten, die als arithmetische Koprozessoren bezeichnet wurden.
    Bei den Intel-Prozessoren besaß erst der 486 DX eine eingebaute Fließkommaeinheit, das Vorgängermodell 486 SX konnte optional durch den Koprozessor 487 ergänzt werden. Dieses Verfahren verwendete Intel bereits seit dem 8086-Prozessor und dem separat erhältlichen Koprozessor 8087.
       
gp  Die Register sind einzelne, spezialisierte Speicherstellen innerhalb des Prozessorkerns. Die ALU rechnet vor allem mit Werten, die innerhalb der Register abgelegt sind. Verwechseln Sie die Register nicht mit Arbeitsspeicher; ein typischer Prozessor besitzt nur relativ wenige von ihnen (zum Beispiel 32 Stück) und verwendet sie nicht zur längerfristigen Ablage von Informationen.
gp  Das Steuerwerk übernimmt die Kontrolle über die Ausführung des Programmcodes und initiiert andere Steuerungsfunktionen. Der Befehlszeiger, ein spezielles Register, verweist auf die Speicheradresse, aus der der nächste Programmbefehl gelesen wird. Bei einem Sprung im Programm muss der Befehlszeiger auf die richtige neue Adresse gesetzt werden. Ein weiteres Register, das vom Steuerwerk verwaltet wird, ist der weiter unten erläuterte Stack-Zeiger.
    Heutzutage sind Steuerwerke recht komplizierte Bauteile, weil bereits auf Prozessorebene Unterstützung für die abwechselnde, gleichzeitige Ausführung mehrerer Prozesse (Multitasking) eingebaut ist. Aus diesem Grund genügt es nicht, dass das Steuerwerk sich um den Gang eines linear ablaufenden, höchstens durch Sprünge verzweigenden Programms kümmert, sondern es muss in Zusammenarbeit mit Mechanismen des Betriebssystems dafür sorgen, dass ein sauberer Wechsel zwischen den verschiedenen Prozessen stattfinden. Das Konzept wird in Kapitel 4, Betriebssysteme, genau erläutert.
       
gp  Die Befehlstabelle (Instruction Table) ermöglicht die Decodierung der verschiedenen Maschinenbefehle in einem Computerprogramm: Jeder Befehl, der aus dem laufenden Programm gelesen wird, besitzt einen bestimmten numerischen Wert. Je nach Befehlsnummer werden unterschiedliche Schaltungen aktiviert, die für ein bestimmtes Verhalten des Prozessors sorgen.
gp  Über verschiedene Busse (Datenleitungen) ist der Prozessor mit der Außenwelt, also mit den anderen Komponenten der Mainboard, verbunden: Der Datenbus dient dem Austausch von Dateninhalten mit dem Arbeitsspeicher, der Adressbus überträgt die zugehörigen Speicheradressen und der Steuerbus kümmert sich um die Ansteuerung der Peripherie-Anschlüsse.

Cache

In heutigen Prozessoren sind darüber hinaus die so genannten Cache-Speicher untergebracht. Es handelt sich um kleine, aber sehr schnelle Zwischenspeicher, in denen Befehle oder Daten abgelegt werden können, die bald wieder benötigt werden. Die Verwendung von Cache-Speichern macht den Bau von PCs erheblich wirtschaftlicher: Es wäre schlicht zu teuer, den gesamten Hauptspeicher aus den schnellen Bausteinen aufzubauen, aus denen der Cache besteht, und würde darüber hinaus zu viel Strom verbrauchen. Deshalb wird eine mehrstufige Speicherarchitektur verwendet:

gp  Der Level-1-Cache ist unmittelbar im Prozessorkern selbst untergebracht und wird mit derselben Taktrate (siehe unten) betrieben wie der Prozessor selbst. Er ist sehr klein, beim Intel Pentium 4 ist er beispielsweise nur 16 kByte (12 kByte für Befehle, 4 kByte für Daten) groß, beim AMD Athlon dagegen 128 kByte (je 64 kByte für Befehle und Daten). Den L1-Cache verwendet der Prozessor vornehmlich bei der Ausführung sehr kurzer Schleifen aus wenigen Befehlen.
gp  Der Level-2-Cache war bis zum ursprünglichen Pentium-Prozessor außerhalb des eigentlichen Prozessorgehäuses auf der Mainboard untergebracht. Seit dem Pentium II befindet er sich im Prozessorinneren, ohne zu dessen Kern zu gehören. Er wird mit einem Vielfachen der Geschwindigkeit des normalen Arbeitsspeichers betrieben, aber mit einem Bruchteil der Prozessorgeschwindigkeit. Dafür ist er erheblich größer als der L1-Cache, beispielsweise 512 oder 1.024 kByte.
    Ein erheblich kleinerer Level-2-Cache ist übrigens der wichtigste Unterschied zwischen den normalen Prozessoren Intel Pentium 4 und AMD Athlon auf der einen Seite und den abgespeckten Varianten Intel Celeron und AMD Duron auf der anderen. Dies führt zu CPUs, die langsamer arbeiten, aber erheblich billiger sind, darüber hinaus stromsparend arbeiten und deshalb gut für den Ausbildungsbereich oder für Notebooks geeignet sind.
       
gp  Der eigentliche Arbeitsspeicher (RAM) dient der normalen Speicherung der Programme, die zurzeit ausgeführt werden, und der von ihnen verarbeiteten Daten. Die RAM-Bausteine, aus denen der Arbeitsspeicher zusammengesetzt ist, arbeiten bei älteren PCs mit derselben Taktrate wie die Mainboard selbst, bei sehr modernen Computern dagegen mit dem 2-, 4- oder sogar 8fachen davon.
gp  Falls auch der normale Arbeitsspeicher nicht mehr ausreicht, um alle Daten der aktuell geladenen Programme aufzunehmen, werden Inhalte aus dem RAM, die nicht besonders dringend benötigt werden, auf die Festplatte ausgelagert. Dieser Vorgang wird je nach Prozessorarchitektur und Betriebssystem als Swapping oder Paging bezeichnet und in Kapitel 4, Betriebssysteme, näher beschrieben. Moderne Prozessoren unterstützen eine solche virtuelle Speicherverwaltung durch eine eingebaute Komponente namens Memory Management Unit (MMU).

Programmierer haben übrigens so gut wie keinen Einfluss darauf, welche Daten der Prozessor in einem der Cache-Speicher ablegt. Eine wichtige Entscheidungsgrundlage ist dagegen eine Einheit in der CPU, die als Sprungvorhersage (Branch Prediction) bezeichnet wird: Während der Ausführung von Programmen berechnet der Prozessor, wohin der nächste Sprung im Programm am wahrscheinlichsten führen wird. Aufgrund dieser Daten kann der Prozessor jeweils entscheiden, ob es sich lohnt, bestimmte Programmteile oder Daten im Cache abzulegen oder nicht.

Leistungsmerkmale von Prozessoren

Dass Prozessoren im Lauf der Jahre immer leistungsfähiger wurden, dürfte allgemein bekannt sein und ist für technische Geräte fast selbstverständlich. Es ist allerdings wichtig, die verschiedenen Leistungsmerkmale zu kennen und zuordnen zu können.

Die wichtigste Information über die Leistungsfähigkeit eines Mikroprozessors ist seine Wortbreite. Dieser Wert gibt an, aus wie vielen Bits ein Maschinenwort dieses Prozessors besteht. Je breiter ein solches Maschinenwort ist, desto mehr unterschiedliche Zustände oder Werte kann der Prozessor im gleichen Durchgang bearbeiten. Verschiedene Komponenten eines Prozessors können unterschiedliche Wortbreiten aufweisen (auch wenn dies seit langem unüblich geworden ist):

gp  Die Wortbreite der Register betrifft die Rechenfähigkeiten der ALU, nämlich die mögliche Größe von Ganzzahlen und die Genauigkeit von Fließkommawerten.
gp  Die Breite des Datenbusses bestimmt, wie viele Bits gleichzeitig aus dem Arbeitsspeicher gelesen oder in ihn geschrieben werden können. Da dieser Wert also den Datenaustausch mit Programmen betrifft, ist er für Programmierer relevant und wird deshalb als Wertangabe für die Datenbreite des Prozessors selbst verwendet.
gp  Die Breite des Adressbusses regelt die maximale Größe von Speicheradressen und bestimmt deshalb, wie viel Arbeitsspeicher ein Prozessor überhaupt adressieren kann.
gp  Die Breite des Steuerbusses ist schließlich relevant dafür, mit welchen Arten von Peripherieanschlüssen ein Prozessor überhaupt umgehen kann. Erst die Einführung der 32-Bit-Prozessoren ermöglichte deshalb die Entwicklung leistungsfähiger Peripherieschnittstellen wie PCI und AGP.

In Tabelle 3.2 finden Sie eine Übersicht über die verschiedenen Prozessorgenerationen. Das angegebene Entwicklungsjahr bezeichnet jeweils die Entstehung des ersten verfügbaren Prozessors mit der entsprechenden Wortbreite.


Tabelle 3.2   Übersicht über die Entwicklung der verschiedenen Prozessorgenerationen

Jahr Wortbreite Anzahl Zustände Beispiele
1971 4 Bit 16 Intel 4004
1974 8 Bit 256 Intel 8080
Zilog Z80
MosTek 6502
1979 16 Bit 65.536 Intel 8088
Motorola 68000
1985 32 Bit > 4 Milliarden Intel 803862
 
PowerPC
1992 64 Bit > 18 Trillionen DEC Alpha
Intel Itanium
PowerPC G5

Die Taktfrequenz

Neben der Wortbreite gibt es noch verschiedene andere Kriterien, die die Geschwindigkeit von Prozessoren bestimmen. Die bekannteste Angabe ist die vom Intel- und AMD-Marketing gern zum Hauptgesichtspunkt erklärte Taktfrequenz (Clock Rate). Die Taktfrequenz wird nicht vom Prozessor selbst bestimmt, sondern ist ein Vielfaches des Mainboard-Taktes (Front Side Bus Clock Rate). Auf der Mainboard befindet sich eine Steckbrücke (Jumper) oder ein DIP-Schalter, mit dem der Multiplikator eingestellt wird. Er gibt an, mit dem Wieviel-Fachen der FSB-Taktrate der Prozessor arbeitet. Die günstigen Einsteiger-CPUs Intel Celeron und AMD Duron sind übrigens anders als Pentium 4 und Athlon mit einem festen Multiplikator ausgestattet und lassen sich durch eine Manipulation des Multiplikators auf der Mainboard nicht beeinflussen.

Ist die Mainboard beispielsweise mit 133 MHz getaktet, dann führt die Einstellung eines Multiplikators von 20 zu einer CPU-Taktrate von 2,66 GHz. Auch wenn es technisch möglich ist, sollten Sie davon absehen, einen Prozessor durch Erhöhung des Multiplikators über den vom Hersteller angegebenen Wert zu takten (»Overclocking«). Dies kann nämlich zu einem vorzeitigen Ende des Prozessors führen.

Die Einteilung der Prozessoren in verschiedene Taktklassen kommt durch eine Qualitätskontrolle der verwendeten Siliziumscheiben zustande: Je hochwertiger der Grundstoff, desto höher kann die daraus hergestellte CPU gefahrlos getaktet werden. Wenn Sie einen Prozessor unbedingt übertakten möchten, müssen Sie sich genau über spezielle Kühlsysteme informieren – es ist allerdings in der Regel teurer und aufwändiger, eine solche Kühlung einzubauen, als einfach den für die gewünschte Taktrate ausgelegten Prozessor zu kaufen.

Ganz davon abgesehen sagt die Taktrate viel weniger über die tatsächliche Arbeitsgeschwindigkeit einer CPU aus, als die Intel-Werbung glauben machen möchte. Je nach Komplexität bestimmter Befehle dauert ihre Ausführung mehrere Taktzyklen; unterschiedliche Prozessorfamilien lösen verschiedene Aufgaben nicht immer mit derselben Effizienz. Außerdem verbringen Prozessoren einen Großteil ihrer Zeit mit Warten: Da Ein- und Ausgabe verhältnismäßig langsam stattfinden, hat ein Prozessor häufig nichts zu tun, weil die erforderlichen Daten nicht schnell genug nachkommen.

Insofern führt zu wenig Arbeitsspeicher beispielsweise zu erheblich größeren Geschwindigkeitseinbußen als ein etwas langsamerer Prozessor: Das Auslagern nicht benötigter Speicherinhalte auf die Festplatte und das Laden der als Nächstes erforderlichen verbraucht sehr viel Zeit. Beispielsweise ist es vollkommen irrsinnig, ein speicherhungriges Programm wie die in Kapitel 8, Bildbearbeitung und Grafik, vorgestellte Bildbearbeitung Adobe Photoshop auf einem Rechner mit nur 64 oder 128 MByte RAM zu verwenden und zu erwarten, es würde in einigermaßen erträglicher Geschwindigkeit arbeiten.

Effizienzmesswerte

Die tatsächliche Effizienz von Prozessoren lässt sich übrigens durch andere Werte besser angeben als durch die Taktrate:

gp  Die Anzahl der Befehle, die in einer Sekunde ausgeführt werden können, genannt MIPS – Million Instructions per Second. Dieser Wert wird durch Benchmark-Tests (möglichst an realistische Anwendungen angelehnte Abfolgen von Befehlen) gemessen. Wichtig ist, dass für einen realistischen Vergleich unabhängige Benchmark-Programme verwendet werden und nicht diejenigen der Prozessorhersteller.
gp  Insbesondere für die Multimedia-Fähigkeiten eines Prozessors liefert die Anzahl der pro Sekunde durchführbaren Fließkommaoperationen, FLOPS (Floating Point Operations Per Second) einen guten Anhaltspunkt: 3-D-Grafik, Audio- und Videoperformance sind auf die Fähigkeit zu möglichst schnellen Fließkommaberechnungen angewiesen.

Prozessorarchitekturen

Es lassen sich zwei grundlegende Prozessorarchitekturen voneinander unterscheiden. Der Unterschied besteht in der Ausstattung der Befehlstabelle:

gp  Das klassische Modell, das auf Entwicklungen aus den 70er-Jahren basiert, versucht tendenziell, immer mehr und immer komplexere Anweisungen unmittelbar durch einzelne Prozessorinstruktionen zu verwirklichen. Aus diesem Grund wurde es – zur Unterscheidung vom später entwickelten zweiten Modell – nachträglich als CISC (Complex Instruction Set Computer), also als Rechner mit komplexem Befehlssatz bezeichnet.
gp  Ein modernerer, in den 80er-Jahren entwickelter Ansatz versucht im Gegenteil, die Struktur des Prozessors zu vereinfachen. Dazu wird der Befehlssatz auf wenige, besonders schnell und einfach auszuführende Befehle vermindert. Komplexere Funktionen lassen sich durch mehrere solcher einfachen Instruktionen verwirklichen. Dieser Konstruktionsansatz beschleunigt die Ausführung der einfachen Befehle erheblich: Sie lassen sich durch ihre simple Struktur in Pipelines (Warteschlangen) anordnen. Dadurch kann auf effiziente Weise ein Befehl nach dem anderen ausgeführt werden. Beim klassischen Prozessordesign konnte dagegen selbst das Lesen des folgenden Befehls erst beginnen, wenn der vorherige vollständig abgeschlossen war. Diese Architektur wird als RISC (Reduced Instruction Set Computer) bezeichnet.

CISC-Weiterentwicklung

Die Hauptvertreter der CISC-Architektur sind die Prozessoren von Intel und Kompatible wie der AMD Athlon. Allerdings wurden bereits in den 1993 vorgestellten Pentium-Prozessor einige Funktionen eingebaut, die bisher nur in RISC-Prozessoren verwirklicht worden waren, beispielsweise die oben genannten Pipelines.

Dennoch verfolgen Intel und AMD den Weg des komplexen Befehlssatzes konsequent weiter: Der 1995 erschienene Pentium Pro wurde als erster mit speziellen Befehlen für die Verarbeitung von Multimediadaten ausgestattet (MMX – MultiMedia eXtensions); AMD stattete seinen K6, den Vorläufer des Athlon, erstmals mit einer ähnlichen Erweiterung namens 3D Now! aus. Statt also die Komplexität der Befehlssätze zu beschränken, ging man den gegenteiligen Weg und stattete die Prozessoren sogar noch mit zusätzlichen Spezialbefehlen aus. In der Tat laufen grafikintensive Anwendungen wie Spiele oder Simulationen um einiges schneller, wenn sie unter Berücksichtigung dieser zusätzlichen Befehle kompiliert werden. Dafür sind sie anschließend nicht mehr kompatibel zu allgemeinem »386er-Code«. Aus diesem Grund wird Software, die von diesen Erweiterungen Gebrauch macht, zunächst einmal überprüfen, auf welchem konkreten Prozessor sie gerade läuft, und je nachdem unterschiedliche Fassungen des Programmcodes ausführen.

RISC-Beispiele

Fast alle anderen heute erhältlichen Prozessoren verwenden eine RISC-Architektur. Dazu gehören beispielsweise die von Apple, IBM und Motorola gemeinsam entwickelten PowerPC-Prozessoren, die das Herzstück der PowerMacs bilden. Auch die Prozessoren der Sun SPARC-, Digital Alpha- oder MIPS-Baureihen sind RISC-CPUs. Trotz ihres unbestreitbaren Performance-Vorteils besitzen sie auch einige Nachteile. Beispielsweise benötigt eine RISC-CPU mehr Arbeitsspeicher, weil ein Maschinenprogramm aus zahlreicheren Einzelbefehlen besteht und deshalb mehr Speicher belegt als ein CISC-Programm.

Abgesehen davon gelang es Intel und AMD nach und nach, einige der RISC-Vorzüge in ihre Prozessoren einzubauen. Vor allem werden die komplexen CISC-Befehle in einzelne, RISC-artige Mikroinstruktionen zerlegt, die anschließend vom eigentlichen Prozessorkern mit erheblich höherer Effizienz ausgeführt werden.

Wie Prozessoren arbeiten

Nach dieser theoretischen Aufbaubeschreibung von Mikroprozessoren ist es natürlich auch interessant, zu erfahren, wie ein Prozessor eigentlich arbeitet. Ein etwas konkreteres Beispiel erhalten Sie in Kapitel 2, Mathematische und technische Grundlagen, anhand eines virtuellen Prozessors und seiner verschiedenen Maschinenbefehle. Schematisch betrachtet geschieht bei der Ausführung eines Programms durch den Prozessor Folgendes:

1. Der aktuelle Befehl wird aus dem Programm gelesen; die Stelle wird durch den Befehlszeiger des Prozessors angezeigt.
       
2. Der Prozessor schlägt die Nummer des erhaltenen Befehls in der Befehlstabelle nach und liest je nach Befehl die passende Anzahl darauf folgender Bytes als Parameter dieses Befehls. Dabei rückt der Befehlszeiger hinter das letzte Parameter-Byte, um für das Lesen des nächsten Befehls bereit zu sein.
       
3. Der Befehl wird ausgeführt. Dies ist der komplexeste Teil der Prozessortätigkeit, denn je nach konkretem Befehl kann das Lesen von Daten aus dem Arbeitsspeicher, die Ansteuerung von Peripherieschnittstellen, das Rechnen in der ALU oder die Durchführung eines Sprungs im Programm dazugehören.
       
4. Falls ein Sprung stattfindet, wird der Befehlszeiger an die entsprechende neue Position gesetzt. Andernfalls geht es an der nach dem Lesen der Parameter ermittelten Stelle weiter.
       

Sprungbefehle

Es lohnt sich übrigens, die Funktionsweise von Sprüngen etwas genauer zu betrachten. Prozessoren beherrschen nämlich grundsätzlich zwei verschiedene Arten von Sprüngen: Ein unbedingter Sprung wird immer ausgeführt, sobald der entsprechende Befehl gelesen wird. Bedingte Sprünge werden dagegen nur dann ausgeführt, wenn bestimmte Bedingungen zutreffen. Diese Bedingungen betreffen meist die Zustände eines Flag-Registers. Flags sind Statusbits, deren Werte durch Vergleichsoperationen, Fehler oder direkte Manipulation durch ein Programm gesetzt werden.

Eine noch etwas komplexere Variante betrifft den Aufruf von Unterprogrammen: Anstatt ohne Wiederkehr zu einer bestimmten Programmstelle zu springen, wird hier die auf den Sprungbefehl folgende Adresse gespeichert. Dazu dient ein Last-In-First-Out-Speicher, der als Stack (Stapel) bezeichnet wird. Wenn am Ende des Unterprogramms der Rücksprungbefehl erfolgt, holt sich das Programm den obersten Wert vom Stack und springt zur angegebenen Programmadresse. Die Adresse, die zurzeit den Abschluss des Stacks bildet, wird von einem speziellen Steuerregister angezeigt, dem Stack-Zeiger (Stack Pointer).

Ein weiterer Grund, warum Programme nicht immer linear nacheinander ausgeführt werden, sind die weiter oben bereits erwähnten Prozesse: Eine CPU führt üblicherweise abwechselnd Befehle mehrerer Programme aus. Vor dem Wechsel zu einem anderen Prozess wird dessen Zustand gespeichert, das heißt, die Inhalte der Prozessorregister werden gesichert, um sie bei der späteren Wiederaufnahme dieses Prozesses zurückzusetzen – aus der Sicht des Prozesses findet seine Ausführung also ohne Unterbrechung statt.


Der gefürchtete Stack Overflow Der Stack sorgt übrigens für eines der häufigsten Sicherheitsprobleme, das von Crackern oder Virenprogrammierern beim Einbruch in Computersysteme genutzt wird: Rekursiver Programmcode (der sich selbst als Unterprogramm aufruft, um verschachtelte Probleme zu lösen) enthält mitunter keine korrekte Abbruchbedingung, sodass der Stack irgendwann voll ist: Es kommt zum Stack Overflow (Stapelüberlauf). In diesem Moment kann ein Angreifer die oberste Adresse auf dem Stack durch die Startadresse seines schädlichen Programms ersetzen, sodass der nächste Rücksprungbefehl direkt in die Katastrophe führt.

Hardware-Interrupts

Im Zusammenhang mit Ein- und Ausgabevorgängen werden darüber hinaus so genannte Interrupts verwendet: Da die Anfragen, die die Hardware an den Prozessor stellt, asynchron auftreten, muss der Prozessor sich immer wieder darüber informieren, ob ein Gerät auf Antwort wartet. Deshalb fragt er die verschiedenen Geräte in regelmäßigen Abständen ab und unterbricht unter Umständen den laufenden Prozess zugunsten der Hardwarekommunikation.

Maschinenbefehle

Die Maschineninstruktionen, von denen hier die Rede ist, lassen sich nicht mit den mächtigen Befehlen höherer Programmiersprachen vergleichen. Sie bewegen sich auf einem viel niedrigeren Niveau. Der Prozessor »weiß« nicht, dass er den Buchstaben A in 16-Punkt-Garamond auf den Bildschirm zeichnet, einen Videoclip abspielt oder das Spielprogramm Tomb Raider ausführt. Aus der Sicht der CPU geht es immer nur um Rechenschritte, also um die Manipulation irgendwelcher numerischen Werte.

Typische Maschinenbefehle lauten beispielsweise folgendermaßen:

gp  Hole den Wert aus der Speicherstelle mit der Nummer 9A33 und lege ihn im Rechenregister BX ab. In Intel-Assembler lautet diese Anweisung übrigens folgendermaßen: MOV BX, $9A33.
gp  Addiere den Wert 10 zum Inhalt des Rechenregsiters BX: ADD BX, 10.
gp  Vergleiche das Register BX mit dem Wert 20: CMP BX, 20.
gp  Falls der Vergleichsbefehl »gleich« ergeben hat (ein bestimmtes Flag enthält den Wert 0), springe zur Programmadresse C9A4: JE $C9A4 (je steht für »jump if equals«, also »Sprung, falls gleich«).

Assembler kontra Maschinensprache

Beachten Sie, dass die Assembler-Sprache bereits eine vereinfachende Abstraktion der Maschinensprache ist; in Wirklichkeit bestehen alle Befehle aus Zahlen. Es gibt zum Beispiel nicht »den« MOV-Befehl zum Verschieben von Speicherinhalten. Es handelt sich um eine ganze Sammlung von Befehlen, die lediglich gemeinsam haben, dass sie einen bestimmten Wert an einer bestimmten Stelle ablegen sollen: Das an erster Stelle angegebene Ziel kann ein Prozessorregister, eine Speicheradresse oder eine indirekte Adresse (eine Speicheradresse, deren Inhalt als Speicheradresse interpretiert werden soll) sein. Ebenso kann der Wert, der an der angegebenen Stelle gespeichert werden soll, ein konkreter Wert, ein Register oder eine Speicheradresse sein.

Andere Prozessorhersteller haben ihre Assembler-Sprachen nicht notwendigerweise genauso definiert wie Intel, die Aufteilung der Befehle in Gruppen mit demselben Namen kann vollkommen anders geregelt sein. Letzten Endes interessiert das alles den Prozessor ohnehin nicht, weil er gar keinen Assembler versteht. Es handelt sich lediglich um eine bequemere Schreibweise der Maschinensprache für Menschen. Programme, die in Assembler geschrieben werden, müssen von einem geeigneten Programm in die eigentliche Maschinensprache übertragen (assembliert) werden. Natürlich ist dieser Vorgang einfacher als die Übersetzung einer höheren Programmiersprache, weil in der Regel jeder Assembler-Befehl für genau eine wohl definierte Maschineninstruktion steht.

Was die Übersetzung von Hochsprachen angeht, ist zudem noch folgender Umstand interessant: Wenn Sie ein Programm schreiben und mit einem Compiler übersetzen, entsteht ein Programm, das nur auf einem bestimmten Prozessor läuft, weil es Maschinenbefehle für diesen Prozessor enthält. Interessanterweise funktioniert dies aber nicht über Betriebssystemgrenzen hinweg: Wenn Sie auf Ihrem Intel-PC beispielsweise Linux und Windows installieren, unter Linux ein C-Programm schreiben und kompilieren und anschließend Windows booten, kann das Programm dort nicht funktionieren. Programme, die in Hochsprachen geschrieben werden, bestehen nämlich nicht nur aus neutralen Maschinensprachanweisungen. Sämtliche Ein- und Ausgabefunktionen werden durch Routinen des Betriebssystems bereitgestellt, die das Programm durch so genannte Systemaufrufe anspricht. Dieser Mechanismus wird in den nächsten Kapiteln über Betriebssysteme und Programmierung noch genau erläutert.


Rheinwerk Computing

3.2.2 Der Arbeitsspeicher  downtop

Der Arbeitsspeicher eines Computers enthält die Programme, die zurzeit ausgeführt werden, und die Daten, die von ihnen aktuell verarbeitet werden. Weiter oben wurde bereits die mehrstufige Speicherarchitektur angesprochen, die vom Prozessor in Zusammenarbeit mit dem Betriebssystem verwaltet wird. In diesem Unterabschnitt geht es dagegen konkret um den Arbeitsspeicher als Hardwarekomponente.

Der Arbeitsspeicher besteht aus Speicherbausteinen, die als RAM bezeichnet werden; die Abkürzung steht für Random Access Memory (Speicher mit wahlfreiem Zugriff). Der Begriff »Random Access« bedeutet in diesem Zusammenhang zweierlei:

gp  Die Inhalte dieses Speichers können sowohl gelesen als auch verändert werden. Den Gegenbegriff bildet das ROM (Read Only Memory), das weiter unten im Zusammenhang mit dem BIOS behandelt wird.
gp  Auf jedes Byte des Speichers kann einzeln in beliebiger Reihenfolge zugegriffen werden; in diesem Zusammenhang ist Random Access der Gegenbegriff zum sequenziellen Zugriff, der beispielsweise bei Magnetbandspeichern eingesetzt wird.

DRAM und SRAM

Alle RAM-Bausteine haben gemeinsam, dass ihr Inhalt flüchtig ist. Sie müssen ständig mit Strom versorgt werden, weil es ansonsten zum vollständigen Datenverlust kommt. Es gibt allerdings zwei verschiedene konkrete Bauformen:

gp  Das Dynamic RAM (DRAM) benötigt nicht nur das Anliegen einer Spannung, sondern der Inhalt jeder einzelnen Speicherstelle muss mit jedem Taktzyklus aufgefrischt werden (Refresh). Es ist vergleichsweise günstig herzustellen und hat einen niedrigeren Stromverbrauch.
gp  Das Static RAM (SRAM) bedarf lediglich einer Spannung. Es arbeitet erheblich schneller als DRAM, verbraucht aber mehr Strom und ist viel teurer. SRAM-Bausteine werden deshalb niemals zur Realisation des ganzen Arbeitsspeichers eingesetzt, sondern nur für die Cache-Speicher.

RAM ist stets in einzelnen Speicherzellen organisiert, die 1 Byte groß sind und jeweils eine eigene Adresse haben. Die Art und Weise, wie Speicher konkret adressiert wird, hängt vom Prozessor und indirekt vom Betriebssystem ab. Der Mechanismus der Speicheradressierung bei Intel-CPUs wird im nächsten Kapitel, Betriebssysteme, kurz erläutert.

Der eigentliche Arbeitsspeicher wird in Slots senkrecht auf die Mainboard aufgesteckt. Es handelt sich um kleine, rechteckige Platinen, die mit mehreren konkreten Chips versehen sind. Auf einer Seite befindet sich eine Reihe von Kontakten, die in den entsprechenden Slot gehören. Bei aktuellen DIMM-Modulen (Double Inline Memory Modules) für SD-RAM oder DDR-RAM müssen Sie dazu einen Hebel zur Seite ziehen und das Speichermodul fest (aber vorsichtig!) in den Slot drücken, bis es merklich einrastet und der Hebel sich automatisch in die aufrechte Position begibt.

Die veralteten SIMM-Module (Single Inline Memory Modules) für EDO- oder FP-RAM, die bei Pentium-I-Rechnern bis etwa 1996 verbreitet waren, müssen Sie dagegen schräg ansetzen und im Slot gerade rücken, bis sie ebenfalls einrasten. SIMM-Module sind daran zu erkennen, dass sie kürzer sind als DIMMs.

Es existieren verschiedene Bauformen von RAM-Bausteinen. Gängig sind zurzeit vor allem folgende:

gp  SD-RAM (Synchronous Dynamic RAM) besteht aus DIMM-Modulen, die 168 Kontakte besitzen. Der Zugriff auf diesen Speicher erfolgt mit der Taktfrequenz der Mainboard selbst. Entsprechend ist die neueste Form PC133-SD-RAM, das auf Mainboards mit einer Taktfrequenz von 133 MHz eingesetzt werden kann. Ältere Formen sind PC66- und PC100-SD-RAMs. PC100- und PC133-Module sind abwärts kompatibel: Werden sie auf eine langsamere Mainboard aufgesteckt, passen sie sich ihrer Taktrate an.
gp  Das etwas unglücklich bezeichnete DDR-RAM (die Abkürzung steht für »Double Data Rate«) wird ebenfalls in Form von DIMM-Modulen geliefert, ist äußerlich also baugleich mit dem SD-RAM. Die Besonderheit besteht – wie der Name schon sagt – darin, dass diese Speicherbausteine mit der doppelten Datenrate von SD-RAMs arbeiten. Pro Taktzyklus können sie mit anderen Worten doppelt so viel Inhalt aufnehmen oder abgeben und beschleunigen so einen der schlimmsten Engpässe des PC-Designs.
gp  Noch ereheblich schneller als SD-RAM und DDR-RAM ist das RD-RAM oder Rambus-RAM. Es wird in Form so genannter RIMM-Module (Rambus Inline Memory Module) geliefert, die mit 184 Pins etwas breiter sind als DIMMs.
    Ähnlich wie ein Prozessor wird Rambus-RAM mit einem (festen) Multiplikator betrieben, wodurch sie erheblich schneller arbeiten als der Mainboard-Takt. Allerdings sind spezielle Mainboards mit besonderem Datenbus erforderlich, die nicht so verbreitet und daher teurer sind als Boards für DDR-RAM. Hinzu kommt, dass diese Speichersorte nur von der Firma Rambus hergestellt wird, sodass sie auch selbst erheblich teurer ist als ein DDR-RAM-Modul mit der gleichen Kapazität.
       

Empfohlene Speichermengen

Für die Performance eines Rechners ist die Menge des Arbeitsspeichers erheblich wichtiger als die Speicherbausteintechnologie. Für einen gewöhnlichen Büro-PC sind 256 MByte RAM ein vernünftiger Wert. Wenn Sie dagegen Multimedia- oder DTP-Anwendungen benutzen möchten, sollten es mindestens 512 MByte sein. Beachten Sie, dass ein Mac aufgrund der RISC-Architektur mehr Speicher benötigt; mit einem aktuellen PowerMac G4 oder gar G5 werden Sie erst dann wirklich glücklich, wenn er über 1 Gigabyte RAM verfügt. Denken Sie daran, dass all diese Werte einem sehr starken Wandel unterworfen sind – die vorliegenden Angaben gelten für Mitte 2003 und werden bald überholt sein.


Rheinwerk Computing

3.2.3 Das BIOS  downtop

Ein besonderer Baustein, der sich seit dem ursprünglichen IBM-PC auf der Mainboard jedes PCs befindet, ist das BIOS (Basic Input/Output System, also etwa grundlegendes Ein-/Ausgabesystem). Dieser Chip enthält die Firmware (in Hardware gegossene Software) mit der Basis-Steuerlogik des PCs. Bei jedem Start des Rechners sehen Sie eine Reihe von Kontrollmeldungen, die das BIOS ausgibt.

ROM-Speicher

Der BIOS-Baustein ist ein ROM-Speicher (Read-Only Memory), also von der Idee her ein Speicher, der nur gelesen werden kann. Vorsichtiger muss man heute Folgendes sagen: Der Inhalt dieses Speichers kann nicht durch normale Schreibzugriffe des Betriebssystems verändert werden. Jedenfalls bleibt der Inhalt eines solchen Speichers aber auch dann erhalten, wenn er nicht mehr mit Strom versorgt wird.

ROM-Sorten

Im Laufe der Zeit wurden verschiedene Arten von ROM-Bausteinen entwickelt. Die Evolution dieser Speichersorte soll hier in einer kurzen Übersicht dargestellt werden:

gp  Das ursprüngliche ROM besitzt ab Werk eine fest verdrahtete Funktionalität, die nicht verändert werden kann.
gp  Der Inhalt eines PROM-Bausteins (Programmable ROM) kann einmal mit Hilfe eines Infrarot-PROM-Brenners programmiert werden und bleibt dann für immer unverändert erhalten.
gp  Das EPROM (Erasable PROM) ist wiederbeschreibbar: Der Inhalt kann mit einem EPROM-Brenner geschrieben und durch Infrarot-Einwirkung auch wieder gelöscht werden.
gp  Die modernste Form ist das Flash-EPROM. Sein Inhalt kann mit Hilfe von Software verändert werden. Gegenüber RAM besitzt es aber immer noch den Vorteil, dass der Inhalt nicht verloren geht, wenn es nicht mit Strom versorgt wird. Heutzutage werden nicht nur BIOS-Bausteine als Flash-EPROMs realisiert. Verschiedene Arten von Flash-ROMs sind auch beliebt als Speicherkarten für Digitalkameras.

In den 80er-Jahren gab es viele Baureihen von Homecomputern, bei denen ein rudimentäres »Betriebssystem« sowie ein BASIC-Interpreter fest im ROM eingebaut waren. Nur der IBM-PC hat dieses Verfahren schon frühzeitig aufgegeben; bei ihm wurde das Betriebssystem von Anfang an vom Datenträger (damals einer 5/4-Zoll-Diskette) gestartet. Das einzige Überbleibsel war eben das BIOS.

Heute gibt es nur noch wenige Arten von Rechnern, bei denen das Betriebssystem oder gar Anwendungsprogramme im ROM untergebracht sind:

gp  In manchen besonders unwirtlichen Umgebungen, in denen keine mechanischen Bauteile verwendet werden können, werden spezielle Industrie-PCs mit Betriebssystem und Programmen im ROM eingesetzt.
gp  Es gibt im Netzwerkbereich eine Reihe von kompakten Spezialcomputern, nämlich Router-, Webserver- oder Firewall-Boxen. Sie enthalten in aller Regel ein rudimentäres Linux als Betriebssystem und können über das Netzwerk per Terminalprogramm oder Browser konfiguriert werden.

Das BIOS eines PCs

Das BIOS besitzt die folgenden elementaren Aufgaben:

gp  Der im BIOS gespeicherte Code ist ein Programm in der Maschinensprache des Computers. Es wird beim Einschalten automatisch auf einer bestimmten Adresse im Arbeitsspeicher abgebildet; der Prozessor weiß, dass er genau dieses Programm ausführen muss.
gp  Als Erstes wird die wichtigste Hardware getestet. Zunächst wird die Grafikkarte überprüft, anschließend das RAM. Dann wird geprüft, ob ein Laufwerk vorhanden ist, von dem ein Betriebssystem gestartet werden kann. Schließlich wird noch die Tastatur und manchmal auch die Maus überprüft. Dieser Prüfungsvorgang wird als POST bezeichnet (Power-On Self Test, also Selbsttest beim Einschalten).
    Falls es größere Probleme gibt, die verhindern, dass der PC ordnungsgemäß gestartet werden kann (zum Beispiel wenn die Grafikkarte oder das RAM defekt ist), ertönen bestimmte Abfolgen von Tonsignalen aus dem kleinen Lautsprecher, der in die meisten PCs eingebaut ist. Die Bedeutung dieser Tonsignale können Sie der Dokumentation Ihrer Mainboard entnehmen oder im Internet recherchieren, indem Sie Ihre BIOS-Version oder die Bezeichnung Ihrer Mainboard in eine Suchmaschine eingeben.
       
gp  Das BIOS bietet grundlegende Funktionen zur Kommunikation mit der Hardware an, auf die Betriebssysteme oder Anwenderprogramme zugreifen können. Das Betriebssystem MS-DOS, das mit dem ursprünglichen IBM PC geliefert wurde, machte regen Gebrauch davon. Moderne Betriebssysteme umgehen dagegen die vielfältigen Einschränkungen der BIOS-Routinen und kommunizieren über Gerätetreiber direkt mit der Hardware.
gp  Nach dem (erfolgreichen) POST übergibt das BIOS die Kontrolle über den Rechner an den Datenträger, von dem das System gestartet werden soll: Es wird das Programm im Master Boot Record (Startsektor) des Laufwerks gestartet. Hier befindet sich in der Regel ein Boot-Loader für ein bestimmtes Betriebssystem oder ein Bootmanager, der Ihnen die Auwahl zwischen verschiedenen Systemen und/oder Konfigurationen überlässt.

Das BIOS-Setup

Beim Einschalten des Rechners können Sie durch einen speziellen Tastendruck (je nach konkretem BIOS meist (F1) oder (Entf)) in das BIOS-Setup gelangen, ein eingebautes kleines Programm zur Konfiguration der BIOS-Parameter und der Hardware. Beachten Sie, dass es verschiedene BIOS-Varianten gibt, bei denen der genaue Inhalt dieses Programms unterschiedlich sein kann. Die wichtigsten BIOS-Marken sind Award BIOS von der gleichnamigen Firma, AMI BIOS von American Megatrends, Inc. sowie Phoenix BIOS (dieses Unternehmen wurde allerdings inzwischen von Award aufgekauft).

Das CMOS-RAM

Alle Setup-Einstellungen werden im so genannten CMOS-RAM gespeichert. »CMOS« ist der Name einer Fertigungstechnik für Speicherbausteine, die bei der Erfindung des PC-BIOS etwas Besonderes war. Heute wird dagegen jeder RAM-Speicher in CMOS-Technik hergestellt, sodass der Name eigentlich unpräzise ist. Dieses RAM wird durch eine Batterie gepuffert, welche nebenbei auch die eingebaute Uhr des PCs am Laufen hält, damit jederzeit Datum und Uhrzeit verfügbar sind.

Durch vorübergehendes Ausbauen der Batterie können Sie das CMOS löschen, um schwerwiegende Probleme wie ein vergessenes BIOS-Passwort zu lösen; allerdings wird dabei auch die Uhrzeit zurückgesetzt. Manche Boards besitzen auch einen speziellen Clear-CMOS-Jumper. Um ihn zu verwenden, müssen Sie ihn auf die Clear-Position setzen, den Rechner einmal ein- und wieder ausschalten und den Jumper anschließend wieder zurücksetzen. Dies löscht ebenfalls das CMOS, lässt aber die Uhr in Ruhe.

Ein Wort vorweg: Wenn Sie nicht genau wissen, was eine bestimmte Einstellung im BIOS-Setup bedeutet, gilt: Finger weg! Womöglich versetzen Sie den Rechner in einen Zustand, in dem das System nicht mehr startet oder sonstige Schwierigkeiten bereitet. Zwar gibt es in jedem BIOS-Setup eine »Notbremse« namens Load Setup Defaults oder Load BIOS Defaults, um die Standardeinstellungen des Mainboard- beziehungsweise BIOS-Herstellers wiederherzustellen. Beachten Sie aber, dass das Resultat fast immer viel zu konservativ und vorsichtig ausfällt und so den Rechner ausbremst.

BIOS-Setup-Einstellungen

Die folgenden Beschreibungen gelten für das Award BIOS eines aktuellen Pentium-4-PCs. In anderen BIOS-Versionen oder bei älteren PC-Generationen gibt es natürlich andere Einstellmöglichkeiten. Das BIOS-Setup des besagten PCs verfügt über die folgenden Hauptkategorien:

gp  Standard CMOS Features. Hier können Datum und Uhrzeit der Systemuhr eingestellt werden (was allerdings kein Mensch im BIOS-Setup tut, weil jedes Betriebssystem über entsprechende Funktionen verfügt). Außerdem erhalten Sie eine Übersicht über alle installierten Laufwerke. Die Bezeichnungen wie »IDE Primary Master« werden weiter unten bei der Beschreibung der Schnittstellen erläutert. Darüber hinaus wird hier die BIOS-Version angezeigt, und Sie erhalten einige nicht änderbare Informationen über den Prozessor, das RAM und Ähnliches.
gp  Advanced BIOS Features. Hier wird vor allem eingestellt, wie sich der Rechner beim Einschalten beziehungsweise beim Booten verhalten soll. Quick Power On Self Test führt den POST schneller, aber weniger gründlich durch – in der Regel genügt es aber so.
    Die wichtigste Einstellung in diesem Bereich ist die Boot-Sequenz, die bestimmt, auf welchen Datenträgern und in welcher Reihenfolge nach einem startfähigen Betriebssystem gesucht werden soll. Die üblichste Einstellung wählt das CD-ROM-Laufwerk als erstes Gerät (First Boot Device), das Diskettenlaufwerk als zweites und die erste Festplatte als drittes. Falls sich alle von Ihnen verwendeten Betriebssysteminstallationen und Datenrettungsprogramme von CD-ROM starten lassen, sollten Sie das Diskettenlaufwerk weglassen, weil dies den Start erheblich beschleunigt.
       
    Es ergibt dagegen keinen Sinn, die Festplatte als erstes Gerät anzugeben: Da sich dort grundsätzlich ein Betriebssystem befindet, können Sie in diesem Fall gar nicht mehr von einem anderen Datenträger booten!
       
gp  Unter Advanced Chipset Features können Sie genaue Einstellungen für Ihr RAM und Ihren Chipsatz vornehmen. Für diesen Teil des BIOS-Setups müssen Sie die Dokumentation Ihrer Mainboard ganz genau beachten, um keine Fehler zu machen.
gp  Integrated Peripherals dient dazu, die Anschlüsse für Peripheriegeräte ein- oder auszuschalten und zu konfigurieren. Beispielsweise können Sie den altmodischen Parallelport abschalten, wenn Sie einen modernen USB-Drucker verwenden, und so Hardwareressourcen für andere Geräte frei machen. Darüber hinaus wird in diesem Dialog eventuell vorhandene Onboard-Peripherie konfiguriert.
gp  Mit Hilfe des Power Management Setup lässt sich einstellen, wie sich der Rechner bei längeren Arbeitspausen verhalten soll; es gibt diverse Optionen, die Monitorausgabe, die Festplatten und andere Hardwarekomponenten nach einiger Zeit »schlafen zu legen«, um Strom zu sparen. Die meisten dieser Einstellungen lassen sich einfacher und übersichtlicher innerhalb moderner Betriebssysteme vornehmen.
gp  PNP/PCI Configurations fragt zunächst, ob ein Plug & Play-Betriebssystem installiert ist. Plug & Play ist eine Technologie, die die automatische Erkennung neu angeschlossener Hardwarekomponenten und die automatische Zuweisung von Systemressourcen an diese Geräte ermöglicht. Falls Sie hier mit »No« antworten, weil ein nicht-PNP-fähiges System wie Windows NT 4.0 installiert ist, können Sie eine Reihe von Einstellungen von Hand vornehmen. Bei aktuellen Betriebssystemen besitzt dieser Dialog dagegen keine praktische Bedeutung mehr.
gp  Load Fail-Safe Defaults ist ein anderer Name für das klassische »Load BIOS Defaults«: Es werden die sehr vorsichtigen Einstellungen des BIOS-Herstellers geladen.
gp  Load Optimized Defaults (früherer Name »Load Setup Defaults«) lädt dagegen die besser an die konkrete Hardware angepassten Voreinstellungen des Mainboard- beziehungsweise PC-Herstellers.
gp  Set Supervisor Password ermöglicht es, ein Passwort einzustellen, das eingegeben werden muss, um wieder ins BIOS-Setup zu gelangen.
gp  Set User Password ermöglicht es dagegen, ein Passwort für den normalen Start des Rechners festzulegen.
gp  Save & Exit Setup speichert die Änderungen, die Sie eingestellt haben, und verlässt das BIOS-Setup.
gp  Exit Without Saving verlässt dagegen das Setup, ohne zu speichern.

Beachten Sie, dass Sie eine Frage nur mit Ja beantworten können, indem Sie die Taste (Z) drücken, weil das BIOS-Setup keinen deutschen Tastaturtreiber lädt; auf einer englischen Tastatur sind Z und Y vertauscht.

BIOS-Updates

Wie bereits erwähnt, sind BIOS-Chips so genannte Flash-EPROMs; ihr Inhalt kann durch speziell programmierte Software verändert werden. Diese Software wird als BIOS-Update-Programm bezeichnet.

Ein BIOS-Update ist nur erforderlich und sollte nur dann durchgeführt werden, wenn neue Hardware nicht mehr mit dem System harmoniert, zum Beispiel, wenn Sie sich eine Festplatte angeschafft haben, deren Größe das BIOS nicht unterstützt.

Das BIOS-Update läuft folgendermaßen ab:

1. Ermitteln Sie die genaue Bezeichnung der Mainboard und des bisherigen BIOS.
       
2. Suchen Sie die Website des Board-Herstellers beziehungsweise des PC-Herstellers oder -Händlers auf und laden Sie das genau passende BIOS-Update-Programm herunter.
       
3. Als Nächstes müssen Sie eine DOS-Bootdiskette herstellen, von der das BIOS-Update-Programm gestartet wird. Das aktuelle Betriebssystem Windows XP basiert zwar nicht mehr auf MS-DOS, bietet aber die Option MS-DOS-Startdiskette erstellen, wenn Sie unter Arbeitsplatz mit der rechten Maustaste auf das Diskettenlaufwerksymbol klicken und Formatieren wählen.
       
4. Entpacken Sie das heruntergeladene Programm (meist mit WinZip) und kopieren Sie es auf die Diskette.
       
5. Booten Sie den Rechner von dieser Diskette (eventuell müssen Sie im BIOS-Setup zunächst das Booten von Diskette aktivieren; siehe oben). Geben Sie an der Eingabeaufforderung A:\> den Namen des Update-Programms ein – heißt es beispielsweise UPDATE.EXE, müssen Sie update eingeben.
       
6. Leisten Sie den Anweisungen des Programms ganz genau Folge.
       
7. Die meisten Update-Programme bieten die Möglichkeit, zuerst den bisherigen Inhalt des BIOS auf Festplatte zu speichern. Dies ist dringend zu empfehlen, weil das neue BIOS in seltenen Fällen noch inkompatibler ist als das alte.
       
8. Nun wird das eigentliche Update durchgeführt. Dabei darf auf keinen Fall die Stromzufuhr zum Rechner unterbrochen werden, andernfalls verbleibt das BIOS in einem defekten Zustand und der Rechner lässt sich nicht mehr starten.
       

Zwar wird der BIOS-Chip selbst dadurch nicht beschädigt, aber da ein defektes BIOS-Programm den Computer nicht booten kann, können Sie kein weiteres Update durchführen, um das Problem zu lösen. In diesem Fall hilft es nur noch, den BIOS-Chip auszubauen und das erforderliche BIOS-Programm von einem anderen PC aus mit einem Flasher (einem Flash-EPROM-Brenner) darauf zu schreiben.

Das BIOS des Macintosh

Mac-Rechner sind mit einer Komponente ausgestattet, die weitgehend dem PC-BIOS entspricht. Aus traditionellen Gründen wird es in der Regel einfach als »ROM« bezeichnet. Es enthält Routinen, auf die Mac  OS bis zur Version 9.x noch immer zugreift, die so genannte Toolbox.

Auch der Mac führt beim Start einen POST-ähnlichen Selbsttest durch. Es werden die folgenden möglichen Ergebnisse angezeigt:

gp  Ein fröhlicher »Würfelmac« zeigt an, dass alles in Ordnung ist.
gp  Ein trauriger »Würfelmac« deutet auf schwerwiegende Hardwareprobleme hin.
gp  Ein Ordnersymbol mit Fragezeichen zeigt an, dass kein Betriebssystem zum Starten vorhanden ist.

Der Macintosh besitzt kein eingebautes Programm, das dem BIOS-Setup eines PCs entspricht. Stattdessen werden die Einstellungen aus bestimmten Systemeinstellungen (Mac  OS X) beziehungsweise Kontrollfeldern (Mac  OS 9) in einem CMOS-ähnlichen Bereich gespeichert, der Parameter-RAM genannt wird. Wichtige Beispiele sind die Einstellung des Startvolumens (von welchem Datenträger soll das System gestartet werden?) oder die Monitorauflösung und -farbtiefe.

Bei fehlerhaften Einstellungen kann das Parameter-RAM auf einfache Weise gelöscht werden: Halten Sie beim Einschalten die Tastenkombination (Apfel) + (ALT) + (P) + (R) gedrückt. Sobald der Begrüßungston zu hören ist, können Sie die Tasten wieder loslassen – der Mac startet daraufhin normal neu.

Mitunter ist beim Umstieg auf eine neue Betriebssystemversion ein Firmware-Update erforderlich, das dem BIOS-Update bei PCs entspricht. Die Update-Programme sind in diesem Fall auf der Betriebssystem-CD enthalten und sind erheblich einfacher und sicherer zu bedienen als die oben genannten BIOS-Updates.


Rheinwerk Computing

3.2.4 Bus- und Anschlusssysteme  toptop

Ein weiterer wichtiger Aspekt der Hardware – die Schnittstelle zwischen Zentraleinheit und Peripherie – sind die diversen Bus- und Anschlusssysteme. Dazu gehören die Slots für Erweiterungskarten, die internen Anschlüsse für Laufwerke sowie die zahlreichen externen Anschlüsse für Tastatur, Maus, Monitor, Modem und viele andere Geräte.

Serielle und parallele Datenübertragung

Das relevanteste Unterscheidungsmerkmal zwischen verschiedenen Arten von Anschlüssen ist die Frage, ob sie Daten seriell oder parallel übertragen.

Bei der seriellen Datenübertragung werden die einzelnen Bits nacheinander, bei der parallelen Übertragung werden die Bits dagegen auf mehreren nebeneinander liegenden Leitungen gleichzeitig übertragen (je nach Anschlussart sind es 8, 16, 32 oder 64 Bits).

Auf der untersten Ebene muss zwischen »Sender« und »Empfänger« zunächst einmal Einigkeit darüber herrschen, wie die transportierten Ströme überhaupt als Daten interpretiert werden sollen. Es geht um die Frage, welche elektrischen Ereignisse (zum Beispiel Spannungswechsel oder Spannungszustände) überhaupt als 1 oder als 0 interpretiert werden sollen. Statt »Strom« müsste man allgemeiner eigentlich von Energie sprechen; beispielsweise übertragen Lichtwellenleiter keinen Strom, sondern Licht.

Bei seriellen Leitungen muss als Nächstes die Frage geklärt werden, in welcher Reihenfolge die aufeinander folgenden Einsen und Nullen überhaupt zu ganzen Bytes zusammengesetzt werden sollen (bei parallelen Leitungen ist dies natürlich irrelevant).

Angenommen, der Wert 77 soll als 8-Bit-Sequenz (binär 01001101) übertragen werden. Falls der Sender die Sequenz in dieser »natürlichen« Reihenfolge (die üblicher ist) überträgt, der Empfänger sie aber falsch herum interpretiert, erhält Letzterer statt 77 den Wert 178 (10110010)!

Abgesehen davon werden in der Regel nicht nur aufeinander folgende Datenbits übertragen, sondern dazwischen noch zusätzliche Kontrollbits. Es gibt drei grundsätzliche Arten solcher Zusatzbits:

gp  Ein Startbit zeigt den Beginn einer neuen Übertragungssequenz an, wenn es den Wert 1 hat. Startbits werden nur noch sehr selten verwendet.
gp  Ein Stoppbit kennzeichnet entsprechend das Ende einer Sequenz, wenn es den Wert 1 besitzt.
gp  Ein Prüfbit oder Parity-Bit sorgt für eine Plausibilitätskontrolle auf der untersten Ebene: Die Anzahl der 1en in den Datenbits wird gezählt. Das Parity-Bit (wörtlich: Geradheits-Bit) wird derart auf 1 oder 0 gesetzt, dass sich insgesamt immer eine gerade Anzahl von 1en ergibt. Wenn die Paritätsprüfung beim Empfänger einen Fehler ergibt (beispielsweise drei empfangene 1en, Parity 0), liegt auf jeden Fall ein Übertragungsfehler vor. Andererseits bedeutet ein korrektes Parity nicht unbedingt, dass die Übertragung fehlerfrei funktioniert hat. Aus diesem Grund verwenden die meisten Übertragungsverfahren auf einer höheren Ebene Prüfsummen.
    Die Verwendung von Parity-Bits ist mittlerweile eher unüblich geworden. Sie war vor allen Dingen für die Datenübertragung über analoge Telefonleitungen mit geringer Qualität (starken Nebengeräuschen) wichtig, weil Übertragungsfehler bei ihnen recht häufig vorkamen und auf diese Weise verringert werden konnten.
       

Die Leitungskonventionen werden üblicherweise durch drei aufeinander folgende Werte ausgedrückt, und zwar folgendermaßen:

gp  Wie viele Datenbits werden pro Sequenz verwendet? In der Regel sind es 8. Das früher übliche Telex-Verfahren verwendete dagegen nur 5 Bits; manchmal gibt es auch Übertragungsverfahren mit 7 oder 9 Datenbits.
gp  Ein N (No Parity) zeigt an, dass keine Paritätsprüfung verwendet wird, während ein P für Parity steht.
gp  Der dritte Wert gibt an, wie viele Stoppbits verwendet werden (0, 1 oder sogar 2).

Ein übliches Verfahren ist beispielsweise das für Modemverbindungen zum Internetprovider verwendete 8N1 (8 Datenbits, kein Parity, 1 Stoppbit). Eine Sequenz, die mit Hilfe dieser Methode übertragen wird, könnte zum Beispiel so aussehen:

01001000 0 01000001 0 01001100 0 01001100 0 01001111 1

Es handelt sich um die Werte 72, 65, zweimal 76 und 79 – als ASCII-Zeichen interpretiert ist es der Text »HALLO«. Die 1 hinter dem letzten Datenbit ist das gesetzte Stoppbit und besagt, dass die Übertragung nun beendet ist.

Seriell setzt sich durch

In den letzten Jahren ist zu beobachten, dass die Hersteller immer stärker auf serielle Datenleitungen setzen. So werden Drucker fast nur noch an die serielle USB-Schnittstelle statt an den alten Parallelport angeschlossen; der SCSI-Anschluss, der früher häufig für externe Laufwerke verwendet wurde, wird immer häufiger durch FireWire oder USB 2.0 ersetzt. Selbst der interne Festplattenanschluss EIDE wird nach und nach durch eine serielle Variante namens Serial ATA ersetzt.

Für diesen Wechsel zu seriellen Leitungen gibt es gute Gründe: Sie benötigen vor allem weniger Strom und können längere Entfernungen überwinden als parallele Leitungen. Das Problem der geringeren Datenübertragungsleistung, das die Entwickler früher in manchen Bereichen zur Verwendung der parallelen Datenübertragung zwang, konnte dadurch gelöst werden, dass die hervorragende Verarbeitungsqualität heutiger Leitungen den Transport von Daten mit hoher Frequenz ermöglicht.

Noch ein Wort zur Angabe der Übertragungsgeschwindigkeiten verschiedener Leitungen: Bei parallelen Leitungen lässt sie sich einfach in Byte pro Sekunde beziehungsweise den entsprechenden höheren Einheiten (Kilobyte/s, Megabyte/s und so weiter) angeben. Diese Einheiten werden jeweils mit 210  (1024) multipliziert, um zur nächsthöheren zu gelangen – 1 Kilobyte ist also 1024 Byte, 1 Megabyte 1024 Kilobyte und so weiter.

Serielle Leitungen verwenden, wie oben erläutert, unterschiedliche Bitfolgen zur Darstellung der Datenbytes. Ein tatsächliches Datenbyte kann je nach Übertragungsstandard durch eine Bitfolge von 8, 9 oder sogar 10 Bits dargestellt werden. Deshalb lässt sich die Geschwindigkeit einer seriellen Leitung nicht in Byte/s oder Vielfachen davon angeben. Sie wird stattdessen in Bit pro Sekunde (bps) gemessen. Beachten Sie, dass die Vervielfältigungseinheiten von Bit (Kilobit, Megabit, Gigabit) nicht mit dem Faktor 1024, sondern mit der dezimalen 1000 gebildet werden.

Hat zum Beispiel ein Modem eine Übertragungsrate von 56,6 Kbps (Kilobit pro Sekunde), dann bedeutet dieser Wert, dass in einer Sekunde 56.600 Bit übertragen werden. Wird der Übertragungsstandard 8N1 verwendet, dann muss dieser Wert durch 9 geteilt werden, um auf die maximal transportierbaren Bytes zu kommen: Es sind etwa 6289 Byte oder 6,14 Kilobyte. In der Praxis vereinfacht man solche Rechnungen allerdings häufig und legt 8 Datenbits zugrunde. 56.600 Bit wären demnach 7075 Byte oder 6,91 Kilobyte.

Hardware-Ressourcen

Zur Regelung der geordneten Kommunikation zwischen Prozessor, Arbeitsspeicher und Peripheriegeräten, werden verschiedene Kommunikationsressourcen verwendet. Es handelt sich um Kanäle für Hardware-Interrupts, um Speicheradressen, über die der Datenaustausch geregelt wird, und über so genannte DMA-Kanäle für die direkte Übertragung von Daten in den Arbeitsspeicher und zurück.

IRQs

Damit sich die Anfragen der verschiedenen Geräte nicht in die Quere kommen und der Prozessor sie unterscheiden kann, werden verschiedene IRQs (Interrupt Requests) verwendet. Dafür verwendet jedes Gerät, das kommunizieren möchte, ein einmaliges und eindeutiges Signal. Von diesen Signalen gibt es 16 verschiedene, die von 0 bis 15 durchnummeriert werden; der Prozessor untersucht sie jeweils der Reihe nach, um festzustellen, ob über den jeweiligen IRQ Kommunikation gewünscht wird.

Bei modernen PCI-Mainboards ist IRQ-Sharing möglich. Zwei oder mehr moderne Geräte können sich denselben IRQ teilen und mit Hilfe anderer Techniken erkennbar machen, um welches dieser Geräte es sich tatsächlich handelt. Zu diesem Zweck enthält der Chipsatz eine Komponente, die als programmierbarer Interrupt-Controller (PIC) bezeichnet wird. Bei Motherboards mit der veralteten ISA-Architektur ist IRQ-Sharing dagegen vollkommen ausgeschlossen.

Einige IRQs sind standardmäßig reserviert. Bei manchen von ihnen kann die voreingestellte Belegung verändert werden, andere sind dagegen fest zugewiesen. Tabelle 3.3 zeigt eine entsprechende Übersicht.


Tabelle 3.3   Fest belegte IRQs

IRQ Gerät Änderung möglich
0 Systemtaktgeber nein
1 Tastatur nein
2 Programmierbarer Interrupt-Controller nein
3 Serieller Port COM 2 ja
4 Serieller Port COM 1 ja
6 Diskettenlaufwerk ja
7 Parallelport ja
8 Echtzeituhr nein
12 PS/2-Maus ja
13 Koprozessor nein
14 Erster IDE-Controller ja
15 Zweiter IDE-Controller ja

I/O-Adressen

Eine weitere wichtige Kommunikationsressource ist die I/O-Basisadresse: Diese Speicheradresse markiert den Beginn eines Adressblocks, der für den Austausch von Konfigurations- und Steuerungsinformationen zwischen dem Prozessor und dem jeweiligen Gerät verwendet wird. Die jeweiligen Adressen werden hexadezimal angegeben und liegen ganz unten im adressierbaren Bereich. Die Adressbereiche werden in der Regel im Abstand von 0x20 (dezimal 32 Byte) belegt, also zum Beispiel 0x0200, 0x0220, 0x0240 und so weiter. Beachten Sie, dass es sich nicht wirklich um Adressen im Arbeitsspeicher handelt, sondern um spezielle Geräteschnittstellen, die vom Prozessor nach derselben Logik angesprochen werden wie Speicheradressen.

Eine nicht mehr besonders wichtige Ressource sind die DMA-Kanäle (Direct Memory Access). Bei DMA handelt es sich um ein Verfahren zur direkten Übertragung von Gerätedaten in den Arbeitsspeicher und umgekehrt, ohne dass jedes einzelne Datenbyte den Prozessor passieren muss. Diese Technik beseitigt einen der bedeutendsten Engpässe der klassischen Ein- und Ausgabesteuerung, ist also alles andere als unwichtig. Allerdings wird die DMA-Steuerung der meisten Geräte heute nicht mehr über die klassischen DMA-Kanäle durchgeführt, sondern über ein verbessertes Verfahren, das als Bus Mastering bezeichnet wird. DMA-Kanäle werden eigentlich nur noch für Soundkarten und Diskettenlaufwerke verwendet, vor allem, weil es sich nur um 8- und 16-Bit-Kanäle handelt.

Ressourcen-Zuteilung

Die Zuweisung der Ressourcen musste früher umständlich von Hand vorgenommen werden. Zunächst mussten sie am Gerät selbst eingestellt werden – anfangs durch Jumper, später per Software. Anschließend wurde dem Betriebssystem mitgeteilt, welche Ressourcen das jeweilige Gerät verwendete. Allzu oft kam es zu Ressourcenkonflikten, vor allem waren chronisch zu wenige IRQs vorhanden.

Besser wurde es erst mit der Einführung von Windows 95, das über – anfangs kein sehr gutes – Plug & Play verfügte, und vor allem mit der Abschaffung der alten ISA-Schnittstellen. »ISA-Plug & Play« ist nämlich im Grunde ein Widerspruch in sich. Es funktionierte so schlecht, dass es allgemein als »Plug & Pray« bezeichnet wurde.

Beim Mac funktioniert die Verwaltung der Hardware-Ressourcen übrigens erheblich einfacher als beim PC. Vor allen Dingen findet sie vollautomatisch statt, ohne dass Sie sich darum kümmern müssen. Dies ist einer der großen Vorteile von Hardware, die aus demselben Haus stammt wie das Betriebssystem – sie ist optimal darauf abgestimmt.

Steckplätze für Erweiterungskarten

Viele wichtige Peripheriegeräte werden schon seit den Anfangstagen der PCs als Einsteckkarten realisiert. Dies hat vor allen Dingen den Vorteil, dass diese Karten Anschlüsse nach außen führen können: Grafikkarten, Netzwerkkarten oder Soundkarten sind jeweils mit spezialisierten Schnittstellen ausgestattet, an die ein Monitor, ein Netzwerkkabel beziehungsweise Ton-Ein- und Ausgabegeräte angeschlossen werden.

Karten einbauen

Eine Karte verfügt am unteren Rand über eine lange Reihe von Anschlüssen, mit denen sie in den jeweils passenden Slot auf der Mainboard gesteckt wird. Den Abschluss nach außen, zur Geräterückseite, bildet ein Slotblech, auf dem sich die genannten externen Anschlüsse befinden. Der obere Rand des Slotblechs ist nach außen gebogen und wird mit einer Schraube fixiert.

Es gibt folgende verschiedene Arten von Kartenschnittstellen:

gp  Der PCI-Anschluss (Peripheral Component Interface) ist der Standard-Kartenanschluss für PC und Mac. Der PCI-Bus wird mit einer Takfrequenz von 33 MHz betrieben und besitzt eine Datenbreite von 32 Bits. Die Konfiguration erfolgt bei entsprechend ausgestatteten Betriebssystemen per Plug & Play.
gp  Der AGP-Anschluss (Accelerated Graphics Port) ist ein spezieller Anschluss für Grafikkarten. Die Taktfrequenz ist höher als bei PCI, sie beträgt mindestens 66 MHz. Es gibt inzwischen auch Varianten mit 100 und 133 MHz. Die Datenbreite wurde auf 64 Bit verdoppelt.
gp  Der veraltete ISA-Anschluss (Industry Standard Architecture) wird auf aktuellen Mainboards nicht mehr eingebaut. Im Vergleich zu heutigen Schnittstellen war er sehr viel langsamer: Seine Datenbreite betrug lediglich 16 Bits, die Taktfrequenz nur 16,7 MHz.

Notebooks besitzen keine internen Kartenschnittstellen, sind aber häufig mit einem externen Anschluss für spezielle kleine Einsteckkarten ausgestattet, dem PCMCIA-Anschluss (Personal Computer Memory Card International Association) oder auch PC-Card-Anschluss. Ursprünglich handelte es sich um einen Anschluss für Flash-ROM-Speicherkarten, inzwischen wird er für unterschiedliche Peripherie wie Netzwerkkarten, Modems oder externe Laufwerke genutzt.

Laufwerksanschlüsse

Für Festplatten, CD-ROM-Laufwerke und andere Massenspeicher gibt es zwei verschiedene wichtige Arten von Anschlüssen: EIDE und SCSI.

EIDE

EIDE (Enhanced Integrated Device Electronics) ist auf den meisten Mainboards integriert. In der Regel sind zwei Anschlüsse für 40-polige Flachbandkabel vorhanden. Mit jedem der beiden Anschlüsse können je zwei Geräte verbunden werden. Eines der beiden Geräte wird als Master bezeichnet, das andere als Slave. Der Master hat beim Datenaustausch Priorität, im Zweifelsfall muss der Slave auf Daten warten. Deshalb sollten CD- und DVD-Brenner niemals als Slave betrieben werden, weil ein Abreißen des Schreibdatenstroms den beschreibbaren Datenträger zerstören kann.

Die Unterscheidung zwischen Master und Slave hat übrigens nichts mit der Reihenfolge am Kabel zu tun, auch wenn es bei manchen Geräten noch die historische Einstellmöglichkeit »Cable Select« gibt. Die Einstellung, ob ein Gerät als Master oder als Slave betrieben wird, erfolgt durch einen Jumper oder DIP-Schalter am Gerät selbst.

Damit die Stecker der Flachbandkabel korrekt eingesteckt werden, besitzt das Kabel eine rote Ader; diese Seite gehört an den Pin mit der Nummer 1. Sowohl die Mainboard als auch die Geräte sind meist entsprechend beschriftet. Bei den Laufwerken befindet sich die 1 meistens neben dem Stromanschluss.

Der wichtigste Vorteil gegenüber SCSI besteht darin, dass EIDE-Geräte erheblich günstiger sind. Im normalen Alltagsbetrieb an PCs ist die Leistungsfähigkeit darüber hinaus vergleichbar; SCSI ist nicht schneller, sondern nur belastbarer, und daher für Server und andere Hochleistungsmaschinen besser geeignet. Der größte Nachteil von EIDE besteht dagegen darin, dass der Anschluss elektrisch instabil ist und die maximale Kabellänge somit nur 60 cm beträgt, weshalb es keine externen EIDE-Geräte gibt. Dies wird sich allerdings in den nächsten Jahren ändern, weil EIDE immer häufiger durch den technisch kompatiblen, aber anders aufgebauten Serial-ATA-Anschluss ersetzt wird.

SCSI

SCSI ist die Abkürzung für Small Computer System Interface. Wie der Name vermuten lässt, wurde diese Schnittstelle ursprünglich nicht für PCs konzipiert, sondern eben für Kleincomputer (die etwa so groß wie Kleiderschränke sind).

Eine SCSI-Schnittstelle bietet die Möglichkeit, 7 Geräte anzuschließen; der neuere Wide-SCSI-Standard erlaubt sogar 15. Bei allen älteren Macs bis zum ersten G3-PowerMac von Mitte 1998 war SCSI integriert und wurde auch für die bereits eingebauten Festplatten und CD-ROM-Laufwerke verwendet. Bei PCs ist SCSI nur sehr selten onboard und wird meist als PCI-Einsteckkarte nachgerüstet. Die meisten dieser SCSI-Karten stammen von der Firma Adaptec.

Ein SCSI-Controller verfügt in der Regel über drei Anschlüsse: zwei interne für 50-polige Flachbandkabel sowie einen externen, an den entweder ein 25-poliges Centronics-Kabel (optisch identisch mit dem klassischen Parallelport eines PCs, aber technisch abweichend) oder ein modernes SUB-D-Kabel angeschlossen werden kann.

Beachten Sie, dass Sie von diesen drei Anschlüssen nur zwei verwenden dürfen! Am SCSI-Controller dürfen Geräte nur busförmig angeschlossen werden, das heißt hintereinander in einer Kette, und nicht etwa sternförmig (mit drei Abzweigungen).

Das erste und das letzte Gerät in der Kette benötigen jeweils einen Abschlusswiderstand, auch Terminator genannt. Dieser sieht je nach Geräteart unterschiedlich aus: Die meisten internen Geräte wie Festplatten oder CD-ROM-Laufwerke verwenden hierfür einen Jumper. Bei externen Geräten (Scanner, externe Festplatten, CD-Brenner und so weiter) gibt es hingegen oft die Möglichkeit, über einen durchgeschleiften Anschluss ein weiteres Gerät anzuschließen. In diesem Fall ist der Terminator oftmals nur ein großer Stecker, der auf diesen Anschluss gesetzt wird, oder manchmal auch ein Dip-Schalter.

Wenn der SCSI-Controller selbst ein Ende der Kette bildet, weil nur einer der drei Anschlüsse genutzt wird, dann muss er ebenfalls terminiert werden: Dies geschieht oft mittels eines Jumpers oder DIP-Schalters, bessere Controller terminieren sich in diesem Fall automatisch selbst.

Damit SCSI-Geräte angesteuert werden können, benötigen sie eine eindeutige Nummer, die als SCSI-ID bezeichnet wird. Diese hat nichts mit der Reihenfolge in der Kette zu tun; wichtig ist nur, dass jede verwendete Nummer einmalig ist. Beim klassischen SCSI existieren die IDs 0 bis 7, bei Wide SCSI dagegen 0 bis 15. Je höher die Nummer eines Gerätes, desto höher ist seine Priorität. Der Controller selbst hat daher meist die ID 7 beziehungsweise 15.

Je nach Gerätesorte wird die ID auf unterschiedliche Weise eingestellt: Bei den meisten externen Geräten gibt es einen Drehschalter mit vielen Auswahlmöglichkeiten oder einen DIP-Schalter, der nur zwei Optionen bietet. Bei internen SCSI-Geräten wird die ID oft durch einen oder zwei Jumper eingestellt. Manchmal besitzen sie auch einfach eine festgelegte ID. Vor dem Kauf eines weiteren Gerätes müssen Sie deshalb darauf achten, dass Sie keines mit derselben festen SCSI-ID kaufen. Bei neueren Geräten erfolgt die Konfiguration meist bequem per Software.

USB und FireWire

Alle modernen Rechner sind mit neuartigen seriellen Schnittstellen für externe Geräte ausgestattet. Gegenüber dem schwierig einzurichtenden, fehleranfälligen SCSI-Anschluss besitzen sie den Vorteil, dass sie völlig ohne Konfigurationsaufwand benutzt werden können.

Der USB-Anschluss (Universal Serial Bus) existiert in zwei verschiedenen Versionen: USB 1.0 und 1.1 arbeiten mit einer Datenübertragungsrate von 12 MBit/s, USB 2.0 vervielfacht diesen Wert auf 480 MBit/s. An die USB-Anschlüsse eines Rechners können insgesamt 127 Geräte angeschlossen werden, wozu allerdings so genannte USB-Hubs als Verteilungsgeräte notwendig sind.

Die IEEE-1394-Schnittstelle, die von Apple unter dem Namen FireWire vermarktet wird, arbeitet mit einer Übertragungsrate von 400 MBit/s. Die neuere Variante FireWire 800 unterstützt die doppelte Geschwindigkeit. Der Hauptverwendungszweck dieses Anschlusses ist der digitale Videoschnitt, deshalb wird er auch als DV-Schnittstelle bezeichnet. An den FireWire-Port lassen sich bei entsprechender Vervielfältigung bis zu 63 Geräte anschließen.

Hot Plugging

Beide Schnittstellen unterstützen das so genannte Hot-Plugging-Verfahren: Es ist vorgesehen, dass Geräte im laufenden Betrieb ein- und ausgesteckt werden können. Das Betriebssystem lädt dann automatisch die passenden Treiber und sollte sie nach Gebrauch auch wieder entfernen.

USB wird nicht nur für Drucker, Modems, Scanner, Digitalkameras und externe Festplatten oder CD-Brenner eingesetzt, sondern – zumindest beim Mac – auch für Tastatur und Maus. Beim PC werden dagegen in der Regel die so genannten PS/2-Anschlüsse für Tastatur und Maus verwendet. Zu beachten ist, dass PS/2-Kabel niemals im laufenden Betrieb ein- oder ausgestöpselt werden dürfen, dies kann die Mainboard ernsthaft beschädigen!

Viele PCs sind neben USB und FireWire auch heute noch mit den klassischen seriellen und parallelen Schnittstellen ausgestattet. PCs, die diese Anschlüsse nicht aufweisen, werden als »Legacy-free« bezeichnet.

Die alte serielle Schnittstelle (RS-232 oder V.24) wurde ursprünglich für den Anschluss von Terminals an Kleincomputer konzipiert. Beim PC diente sie lange Jahre als Maus- und Modemanschluss. Heute hat ihre praktische Bedeutung dagegen stark nachgelassen. (Am ehesten wird sie vielleicht noch für Messgeräte verwendet, die ihre Daten zur Auswertung an spezielle Software übermitteln. Alte Macs verfügten über eine technisch sehr ähnliche Schnittstelle, die als RS-422 bezeichnet wurde. Optisch war dieser Anschluss allerdings eher mit der PS/2-Schnittstelle eines heutigen PCs vergleichbar.)

Ein weiterer klassischer Anschluss ist der Centronics-Parallelport (benannt nach einem längst vergessenen Druckerhersteller). Er wurde bis vor kurzem vor allem für Drucker eingesetzt, wird aber zunehmend durch USB verdrängt.

Drahtlose Schnittstellen

Ein moderner Rechner mit seinen zahlreichen Peripheriegeräten verursacht ein kaum zu bändigendes Durcheinander von Kabeln. Aus diesem Grund wächst die Beliebtheit von Lösungen, die den Anschluss von Geräten ohne Kabel ermöglichen. Grundsätzlich gibt es zwei verschiedene Ansätze: Infrarot- und Funkanschlüsse.

Die Infrarot-Technologie ist von der Fernseh-Fernbedienung bekannt. Sie benötigt Sichtkontakt zwischen Gerät und Empfangsstation und arbeitet verhältnismäßig langsam. Andererseits kann es bei Infrarot-Schnittstellen nicht zu den Störungen kommen, denen Funkverbindungen ausgesetzt sein können. Infrarot-Anschlüsse sind vor allem für Tastaturen und Mäuse geeignet. Der verbreitetste Standard für Infrarot-Anschlüsse, der auch bei Handys und PDAs verbreitet ist, wird IrDA genannt.

Bluetooth

Funkanschlüsse arbeiten fast immer mit Mikrowellen im Frequenzbereich von 2,4 GHz – dieses Frequenzband hat den Vorteil, dass es lizenzfrei ist, weil es auch von Mikrowellenöfen genutzt wird. Allmählich kristallisiert sich ein einheitlicher Datenfunk-Standard für den Anschluss von Peripheriegeräten heraus: die Bluetooth-Technologie. Es handelt sich um Funkverbindungen mit einer maximalen Reichweite von etwa 10 Metern und einer Übertragungsrate von 1 MBit/s. Es gibt inzwischen Unmengen von Geräten, die über Bluetooth angeschlossen werden können, beispielsweise Tastaturen, Mäuse, Modems oder Mobiltelefone.

Sowohl Infrarot- als auch Bluetooth-Anschlüsse sind nicht auf allen Mainboards eingebaut, aber inzwischen recht günstig als PCI-Erweiterungskarten oder USB-Stecker erhältlich.

Erheblich höhere Datenübertragungsraten bieten übrigens die drahtlosen Netzwerke, die in Kapitel 13, Netzwerkhardware und -protokolle, ausführlich behandelt werden.






  
Wie hat Ihnen das <openbook> gefallen?
Ihre Meinung


IT-Handbuch
für Fach-
informatiker

Java ist auch
eine Insel

Linux
Handbuch

Computer
Netzwerke

Schrödinger
lernt HTML5,
CSS3 und
JavaScript
Versandkostenfrei bestellen in Deutschland und Österreich
Info





Copyright © Rheinwerk Verlag GmbH 2004
Für Ihren privaten Gebrauch dürfen Sie die Online-Version natürlich ausdrucken. Ansonsten unterliegt das <openbook> denselben Bestimmungen, wie die gebundene Ausgabe: Das Werk einschließlich aller seiner Teile ist urheberrechtlich geschützt. Alle Rechte vorbehalten einschließlich der Vervielfältigung, Übersetzung, Mikroverfilmung sowie Einspeicherung und Verarbeitung in elektronischen Systemen.


[Rheinwerk Computing]

Rheinwerk Verlag GmbH, Rheinwerkallee 4, 53227 Bonn, Tel.: 0228.42150.0, Fax 0228.42150.77, service@rheinwerk-verlag.de