Różnica między usterką strony a twardą wadą

Różnica między usterką strony a twardą wadą

Każdej strony przypisano ramkę w pamięci głównej, a gdy wątek próbuje nawiązać do strony, której ramkę nie znajduje się w pamięci głównej, następuje usterka strony. Jeśli strona naprawdę nie jest obecna w pamięci fizycznej i należy ją odzyskać z wtórnego przechowywania, takiego jak dysk twardy, usterka występuje jako usterka twardej strony.

Co to jest usterka strony?

Wadość strony jest rodzajem wyjątku zainicjowanego przez sprzęt komputera w celu powiadomienia systemu operacyjnego odniesień do stron bezszrzeczy. Mówiąc najprościej, usterka strony ma miejsce, gdy program próbuje uzyskać dostęp do danych przebywających na stronie, która nie jest przechowywana w pamięci głównej lub pamięci fizycznej. Powiedzmy, że konkretny program ma pięć stron, z których dwie strony są ładowane do pamięci głównej do dwóch oddzielnych ramek. Tak więc, gdy CPU nazywa nową stronę, może wystąpić jedna z niewielu rzeczy. Jeśli ta strona nie zostanie znaleziona w pamięci głównej, nazywa się ją usterką strony. Tak więc, gdy procesor wymaga wykonania konkretnej strony, ale strona nie jest dostępna w pamięci głównej, pojawia się usterka strony. Strona faktycznie znajduje się w pamięci wtórnej lub pamięci wirtualnej. Cały ten mechanizm jest obsługiwany przez sprzęt do zarządzania pamięcią (MMU).

Co to jest twarda wina strony?

Jeśli żądana strona nie jest obecna w pamięci głównej i musi być pobierana lub umieszczona z pamięci wirtualnej, usterka jest klasyfikowana jako usterka strony „twardej”. Każda pozycja w tabeli strony ma bit ważności, który wskazuje, czy strona została przypisana ramce w pamięci głównej. Więc kiedy program odwołuje się do strony, której bit ważności wynosi zero, pojawia się usterka strony. OS następnie interweniuje i przypisuje odpowiednią ramkę do strony. Wpis w tabeli strony faktycznie informuje nas, że strona jest na dysku. Tak więc, gdy żądana strona nie zostanie znaleziona w pamięci głównej i zamiast tego jest zamieniona na plik strony na dysku, pojawia się usterka twardej strony. OS musi odzyskać stronę z podsystemu dysku, który powoduje znaczne oczekiwanie programu, co z kolei zmniejsza wydajność. Jeśli strona znajduje się w pamięci pamięci podręcznej, następuje miękka strona.

Różnica między usterką strony a twardą wadą

Wyjątek

- Wadość strony jest typem wyjątku, który występuje, gdy program próbuje uzyskać dostęp do strony, która znajduje się w jej przestrzeni adresowej, ale nie jest znaleziona w pamięci głównej lub pamięci fizycznej. Tak więc, gdy procesor wymaga wykonania konkretnej strony, ale strona nie jest dostępna w pamięci głównej, pojawia się usterka strony. Jeśli żądana strona nie jest obecna w pamięci głównej i musi być pobierana lub umieszczona z pamięci wirtualnej, usterka jest klasyfikowana jako usterka strony „twardej”. Mówiąc najprościej, jeśli strona musi zostać pobrana z dysku, pojawia się usterka twardej strony.

Obsługiwanie

- Jednostka zarządzania pamięcią (MMU) sygnalizuje usterkę strony do procesora, która następnie podnosi wyjątek błędu strony, który z kolei skłania system operacyjny do zlokalizowania strony w pamięci głównej. OS następnie przypisuje odpowiednią ramkę do strony. Ta akcja jest zarządzana przez moduł o nazwie „PageFault Handler.„Tabela strony jest następnie aktualizowana, a pozycja strony powinna teraz wskazywać na prawą ramkę. Program jest następnie gotowy do ponownego uruchomienia, ale tym razem bez usterki strony. Gdy nastąpi usterka twardej strony, system operacyjny znajduje bezpłatną lokalizację strony, a po dostępnej przestrzeni system operacyjny odczytuje dane strony w pamięci głównej i aktualizuje wpis w MMU.

Usterka strony vs. Tward Page Bact: Mapa porównawcza

Streszczenie

Wadę strony jest jednym z powszechnych problemów związanych z zarządzaniem pamięcią w zakresie pamięci wirtualnej lub pamięci wtórnej. Wadą strony, w przeciwieństwie do tego, co sugeruje jej nazwa, nie jest wadą; Jest to wyjątek, który występuje, gdy program próbuje uzyskać dostęp do adresu na stronie, która nie jest dostępna w pamięci głównej, w której ma się znajdować. MMU następnie sygnalizuje procesor usterki strony, a procesor następnie wynika z systemu operacyjnego do zlokalizowania strony w pamięci, podczas gdy wątek wchodzi w oczekiwanie. Tak więc system operacyjny zlokalizuje pożądaną stronę w innej części pamięci fizycznej lub w najgorszym przypadku znajduje ją na dysku, w którym to przypadku usterka nazywa. System operacyjny następnie przypisuje odpowiednią ramkę do strony i aktualizuje tabelę strony. Ten cały mechanizm jest obsługiwany przez moduł o nazwie PageFault Handler.