Tryb chroniony

Z Wikipedii, wolnej encyklopedii
Skocz do: nawigacja, szukaj

Tryb chroniony (ang. protected mode) – tryb pracy mikroprocesorów serii x86 wprowadzony w mikroprocesorze Intel 80286. Tryb chroniony umożliwia adresowanie pamięci przekraczającej wielkość 1 MB (tryb rzeczywisty), wprowadza wiele nowych udogodnień wspierających wielozadaniowość, takich jak: sprzętowa ochrona pamięci (układ MMU), wsparcie w przełączaniu kontekstu procesora i wiele innych.

Większość nowoczesnych systemów operacyjnych wykorzystuje procesory serii x86 właśnie w trybie chronionym. Zaliczają się do nich m.in.: Linux, Windows w wersji 3.0 i wyższych, systemy z rodziny BSD.

Tryb chroniony został wprowadzony do mikroprocesora Intel 80286, który jest procesorem 16-bitowym i może zaadresować do 16 MB pamięci RAM. Posiada on także tryb rzeczywisty (ang. real mode) dla zachowania zgodności z poprzednimi mikroprocesorami rodziny x86. Mikroprocesor Intel 80286 w trybie chronionym wykorzystuje mechanizm segmentacji. Istniejące 16-bitowe rejestry segmentowe CS, SS, DS, ES zawierają selektory, które jednoznacznie określają odpowiedni deskryptor segmentu (8-bajtowa struktura w pamięci) opisujący dany segment. Deskryptor dysponuje następującymi informacjami o segmencie: fizyczna lokalizacja segmentu w pamięci (24-bitowy adres bazowy, 16-bitowa długość segmentu w bajtach), prawa dostępu do segmentu, jego typ itp. W odróżnieniu od trybu chronionego, w trybie rzeczywistym rejestry segmentowe CS, SS, DS, ES zawierają adresy bazowe (początków) segmentów, które są 64 kB. Procesor rozpoczyna swoją pracę w trybie chronionym od ustawienia bitu PE (ang. Protection Enable) na jeden i wykonaniu dalekiego skoku; wyzerowanie tego bitu powoduje powrót do trybu rzeczywistego - bit PE to najmłodszy bit rejestru CR0 (ang. Control Register).

Procesory Intel 80386 i jego następcy posiadają już 32-bitowy tryb chroniony, w którym można zaadresować do 4 GB pamięci RAM. Obsługują one 32-bitowy tryb segmentacji, będący rozwinięciem tego znanego z procesora Intel 80286 o dodatkowe pola w desktyptorach segmentów (m.in. 32-bitowy adres bazowy, 20-bitowa długość segmentu w bajtach, granulacja). Najważniejszą jednak cechą nowszych procesorów jest obsługa trybu stronicowania pamięci, który jest wykorzystywane w nowych systemach operacyjnych i pozwala na całkowitą izolację procesów we własnej wirtualnej przestrzeni adresowej o rozmiarze do 4 GB (tzw. tryb chroniony z wywłaszczeniem). Ponadto istnieje możliwość użycia stronicowania pamięci w trybie z segmentacją, co zwiększa bezpieczeństwo procesów i systemu operacyjnego korzystającego z segmentacji oraz ułatwia zarządzanie samą pamięcią.

Zobacz też[edytuj | edytuj kod]