Paging vs Swapping
Stronicowanie to metoda zarządzania pamięcią używana przez systemy operacyjne. Dzięki stronicowaniu pamięć główna może korzystać z danych znajdujących się na dodatkowym urządzeniu magazynującym. Dane te są przechowywane w dodatkowym urządzeniu pamięci masowej jako bloki o równej wielkości zwane stronami. Stronicowanie umożliwia systemowi operacyjnemu wykorzystanie danych, które nie zmieszczą się w pamięci głównej. Zamiana to termin używany do opisania czynności przenoszenia wszystkich segmentów należących do procesu między pamięcią główną a dodatkowym urządzeniem pamięci masowej.
Co to jest stronicowanie?
Stronicowanie to metoda zarządzania pamięcią używana przez systemy operacyjne. Dzięki stronicowaniu pamięć główna może korzystać z danych znajdujących się na dodatkowym urządzeniu magazynującym. Dane te są przechowywane w dodatkowym urządzeniu pamięci masowej jako bloki o tym samym rozmiarze zwane stronami. Paging pozwala systemowi operacyjnemu na użycie danych, które nie zmieszczą się w pamięci głównej. Kiedy program próbuje uzyskać dostęp do strony, najpierw sprawdzana jest tabela stron, aby zobaczyć, czy ta strona znajduje się w pamięci głównej. Tabela stron zawiera szczegółowe informacje o tym, gdzie są przechowywane strony. Jeśli nie ma go w pamięci głównej, nazywa się to błędem strony. System operacyjny jest odpowiedzialny za obsługę błędów stron bez pokazywania ich programowi. System operacyjny najpierw znajduje lokalizację tej konkretnej strony w pamięci dodatkowej, a następnie przenosi ją do pustej ramki strony w pamięci głównej. Następnie aktualizuje tabelę stron, aby wskazać, że nowe dane znajdują się w pamięci głównej i zwraca sterowanie z powrotem do programu, który początkowo zażądał strony.
Co to jest zamiana?
Wymiana to proces przenoszenia wszystkich segmentów należących do procesu między pamięcią główną a dodatkowym urządzeniem pamięci masowej. Zamiana następuje przy większym obciążeniu pracą. Jądro systemu operacyjnego przenosi wszystkie segmenty pamięci należące do procesu do obszaru zwanego obszarem wymiany. Wybierając proces do zamiany, system operacyjny wybierze proces, który przez pewien czas nie będzie aktywny. Gdy w pamięci głównej będzie wystarczająco dużo miejsca, aby pomieścić proces, zostanie on przeniesiony z powrotem do pamięci głównej z przestrzeni wymiany, aby można było kontynuować wykonywanie.
Jaka jest różnica między stronicowaniem a zamianą?
Podczas stronicowania bloki o równych rozmiarach (zwane stronami) są przesyłane między pamięcią główną a dodatkowym urządzeniem pamięciowym, podczas gdy podczas wymiany wszystkie segmenty należące do procesu będą przenoszone tam iz powrotem między pamięcią główną a dodatkowym urządzeniem pamięci. Ponieważ stronicowanie umożliwia przenoszenie stron (może być częścią przestrzeni adresowej procesu), jest bardziej elastyczne niż zamiana. Ponieważ stronicowanie przenosi tylko strony (w przeciwieństwie do wymiany, która przenosi cały proces), stronicowanie pozwoliłoby na przebywanie większej liczby procesów w pamięci głównej w tym samym czasie w porównaniu z systemem wymiany. Zamiana jest bardziej odpowiednia w przypadku większych obciążeń.