Adresse/Adressraum [address]

Skip to main content
Du befindest dich hier:
Drucken

In einem Computer wird jede Speicherzelle eines Arbeitsspeichers mit einer eindeutigen Zahl, der sogenannten Speicheradresse, gekennzeichnet. Die spezielle Datenleitung, über die Computerkomponenten solche Speicheradressen austauschen, wird Adressbus genannt. Den typischen Adressbus findet man zwischen Hauptprozessor (CPU) und dem Arbeitsspeicher eines PCs. Bevor eine CPU (bzw. ein dort laufendes Programm) also Daten von einem Speicherplatz abfordern bzw. an diesen übermitteln kann, muss sie dessen Adresse über den Adressbus an den Arbeitsspeicher übermitteln.

Nach dem gleichen Prinzip erfolgt auch die Ansteuerung von Ein-/Ausgabegeräten über Geräteadressen [device address]. Eine solche Geräteadresse ist eine logische, vom Betriebssystem verwaltete numerische oder text-basierte Bezeichnung, mit deren Hilfe Geräte für Datei-ein- und -ausgaben angesprochen werden. Typische Beispiele sind COM1 für die serielle Schnittstelle, LPT1 für die parallele Schnittstelle oder numerische Netzwerkadressen wie die IP-Adressen. Bei Computerprogrammen sprich man außerdem von Sprungadressen. Das sind gekennzeichnete Positionen innerhalb eines Computerprogramms, an denen eine bestimmte Befehlssequenz gespeichert ist. Durch Nutzung der Sprungadresse kann man diese Befehle dann zur Abarbeitung aufrufen.

In Bezug auf Speicheradressen unterscheidet man noch folgende Begriffe:

Adressraum: Unter einem Adressraum versteht man die maximale Zahl von 32-Bit-Prozessoren (Pentium/Pentium-II/Pentium-III etc.) können mit ihrem aus 32 Leitungen bestehende Adressbus einen Adressraum von 4’096 MByte = 4 GByte adressieren. Bei Modernern 64-Bit-Systemen liegt die (mathematische) Speichergrenze bei 16 Exabyte (16 Million GByte), ist jedoch meist auf eine Speichergröße von 16 TByte beschränkt (und praktisch auf 8 GByte). Zu genauen Informationen siehe 64-Bit-Betriebssystem/-Prozessor.

Physische, logische und virtuelle Adressen [physical/logical/virtuall address]: Während Erstere die Adresse eines realen Speicherplatzes ist, wird die andere durch eine Speicherverwaltung bereitgestellt. Diese sorgt durch Adresstransorfmationen [address transformation] für die Übersetzung zwischen logischen und physischen Adressen. Durch logische Adressen kann man den Arbeitsspeicher eines Computers besser verwalten, Adresskonflikte vermeiden und beim Multitasking unzulässige Zugriffe auf fremde Speicherbereiche verhindern. Das Paging-Verfahren nutzt logische Adressen, um auf Festplatten virtuellen Arbeitsspeicher in Form einer Auslagerungsdatei zu erzeugen. Daher spricht man auch von virtueller Adresse.

Startadressen und relative Adressen [relative address]: Relative Adressen sind eine Spezialfall logischer Adressen, die sich (wie der Name schon sagt) selbst auf eine andere Adresse beziehen. Ein typisches Beispiel ist der Bezug auf die Startadresse eines Programms. Über diese wird beim Laden des Programms (in den Arbeitsspeicher) dem Prozessor der logische Programmanfang mitgeteilt, ab dem er dann mit der Befehlsausführung beginnen soll. Relative Adressen werden eingeführt, um Programme schreiben zu können, die durch das Betriebssystem an einen beliebigen Speicherplatz geladen werden können, was wiederum den Programmierer bei der Berücksichtigung der realen Speicherorganisation entlastet.

 

Kommentar hinterlassen