article

Der Virtuelle Adressraum oder auch Virtuelle Speicher bezeichnet in der Computertechnik den Adressraum, der einem Prozess für Daten und das Programm vom Betriebssystem zur Verfügung gestellt wird.

Nur die Betriebssysteme, die eine Virtuelle Speicherverwaltung verwenden, können einen Virtuellen Adressraum generieren und dadurch Speicherseiten, die physikalisch nicht zusammenhängend sind, für den Programmierer bzw. das Programm als logisch zusammenhängenden Speicherbereich abbilden. Die Virtuelle Speicherverwaltung ermöglicht weiterhin die Implementierung von Speicherschutzmechanismen.

So stellen beispielsweise die Betriebssysteme Linux und Windows (32-Bit-Versionen) bis zu 4 Gigabyte für Programme und Daten zur Verfügung, auch wenn weniger physikalischer Arbeitsspeicher, z. B. nur 256 Megabyte, zur Verfügung steht. Die Umsetzung der verwendeten Virtuellen Adressen auf die physikalische Adresse wird durch die Memory Management Unit, eine vom Betriebssystem bediente Hardware-Komponente, erreicht. Prozesse können somit Adressen verwenden, die theoretisch auf dem Rechner nicht existieren können.

Der Arbeitsspeicher ist in Speicherseiten aufgeteilt, deren mögliche Größen und Anfangsadressen durch die Hardware vorgegeben sind, z. B. bei der IA-32-Architektur 4 Kilobyte. Wird auf eine Adresse zugegriffen, der zur Zeit keine physikalische Speicherseite zugeordnet ist, so muss das Betriebssystem die Memory Management Unit anweisen, an dieser Stellen eine bestimmte freie Speicherseite einzublenden. Steht keine freie Speicherseite mehr zur Verfügung, so muss eine andere Speicherseite frei gemacht werden, wobei der Inhalt vom Betriebssystem z. B. auf die Festplatte ausgelagert wird. Diesen Vorgang bezeichnet man als Paging.

Die Größe des Virtuellen Adressraums kann aus der Definition der Virtuellen Adresse berechnet werden. So ist beispielsweise in einer IA-32-Architektur eine Virtuelle Adresse 32 Bit breit, zweimal je 10 Bit für eine zweistufige Seitentabelle und 12 Bit (entspricht den o.g. 4 Kilobyte) für den Offset. Somit lassen sich 210 x 210 x 212 Byte adressieren. Das entspricht 232 Byte, also 4 Gigabyte.

Der virtuelle Speicher wurde 1956 von Fritz-Rudolf Güntsch erfunden.

Betriebssystemtheorie | Virtual Memory | Mémoire virtuelle | Memória virtual

 

This article is licensed under the GNU Free Documentation License. It uses material from the "Virtueller Adressraum".

Home Pageartsbusinesscomputersgameshealthhospitalshomekids & teensnewsphysiciansrecreationreferenceregionalscienceshoppingsocietysportsworld