Tamamen istekte bulunan CPU'ya CompleteRequest'in tamamlanmasından emin olmaya çalışıyorum. FdoDeviceControl sırasında isteği gönderen CPU'yu veya gönderim kuyruğuna girmeden önce isteğin nereden geldiğini görmek için başka bir yolu almanın bir yolu var mı?Bir WDFREQUEST oluşturan CPU'yu almak mümkün mü?
cevap
DPC yordamına girdikten sonra, isteğin nereden kaynaklandığını söylemek için çok geç. Bir DPC sırasına isteği sıraya almadan önce KeGetCurrentProcessorNumberEx() yöntemini çağırmanız gerekir. Talebin bir IRP olduğunu mu sanıyorum?
David, IRP'nin bir WDFREQUEST yapısına sarılması için isteği işlemek için KMDF kullanıyorum. Ben istek görüyorum noktada, o zaten bir I/O kuyruğu –
geçti O KMDF kullanıyorsanız, o zaman WdfDeviceInitSetIoInCallerContextCallback() çağırmanız gerekir. Bu, I/O isteğine kmdf I/O kuyruğuna girmeden önce göz atmanıza izin verecek, I/O başlatıcısının işlem bağlamında çalışacak ve I/O başlatıcısını başlatan çekirdekte olacaksınız. O. Buradan KeGetCurrentProcessorNumberEx() öğesini arayabilir ve sonucu kaydedebilirsiniz. –
Bir cevap olarak listelenen David, teşekkürler. İlgili bir ben EvtDeviceWdmIrpPreprocess de istemci bağlamında denir guarateed duyuyorum (ben sıraları ilerleme ileri garantili kullanıyorum, bu yüzden ben her zaman o do SetIoInCallerContextCallback doesnt benziyor aramayı almak emin olmak gerekir) var –
- 1. AngularJS'de sertifika almak mümkün mü?
- 2. farklı sonuçlar almak mümkün mü?
- 3. clojure.test'in çıktısını almak mümkün mü?
- 4. RSS arşivini almak mümkün mü
- 5. WebEngineView'de tıklanan linkin URL'si almak mümkün mü?
- 6. Android'de video çözünürlüğünü almak mümkün mü?
- 7. Mesajları Android emülatörüne almak mümkün mü?
- 8. JSON üzerinden e-posta almak mümkün mü?
- 9. Tkinter'da widget ayarları almak mümkün mü?
- 10. Android'de Skype hesabımdan kişileri almak mümkün mü?
- 11. Haskell Tür Tip Oluşturucu almak mümkün mü?
- 12. "Her şeyi" javax.naming.InitialContext adresinden almak mümkün mü?
- 13. Vim'de komutları sıraya almak mümkün mü?
- 14. Hata veren satır numarasını almak mümkün mü?
- 15. Ham param dizisini raylara almak mümkün mü?
- 16. SonarQube'de OpenCover/sonucu almak mümkün mü?
- 17. DateInterval nesnesinden "interval_spec" dizesini almak mümkün mü?
- 18. Yönlendirme yöntemini VB.NET'te almak mümkün mü?
- 19. Bir numaralayıcıyı ilerletmek ve değerini bir lambda almak mümkün mü?
- 20. jQuery'de bir öğeye bağlı olayların bir listesini almak mümkün mü?
- 21. Uzak bir resmin bir bölümünü javascript içine almak mümkün mü?
- 22. Bir veritabanına bağlantı olmadan bir MetadataWorkspace almak mümkün mü?
- 23. VBScript'te bir .Net string nesnesi örneği almak mümkün mü?
- 24. Javascript kullanarak bir dosyanın son değiştirilme tarihini almak mümkün mü?
- 25. RabbitMQ, FIFO'yu korurken bir kanaldan 1 mesaj almak mümkün mü?
- 26. Bir WPF Popup kontrolünün Hwnd'ini almak mümkün mü?
- 27. objectId'yi bilmeden parse.com'dan bir kayıt almak mümkün mü
- 28. Python'da bir anahtar kelime listesi almak mümkün mü?
- 29. Tek bir sonucu toplu olarak almak mümkün mü?
- 30. Epilogu kullanarak, bir kaynağı ilişkilendirmeden geri almak mümkün mü?
Bu sevk işleminden sonra CPU'nun alınması, elbette ki yeterince basittir. Ama geri arama işlevinin, sorunlar ile aynı özde çalıştığını garanti ediyorum? –