Podręcznik

3. Ochrona pamięci na poziomie segmentacji i stronicowania

Na poziomie segmentacji i stronicowania realizowana jest ochrona pamięci. W przypadku segmentacji sprawdzane są: rozmiary segmentów – limity adresowania, typy segmentów, poziomy uprzywilejowania. Dla stron sprawdzane są: typy stron, poziomy uprzywilejowania. W przypadku wykrycia próby dostępu poza dozwolony segment lub stronę generowany jest błąd. Istnieje dużo różnych typów segmentów. Do segmentu kodu nie jest np. dozwolony zapis, segment stosu jest do odczytu i zapisu, segmenty danych mogą być tylko do odczytu, do odczytu i zapisu itd. Jeśli chodzi o typy stron to istnieją dwa: strona użytkownika (ang. user mode) i strona superużytkownika (ang. supervisory mode). Strona użytkownika może być tylko do odczytu lub do odczytu i zapisu. Z takiej strony można się odnieść tylko do stron tego samego typu. Strona superużytkownika jest do zapisu i odczytu i można się z niej odnieść do dowolnej strony (Tabela 2).

 

Tabela 2. Typy stron

Supervisory mode

User mode

Dostęp do wszystkich stron

Dostęp tylko do stron w trybie użytkownika

Do odczytu i zapisu

Tylko do odczytu / Do odczytu i zapisu

 

W segmentacji zdefiniowanych jest pięć poziomów uprzywilejowania w stronicowaniu dwa. Sposób odwzorowania poziomów uprzywilejowania pomiędzy segmentacją i stronicowaniem, jak również typowe użycie poziomów uprzywilejowanie jest przedstawione na rysunku 13.

 

Rys. 13. Poziomy uprzywilejowania