Hardware Power Monitoring

Have just spent the afternoon mucking about with the Win32 Power Management APIs. Unfortunately my server is Windows 2000 so half of the functions cannot be used. My aim was to write a quick and dirty app that would tell me whether my harddrives were asleep or not, and this I was able to do. The results are HardwareMon. Its not to big or clever, but it shows some rudimentary stuff about your machine. I may add to it in the future, but probably not until I upgrade my server to XP.

Why is XP so important? Well there's an API to allow you to change the processor power policy. You can then request a low power mode from the OS and turn on clock throttling etc. I'd like to be able to say on a click "No power saving, I'm watching a video" or "lots of power saving, I'm going to bed". Windows 2000 allows for rudimentary querying of the structures, but half of them aren't available.

Its also all very badly documented. Idle state seems to go without explenation and my PIV Celeron say its in "1", with a minimum state of "3" and a maximum of "8". My PIV 3GHz reports being in "0" and max of "1". Who knows what that means? The net was not much more forthcoming with only about 5 emails in Google groups. I feel like I've got here too early. I guess I must have or there would be a better tool than HardwareMon about!

Most of the APIs are geared toward putting the machine to sleep - something I don't want to do as its doing things. I just want it in the lowest slowest mode possible. Anyone that wants the source is welcome to it, but its really not very complicated and I would guess you can work it out for yourself...

Comments

Popular Posts