Vergleichstabelle
Basis der Vergleich | Angrenzende Speicherzuordnung | Nicht zusammenhängende Speicherzuordnung |
---|---|---|
Basic | Ordnet einem Prozess aufeinanderfolgende Speicherblöcke zu. | Ordnet einem Prozess separate Speicherblöcke zu. |
Gemeinkosten | Bei der zusammenhängenden Speicherzuordnung ist während der Ausführung eines Prozesses nicht der Aufwand für die Adressübersetzung zu beachten. | Die nicht zusammenhängende Speicherzuordnung hat während der Ausführung eines Prozesses einen zusätzlichen Aufwand für die Adressübersetzung. |
Ausführungsrate | Ein Prozess führt einen Fatser in zusammenhängender Speicherzuordnung aus | Ein Prozess wird bei der nicht zusammenhängenden Speicherzuordnung vergleichsweise langsamer ausgeführt. |
Lösung | Der Speicherplatz muss in eine Partition mit fester Größe unterteilt werden, und jede Partition wird nur einem einzelnen Prozess zugeordnet. | Unterteilen Sie den Prozess in mehrere Blöcke und platzieren Sie diese in verschiedenen Teilen des Speichers, je nach verfügbarem Speicherplatz. |
Tabelle | Eine Tabelle wird vom Betriebssystem verwaltet, das die Liste der verfügbaren und belegten Partitionen im Speicherbereich verwaltet | Für jeden Prozess, der die Basisadressen jedes Blocks enthält, der von einem Prozess im Speicher abgerufen wurde, muss eine Tabelle verwaltet werden. |
Definition der zusammenhängenden Speicherzuordnung
Das Betriebssystem und die Prozesse des Benutzers müssen beide im Hauptspeicher untergebracht werden. Daher ist der Hauptspeicher in zwei Partitionen unterteilt: Auf einer Partition befindet sich das Betriebssystem und auf der anderen die Benutzerprozesse. Unter normalen Bedingungen müssen sich die verschiedenen Benutzerprozesse gleichzeitig im Speicher befinden. Daher ist es wichtig, die Zuordnung des Speichers zu den Prozessen zu berücksichtigen.
Die zusammenhängende Speicherzuordnung ist eine der Methoden der Speicherzuordnung. Wenn bei einer zusammenhängenden Speicherzuordnung ein Prozess den Speicher anfordert, wird dem Prozess ein einzelner zusammenhängender Abschnitt von Speicherblöcken entsprechend seiner Anforderung zugewiesen.
In dem Variablenpartitionierungsschema führt das Betriebssystem eine Tabelle, die angibt, welche Partition des Speichers frei ist und welche von den Prozessen belegt ist. Die zusammenhängende Speicherzuweisung beschleunigt die Ausführung eines Prozesses, indem der Overhead der Adressumsetzung reduziert wird.
Definition Nicht zusammenhängende Speicherzuordnung
Die nicht zusammenhängende Speicherzuordnung ermöglicht es einem Prozess , die verschiedenen Speicherblöcke an verschiedenen Stellen im Speicher entsprechend seiner Anforderung zu erfassen. Die nicht zusammenhängende Speicherzuordnung reduziert auch den durch interne und externe Fragmentierung verursachten Speicherplatzverlust . Bei der Verwendung der Speicherlöcher, die während der internen und externen Fragmentierung erstellt wurden.
Paging und Segmentierung sind die zwei Möglichkeiten, mit denen der physikalische Adressraum eines Prozesses nicht zusammenhängend ist. Bei der nicht zusammenhängenden Speicherzuordnung wird der Prozess in Blöcke (Seiten oder Segmente) unterteilt, die je nach Verfügbarkeit des Speichers in den verschiedenen Bereich des Speicherplatzes platziert werden.
Die nicht zusammenhängende Speicherzuordnung hat den Vorteil, dass weniger Speicherplatz benötigt wird, der Aufwand für die Adressübersetzung wird jedoch erhöht . Da sich die Teile des Prozesses an einer anderen Stelle im Speicher befinden, verlangsamt sich die Ausführung des Speichers, da bei der Adressübersetzung Zeit benötigt wird.
Hier muss das Betriebssystem die Tabelle für jeden Prozess verwalten, die die Basisadresse jedes Blocks enthält, der vom Prozess im Speicherplatz abgerufen wird.
Hauptunterschiede zwischen benachbarter und nicht zusammenhängender Speicherzuordnung
- Der grundlegende Unterschied zwischen fortlaufender und nicht zusammenhängender Speicherzuordnung besteht darin, dass die fortlaufende Zuordnung dem Prozess einen einzelnen zusammenhängenden Speicherblock zuordnet, während die nicht zusammenhängende Zuordnung den Prozess in mehrere Blöcke aufteilt und sie in den unterschiedlichen Adressraum des Speichers, dh nicht zusammenhängend, platziert .
- Bei der zusammenhängenden Speicherzuordnung wird der Prozess in einem zusammenhängenden Speicherplatz gespeichert. Es gibt also keinen zusätzlichen Aufwand für die Adressübersetzung während der Ausführung. Bei der nicht zusammenhängenden Speicherzuordnung ist jedoch ein zusätzlicher Aufwand für die Adressumsetzung während der Prozessausführung erforderlich, da die Prozessblöcke im Speicherbereich verteilt sind.
- Der in einem zusammenhängenden Speicher gespeicherte Prozess wird im Vergleich zu einem in einem nicht zusammenhängenden Speicherbereich gespeicherten Prozess schneller ausgeführt .
- Die Lösung für die zusammenhängende Speicherzuweisung besteht darin , den Speicherplatz in eine Partition fester Größe aufzuteilen und eine Partition nur einem einzelnen Prozess zuzuweisen. Andererseits wird bei der nichtkontingenten Speicherzuordnung ein Prozess in mehrere Blöcke unterteilt, und jeder Block wird an verschiedenen Stellen im Speicher angeordnet, je nach Verfügbarkeit des Speichers.
- Bei der zusammenhängenden Speicherzuordnung muss das Betriebssystem eine Tabelle führen, die angibt, welche Partition für den Prozess verfügbar ist und welche von dem Prozess belegt wird. Bei der nicht zusammenhängenden Speicherzuordnung wird für jeden Prozess eine Tabelle verwaltet , die die Basisadresse jedes Blocks des Prozesses angibt, der sich in dem Speicherbereich befindet.
Fazit:
Durch die benachbarte Speicherzuweisung entstehen keine zusätzlichen Kosten und die Ausführungsgeschwindigkeit des Prozesses wird beschleunigt, der Speicherplatz wird jedoch erhöht . Die nicht zusammenhängende Speicherzuordnung führt wiederum zu Overheads der Adressumsetzung, verringert die Ausführungsgeschwindigkeit eines Prozesses, erhöht jedoch die Speicherauslastung . Es gibt also Vor- und Nachteile beider Verteilungsmethoden.