Co to jest tryb rzeczywisty?

Tryb rzeczywisty to schemat adresowania pamięci i stan działania mikroprocesorów komputerowych. W trybie rzeczywistym pamięć, do której program może uzyskać dostęp - zazwyczaj pamięć o dostępie swobodnym (RAM) - nie jest w żaden sposób zarządzana ani buforowana przez sprzęt, oprogramowanie ani podstawowe usługi wejścia i wyjścia (BIOS). Oznacza to, że program może uzyskać dostęp do wszystkich dostępnych adresów pamięci, niezależnie od tego, do czego pamięć jest używana, i musi samodzielnie zarządzać wszystkimi aspektami odczytu i zapisu w lokalizacjach pamięci. Korzystanie z trybu rzeczywistego wiąże się z kilkoma ograniczeniami, w tym z faktem, że ilość dostępnej pamięci jest ograniczona do 1 megabajta, ponieważ procesor w tym trybie pozwala na adresy o długości tylko 20 bitów. Z praktycznego punktu widzenia oprogramowanie komputerowe nie korzysta już z trybu rzeczywistego, ponieważ zostało zastąpione bezpieczniejszym, rozszerzalnym, bardziej elastycznym trybem adresowania znanym jako tryb chroniony.

Centralna jednostka przetwarzająca (CPU) komputera to miejsce, w którym można aktywować tryb rzeczywisty, a większość aspektów tego trybu faktycznie rozwiązuje problemy zwykle występujące w aplikacjach napisanych w języku asemblera, ponieważ mają one dość atomowy charakter. Układy procesorowe oparte na oryginalnej architekturze 8086 rozpoczynają się w trybie rzeczywistym po włączeniu, aby można było uruchamiać programy napisane dla wcześniejszego sprzętu, choć często wymagałoby to oprogramowania do emulacji. Tryb chroniony prawie całkowicie zastąpił rzeczywiste adresowanie, począwszy od 2011 r., Do tego stopnia, że ​​dostępnych jest bardzo niewiele kompilatorów, które potrafią nawet skompilować program, który może korzystać z prawdziwego adresowania i jeszcze mniej systemów operacyjnych, które mogłyby go uruchomić.

Pamięć w trybie rzeczywistym to w zasadzie pojedyncza, liniowa sekwencja bajtów, do której można uzyskać swobodny dostęp dzięki adresowi złożonemu z 16-bitowego adresu segmentu i 4-bitowego przesunięcia w segmencie, tworząc pełny 20-bitowy adres po połączeniu. Program może uzyskać dostęp do dowolnego punktu w pamięci i odczytywać lub zapisywać cokolwiek, niezależnie od tego, co znajduje się w danej lokalizacji. Oznacza to, że bez odpowiedniego zarządzania i wiedzy program korzystający z trybu rzeczywistego adresowania może łatwo zastąpić system operacyjny i system BIOS, wyzwolić fizyczne przerwanie sprzętowe lub przypadkowo wysłać sygnał do urządzenia peryferyjnego. Może to nie tylko spowodować zawieszenie się systemu lub awarię, ale może również spowodować utratę danych lub fizyczne uszkodzenie sprzętu.

W miarę rozwoju architektury procesorów tryb chroniony ostatecznie zastąpił tryb rzeczywisty w prawie wszystkich programach. Z czasem korzystanie z trybu rzeczywistego adresowania stało się niepotrzebne, ponieważ nie był on w stanie uzyskać dostępu do więcej niż 1 megabajta pamięci RAM i nie był w stanie użyć więcej niż 20 bitów magistrali systemowej, co oznacza, że ​​mógł zużywać tylko ułamek zasobów dostępnych na większości komputery. Rzeczywiste adresowanie stwarza również poważne zagrożenie bezpieczeństwa. Jednym z niewielu sposobów na napisanie programu korzystającego z trybu rzeczywistego adresowania jest użycie języka asemblera i uruchomienie programu w specjalnym systemie operacyjnym dysku (DOS), który nie uruchamia się automatycznie w trybie chronionym podczas uruchamiania.

INNE JĘZYKI

Czy ten artykuł był pomocny? Dzięki za opinie Dzięki za opinie

Jak możemy pomóc? Jak możemy pomóc?