I could explain you but that would take a lot of time. As I said
earlier, take a look at the PM source code
(\WINCE500\PUBLIC\COMMON\OAK\DRIVERS\PM) and read the code.
In short: The powermanager manages the entire system and knows about all
the different components (like drivers, applications, running threads,
user activity, system activity, etc). You, as an application (or
driver), can not know what is going on on the entire system so how can
you be the one making a decision for everyone else?
Learn the PM API and architecture. Documentation is very good on this.
Michel Verhagen, eMVP
Check out my blog: http://www.yqcomputer.com/
Microsoft Embedded Partner
Consultancy, training and development services.