Bagikan melalui


Menggunakan Pengidentifikasi Aktivitas

Dalam kerangka kerja versi 1.11 dan yang lebih baru, driver UMDF dapat mengatur dan mengambil pengidentifikasi aktivitas (ID). ID Aktivitas memungkinkan Anda mengaitkan beberapa permintaan I/O, sehingga Anda dapat melacaknya menggunakan pelacakan Pelacakan Peristiwa untuk Windows (ETW). Topik ini menjelaskan beberapa kemungkinan skenario di mana driver mungkin menggunakan ID aktivitas.

Mengaitkan Permintaan Baru dengan Permintaan yang Ada

Dalam fungsi panggilan balik pengiriman I/O driver Anda, Anda dapat membuat beberapa permintaan I/O kerangka kerja sebagai akibat dari permintaan masuk. Driver mendapatkan ID aktivitas dari permintaan asli dan mengaturnya dalam permintaan baru dengan memanggil WdfRequestRetrieveActivityId dan WdfRequestSetActivityId.

Untuk contoh kode, lihat WdfRequestRetrieveActivityId.

Mengaitkan Permintaan Baru dengan Utas yang Ada

Driver mungkin membuat permintaan I/O baru di utas selain utas pengiriman I/O, atau dalam item kerja. Anda dapat mengatur ID aktivitas untuk permintaan tersebut dari permintaan yang sesuai, atau dengan menggunakan ID aktivitas yang terkait dengan utas pengiriman I/O. Driver dapat mengambil ID aktivitas yang terkait dengan utas saat ini dengan memanggil EventActivityIdControl lalu memanggil WdfRequestSetActivityId untuk mengatur pengidentifikasi untuk setiap permintaan I/O baru.

Jika driver memanggil API Win32 untuk mengirim permintaan I/O, driver dapat mengambil ID aktivitas dari permintaan asli dan menyebarkannya ke utas. Manajer I/O kemudian menerapkan ID aktivitas yang terkait dengan utas ke paket permintaan I/O (IRP) apa pun yang dihasilkannya sebagai respons terhadap permintaan.