Tryb wirtualny (zwany także V86 lub Virtual 8086) – specjalny tryb pracy procesorów o architekturze IA-32, dostępny w trybie chronionym, który umożliwia uruchamianie programów przeznaczonych dla trybu rzeczywistego. W trybie wirtualnym symulowane jest działanie analogiczne do procesora Intel 8086 (faktycznie można uruchamiać kod także dla 8088, 80186 i 80188), tzn. otrzymuje dostęp do 1 MB pamięci operacyjnej oraz odpowiednich rejestrów procesora i może wykonywać tylko te rozkazy, które mają sens w takim otoczeniu.[1]

W odróżnieniu od natywnego trybu rzeczywistego, wszelki dostęp do portów wejścia-wyjścia (ang. I/O ports) jest sankcjonowany przez system operacyjny pracujący w trybie chronionym. Podobnie przerwania są kontrolowane i obsługiwane przez system operacyjny. Umożliwia to bezkonfliktową pracę „zwykłych” procesów systemu wraz z procesami w trybie wirtualnym – możliwe jest jednoczesne uruchomienie wielu procesów w trybie V86.

Ponieważ to na systemie operacyjnym ciąży obsługa dostępu do portów wejścia-wyjścia oraz przerwań, system musi emulować sprzęt jak i udostępniać określoną funkcjonalność 16-bitowego systemu operacyjnego. Innymi słowy system musi konwertować żądania procesu w trybie V86 (np. zapis do określonego portu) na akcje sterownika urządzenia.

Tryb V86 jest wykorzystywany głównie do uruchamiania tzw. programów DOS-owych, czyli programów napisanych do działania w trybie rzeczywistym procesorów o architekturze x86. Systemy Windows posiadają wbudowane mechanizmy umożliwiające uruchamianie takich programów (32-bitowe wersje Microsoft Windows NT posiadają komponent o nazwie NTVDM[2], w 64-bitowych wersjach ten mechanizm został usunięty), natomiast dla systemów Linux istnieją emulatory: DOSBox oraz DOSEMU.

64-bitowe systemy

Procesory 64-bitowe o architekturze x86-64 działające w trybie Long nie mają możliwości uruchomienia trybu wirtualnego 8086, ponieważ go nie posiadają tak samo jak trybu rzeczywistego, jednak nadal jest on dostępny, gdy procesor taki pracuje w trybie Legacy. Z drugiej strony w przypadku, gdy jest włączona funkcja sprzętowej wirtualizacji VT-x lub AMD-V, to procesor działający w trybie Long może uruchomić logiczny (wirtualny) procesor, który będzie mógł już działać w trybie V86.[3]

Zobacz też

Przypisy

Wikiwand in your browser!

Seamless Wikipedia browsing. On steroids.

Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.

Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.