Co to jest błąd strony?

Błąd strony to operacja wykonywana na komputerze z pamięcią wirtualną, technika umożliwiająca części dysku twardego zwiększenie pamięci fizycznej komputera. Większość błędów stron ma miejsce, gdy program próbuje uzyskać dostęp do informacji, które zostały umieszczone w pliku pamięci wirtualnej na dysku twardym. Jest to normalna funkcja pamięci wirtualnej, a komputer zareaguje, ładując odpowiednie informacje do pamięci fizycznej. Poważniejszy rodzaj błędu strony związany z awariami i błędami komputera może wystąpić, gdy program szuka informacji w lokalizacji pamięci, która nie istnieje lub jest chroniona. Może to być spowodowane wadliwym sprzętem lub źle napisanym oprogramowaniem.

Nowoczesne systemy komputerowe dzielą pamięć na mniejsze fragmenty zwane stronami, przy czym do każdej strony uzyskuje się dostęp pod określonym adresem. Większość systemów obsługuje również koncepcję znaną jako pamięć wirtualna, w której strony można przenosić z fizycznej pamięci o dostępie swobodnym (RAM) komputera do pliku pamięci wirtualnej przechowywanej na dysku twardym komputera, a następnie w razie potrzeby z powrotem do pamięci RAM. Szczegóły tego złożonego schematu zarządzania pamięcią są ukryte przed oprogramowaniem; aplikacja nie ma możliwości sprawdzenia, czy strona pod danym adresem jest załadowana do pamięci RAM, czy też znajduje się w pamięci wirtualnej. Błąd strony występuje, gdy program próbuje odczytać lub manipulować częścią pamięci, która nie jest załadowana do pamięci RAM lub znajduje się pod nieoczekiwanym adresem.

Pomimo złowieszczej nazwy błąd strony jest zwykle normalnym i oczekiwanym działaniem i przez większość czasu użytkownik nigdy nie zauważy, że wystąpił błąd. Jest to rodzaj operacji znany jako „pułapka”, co oznacza, że ​​instrukcje programu, który wywołał błąd, są tymczasowo przechwytywane lub przechwytywane, podczas gdy komputer sprawdza dany adres pamięci. Jeśli adres jest poprawny, ale nie jest aktualnie załadowany do pamięci RAM komputera, informacje są przenoszone z pliku pamięci wirtualnej na dysku twardym do pamięci fizycznej i program wznawia normalne działanie. Jest to znane jako „wymiana” lub „stronicowanie” i jest wspólne dla prawie każdego komputera osobistego, niezależnie od systemu operacyjnego lub ilości zainstalowanej pamięci RAM. Jednak zbyt mała ilość pamięci RAM powoduje, że komputer stale tasuje strony pamięci między dyskiem twardym a pamięcią fizyczną, co obniża wydajność.

Drugi możliwy wynik błędu strony ma miejsce, gdy żądany adres pamięci okaże się nieprawidłowy lub chroniony. Ten rodzaj błędu, znany również jako błąd segmentacji, może być spowodowany wadliwymi modułami pamięci, wadliwymi dyskami twardymi lub nieprawidłowo działającym oprogramowaniem. Do programu, który wywołał błąd, wysyłany jest specjalny sygnał, co zwykle powoduje nagłe zamknięcie programu. W zależności od systemu operacyjnego, najpoważniejsze błędy stron mogą spowodować awarię systemu operacyjnego komputera, pozostawiając użytkownikom tajemniczy niebieski ekran śmierci (BSoD) lub komunikat paniki jądra.