Bagikan melalui


Ringkasan Arsitektur

Arsitektur WPD dapat dibagi menjadi tiga proses. Dalam proses ini ada tiga komponen utama WPD: API, serializer, dan driver. Ilustrasi berikut menggambarkan proses dan komponen yang merupakan arsitektur WPD.

ilustrasi yang menunjukkan komponen api, serializer, dan driver wpd

Antarmuka Pemrograman Aplikasi WPD

API WPD diimplementasikan sebagai server COM dalam proc. API menggunakan API Microsoft Win32 standar untuk berkomunikasi dengan driver WPD yang sesuai. Komponen yang disebut serializer WPD digunakan oleh objek API dan driver untuk mengemas atau membongkar parameter ke atau dari buffer Windows Driver Foundation (WDF)-User-Mode Driver Framework (UMDF).

The WPD Serializer

Serializer WPD diimplementasikan sebagai server COM dalam proc. API WPD menggunakan serializer untuk mengemas perintah dan parameter ke dalam buffer pesan yang dikirim ke driver. Driver menggunakan serializer untuk membongkar buffer pesan ini untuk diproses. Driver juga menggunakan serializer untuk mengemas data dan parameter ke dalam buffer respons yang dikembalikan ke WPD API, dan WPD API menggunakan serializer untuk membongkar buffer respons ini untuk kembali ke pemanggil.

WPD Driver

Driver WPD diimplementasikan sebagai driver Windows Driver Foundation (WDF) -User-Mode Driver Framework (UMDF) standar. Driver WPD dihosting oleh UMDF dalam proses terpisah yang disebut Driver Host.

Driver menerima pesan dari reflektor UMDF (ini tidak ditampilkan dalam diagram, karena bagaimana buffer diterima tidak penting bagi driver. Lihat dokumentasi UMDF untuk informasi selengkapnya). Driver menerapkan handler kode Kontrol I/O khusus WPD (IOCL) untuk memproses pesan WPD yang diterima oleh API WPD. Driver menggunakan serializer WPD untuk membongkar perintah dan parameter dari buffer pesan ini, dan untuk mengemas respons ke dalam buffer pengembalian.

Driver WPD dapat berkomunikasi dengan perangkat mereka dengan melalui driver mode kernel, biasanya diakses melalui operasi file Win32 (yaitu, CreateFile, ReadFile, WriteFile, dan sebagainya). Untuk bus umum, Microsoft akan menyediakan driver kernel standar untuk digunakan vendor, yang akan memungkinkan vendor untuk mengirim solusi driver khusus mode pengguna. Selain itu, untuk perangkat Media Transfer Protocol (MTP) dan Mass Storage Class (MSC), Microsoft akan menyediakan driver kelas WPD.

Untuk informasi selengkapnya tentang driver WPD, lihat dokumentasi Driver Perangkat Portabel Windows di Windows Driver Kit.

Gambaran Umum Aplikasi