Was ist der Unterschied zwischen Betriebssystem "swap" und "page"?
Was ist der Unterschied zwischen diesen 2 Begriffen in Betriebssystem: swap und Seite?
Kommentar zu dem Problem - Öffnen
dies ist wahrscheinlich die gehört auf serverfault Kommentarautor: joshperry
Server-Fehler ist mehr für die praktische sysadmin-Zeug, sondern als OS-Terminologie. So gehört es sich wohl auf Super-User. Kommentarautor: David Thornley
@DavidThornley als Neuling SE user, es war nicht sehr offensichtlich für mich, dass OS Terminologie gehört zu SU. jetzt weiß ich. danke. Kommentarautor: n611x007
InformationsquelleAutor der Frage root | 2009-11-06
Schreibe einen Kommentar Antworten abbrechen
Du musst angemeldet sein, um einen Kommentar abzugeben.
Trotz der historischen vertauschen dieser beiden Begriffe, Sie bezeichnen verschiedene Dinge. Sie sind beide Methoden für die Verwaltung verschieben von Daten im Speicher zu einem anderen Speicher-Gerät, genannt ein backing-store (oft eine Festplatte), aber Sie verwenden verschiedene Methoden, dies zu tun.
Swapping beinhaltet das bewegen von einem Prozess, die gesamte Sammlung von Daten im Speicher, um eine Reihe von Speicherplatz auf dem backing store, oft zu einer SwapDatei oder swap-partition. Der Prozess geht aus in Speicher ausgelagert vollständig; es gibt kein dazwischen. Offensichtlich ist der Vorgang völlig im Leerlauf, der für das swappen zu werden, überhaupt lohnt. Dies hat den Vorteil, dass es relativ einfach zu begreifen und Speicher für ein Programm ist immer zusammenhängend zugeteilt, der Nachteil ist, dass die Leistung auf einer Maschine können sich absolut miserabel, wenn das system endet in einem Zustand, wo die Dinge sind ständig austauschen. Der Algorithmus beinhaltet auch das wiederholte ein-und Auslagerung und der Daten, die nicht verwendet werden in absehbarer Zukunft.
Paging zu lösen versucht, diese Probleme, indem die physikalischen Speicher, und schnitzen Sie in Sachen "frames" einige Feste Größe. Es nimmt auch den Speicher jedes Laufenden Prozesses, und schnitzt es in Seiten (die die gleiche Größe wie frames); dies wird als der physische Adressraum, durch die Notwendigkeit der Verwendung von physikalischen Adressen den Zugriff auf die einzelnen Speicherblocks.
Jedes Programm präsentiert eine Umgebung, die vom Betriebssystem und unterstützt von moderner hardware, die macht der Programme, Speicherbedarf, die Aussehen wie ein einzelner zusammenhängender block von einer sehr großen Menge an Speicher; dies nennt man einen logischen Adressraum.
Jedoch, jede Seite dieses zusammenhängenden block im Speicher, oder kann es auf dem backing store. Das Betriebssystem bestimmt, wo jede Seite wird durch die Beratung ein so genanntes "page table". Wenn es feststellt, dass die Seite das Programm gebeten hat, ist im Speicher irgendwo, es wird gehen Sie einfach auf die Seite von Speicher und greifen Sie die angeforderten Daten.
Wenn es feststellt, dass die Seite nicht im Speicher; es wird ein "page fault". Das OS wird, setzen Sie den Prozess aus, während es lädt die gewünschte Seite in von der Unterlage zu speichern, und kann in der bewegen eine andere Seite aus dem Speicher zum sicherungsspeicher, um Platz zu machen, basierend auf einem Ersatz-Algorithmus. Den Zusatzspeicher kann man als eine Auslagerungsdatei, oder kann noch genannt werden, eine SwapDatei oder eine swap-partition, was zu Verwirrung darüber, welches system verwendet wird. Ob es eine separate partition, oder nur eine Datei, hängt vom Betriebssystem ab.
Gibt es bestimmte Teile des Speichers, die nicht unterworfen werden ausgelagert. Eine davon ist die paging-code selbst, und die Teile des Kernels, die die Dinge handhaben wie seitenfehlern. Einige Betriebssysteme, wie MacOS, Lesen Sie bitte diesen Speicher als "wired".
Moderne hardware hat mehrere Geräte, die ein Betriebssystem zur Unterstützung von paging-weit mehr effektiv. Das am meisten common von diesen ist ein Translation Lookaside Buffer, oder TLB. Diese speichert eine Art hardware page table cache, so dass, wenn ein Programm muss eine logische Adresse physische Adresse-übersetzung, die es nicht haben, gehen Sie zu Fragen, das Betriebssystem zu jeder Zeit.
Moderne Betriebssysteme nutzen Sie auch die paging durch faul-einlegen von teilen der Prozesse, die Sie ausführen. Zum Beispiel, wenn Sie beim Start von Microsoft Word, anstatt das laden des gesamten Programms in den Speicher, das Betriebssystem wird stattdessen laden Sie nur jene Teile des Programms, die es braucht, in den Speicher, und nehmen Sie die anderen Teile des Programms, wie es nur braucht. Dies hat trade-offs als auch zwischen Arbeitsspeicher, die boot-Geschwindigkeit, und wie Häufig Verzögerungen auftreten, die in dem Programm als neuen Teile geladen werden müssen.
Sowieso, vielleicht mehr als du suchst, aber hoffentlich interessant.
InformationsquelleAutor der Antwort Ed Carrel
Swapping und paging sind orthogonale Konzepte. Mit Blättern, das (körperliche) Gedächtnis ist aufgeteilt in kleine Blöcke genannt "frames", und das (logischer) Speicher-jedes Programm ist in Blöcke unterteilt, genannt "Seiten". Seiten und Rahmen haben die gleiche Größe; jede Seite wird dann zugeordnet zu einem Rahmen. Diese Zuordnung erfolgt über die page tables. Paging löst Fragmentierung Probleme, die vorhanden waren, mit früheren Speicher-management-Systeme.
Mit dem austauschen, Teile des Speichers, die nicht im Gebrauch sind, werden auf die Festplatte geschrieben; dies ermöglicht eine mehrere Programme ausführen, deren gesamter Speicherverbrauch ist größer als die Größe des physikalischen Speichers. Wenn ein Programm eine Anforderung für einen Teil des Speichers, der auf die disk geschrieben wurde, das Teil hat in den Arbeitsspeicher geladen werden. Um mehr Platz zu schaffen, ein anderer Teil muss auf den Datenträger geschrieben wird (effektiv die beiden Teile vertauscht - daher der name). Diese "extension" des physikalischen Speichers ist im Allgemeinen bekannt als "virtueller Speicher".
Moderne Systeme verwenden sowohl paging und swapping, und die Seiten sind getauscht in und aus dem Speicher.
InformationsquelleAutor der Antwort oggy
Swap in linux-eine partition für virtuellen Speicher verwendet werden. Es enthält Seiten, die Speicherblöcke, die ausgetauscht werden können und aus dem realen Speicher.
InformationsquelleAutor der Antwort Matt Phillips
Nur unterschiedliche Begriffe für ziemlich viel die gleiche Sache. Sie beide beziehen sich auf einen Bereich des virtuellen Speichers, die ist (meist) auf der Festplatte gespeichert.
*nix, et al. nennen es "swap"
Ruft Windows eine Auslagerungsdatei
In Linux, etc, swap space wird in der Regel eine eigene partition. Auf windows ist in der Regel eine gespeicherte Datei auf dem OS-Dateisystem, irgendwo.
InformationsquelleAutor der Antwort Josh Wright
Einen Seite ist ein Speicherblock verwaltet vom Betriebssystem. Auf Linux kann man sich die kernel-Zuweisung für Ihre OS-version durch die Eingabe
$ getconf PAGESIZE
4096
4KB ist eine ziemlich häufige Zuweisung.
Während die eine Seite bezieht sich auf eine Größe schrebergarten, swap bezieht sich auf 'verschiebt'. Wenn Sie möchten, um die details zu erhalten, versuchen Sie Alles über Linux swap space.
InformationsquelleAutor der Antwort Don Wakefield
Finden Sie unter: Paging und swapping
InformationsquelleAutor der Antwort Nick Dandoulakis