Kako Napisati Gonilnike

Kazalo:

Kako Napisati Gonilnike
Kako Napisati Gonilnike

Video: Kako Napisati Gonilnike

Video: Kako Napisati Gonilnike
Video: 15 горячих клавиш, о которых вы не догадываетесь 2024, April
Anonim

Enotno delo z vsemi napravami osebnega računalnika v sistemu Windows in nekaterimi drugimi funkcijami operacijskega sistema zagotavlja nabor gonilnikov. Če želite pisati gonilnike, morate dobro razumeti programiranje, načela jedra in različne podsisteme Windows.

Kako napisati gonilnike
Kako napisati gonilnike

Potrebno

Windows Driver Development Kit

Navodila

Korak 1

Prenesite distribucijo Windows Driver Development Kit (DDK) z Microsofta.com (na voljo naročnikom MSDN) in jo namestite v svoj računalnik. Ta paket vsebuje vsa potrebna orodja za razvoj in izdelavo gonilnikov (prevajalnik, povezovalnik, datoteke z zaglavji, knjižnice), pa tudi obsežno dokumentacijo.

2. korak

Podrobno preučite vso razpoložljivo dokumentacijo o pisanju gonilnikov za Windows. Uporabite referenčne informacije iz DDK in sorodne teme MSDN (msdn.microsoft.com). V celoti morate razumeti vse vidike Windows Driver Model (WDM) in razumeti osnovne arhitekturne koncepte. Jasno morate razumeti razlike med gonilniki v uporabniškem načinu in načinu jedra, gonilniki naprav in gonilniki datotečnega sistema. Poznati morate značilnosti različnih razredov gonilnikov, njihove vrste (gonilniki vodila, filtri, funkcionalni gonilniki) in podvrste (gonilniki zaslona, modemi, omrežne naprave, vzporedna in serijska vrata, naprave za shranjevanje). Še posebej bodite pozorni na načela paketno vodenega V / I z IRP-ji za večkratno uporabo, upravljanje pomnilnika, ravnanje z izjemami in pravilno uporabo sinhronizacijskih objektov.

3. korak

Jasno določite funkcionalnost gonilnika, ki se razvija. Na podlagi tega določite, kateremu tipu in razredu pripada.

4. korak

Izberite programski jezik. Tradicionalno so gonilniki v načinu jedra vgrajeni v C. Gonilniki v uporabniškem načinu so običajno razviti v jeziku C ++. Ta pravila imajo več izjem. Na primer, odjemalski minidriverji za avdio in video tokove, zvočni gonilniki WDM za miniport v načinu jedra, gonilniki WIA in včasih zaslonski gonilniki so napisani v jeziku C ++.

5. korak

Ustvarite projekt, ki izvaja škrbino gonilnikov. Raziščite imenik DDK s primeri. Poiščite pravi demo demonstracijski projekt. Če ne najdete primernega primera, ustvarite datoteke, ki vsebujejo zahtevano izvorno kodo, in zgradite datoteke skriptov. Na primer, ko razvijate gonilnik v načinu jedra, morate implementirati funkcijo DriverEntry, ki vsebuje inicializacijsko kodo in nekatere standardne rutine (na primer AddDevice, StartIo itd.).

6. korak

Implementirajte funkcionalnost gonilnika. Funkcijam, ustvarjenim v prejšnjem koraku, dodajte kodo. Dodajte logiko za obdelavo V / I zahtev itd.

Priporočena: