Update: Virtualisierung

Virtualisierung ist eine Hardware-Unterstützung, die den Betrieb virtueller Computer auf einem Computer erleichtert oder beschleunigt. Mit der Virtualisierung kann man mehrere Software-Systeme auf einer Hardware laufen lassen. Das können zum Beispiel unterschiedliche Betriebssysteme sein. Virtualisierung macht dann Sinn, wenn ein Hardware-System nicht ausgelastet ist und die Ressourcen parallel für andere Systeme genutzt werden sollen.


Parallelisierung

Die Entwickler von Prozessoren haben im Laufe der Zeit festgestellt, dass sich die Verarbeitungsgeschwindigkeit eines Prozessors nicht nur durch die Erhöhung der Taktrate beschleunigen lässt.

So kommt es bei der Abarbeitung des Programmcodes immer wieder zu Verzögerungen. Zum Beispiel beim Zugriff auf den Speicher oder die Peripherie. In so einem Fall ist der Prozessor mit Warten beschäftigt. Er macht erst dann im Programmcode weiter, wenn die Daten aus dem Speicher oder von der Peripherie in die Register geladen wurde. Diese Wartezeit führt dazu, dass ein Großteil der zur Verfügung stehenden Rechenleistung überhaupt nicht genutzt wird.

Deshalb haben sich die Prozessor-Entwickler schon sehr früh überlegt, wie sie einen Prozessor intern so strukturieren müssen, dass er im Programmcode weitermachen kann, während Daten von außen geladen werden. Das hat dazu geführt, dass moderne Prozessoren die anstehenden Aufgaben auf viele parallel arbeitende Einheiten verteilen.


Prozessor-Architektur

Die Architektur moderner Prozessoren ist sehr komplex. Um ein Grundverständnis für die Arbeitsweise von Prozessoren zu bekommen, verwendet man eine vereinfachte Architektur, die auch in modernen Prozessoren noch gültig ist. Obwohl jeder Mikroprozessor für eine spezielle Anwendung entwickelt wird, sind sie vom Grundaufbau her alle gleich. Ein Prozessor besteht grob gesehen aus Rechenwerk, Steuerwerk und dem internen Speicher.


Update: Cache

Der Cache ist ein spezieller Puffer-Speicher, der zwischen dem Arbeitsspeicher und dem Prozessor liegt.

Damit der Prozessor nicht jeden Programm-Befehl aus dem langsamen Arbeitsspeicher holen muss, wird gleich ein ganzer Befehls- oder Datenblock in den Cache geladen. Die Wahrscheinlichkeit, dass die nachfolgenden Programmbefehle im Cache liegen, ist sehr groß, da die Programm-Befehle nacheinander abgearbeitet werden.

Man unterscheidet zwischen L1-, L2- und L3-Cache.