Systém Windows 2000 představil několik rozhraní, která ovladačům umožňovala dokumentovaným způsobem monitorovat některé události systému. Konkrétně se jednalo o události vzniku a zániku procesů a vláken a mapování modulu do privátního adresového prostoru procesu či načítání nového ovladače do paměti jádra. Projekt Logptm demonstruje, jak tato rozhraní použít a jak vypadá struktura složitějšího ovladače. Je třeba si přiznat, že ovladač hello.sys je až příliš triviálním příkladem.
Projekt se skládá z ovladače logptm.sys, který provádí monitorování výše zmíněných událostí, a aplikace, která jeho zjištění zobrazuje. Zdrojový kód ovladače je okomentován podrobněji než je tomu u ukázkových příkladů k dalším kapitolám.
Protože v projektu nejsou použity žádné nedokumentované triky, bude fungovat na Windows XP a novějších verzích operačního systému. Pokud byste chtěli tento projekt rozběhnout i na Windows 2000, je nutné pouze v kódu ovladače změnit použití zásobníkových spinlocků s frontoou na obyčejné spinlocky a v aplikaci zajistit dynamické zjišťování přítomnosti funkce Windows API GetNativeSystemInfo.
Systém | Verze kernelu | |
Windows XP 32bit | * | |
Windows XP 64bit | * | |
Windows Server 2003 R2 32bit | * | |
Windows Server 2003 R2 64bit | * | |
Windows Vista 32bit | * | |
Windows Vista 64bit | * | |
Windows 7 32bit | * | |
Windows 7 64bit | * |