2013-09-26 18 views
0

我讀到有關驅動程序同步的MSDN文檔和我遇到的是是這樣需要幫助理解非任意線程上下文?

聲明如果

•驅動程序在非任意線程上下文中執行駕駛者可以等待。即, 您可以識別將進入等待狀態的線程。實際上,在非任意線程上下文中執行的唯一驅動程序例程是任何驅動程序的DriverEntry,AddDevice,Reinitialize和Unload例程,以及最高級別驅動程序的調度例程。所有 這些例程被系統直接調用

現在我的問題是爲什麼在任意線程上下文中考慮調度例程?由於讀取,寫入和其他例程將在用戶空間引發請求時被調用,因此我們可以知道哪個線程在系統空間中執行了這些操作?我是我完全搞砸了,或者這可能是一個愚蠢的問題,但仍然幫助我因爲我是一個windwos新手。

回答

0

好,我發現了一個文檔:)的答案,這裏是它指出..

雖然最高級別的驅動程序接收I/O請求的情況下請求線程的 ,他們經常將這些請求轉發到其不同線程上的 較低級別的驅動程序。因此,可以使 不會假設用戶模式地址空間的內容爲 這種例程被調用的時間