Cadrul de driver pentru modul utilizator

Cadru de driver pentru modul utilizator (UMDF)
Tip de Platformă de dezvoltare a driverelor de dispozitiv
Dezvoltator Microsoft
Scris in C , C++
Sistem de operare Microsoft Windows
Prima editie 12 octombrie 2004  ( 2004-10-12 )
ultima versiune 2.27 (24 martie 2019 ) ( 24.03.2019 )
Licență Licență MIT
Site-ul web docs.microsoft.com/en-us/windows-hardware/drivers/wdf/overview-of-the-umdf

Cadrul de driver în modul utilizator ( UMDF ) este un cadru de dezvoltare a driverelor în modul utilizator introdus cu Windows Vista și disponibil și pentru Windows XP . Acest lucru facilitează crearea de drivere pentru anumite clase de dispozitive. [unu]

prezentare generală

Driverele de dispozitiv standard pot fi dificil de scris, deoarece trebuie să gestioneze o gamă foarte largă de stări ale sistemului și ale dispozitivului, în special într-un mediu de programare cu mai multe fire. Driverele de dispozitiv scrise prost pot provoca o corupție gravă a sistemului (de exemplu , BSoD și coruperea datelor), deoarece toate driverele standard au privilegii mari atunci când accesează direct nucleul. Platforma de drivere în modul utilizator izolează nucleul de problemele accesului direct la driver, oferind în schimb o nouă clasă de drivere cu o interfață dedicată de programare a aplicațiilor pentru întreruperi la nivel de utilizator și gestionarea memoriei. În cazul unei erori, noua structură permite repornirea imediată a driverului fără a afecta sistemul. Acest lucru este util în special pentru dispozitivele care sunt conectate intermitent la sistem sau care pot fi schimbate la cald printr-o tehnologie de magistrală, cum ar fi USB sau FireWire .

Potrivit Microsoft, driverele UMDF sunt mai ușor de scris și de depanat decât driverele în mod kernel. [2] Cu toate acestea, UMDF nu va fi utilizat pentru dispozitive de înaltă performanță sau cu stare.

Prima versiune a UMDF a fost livrată ca parte a Windows Media Player versiunea 10 pe 12 octombrie 2004. Cu numele de cod „Crescent”, a fost conceput pentru a suporta driverul Media Transfer Protocol și nu au fost furnizate interfețe publice sau documentație pentru acesta. Ulterior, Microsoft a decis să transforme UMDF într-o platformă de dezvoltare a driverelor de dispozitiv. [3]

Istoricul versiunilor

Arhitectură

Driverul UMDF este un DLL bazat pe Component Object Model (COM) al Microsoft. Cu toate acestea, UMDF nu folosește COM pentru încărcarea, descărcarea sau controlul concurenței ; folosește COM doar ca model de design , cum ar fi utilizarea interfeței COM IUnknown . La pornire, UMDF apelează „DllGetClassObject” pentru a obține un pointer către interfața „IClassFactory” din driver și apoi utilizează metoda „CreateInstance” a interfeței IClassFactory pentru a instanția obiectul de apel invers al driverului.

Un obiect driver este o instanță a interfeței IWDFDriver furnizată de cadru. Driverul expune un set de apeluri inverse prin interfața COM IDriverEntry, care este punctul de intrare principal pentru configurarea driverului.

Vezi și

Referințe

  1. Drivere de programare pentru UMDF . Preluat la 2 ianuarie 2022. Arhivat din original la 2 ianuarie 2022.
  2. Avantajele scrierii driverelor UMDF . Preluat la 2 ianuarie 2022. Arhivat din original la 23 iulie 2015.
  3. Charles Torre, Peter Wieland. Peter Wieland: Cadru de driver pentru modul utilizator . Canalul 9 . Microsoft (18 septembrie 2006). Consultat la 18 septembrie 2006. Arhivat din original pe 17 februarie 2007.
  4. Asistență Microsoft. Actualizare versiunea 1.11 a cadrului de driver în modul utilizator pentru Windows Vista, Windows Server 2008, Windows 7 și Windows Server 2008 R2 . Microsoft. Preluat la 1 decembrie 2012. Arhivat din original la 30 noiembrie 2012.
  5. Întrebări frecvente ale cadrului de driver în modul utilizator (Drifere Windows) . Microsoft. Data accesului: 4 iunie 2014. Arhivat din original pe 22 aprilie 2014.

Link -uri