Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
A rendszer három visszahívási objektumot határoz meg az illesztőprogramok használatához:
\Callback\SetSystemTime
\Callback\PowerState
\Callback\ProcessorAdd
A rendszeridőt használó illesztőprogramok (például fájlrendszer-illesztőprogramok) regisztrálhatnak a \Callback\SetSystemTime visszahívási objektumra. Ez a visszahívás értesítést biztosít a rendszer időváltozásairól.
A \Callback\PowerState visszahívási objektum az alábbi esetekben biztosít értesítést:
A rendszer AC-ről dc-teljesítményre vált, vagy fordítva.
A rendszer energiaházirendje egy felhasználó- vagy alkalmazáskérés eredményeként változik.
A rendszer alvó vagy leállítási állapotára való áttérés küszöbön áll. Egy illesztőprogram értesítést kérhet, hogy leállítás előtt előre zárolja a kódot a memóriában. A visszahívási rutinokról a power manager a rendszer set-power IRP-jének elküldése előtt értesítést kap.
A \Callback\ProcessorAdd visszahívás értesítést küld, ha új processzort adnak hozzá a rendszerhez.
Rendszeralapú visszahívás használatához az illesztőprogram inicializál egy attribútumblokkot az InitializeObjectAttributes meghívásával a visszahívás nevével, majd megnyitja a visszahívási objektumot (ExCreateCallback), csakúgy, mint az illesztőprogram által definiált visszahívást. Az illesztőprogram nem kérheti a visszahívási objektum létrehozását.
Az ExCreateCallback által visszaadott fogóponttal a meghajtó meghívja az ExRegisterCallback funkciót, hogy regisztráljon egy értesítési rutint, átadva egy mutatót egy tetszőleges környezethez és egy mutatót a rutinjához. Egy illesztőprogram bármikor regisztrálhatja a visszahívási függvényt. A megadott feltétel bekövetkezésekor a rendszer meghívja a regisztrált visszahívási rutint az IRQL<=DISPATCH_LEVEL.
Ha az illesztőprogramnak már nincs szüksége értesítésre, hívja meg az ExUnregisterCallbacket , hogy törölje a visszahívási rutinját a regisztrált visszahívások listájából, és távolítsa el a visszahívási objektumra mutató hivatkozását.