Kuidas Draivereid Kirjutada

Sisukord:

Kuidas Draivereid Kirjutada
Kuidas Draivereid Kirjutada

Video: Kuidas Draivereid Kirjutada

Video: Kuidas Draivereid Kirjutada
Video: Kuidas kirjutada uurivaid artikleid? 2024, Aprill
Anonim

Ühtse töö kõigi personaalarvuti seadmetega Windowsis ja ka mõned muud operatsioonisüsteemi funktsioonid pakuvad draiverite komplekt. Draiverite kirjutamiseks peate hästi tundma programmeerimist, kerneli põhimõtteid ja mitmesuguseid Windowsi alamsüsteeme.

Kuidas draivereid kirjutada
Kuidas draivereid kirjutada

Vajalik

Windowsi draiveri arenduskomplekt

Juhised

Samm 1

Laadige alla Windowsi draiveri arenduskomplekti (DDK) jaotis saidilt microsoft.com (saadaval MSDN-i tellijatele) ja installige see oma arvutisse. See pakett sisaldab kõiki draiverite arendamiseks ja ehitamiseks vajalikke tööriistu (kompilaator, linker, päisefailid, teegid), samuti põhjalikku dokumentatsiooni.

2. samm

Uurige üksikasjalikult kogu Windowsi draiverite kirjutamise kohta saadaolevat dokumentatsiooni. Kasutage DDK ja sellega seotud MSDN-i teema (msdn.microsoft.com) viideteavet. Peate täielikult mõistma Windowsi draiverimudeli (WDM) kõiki aspekte ja mõistma arhitektuuri põhimõisteid. Peate selgelt mõistma erinevusi kasutajarežiimi ja kerneli režiimi draiverite, seadme draiverite ja failisüsteemi draiverite vahel. Peate teadma erinevate draiverite klasside omadusi, nende tüüpe (siini draiverid, filtrid, funktsionaalsed draiverid) ja alamtüüpe (kuvadraiverid, modemid, võrguseadmed, paralleel- ja jadapordid, salvestusseadmed). Pöörake erilist tähelepanu korduvkasutatavate IRP-dega pakettpõhise sisend- / väljundprintsiipide, mäluhalduse, erandite käsitlemise ja sünkroonimisobjektide õige rakendamise põhimõtetele.

3. samm

Määratlege selgelt arendatava draiveri funktsionaalsus. Selle põhjal tehke kindlaks, millist tüüpi ja klassi see kuulub.

4. samm

Valige programmeerimiskeel. Traditsiooniliselt rakendatakse kerneli režiimis draivereid C. Kasutajarežiimi draiverid töötatakse tavaliselt välja C ++ keeles. Nendest reeglitest on mitu erandit. Näiteks kliendi minidraiverid heli- ja videovoogude jaoks, WDM-i helidraiverid tuumarežiimi minisadamate jaoks, WIA-draiverid ja mõnikord kuvaridraiverid on kirjutatud C ++ keeles.

5. samm

Looge draiveri tõmmet rakendav projekt. Uurige näidetega DDK kataloogi. Leidke õige draiveri demoprojekt. Kui te ei leia sobivat näidet, looge ise vajalikud lähtekoodi sisaldavad failid ja looge skriptifailid. Näiteks tuumarežiimi draiveri väljatöötamisel peate juurutama funktsiooni DriverEntry, mis sisaldab nii initsialiseerimiskoodi kui ka mõnda standardset rutiini (näiteks AddDevice, StartIo jne).

6. samm

Rakendage draiveri funktsionaalsus. Lisage kood eelmises etapis loodud funktsioonidele. Lisage loogika I / O-päringute jms käitlemiseks

Soovitan: