Paging vs. Swapping
Paging ist eine Speicherverw altungsmethode, die von Betriebssystemen verwendet wird. Paging ermöglicht es dem Hauptspeicher, Daten zu verwenden, die sich auf einem sekundären Speichergerät befinden. Diese Daten werden im sekundären Speichergerät als Blöcke gleicher Größe gespeichert, die als Seiten bezeichnet werden. Paging ermöglicht es dem Betriebssystem, Daten zu verwenden, die nicht in den Hauptspeicher passen. Auslagern ist ein Begriff, der verwendet wird, um das Verschieben aller zu einem Prozess gehörenden Segmente zwischen dem Hauptspeicher und einem sekundären Speichergerät zu beschreiben.
Was ist Paging?
Paging ist eine Speicherverw altungsmethode, die von Betriebssystemen verwendet wird. Paging ermöglicht es dem Hauptspeicher, Daten zu verwenden, die sich auf einem sekundären Speichergerät befinden. Diese Daten werden im sekundären Speichergerät als Blöcke gleicher Größe gespeichert, die als Seiten bezeichnet werden. Paging ermöglicht es dem Betriebssystem, Daten zu verwenden, die nicht in den Hauptspeicher passen. Wenn ein Programm versucht, auf eine Seite zuzugreifen, wird zuerst die Seitentabelle überprüft, um zu sehen, ob sich diese Seite im Hauptspeicher befindet. Die Seitentabelle enthält Details darüber, wo die Seiten gespeichert sind. Wenn es sich nicht im Hauptspeicher befindet, spricht man von einem Seitenfehler. Das Betriebssystem ist für die Behandlung von Seitenfehlern verantwortlich, ohne sie dem Programm anzuzeigen. Das Betriebssystem findet zuerst heraus, wo diese bestimmte Seite im Sekundärspeicher gespeichert ist, und bringt sie dann in einen leeren Seitenrahmen im Hauptspeicher. Dann aktualisiert es die Seitentabelle, um anzuzeigen, dass sich die neuen Daten im Hauptspeicher befinden, und gibt die Steuerung an das Programm zurück, das die Seite ursprünglich angefordert hat.
Was ist Swapping?
Swapping ist der Vorgang, bei dem alle zu einem Prozess gehörenden Segmente zwischen dem Hauptspeicher und einem sekundären Speichergerät verschoben werden. Das Austauschen erfolgt unter schwerer Arbeitsbelastung. Der Betriebssystemkern würde alle Speichersegmente, die zu einem Prozess gehören, in einen Bereich namens Swap-Bereich verschieben. Beim Auswählen eines Prozesses zum Austauschen wählt das Betriebssystem einen Prozess aus, der für eine Weile nicht aktiv wird. Wenn der Hauptspeicher genügend Platz hat, um den Prozess aufzunehmen, wird er aus dem Auslagerungsbereich zurück in den Hauptspeicher übertragen, damit seine Ausführung fortgesetzt werden kann.
Was ist der Unterschied zwischen Paging und Swapping?
Beim Paging werden gleich große Blöcke (sogenannte Pages) zwischen dem Hauptspeicher und einem sekundären Speichergerät übertragen, während beim Swapping alle zu einem Prozess gehörenden Segmente zwischen dem Hauptspeicher und hin und her verschoben werden ein sekundäres Speichergerät. Da Paging das Verschieben von Seiten ermöglicht (es könnte Teil des Adressraums eines Prozesses sein), ist es flexibler als Swapping. Da beim Paging nur Seiten verschoben werden (im Gegensatz zum Swapping, bei dem ein ganzer Prozess verschoben wird), würde das Paging im Vergleich zu einem Swapping-System ermöglichen, dass sich mehr Prozesse gleichzeitig im Hauptspeicher befinden. Swapping ist besser geeignet, wenn höhere Workloads ausgeführt werden.