Fungsi MmUnlockPagableImageSection (wdm.h)

Rutinitas MmUnlockPagableImageSection merilis bagian kode driver atau data driver, yang sebelumnya dikunci ke dalam ruang sistem dengan MmLockPagableCodeSection, MmLockPagableDataSection atau MmLockPagableSectionByHandle, sehingga bagian dapat di-page out lagi.

Sintaks

void MmUnlockPagableImageSection(
  [in] PVOID ImageSectionHandle
);

Parameter

[in] ImageSectionHandle

Menentukan handel yang dikembalikan oleh panggilan ke MmLockPagableCodeSection atau MmLockPagableDataSection.

Nilai kembali

Tidak ada

Keterangan

Handel untuk bagian yang dapat di-pageable driver tidak boleh dirilis jika driver memiliki IRP yang luar biasa dalam antrean perangkat atau antrean internalnya. Panggilan ke MmUnlockPagableImageSection memulihkan pageability seluruh bagian tersebut ketika tidak ada lagi referensi ke handel untuk bagian tersebut.

Manajer memori mempertahankan jumlah referensi pada handel ke bagian . Bagian yang dapat di-pageable hanya tersedia untuk di-page out saat jumlah referensi adalah nol. Setiap permintaan kunci menaikkan jumlah; setiap permintaan buka kunci mengurangi hitungan. Driver harus membuka kunci bagian sebanyak mengunci bagian untuk membuat bagian tersedia untuk di-page out.

Handel selalu valid, apa pun hitungannya. Jika hitungan pada handel adalah nol dan panggilan dilakukan ke MmLockPagableSectionByHandle, hitungan diatur ke satu, dan jika bagian telah di-page out, itu akan di-paged in.

Dalam kebanyakan kasus, MmUnlockPagableImageSection dipanggil sebelum rutinitas Unload driver. Artinya, driver dengan bagian yang dapat dipaginasi kemungkinan memiliki DispatchClose dan/atau Panggilan rutin DispatchShutdownMmUnlockPagableImageSection sebelum rutinitas Unload-nya dipanggil. Namun, perawatan harus dilakukan dalam driver yang dapat dibongkar untuk merilis bagian yang dapat di-pageable sebelum driver itu sendiri dibongkar dari sistem.

Untuk informasi selengkapnya tentang kode halaman dan data, lihat Membuat Driver Dapat Di-Pageable.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Tersedia dimulai dengan Windows 2000.
Target Platform Universal
Header wdm.h (termasuk Wdm.h, Ntddk.h, Ntifs.h)
Pustaka NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <=APC_LEVEL
Aturan kepatuhan DDI HwStorPortProhibitedDDIs(storport), IrqlMmApcLte(wdm)

Lihat juga

MmLockPagableCodeSection

MmLockPagableDataSection

MmLockPagableSectionByHandle

MmPageEntireDriver

MmResetDriverPaging