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.
Driver NDIS membuat struktur NET_BUFFER_LIST kloning dari struktur NET_BUFFER_LIST yang ada. Struktur yang dikloning merujuk pada data struktur asli. Driver dapat menggunakan jenis struktur ini untuk mentransfer data yang sama secara efisien ke beberapa jalur.
Gambar berikut menunjukkan hubungan antara struktur NET_BUFFER_LIST induk dan struktur anak kloning.
Diagram sebelumnya berisi struktur induk NET_BUFFER_LIST dan struktur anak yang diturunkan dari induk tersebut. Struktur induk memiliki satu struktur NET_BUFFER_LIST_CONTEXT dan satu struktur NET_BUFFER dengan MDL terpasang. Penunjuk induk dari struktur induk NULL menunjukkan bahwa itu bukan struktur turunan.
Struktur NET_BUFFER_LIST anak memiliki satu struktur NET_BUFFER dengan MDL yang terlampir. Anak NET_BUFFER_LIST memiliki penunjuk ke struktur induk. NULL di mana penunjuk struktur NET_BUFFER_LIST_CONTEXT akan menunjukkan bahwa anak tidak memiliki struktur NET_BUFFER_LIST_CONTEXT.
Para pengemudi memanggil fungsiNdisAllocateCloneNetBufferList untuk membuat kloning struktur NET_BUFFER_LIST. NDIS mengalokasikan struktur NET_BUFFER baru dan MDL dengan struktur NET_BUFFER_LIST yang sudah dikloning. NDIS tidak mengalokasikan struktur NET_BUFFER_LIST_CONTEXT untuk struktur kloning. Struktur NET_BUFFER baru dan MDL menjelaskan data yang sama seperti dalam struktur induk. Data tidak disalin.
Para driver memanggil fungsi NdisFreeCloneNetBufferList untuk membebaskan struktur NET_BUFFER_LIST dan semua struktur NET_BUFFER serta rantai MDL terkait yang sebelumnya telah dialokasikan dengan memanggil NdisAllocateCloneNetBufferList.