i have got windows xp installed on computer. want dpc routine called every 10 ms.
that why wrote code:
assert( kegetcurrentirql() <= apc_level ); keraiseirql( apc_level, &level ); resolution = exsettimerresolution( 100000, true ); kdprint((drivername " - resolution = %d\n", resolution)); kelowerirql( level ); kesettimerex( &pext->timer, duetime, 10, &pext->dpc ); debugview shows me return value (resolution) equals 156250.
as result dpc routine called every 15.5 ms
what doing wrong?
out of curiosity tried exsettimerresolution different values.
here got:
10000 -> 9766 50000 -> 39063 75000 -> 39063 90000 -> 156250 left column contains values used desiredtime parameter. right column contains return values.
as can see, looks windows cannot change global timer resolution desired number.
Comments
Post a Comment