NTVDM
NTVDM, NT Virtual DOS Machine – jeden z komponentów 32-bitowych wersji systemów operacyjnych z rodziny Windows NT, poczynając od roku 1993, służący do emulacji trybu rzeczywistego procesora, wykorzystywanego np. przez programy napisane dla systemu MS-DOS, oraz 16-bitowego trybu chronionego dostępnego od momentu pojawienia się procesora Intel 80286. NTVDM używa specjalnego trybu pracy procesora nazywanego trybem wirtualnym 8086 lub w skrócie V86, który jest dostępny w procesorach od momentu powstania architektury IA-32, czyli od pojawienia się Intela 80386.
Komponent ten pozwala na uruchamianie 16-bitowych aplikacji Windows oraz 16- i 32-bitowych programów dla systemu DOS. W przypadku tych pierwszych NTVDM emuluje zadania kernela Windows 3.1 oraz wykorzystuje 32-bitowy WoW (ang. Windows-on-Windows 32-bit) do translacji wywołań 16-bitowych funkcji API; w tym celu wykorzystywany jest program Wowexec.exe
i biblioteka Wow32.dll
[1]. Emulacja 32-bitowych aplikacji DOS-owych dotyczy DPMI (ang. DOS Protected Mode Interface), który pozwala na wykorzystanie całej dostępnej w komputerze pamięci operacyjnej, a nie tylko jej pierwszego megabajta, co jest charakterystyczne dla trybu rzeczywistego procesora. W tym przypadku Windows NT przechwytuje wywołania funkcji dotyczących obsługi pamięci typu extended oraz expanded i pozwala na ich symulację w środowisku wielozadaniowym[1].
Uruchamianie
[edytuj | edytuj kod]NTVDM jest uruchamiany, gdy:
- uruchamiana jest aplikacja w trybie rzeczywistym, a NTVDM nie jest uruchomiony
- uruchamiana jest aplikacja w trybie rzeczywistym, a chociaż NTVDM jest uruchomiony, to nie można z niego w danej chwili skorzystać.
Dostępność
[edytuj | edytuj kod]NTVDM obecny jest tylko w 32-bitowych wersjach systemów z rodziny Windows NT. 64-bitowe wersje systemów operacyjnych Windows XP, Windows Server 2003, Windows Vista i Windows Server 2008 i następnych pozbawione są tego komponentu, nie pozwalają więc na uruchamianie aplikacji DOS-owych w trybie rzeczywistym ani w 16-bitowym trybie chronionym.
Zobacz też
[edytuj | edytuj kod]Przypisy
[edytuj | edytuj kod]- ↑ a b Chapter 27 – Windows Compatibility and Migration. [w:] Windows NT 4.0 Resource Kit [on-line]. [dostęp 2019-01-09].
Linki zewnętrzne
[edytuj | edytuj kod]- Diagram przedstawiający podsystem 16-bitowego Windowsa w VDM
- NTVDM z systemu ReactOS, samodzielny wariant NTVDM uruchamiający tekstowe programy MS-DOS w 64-bitowych systemach Windows w trybie okienkowym poprzez składnię: ntvdm.exe program.exe, analogicznie jak komenda start w Windows.