Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Sebagian besar permintaan yang dikirim ke driver perangkat dikemas dalam paket permintaan I/O (IRPs). Setiap perangkat diwakili oleh simpul perangkat, dan setiap simpul perangkat memiliki tumpukan perangkat. Untuk informasi selengkapnya, lihat node perangkat dan stack perangkat. Untuk mengirimkan permintaan baca, tulis, atau kontrol ke perangkat, manajer I/O menemukan node perangkat untuk perangkat tersebut kemudian mengirim IRP ke stack perangkat node tersebut. Terkadang lebih dari satu tumpukan perangkat terlibat dalam pemrosesan permintaan I/O. Terlepas dari berapa banyak tumpukan perangkat yang terlibat, urutan keseluruhan driver yang berpartisipasi dalam permintaan I/O disebut tumpukan driver untuk permintaan. Kami juga menggunakan istilah driver stack untuk merujuk ke set driver berlapis untuk teknologi tertentu.
Permintaan I/O yang diproses oleh beberapa tumpukan perangkat
Dalam beberapa kasus, lebih dari satu tumpukan perangkat terlibat dalam pemrosesan IRP. Diagram berikut mengilustrasikan kasus di mana empat tumpukan perangkat terlibat dalam pemrosesan satu IRP.
Berikut adalah bagaimana IRP diproses pada setiap tahap bernomor dalam diagram:
IRP dibuat oleh Disk.sys, yang merupakan driver fungsi dalam struktur perangkat untuk node USB Storage Device saya. Disk.sys meneruskan IRP ke stack perangkat Usbstor.sys.
Perhatikan bahwa Usbstor.sys adalah driver PDO untuk node Perangkat Penyimpanan USB Saya dan driver FDO untuk node Usb Mass Storage Device. Pada titik ini, tidak penting untuk memutuskan apakah IRP dimiliki oleh pasangan (PDO, Usbstor.sys) atau pasangan (FDO, Usbstor.sys). IRP dimiliki oleh pengemudi, Usbstor.sys, dan pengemudi memiliki akses ke PDO dan FDO.
Ketika Usbstor.sys telah selesai memproses IRP, Usbstor.sys akan meneruskan IRP ke Usbhub.sys. Usbhub.sys adalah driver PDO untuk node USB Mass Storage Device dan driver FDO untuk node USB Root Hub. Tidak penting untuk memutuskan apakah IRP dimiliki oleh pasangan (PDO, Usbhub.sys) atau pasangan (FDO, Usbhub.sys). IRP dimiliki oleh pengemudi, Usbhub.sys, dan pengemudi memiliki akses ke PDO dan FDO.
Ketika Usbhub.sys telah selesai memproses IRP, ia meneruskan IRP ke pasangan (Usbuhci.sys, Usbport.sys).
Usbuhci.sys adalah driver miniport, dan Usbport.sys adalah driver port. Pasangan (miniport, port) memainkan peran driver tunggal. Dalam hal ini, driver miniport dan driver port ditulis oleh Microsoft. Pasangan (Usbuhci.sys, Usbport.sys) adalah driver PDO untuk node USB Root Hub, dan pasangan (Usbuhci.sys, Usbport.sys) juga merupakan driver FDO untuk simpul Pengontrol Host USB. Pasangan (Usbuhci.sys, Usbport.sys) melakukan komunikasi aktual dengan perangkat keras pengontrol host, yang pada gilirannya berkomunikasi dengan perangkat penyimpanan USB fisik.
Lapisan driver untuk permintaan I/O
Pertimbangkan urutan empat driver yang berpartisipasi dalam permintaan I/O yang diilustrasikan dalam diagram sebelumnya. Kita bisa mendapatkan tampilan lain dari urutan dengan berfokus pada driver daripada pada simpul perangkat dan tumpukan perangkat individual mereka. Diagram berikut menunjukkan driver secara berurutan dari atas ke bawah. Perhatikan bahwa Disk.sys dikaitkan dengan satu objek perangkat, tetapi masing-masing dari tiga driver lainnya dikaitkan dengan dua objek perangkat.
Urutan driver yang berpartisipasi dalam permintaan I/O disebut tumpukan driver untuk permintaan I/O. Untuk mengilustrasikan susunan driver untuk permintaan I/O, kami menyusun driver dari atas ke bawah sesuai urutan partisipasi mereka dalam permintaan.
Perhatikan bahwa tumpukan driver untuk permintaan I/O cukup berbeda dari tumpukan perangkat untuk simpul perangkat. Perhatikan juga bahwa tumpukan driver untuk permintaan I/O tidak selalu tetap berada di satu cabang pohon perangkat.
Tumpukan penggerak teknologi
Pertimbangkan tumpukan driver untuk permintaan I/O yang ditunjukkan dalam diagram sebelumnya. Jika kita memberi masing-masing driver nama yang ramah dan membuat beberapa sedikit perubahan pada diagram, kita memiliki diagram blok yang mirip dengan banyak dari mereka yang muncul dalam dokumentasi Windows Driver Kit (WDK).
Dalam diagram, tumpukan driver dibagi menjadi tiga bagian. Kita dapat menganggap setiap bagian sebagai milik teknologi tertentu atau komponen atau bagian tertentu dari sistem operasi. Misalnya, kita mungkin mengatakan bahwa bagian pertama di bagian atas tumpukan driver milik Volume Manager, bagian kedua milik komponen penyimpanan sistem operasi, dan bagian ketiga milik bagian USB inti dari sistem operasi.
Pertimbangkan penggerak berikut ini di bagian ketiga. Driver ini adalah subset dari serangkaian driver USB inti yang lebih besar yang disediakan Microsoft untuk menangani berbagai jenis permintaan USB dan perangkat keras USB. Diagram berikut menunjukkan seperti apa seluruh diagram blok inti USB.
diagram 
Diagram blok yang menunjukkan semua driver untuk teknologi tertentu atau komponen atau bagian tertentu dari sistem operasi disebut tumpukan driver teknologi . Biasanya, tumpukan driver teknologi diberi nama seperti USB Core Driver Stack, Storage Stack, Stack Driver 1394, dan Audio Driver Stack.
Note: Diagram blok inti USB dalam artikel ini menunjukkan salah satu dari beberapa cara yang mungkin untuk mengilustrasikan tumpukan driver teknologi untuk USB 1.0 dan 2.0. Untuk diagram resmi stak driver USB 1.0, 2.0, dan 3.0, lihatlah Arsitektur Stak Driver USB.
Artikel terkait
Simpul perangkat dan tumpukan perangkat