Memilih model driver

Microsoft Windows menyediakan berbagai model driver yang dapat Anda gunakan untuk menulis driver. Strategi untuk memilih model driver terbaik tergantung pada jenis driver yang anda rencanakan untuk menulis. Berikut adalah opsinya:

  • Driver fungsi perangkat
  • Pengandar filter perangkat
  • Driver perangkat lunak
  • Driver filter sistem file
  • Driver sistem file

Untuk diskusi tentang perbedaan antara berbagai jenis driver, lihat Apa itu driver? dan Simpul perangkat dan tumpukan perangkat. Bagian berikut menjelaskan cara memilih model untuk setiap jenis driver.

Memilih model driver untuk driver fungsi perangkat

Saat Anda merancang perangkat keras, salah satu hal pertama yang perlu dipertimbangkan adalah apakah Anda perlu menulis driver fungsi. Ajukan pertanyaan berikut:

Dapatkah Anda menghindari menulis driver sepenuhnya? Jika Anda harus menulis driver fungsi, apa model driver terbaik untuk digunakan? Untuk menjawab pertanyaan-pertanyaan ini, tentukan di mana perangkat Anda cocok dalam daftar teknologi yang dijelaskan dalam Teknologi perangkat dan driver. Lihat dokumentasi untuk teknologi tertentu tersebut untuk menentukan apakah Anda perlu menulis driver fungsi dan untuk mempelajari tentang model driver mana yang tersedia untuk perangkat Anda.

Beberapa teknologi individu memiliki model minidriver. Dalam model minidriver, driver perangkat terdiri dari dua bagian: satu yang menangani tugas umum, dan satu yang menangani tugas khusus perangkat. Biasanya, Microsoft menulis bagian umum dan produsen perangkat menulis bagian khusus perangkat. Bagian spesifik perangkat memiliki berbagai nama, yang sebagian besar berbagi mini prefiks. Berikut adalah beberapa nama yang digunakan dalam model minidriver:

  • Tampilkan driver miniport
  • Driver miniport audio
  • Driver miniclass baterai
  • Driver protokol Bluetooth
  • Hid minidriver
  • Minidriver WIA
  • Driver miniport NDIS
  • Driver miniport penyimpanan
  • Streaming minidriver

Untuk gambaran umum model minidriver, lihat Pasangan minidriver dan driver.

Tidak setiap teknologi yang tercantum dalam teknologi Perangkat dan driver memiliki model minidriver khusus. Dokumentasi untuk teknologi tertentu mungkin menyarankan Anda untuk menggunakan Kerangka Kerja Driver Mode Kernel (KMDF); dokumentasi untuk teknologi lain mungkin menyarankan Anda untuk menggunakan Kerangka Kerja Driver Mode Pengguna (UMDF). Poin utamanya adalah Anda harus mulai dengan mempelajari dokumentasi untuk teknologi perangkat spesifik Anda. Jika teknologi perangkat Anda memiliki model minidriver, Anda harus menggunakan model minidriver. Jika tidak, ikuti saran dalam dokumentasi khusus teknologi Anda tentang apakah akan menggunakan UMDF, KMDF, atau Windows Driver Model (WDM).

Memilih model driver untuk driver filter perangkat

Sering kali beberapa driver berpartisipasi dalam satu permintaan I/O (seperti membaca data dari perangkat). Driver dilapisi dalam tumpukan, dan cara konvensional untuk memvisualisasikan tumpukan adalah dengan driver pertama di bagian atas dan driver terakhir di bagian bawah. Tumpukan memiliki satu driver fungsi dan juga dapat memiliki driver filter. Untuk diskusi tentang driver fungsi dan driver filter, lihat Apa itu driver? dan Simpul perangkat dan tumpukan perangkat.

Jika Anda bersiap menulis driver filter untuk perangkat, tentukan di mana perangkat Anda cocok dalam daftar teknologi yang dijelaskan dalam Teknologi perangkat dan driver. Periksa untuk melihat apakah dokumentasi untuk teknologi perangkat tertentu Anda memiliki panduan tentang memilih model driver filter. Jika dokumentasi untuk teknologi perangkat Anda tidak menawarkan panduan ini, pertama-tama pertimbangkan untuk menggunakan UMDF sebagai model driver Anda. Jika driver filter Anda memerlukan akses ke struktur data yang tidak tersedia melalui UMDF, pertimbangkan untuk menggunakan KMDF sebagai model driver Anda. Dalam kasus yang sangat jarang terjadi bahwa driver Anda membutuhkan akses ke struktur data yang tidak tersedia melalui KMDF, gunakan WDM sebagai model driver Anda.

Memilih model driver untuk driver perangkat lunak

Driver yang tidak terkait dengan perangkat disebut driver perangkat lunak. Untuk diskusi tentang driver perangkat lunak, lihat topik Apa itu driver? Driver perangkat lunak berguna karena dapat berjalan dalam mode kernel, yang memberi mereka akses ke data sistem operasi yang dilindungi. Untuk informasi tentang mode prosesor, lihat Mode pengguna dan mode kernel.

Untuk driver perangkat lunak, dua opsi Anda adalah KMDF dan model driver Windows NT warisan. Dengan KMDF dan model Windows NT warisan, Anda dapat menulis driver Anda tanpa khawatir tentang Plug and Play (PnP) dan manajemen daya. Anda dapat berkonsentrasi sebagai gantinya pada tugas utama driver Anda. Dengan KMDF, Anda tidak perlu khawatir dengan PnP dan daya karena kerangka kerja menangani PnP dan daya untuk Anda. Dengan model Windows NT warisan, Anda tidak perlu khawatir tentang PnP dan daya karena layanan mode kernel beroperasi di lingkungan yang sepenuhnya independen dari PnP dan manajemen daya.

Rekomendasi kami adalah Anda menggunakan KMDF, terutama jika Anda sudah terbiasa dengannya. Jika Anda ingin driver Anda sepenuhnya independen dari PnP dan manajemen daya, gunakan model Windows NT warisan. Jika Anda perlu menulis driver perangkat lunak yang mengetahui transisi daya atau peristiwa PnP, Anda tidak dapat menggunakan model Windows NT warisan; Anda harus menggunakan KMDF.

Catatan Dalam kasus yang sangat jarang terjadi bahwa Anda perlu menulis driver perangkat lunak yang mengetahui peristiwa PnP atau daya, dan driver Anda memerlukan akses ke data yang tidak tersedia melalui KMDF, Anda harus menggunakan WDM.

Memilih model driver untuk driver sistem file

Untuk bantuan dalam memilih model untuk driver sistem file, lihat Sampel driver sistem file. Perhatikan bahwa driver sistem file bisa sangat kompleks dan mungkin memerlukan pengetahuan tentang konsep lanjutan untuk pengembangan driver.

Memilih model driver untuk driver filter sistem file

Untuk bantuan dalam memilih model untuk driver filter sistem file, lihat Driver minifilter sistem file dan Driver filter sistem file.

Memilih model driver untuk driver minifilter sistem file

Untuk bantuan dalam memilih model untuk driver minifilter sistem file, lihat Driver Minifilter Sistem File.

Kerangka Kerja Driver Mode Kernel

Kerangka Kerja Driver Mode Pengguna