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.