Bagikan melalui


Arsitektur Driver Penyimpanan Windows

Kelas sistem operasi Windows dan driver filter untuk perangkat penyimpanan periferal bertindak sebagai antarmuka antara driver tingkat menengah atau tertinggi yang berlapis di atas driver kelas atau filter dan driver port yang disediakan sistem.

Permintaan I/O dari aplikasi pengguna atau komponen kernel mencapai driver kelas penyimpanan melalui Layanan Sistem I/O dan satu atau beberapa driver tingkat menengah atau tertinggi, seperti driver sistem file. Driver kelas penyimpanan menerjemahkan IRP standar yang mereka dapatkan ke IRP dengan blok permintaan SCSI (SRB) yang ditentukan sistem yang berisi blok deskriptor perintah SCSI (CDB) sebelum mengirim setiap IRP ke driver yang lebih rendah berikutnya. Driver port penyimpanan menerjemahkan SRB dari driver kelas ke dalam perintah khusus bus yang dikirimnya ke HBA penyimpanan, melalui sopir bus I/O dan mungkin satu atau beberapa driver filter.

Gambar berikut menunjukkan arsitektur berlapis driver penyimpanan Windows.

diagram yang mengilustrasikan arsitektur berlapis driver penyimpanan sistem operasi berbasis nt.

Mulai dari bagian bawah gambar, berikut ini menjelaskan setiap jenis driver penyimpanan:

  1. Driver port penyimpanan mendefinisikan antarmuka ke semua driver kelas penyimpanan Windows, termasuk disk yang disediakan sistem, pita, CDROM, DVD, dan driver kelas pengubah. Antarmuka port/kelas ini mengisolasi driver kelas dari persyaratan khusus adaptor adaptor bus host tempat perangkat masing-masing terhubung. Driver port penyimpanan juga menyinkronkan akses ke bus untuk semua driver perangkat pada HBA yang sesuai. Sistem ini memasok driver port penyimpanan untuk adaptor SCSI, IDE, USB, dan IEEE 1394.

    Driver port penyimpanan menerima SRB dari driver yang lebih tinggi berikutnya (driver kelas penyimpanan atau driver filter intervensi) dan memprosesnya sebagai berikut:

    • Driver port penyimpanan untuk SCSI, atau bus lain, meneruskan SRB dengan CDB ke driver miniport Storport khusus HBA yang independen sistem operasi, yang secara dinamis ditautkan ke driver port yang sesuai dan memberikan dukungan khusus perangkat keras untuk HBA tertentu. Untuk informasi tentang menerapkan driver miniport SCSI, lihat Driver Miniport Storport.
    • Driver port penyimpanan untuk IDE/ATAPI warisan atau bus IEEE 1394 menerjemahkan SRB yang diterima dari driver kelas penyimpanan ke dalam format yang diperlukan oleh adaptor dasar--misalnya, mengemas ulang CDB sesuai dengan protokol transportasi khusus bus, atau menerjemahkannya ke dalam format yang berbeda, sehingga mengisolasi driver tingkat atas dari kekhasan bus yang mendasar.
  2. Driver filter penyimpanan atas atau bawah mendukung fungsionalitas khusus perangkat yang tidak disediakan oleh driver kelas penyimpanan yang disediakan sistem. Driver penyimpanan filter yang lebih rendah memantau SRB dan/atau IRP yang dikeluarkan oleh driver kelas penyimpanan dan memodifikasinya sesuai kebutuhan sebelum meneruskannya ke driver berikutnya yang lebih rendah (driver port penyimpanan atau driver filter penyimpanan lainnya).

    Untuk informasi tentang menerapkan driver filter penyimpanan, lihat Driver Filter Penyimpanan.

  3. Driver kelas penyimpanan menggunakan antarmuka port/kelas SCSI untuk mengontrol perangkat jenisnya pada bus apa pun yang sistemnya menyediakan driver port penyimpanan. Driver kelas khusus untuk kelas perangkat tertentu--misalnya, satu driver kelas dapat menjalankan semua perangkat CD-ROM pada bus yang didukung; perangkat disk lainnya dapat mengontrol semua perangkat disk. Driver kelas penyimpanan menangani permintaan I/O dari aplikasi pengguna atau driver yang lebih tinggi di tumpukan penyimpanan dengan membangun SRB yang berisi CDB dan mengeluarkan SRB tersebut ke driver yang lebih rendah berikutnya (driver port penyimpanan atau driver filter intervensi), seolah-olah perangkat adalah perangkat SCSI.

    Implementasi driver kelas penyimpanan transparan ke driver tingkat atas. Driver kelas untuk perangkat tape atau medium changer diimplementasikan sebagai driver miniclass khusus perangkat yang terhubung ke driver kelas yang disediakan sistem. Driver kelas yang disediakan sistem untuk perangkat penyimpanan lain, seperti disk dan CD-ROM/DVD, diimplementasikan sebagai driver monolitik tunggal.

    Untuk informasi tentang menerapkan driver kelas penyimpanan, lihat Driver Kelas Penyimpanan. Untuk informasi tentang menerapkan driver miniclass tape atau changer, lihat Driver Tape dan Driver Changer.

  4. Driver penyimpanan filter atas mencegat RUN dari aplikasi pengguna dan driver yang lebih tinggi di tumpukan penyimpanan dan kemudian mungkin memodifikasinya sebelum meneruskannya ke driver berikutnya yang lebih rendah (driver kelas penyimpanan atau driver filter penyimpanan lainnya). Driver filter biasanya memantau performa perangkat yang mendasar.

Jenis bus tempat perangkat terpasang dan implementasi driver port penyimpanannya transparan ke driver tingkat atas. Driver port penyimpanan mungkin diimplementasikan sesuai dengan arsitektur driver port/miniport, seperti driver port SCSI; sebagai driver monolitik yang mengontrol satu perangkat keras standar, seperti driver port IDE/ATAPI; atau sebagai driver filter yang menerjemahkan SRB ke dalam format yang diperlukan oleh tumpukan driver yang berbeda, seperti driver port IEEE 1394.

Driver port SCSI yang disediakan sistem juga dapat bertindak sebagai antarmuka antara driver kelas penyimpanan dan driver miniport SCSI yang mengontrol perangkat penyimpanan non-SCSI dengan jenis yang sama. Misalnya, daripada menulis driver untuk pengontrol array disk baru, penulis driver dapat menyimpan upaya desain, pengembangan, dan penelusuran kesalahan yang cukup besar dengan menulis driver miniport pseudo-SCSI yang terhubung ke driver port SCSI sistem dan menggunakan antarmuka yang disediakannya. Driver miniport seperti itu diperlukan untuk menerjemahkan perintah SCSI yang masuk ke dalam perintah khusus perangkat. Di sisi lain, port dan driver kelas yang disediakan sistem menangani pekerjaan yang sangat diperlukan atas nama miniport pseudo-SCSI, termasuk akses registri selama inisialisasi, semua alokasi sumber daya dan objek, sinkronisasi, presisasi transfer yang diminta agar sesuai dengan kemampuan perangkat miniport, dan mencoba kembali permintaan.

Untuk informasi selengkapnya tentang SRB, lihat Referensi Arsitektur Driver Kernel-Mode. Untuk informasi khusus jenis perangkat tentang CDB, lihat kumpulan perintah yang sesuai dalam standar INCITS SCSI-3.