Bagikan melalui


Fungsi ExAllocateFromLookasideListEx (wdm.h)

Rutinitas ExAllocateFromLookasideListEx menghapus entri pertama dari daftar lookaside yang ditentukan, atau, jika daftar kosong, secara dinamis mengalokasikan penyimpanan untuk entri baru.

Sintaks

PVOID ExAllocateFromLookasideListEx(
  [in, out] PLOOKASIDE_LIST_EX Lookaside
);

Parameter

[in, out] Lookaside

Penunjuk ke struktur LOOKASIDE_LIST_EX yang menjelaskan daftar tampilan. Struktur ini sebelumnya diinisialisasi oleh rutinitas ExInitializeLookasideListEx .

Nilai kembali

ExAllocateFromLookasideListEx mengembalikan penunjuk ke entri lookaside-list, jika entri tersedia dalam daftar atau dapat dialokasikan secara dinamis. Jika tidak, rutinitas ini mengembalikan NULL.

Keterangan

Perhatian

Mulai dari Windows 11, versi 22H2, fungsi ini berubah dari sebaris menjadi diekspor. Akibatnya, jika Anda membangun driver yang menargetkan versi terbaru Windows, itu akan gagal dimuat dalam versi OS yang lebih lama. Untuk mengubah versi OS target di Visual Studio, pilih Konfigurasi Properti-Pengaturan> Driver-Umum>.

Rutinitas ini menghapus entri pertama, jika entri tersedia, dari daftar lookaside yang ditentukan dan mengembalikan penunjuk ke entri ini. Jika daftar kosong, rutin mengalokasikan penyimpanan untuk entri baru dan mengembalikan penunjuk ke entri ini. Jika alokasi ini gagal, rutinitas mengembalikan NULL.

Jika daftar lookaside kosong, ExAllocateFromLookasideListEx memanggil rutinitas LookasideListAllocateEx untuk mengalokasikan penyimpanan untuk entri baru, jika driver telah memberikan rutinitas seperti itu. Jika tidak, rutinitas alokasi default digunakan untuk mengalokasikan entri.

Setelah pemanggil selesai menggunakan entri, itu harus membebaskan entri dengan memanggil rutinitas ExFreeToLookasideListEx .

Dalam implementasi saat ini, daftar lookaside beroperasi sebagai tumpukan last-in, first-out (LIFO). Dengan demikian, entri terakhir yang akan dikosongkan (dan didorong ke tumpukan) adalah entri berikutnya yang akan dialokasikan (muncul) dari daftar.

Untuk informasi selengkapnya tentang daftar lookaside, lihat Menggunakan lookaside Lists.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Tersedia di Windows Vista dan versi Windows yang lebih baru.
Target Platform Desktop
Header wdm.h (termasuk Wdm.h, Ntddk.h, Ntifs.h)
Pustaka NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <= DISPATCH_LEVEL

Lihat juga

ExFreeToLookasideListEx

ExInitializeLookasideListEx

LOOKASIDE_LIST_EX

LookasideListAllocateEx