Reklama
Dzisiaj jest 10 stycznia 2025 r.
Chcę dodać własny artykuł
Reklama
Reklama
Reklama

Tryb rzeczywisty

Tryb rzeczywisty mikroprocesorów x86

Tryb rzeczywisty to sposób pracy mikroprocesorów z rodziny x86, w którym procesor funkcjonuje jak Intel 8086, w trybie 16-bitowym, niezależnie od tego, że jest 32-bitowy. Systemy operacyjne, takie jak DOS, działały w tym trybie, który nie zapewniał ochrony pamięci ani wsparcia dla wielozadaniowości.

Reklama

Ograniczenia trybu rzeczywistego

W trybie rzeczywistym dostępna jest przestrzeń adresowa wynosząca 1 MB. Adres logiczny składa się z dwóch 16-bitowych liczb: segmentu i przemieszczenia (ang. offset). Adres fizyczny oblicza się za pomocą wzoru:

adres fizyczny = segment * 16 + przemieszczenie

Reklama

Różne adresy logiczne mogą odnosić się do tej samej komórki pamięci, co skutkuje możliwością zaadresowania 1088 kB pamięci. Jednak procesory Intel 8086, 8088, 80188 oraz 80186 mają 20-bitową szynę adresową, co ogranicza ich zdolność do adresowania pamięci do 1024 kB. Przy próbie dostępu do adresu powyżej tej wartości, odwołują się one do adresu o 1 MB niższego.

Nowoczesne procesory i pamięć wysoka

Nowocześniejsze procesory, takie jak i286 i i386, mają szersze szyny adresowe (24-, 32- lub 36-bitowe) i mogą adresować pełne 1088 kB pamięci w trybie rzeczywistym. System DOS, od wersji 4.0, zdołał wykorzystać dodatkowe 65536-16 B pamięci, znanej jako pamięć wysoka (HMA – High Memory Area).

Kompatybilność z procesorami Intel 8086

W celu zachowania zgodności z procesorami Intel 8086, w komputerach IBM/PC wprowadzono możliwość blokowania 20. linii adresowej nowszych procesorów. Umożliwia to programom działającym w trybie rzeczywistym dostęp do tej linii. Blokowanie i odblokowywanie linii 20. jest zarządzane poprzez ustawienie w BIOS-ie komputera bramki A20 (ang. A20 gate).

Reklama
Reklama