Jednotnú prácu so všetkými zariadeniami osobného počítača v systéme Windows, ako aj s niektorými ďalšími funkciami operačného systému poskytuje sada ovládačov. Aby ste mohli písať ovládače, musíte dobre rozumieť programovaniu, princípom jadra a rôznych podsystémov Windows.
Nevyhnutné
Windows Driver Development Kit
Inštrukcie
Krok 1
Stiahnite si distribúciu Windows Driver Development Kit (DDK) z webu microsoft.com (k dispozícii pre predplatiteľov MSDN) a nainštalujte ju do svojho počítača. Tento balík obsahuje všetky potrebné nástroje na vývoj a tvorbu ovládačov (kompilátor, linker, hlavičkové súbory, knižnice) a komplexnú dokumentáciu.
Krok 2
Preštudujte si podrobne všetku dostupnú dokumentáciu k písaniu ovládačov pre Windows. Použite referenčné informácie z DDK a súvisiacej témy MSDN (msdn.microsoft.com). Musíte úplne pochopiť všetky aspekty modelu ovládača Windows (WDM) a pochopiť základné architektonické koncepty. Musíte jasne pochopiť rozdiely medzi ovládačmi režimu používateľa a režimu jadra, ovládačov zariadení a ovládačov súborového systému. Musíte poznať vlastnosti rôznych tried ovládačov, ich typov (ovládače zbernice, filtre, funkčné ovládače) a podtypov (ovládače displeja, modemy, sieťové zariadenia, paralelné a sériové porty, úložné zariadenia). Venujte osobitnú pozornosť zásadám paketovo riadených I / O s opakovane použiteľnými IRP, správe pamäte, spracovaniu výnimiek a správnemu použitiu synchronizačných objektov.
Krok 3
Jasne definujte funkčnosť vyvíjaného ovládača. Na základe toho určite, do akého typu a triedy patrí.
Krok 4
Vyberte programovací jazyk. Ovládače režimu jadra sú tradične implementované v jazyku C. Ovládače režimu používateľa sú zvyčajne vyvíjané v jazyku C ++. Existuje niekoľko výnimiek z týchto pravidiel. Napríklad klientske minidrivery pre zvukové a obrazové streamy, zvukové ovládače WDM pre miniporty v režime jadra, ovládače WIA a niekedy aj ovládače displeja sú napísané v jazyku C ++.
Krok 5
Vytvorte projekt, ktorý implementuje pahýl ovládača. Preskúmajte adresár DDK s príkladmi. Nájdite správny ukážkový projekt ovládača. Ak nenájdete vhodný príklad, vytvorte si sami súbory, ktoré obsahujú požadovaný zdrojový kód, a vytvorte súbory skriptov. Napríklad pri vývoji ovládača v režime jadra musíte implementovať funkciu DriverEntry, ktorá obsahuje inicializačný kód a niektoré štandardné rutiny (napríklad AddDevice, StartIo atď.).
Krok 6
Implementujte funkčnosť ovládača. Pridajte kód k funkciám vytvoreným v predchádzajúcom kroku. Pridajte logiku na vybavenie I / O požiadaviek atď.