b'\n_START_ARTICLE_\nVxD\n_START_PARAGRAPH_\nVxD - model sterownika sprz\xc4\x99tu u\xc5\xbcywany w Microsoft Windows/386, trybie chronionym Windows 3.x, Windows 9x, a tak\xc5\xbce w pewnym stopniu w niekt\xc3\xb3rych, wielozadaniowych wersjach DOS tj. Novell DOS 7, OpenDOS 7.01 czy DR-DOS 7.02 (i nowsze). Sterowniki VxD maj\xc4\x85 pe\xc5\x82ny dost\xc4\x99p do pami\xc4\x99ci j\xc4\x85dra oraz wszystkich uruchomionych proces\xc3\xb3w, a tak\xc5\xbce bezpo\xc5\x9bredni dost\xc4\x99p do sprz\xc4\x99tu.\n_START_SECTION_\nPochodzenie nazwy i kompatybilno\xc5\x9b\xc4\x87\n_START_PARAGRAPH_\nNazwa "VxD" jest skr\xc3\xb3tem od "Virtual xxx Driver", gdzie "xxx" jest typem urz\xc4\x85dzenia sprz\xc4\x99towego. Wynika ono z faktu, \xc5\xbce wi\xc4\x99kszo\xc5\x9b\xc4\x87 sterownik\xc3\xb3w w systemie Windows 3.x ma nazwy typu \xe2\x80\x9evxxxd.386\xe2\x80\x9d. Oto kilka przyk\xc5\x82ad\xc3\xb3w: vjoyd.386 (joystick), vmm.386 (mened\xc5\xbcer pami\xc4\x99ci). Sterowniki VxD w systemie Windows 3.x zazwyczaj maj\xc4\x85 rozszerzenie nazwy pliku .386, natomiast w Windows 95 .vxd. VxD napisane dla Windows 3.x mog\xc4\x85 by\xc4\x87 u\xc5\xbcywane pod Windows 95, ale nie odwrotnie.\n_START_SECTION_\nHistoria\n_START_PARAGRAPH_\nPrzed pojawieniem si\xc4\x99 systemu Windows, aplikacje DOS odwo\xc5\x82ywa\xc5\x82y si\xc4\x99 bezpo\xc5\x9brednio do r\xc3\xb3\xc5\xbcnych cz\xc4\x99\xc5\x9bci sprz\xc4\x99tu (dost\xc4\x99p do przerwa\xc5\x84, u\xc5\xbcywanie pami\xc4\x99ci itp.) lub korzysta\xc5\x82y z sterownik\xc3\xb3w DOS. Poniewa\xc5\xbc DOS nie by\xc5\x82 systemem wielozadaniowym, ka\xc5\xbcda aplikacja mia\xc5\x82a wy\xc5\x82\xc4\x85czn\xc4\x85 i pe\xc5\x82n\xc4\x85 kontrol\xc4\x99 nad sprz\xc4\x99tem podczas swego dzia\xc5\x82ania. Chocia\xc5\xbc aplikacje Windows niezbyt cz\xc4\x99sto komunikuj\xc4\x85 si\xc4\x99 bezpo\xc5\x9brednio ze sprz\xc4\x99tem, to by\xc5\x82 jedyny spos\xc3\xb3b, aby napisa\xc4\x87 sterowniki dla systemu Windows, i jest nadal wykorzystywany w rzeczywistych i standardowych trybach Windows 3.x Pomimo faktu, \xc5\xbce Windows przeszed\xc5\x82 z pracy w trybie rzeczywistym na tryb chroniony, nadal mo\xc5\xbcna bezpo\xc5\x9brednio odwo\xc5\x82ywa\xc4\x87 si\xc4\x99 do sprz\xc4\x99tu i podpi\xc4\x99\xc4\x87 przerwa\xc5\x84, poniewa\xc5\xbc, gdy system Windows przeszed\xc5\x82 na dzia\xc5\x82anie w trybie chronionym, zachowa\xc5\x82 model jednolitego poziomu uprawnie\xc5\x84, kt\xc3\xb3ry by\xc5\x82 u\xc5\xbcywany w trybie rzeczywistym. Trwa\xc5\x82o to przez ca\xc5\x82y okres trwania Windows 9x. Windows/386 i nowsze zezwala\xc5\x82y wielu aplikacjom DOS na r\xc3\xb3wnoczesne dzia\xc5\x82anie. Dokonano tego poprzez wykonanie starszych aplikacji we w\xc5\x82asnych maszynach wirtualnych. Aby udost\xc4\x99pnia\xc4\x87 dowolne zasoby fizyczne owym maszynom, Microsoft wprowadzi\xc5\x82 dynamicznie \xc5\x82adowane sterowniki urz\xc4\x85dze\xc5\x84 wirtualnych. Sterowniki te rozwi\xc4\x85za\xc5\x82y kwestie konflikt\xc3\xb3w wykorzystania zasob\xc3\xb3w fizycznych, przechwytuj\xc4\x85c wywo\xc5\x82ania sprz\xc4\x99tu. Zamiast portu maszyny reprezentuj\xc4\x85cego rzeczywiste urz\xc4\x85dzenie, stanowi\xc5\x82oby to "wirtualne" urz\xc4\x85dzenie, kt\xc3\xb3re mog\xc5\x82oby by\xc4\x87 zarz\xc4\x85dzane przez system operacyjny.\n_START_SECTION_\nWycofanie\n_START_PARAGRAPH_\nChocia\xc5\xbc system Windows 98 wprowadzi\xc5\x82 Windows Driver Model (WDM), sterowniki VxD nadal mog\xc4\x85 by\xc4\x87 u\xc5\xbcywane w systemach Windows 98 i Windows Me. VxD nie s\xc4\x85 u\xc5\xbcywane w systemie Windows NT i jego nast\xc4\x99pcach. Pocz\xc4\x85wszy od Windows 2000, systemy operacyjne z rodziny NT r\xc3\xb3wnie\xc5\xbc u\xc5\xbcywaj\xc4\x85 WDM, podczas gdy system Windows NT 4 i starsze wersje musz\xc4\x85 korzysta\xc4\x87 ze sterownik\xc3\xb3w napisanych specjalnie dla nich. Korzystanie ze sterownik\xc3\xb3w VxD zamiast WDM w Windows 9x spowodowa\xc5\x82o tym, \xc5\xbce zaawansowane funkcje ACPI (takie jak hibernacja) s\xc4\x85 niedost\xc4\x99pne._NEWLINE_VxD nie nale\xc5\xbcy myli\xc4\x87 z podobnie nazwanymi VDD (sterowniki urz\xc4\x85dze\xc5\x84 wirtualnych), typowymi dla NTVDM, kt\xc3\xb3re stanowi\xc4\x85 metod\xc4\x99 emulacji bezpo\xc5\x9bredniego I/O we wierszu polece\xc5\x84 DOS dla Windows NT. Sterowniki NTVDM uruchamiaj\xc4\x85 si\xc4\x99 jako zwyczajne 32-bitowe DLL w trybie u\xc5\xbcytkownika i musz\xc4\x85 polega\xc4\x87 na API Win32 (lub innym sterowniku WDM), aby na\xc5\x9bladowa\xc4\x87 wywo\xc5\x82ania I/O w imieniu programu 16-bitowego.'