struktur NET_DMA_CHANNEL_PARAMETERS (netdma.h)
Sintaks
typedef struct _NET_DMA_CHANNEL_PARAMETERS {
USHORT Revision;
USHORT Size;
ULONG Flags;
PVOID CompletionVirtualAddress;
PHYSICAL_ADDRESS CompletionPhysicalAddress;
ULONG ProcessorAffinityMask;
ULONG ChannelPriority;
ULONG CpuNumber;
GROUP_AFFINITY ProcessorAffinityMaskEx;
} NET_DMA_CHANNEL_PARAMETERS, *PNET_DMA_CHANNEL_PARAMETERS;
Anggota
Revision
Nomor revisi struktur ini.
Untuk Windows 7 dan Windows Server 2008 R2 dan yang lebih baru, atur anggota ini ke NET_DMA_CHANNEL_PARAMETERS_REVISION_2.
Untuk Windows Vista dan Windows Server 2008, atur anggota ini ke NET_DMA_CHANNEL_PARAMETERS_REVISION_1.
Size
Ukuran, dalam byte, dari struktur ini. Atur anggota ini ke sizeof(NET_DMA_CHANNEL_PARAMETERS).
Flags
Sekumpulan bit untuk bendera yang menentukan atribut saluran DMA. Atur anggota ini ke nol. Saat ini tidak ada bendera yang ditentukan.
CompletionVirtualAddress
Alamat virtual lokasi memori tempat mesin DMA dapat menulis status penyelesaian transfer DMA. Alamat virtual ini dikaitkan dengan alamat fisik yang ditentukan dalam
Anggota CompletionPhysicalAddress .
CompletionPhysicalAddress
Alamat fisik lokasi memori tempat mesin DMA dapat menulis status penyelesaian transfer DMA. Jika bendera NET_DMA_STATUS_UPDATE_ON_COMPLETION tidak diatur dalam anggota ControlFlags dari struktur NET_DMA_DESCRIPTOR , CompletionPhysicalAddress tidak digunakan. Jika tidak, nilai status penyelesaian pada alamat yang ditentukan adalah kombinasi lebar 64-bit dari alamat fisik deskriptor DMA terbaru yang diproses mesin DMA dan informasi status tambahan.
Alamat fisik deskriptor DMA harus diselaraskan dengan batas 64-bit. Oleh karena itu, enam bit alamat yang lebih rendah tersedia untuk informasi lain. Mesin DMA menggabungkan nilai status berikut dengan alamat deskriptor dengan menggunakan operasi OR bitwise:
Nilai | Makna |
---|---|
|
Transfer DMA untuk deskriptor DMA terbaru selesai tanpa kesalahan, dan mesin DMA memiliki lebih banyak deskriptor untuk diproses. |
|
Transfer DMA untuk deskriptor DMA terakhir dalam daftar deskriptor yang ditautkan selesai tanpa kesalahan. |
|
Transfer DMA untuk deskriptor DMA terbaru selesai tanpa kesalahan, dan transfer DMA ditangguhkan karena antarmuka NetDMA yang disebut fungsi ProviderSuspendDma . Mesin DMA akan memulai ulang transfer setelah antarmuka NetDMA memanggil fungsi ProviderResumeDma . |
|
Transfer DMA untuk transfer DMA terbaru dibatalkan karena kesalahan atau karena antarmuka NetDMA yang disebut fungsi ProviderAbortDma . |
|
Transfer DMA untuk deskriptor pertama belum selesai dan alamat deskriptor yang telah selesai tidak valid. |
ProcessorAffinityMask
Bitmap yang menunjukkan CPU yang tersedia untuk digunakan dengan saluran DMA ini. Setiap bit di ProcessorAffinityMask mengidentifikasi CPU. Misalnya, pengaturan bit 0 menunjukkan CPU 0 dapat digunakan, pengaturan bit 1 menunjukkan CPU 1 dapat digunakan, dan sebagainya.
ChannelPriority
Nilai prioritas saluran DMA yang mewakili prioritas untuk saluran DMA relatif terhadap saluran DMA lain pada mesin DMA yang sama. Pengaturan prioritas yang lebih rendah menunjukkan saluran DMA prioritas yang lebih rendah. Jika nilai ini menunjukkan prioritas yang lebih tinggi daripada yang didukung perangkat keras, nilai tertinggi yang didukung perangkat keras harus digunakan. Antarmuka Windows Vista NetDMA mengatur anggota ini ke nol.
CpuNumber
Nomor CPU yang terkait dengan saluran DMA. Driver penyedia DMA menetapkan nilai sebelum dikembalikan dari
Fungsi ProviderAllocateDmaChannel . Mesin DMA menggunakan CPU ini untuk mengganggu DPC yang terkait dengan saluran DMA. Jika mesin DMA dan konfigurasi komputer mendukung MSI-X, gangguan juga harus dikaitkan dengan nomor CPU yang ditunjukkan, kecuali tidak ada gangguan MSI-X yang tersedia untuk CPU yang ditunjukkan.
ProcessorAffinityMaskEx
Nomor grup dan bitmap CPU yang dapat dikaitkan dengan saluran DMA ini.
Keterangan
Sebelum menggunakan saluran DMA, antarmuka NetDMA memanggil
Fungsi ProviderAllocateDmaChannel dari driver penyedia DMA untuk mengalokasikan dan menginisialisasi saluran DMA.
Antarmuka NetDMA menyediakan struktur NET_DMA_CHANNEL_PARAMETERS di parameter ChannelParametersproviderAllocateDmaChannel.
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung | Windows Vista |
Server minimum yang didukung | Windows Server 2008 |
Header | netdma.h (termasuk Netdma.h) |
Lihat juga
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk