De informatie in dit artikel is van toepassing op:
- Microsoft Windows 98 Tweede editie
- Microsoft Windows 98 Standard Edition
- Microsoft Windows 95
- Microsoft Windows Millennium Edition
Dit artikel is eerder gepubliceerd onder NL253671
Samenvatting
In dit artikel vindt u een beschrijving van apparaatstuurprogramma's.Meer informatie
Een apparaatstuurprogramma bestaat uit code die door het besturingssysteem wordt gebruikt om schijfapparaten, beeldschermadapters, invoerapparaten (zoals een muis of trackball), modems, faxapparaten, printers en andere hardware aan te sturen.
Monolithische stuurprogramma's
In Microsoft Windows 3.1 waren de meeste apparaatstuurprogramma's monolithisch, hetgeen betekent dat het stuurprogramma alle services, gebruikersinterfaces, API-functies (Application Programming Interface) en hardwaretoegangsservices moest aanleveren die nodig waren voor de werking van het apparaat in Windows 3.1. Vanaf Windows 95 werd een universele (mini)stuurprogramma-architectuur geïmplementeerd. Deze architectuur biedt elementaire apparaatservices voor bepaalde hardwareklassen. Onafhankelijke hardwareleveranciers moeten bij deze architectuur apparaatspecifieke code (stuurprogramma's) voor hun hardware leveren.
Universele stuurprogramma's
Een universeel stuurprogramma bevat het merendeel van de code die apparaten in een bepaalde klasse (zoals de klasse printers of modems) nodig hebben om met de juiste onderdelen van het besturingssysteem te kunnen communiceren (zoals met het printer- of communicatiesubsysteem). Een ministuurprogramma is een klein en eenvoudig stuurprogramma waarin alle aanvullende instructies voor een bepaald apparaat zijn opgenomen. Het universele stuurprogramma voor een bepaalde categorie apparaten bevat echter meestal ook de code voor het laten functioneren van alle apparaten die voldoen aan de standaard van de desbetreffende categorie. Het stuurprogramma Unimodem werkt bijvoorbeeld met alle modems die AT-opdrachten ondersteunen.
Virtualisatiestuurprogramma's
Een virtualisatiestuurprogramma (VxD) is een 32-bits protected-modus stuurprogramma dat systeembronnen (zoals een hardwareapparaat of een programma) beheert, zodat meerdere programma's tegelijkertijd een bepaalde bron kunnen gebruiken. De term 'VxD' verwijst naar een algemeen virtueel apparaatstuurprogramma (virtual driver), waarbij de 'x' staat voor het type apparaatstuurprogramma. Zo worden de virtuele apparaatstuurprogramma's voor een beeldschermadapter, een timerapparaat en een afdrukapparaat respectievelijk VDD (virtual display driver), VTD (virtual timer driver) en VPD (virtual printer driver) genoemd.
Een VxD biedt dus dynamische ondersteuning voor apparaatstuurprogramma's, maar het virtuele apparaat houdt zelf zijn eigen status bij voor programma's die dit apparaat gebruiken.
Win32-stuurprogrammamodel
In Windows 98 wordt ook het Win32-stuurprogrammamodel (Win32 Driver Model, WDM) gebruikt. Dit model zorgt voor de aanlevering van een aantal gangbare in- en uitvoerservices (I/O) die door Windows 98 en door toekomstige versies van Windows NT kunnen worden geïnterpreteerd. In de WDM-architectuur hoeven softwareontwikkelaars voor deze twee besturingssystemen slechts één apparaatstuurprogramma te schrijven.
Human Interface Device-stuurprogramma's
Windows 98 ondersteunt ook de stuurprogrammaklasse Human Interface Device (HID). Dit is een standaardklasse voor invoerapparaten zoals toetsenborden, muisapparaten, joysticks en gamepads.