Panduan Desain Arsitektur Driver Mode Kernel
Catatan
Untuk informasi tentang antarmuka pemrograman yang dapat diterapkan atau dipanggil driver Anda, lihat Referensi Driver Mode Kernel.
Bagian ini mencakup konsep umum untuk membantu Anda memahami pemrograman mode kernel dan menjelaskan teknik pemrograman kernel tertentu. Untuk gambaran umum Driver Windows, lihat Mulai mengembangkan driver Windows, yang menyediakan gambaran umum komponen Windows, mencantumkan jenis driver perangkat yang digunakan di Windows, membahas tujuan driver perangkat Windows, dan membahas driver perangkat sampel generik yang disertakan dalam kit.
Bagian ini berisi informasi konseptual yang menjelaskan dan membantu Anda membangun driver mode kernel.
Gambaran Umum yang berisi:
- Gambaran umum Komponen Windows
- Tujuan Desain untuk Driver Mode Kernel
- Katalog Contoh Driver Mode Kernel
- Praktik Terbaik Pengembangan Driver Kernel, seperti yang dikompilasi oleh tim Microsoft Surface
Komponen Mode Kernel menjelaskan manajer mode kernel utama dan komponen sistem operasi Windows.
Komponen Deskripsi Manajer Windows Kernel-Mode Object Manager Mengelola objek: file, perangkat, mekanisme sinkronisasi, kunci registri, dan sebagainya. Windows Kernel-Mode Memory Manager Mengelola memori fisik untuk sistem operasi. Windows Kernel-Mode Process and Thread Manager Menangani eksekusi semua utas dalam proses. Windows Kernel-Mode I/O Manager Mengelola komunikasi antara aplikasi dan antarmuka yang disediakan oleh driver perangkat. Windows Kernel-Mode Plug and Play Manager Subsistem manajer I/O, Manajer Plug and Play (PnP) memungkinkan PC mengenali saat perangkat ditambahkan ke sistem. Power Manager Mode Kernel Windows Mengelola perubahan status daya secara teratur untuk semua perangkat yang mendukung perubahan status daya. Windows Kernel-Mode Configuration Manager Mengelola registri, seperti memantau perubahan dalam registri atau mendaftarkan panggilan balik pada data registri tertentu. Windows Kernel-Mode Kernel Transaction Manager Menerapkan pemrosesan transaksi dalam mode kernel. Monitor Referensi Keamanan Mode Kernel Windows Menyediakan rutinitas bagi driver Anda untuk bekerja dengan kontrol akses. Perpustakaan Pustaka Kernel Mode Kernel Windows Menerapkan fungsionalitas inti yang bergantung pada semua hal lain dalam sistem operasi. Kernel Microsoft Windows menyediakan operasi tingkat rendah dasar seperti menjadwalkan utas atau gangguan perangkat keras perutean. Pustaka Dukungan Eksekutif Mode Kernel Windows Mengacu pada komponen mode kernel yang menyediakan berbagai layanan untuk driver perangkat, termasuk: manajemen objek, manajemen memori, manajemen proses dan utas, manajemen input/output, dan manajemen konfigurasi. Pustaka Run-Time Mode Kernel Windows Serangkaian rutinitas utilitas umum yang diperlukan oleh berbagai komponen mode kernel. Pustaka String Aman Mode Kernel Windows Pustaka string yang aman untuk memberikan keamanan yang lebih besar dalam pengembangan mode kernel. Pustaka DMA Mode Kernel Windows Pustaka akses memori langsung (DMA) untuk pengembang driver perangkat. Pustaka HAL Mode Kernel Windows Lapisan abstraksi perangkat keras (HAL) untuk pengembangan driver mode kernel. Pustaka CLFS Mode Kernel Windows Sistem pengelogan transaksional, Common Log File System (CLFS). Pustaka WMI Mode Kernel Windows Mekanisme umum untuk mengelola komponen, yang disebut Windows Management Instrumentation (WMI). Menulis Driver WDM dan Pengenalan WDM memberikan informasi yang diperlukan untuk menulis driver menggunakan Windows Driver Model (WDM).
Objek Perangkat dan topik lain dalam Objek Perangkat dan Tumpukan Perangkat menjelaskan bagaimana sistem operasi mewakili perangkat berdasarkan objek perangkat.
Manajemen Memori untuk Driver Windows menggambarkan bagaimana driver mode kernel mengalokasikan memori untuk tujuan seperti menyimpan data internal, data buffering selama operasi I/O, dan berbagi memori dengan komponen mode kernel dan mode pengguna lainnya.
Keamanan Dari Mengontrol Akses dan Hak Istimewa Perangkat ke SDDL untuk objek Perangkat, pastikan bahwa driver Anda seaman mungkin.
IRP penanganan menjelaskan cara driver mode kernel menangani paket permintaan I/O (IRP).
DMA Direct Memory Access (DMA) adalah aspek penting dari pengembangan driver, dan topik dalam simpul ini mencakup DMA dari A hingga Z.
Objek Pengontrol mewakili pengontrol perangkat fisik dengan perangkat yang terpasang.
Interupsi Service Routines (ISR) menangani gangguan untuk driver perangkat fisik yang menerima gangguan.
Interupsi Yang Diberi Sinyal Pesan memicu gangguan dengan menulis nilai ke alamat memori tertentu.
Panggilan Prosedur Yang Ditangguhkan (Objek DPC) dapat diantrekan dari ISR dan dijalankan di lain waktu dan pada IRQL yang lebih rendah daripada ISR.
Plug and Play (PnP) berfokus pada dukungan perangkat lunak sistem untuk PnP dan bagaimana driver menggunakan dukungan tersebut untuk mengimplementasikan PnP.
Power Management menjelaskan arsitektur yang menyediakan pendekatan komprehensif untuk sistem dan manajemen daya perangkat.
Windows Management Instrumentation (WMI) adalah ekstensi untuk driver mode kernel Anda, yang memungkinkan driver Anda untuk menjadi penyedia WMI. Penyedia WMI membuat data pengukuran dan instrumentasi tersedia untuk konsumen WMI, seperti aplikasi mode pengguna.
Driver Programming Techniques Programming driver dalam mode kernel Windows membutuhkan teknik yang terkadang berbeda secara signifikan dari pemrograman mode pengguna biasa.