# Prozessor/CPU
###### tags: `Lernfeld 4`
Die CPU ist das Herzstück eines Computers und wird mit einem Sockel auf dem Mainboard besfestigt. Der Prozessor treibt - wie der Name es bereits verrät - Prozesse voran und steuert die anderen Komponenten des Rechners. Die Taktfrequenz/Leitsung der CPU wird in Hertz angegeben (Einheit → 1/s). Es gibt einkernige und mehrkernige Prozessoren, die sich in mehrere Untereinheiten aufteilen.

## Die Bestandteile des Prozessors im Überblick:
Das **Steuerwerk** steuert den Ablauf der Befehlsverarbeitung und teilt sich in mehrere Register auf.
| Register (Speicher) | Funktion/Aufgabe |
| -------- | -------- |
| Befehlsregister | Empfängt Daten und speichert diese zwischen |
| Befehlszähler | Enthält Speicheradresse des nächsten auszuführenden Befehls |
| Status- oder Zustandsregister | Speichert Statusbits (Flags) der aktuellen Operation |
---
Das **Rechenwerk (ALU)** führt die Befehle des Steuerwerks aus.
- Daten und Befehle werden vom Steuerwerk gesendet
- Enthält arithmetische (z.B. Addition) und logische (z.B. AND) Verknüpfungen sowie Vergleichsbefehle
- Ein Zwischenergebnis (Akkumulator) aus vorherigen Funktionen kann ebenfalls verrechnet werden
- Der Status (Flag) wird zurück zum Steuerwerk geschickt

---
Die **Caches** sind zwischenspeicher, die die Daten vom RAM temporär abspeichern, da dieser langsamer arbeitet als die CPU → Caches = Pufferspeicher
- Cache-Lv.1: 4-256 kb, läuft mit Prozessortakt im Kern
- Cache-Lv.2: zwischen 64 kb und 12 Mb, läuft etwas langsamer nah am Kern
- Cache-Lv.3: bis zu 256 Mb gleicht Kerne von Mehrkernprozessoren ab → vereinfacht und beschleunigt den Datenaustausch der Kerne untereinander
---
Der **Speichermanager** vereinfacht den Datenaustausch zwischen Steuerwerk & RAM
___
Der **Kommunikationsbus** regelt den Datenaustausch innerhalb der CPU und
bestehend aus Adress-, Daten- und Steuerbus.
---
## Weitere Funktionen von Prozessoren:
**Hyper-Threading/Simultaneous Multithreading:** Ein Prozessorkern mit mehreren vollständigen Registersätzen und einem komplexen Steuerwerk teilt sich in zwei virtuelle Kerne auf, um den Prozessor besser auszulasten
**Turbo-Boost-Technologie:** automatische Übertaktung eines Kerns und Entlastung der anderen Kerne, wenn, z.B. ältere Programme, nicht die gesamte Leistung eines Prozessors benötigen