Question

There are two ways to disable all APCs:

  1. call KeEnterGuardedRegion();

  2. call KeRaiseIrql(APC_LEVEL, &old_irql);

What's the difference?

Était-ce utile?

La solution

See the MSDN documentation titled Disabling APCs:

Using a guarded region is faster than raising and lowering the current IRQL, but guarded regions are only available in Windows Server 2003 and later versions of Windows.

So, if your code needs to support Windows XP, use KeRaiseIrql.

If not, use KeEnterGuardedRegion.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top