ACPI specs are available here. If you have insomnia,
this will rapidly cure it. The spec is about the
size of "War and Peace" by Tolstoy.
http://www.acpi.info/
There is a little bit of info here as well.
"Advanced Configuration and Power Interface"
http://en.wikipedia.org/wiki/Acpi
ACPI is something that the BIOS plays a part in, as well as the
operating system. The BIOS passes "tables" at startup, to the OS. Some
of the "ACPI objects" take the place of Plug and Play
information. So, for example, the functionality of
a Soft Power button, may be indicated by an item in
the BIOS table.
The BIOS has some latitude, in terms of things like Standby.
For example, say the motherboard cannot properly handle
Suspend To RAM (S3). The BIOS could refuse to pass S3 as
an option, to the OS, and then if you attempted Standby
in the OS, it would just blank the monitor instead. So
if a hardware feature is "busted", the BIOS has a crude
way of preventing collateral damage.
Now, what does this have to do with the power supply ?
Virtually nothing.
Your ATX power supply has a main connector. It has 20 or 24 pins.
The extra pins on the 24 pin version, are redundant pins and
wires. They increase the maximum current flow that could be
safely handled by the wiring harness. No new functions are added
there.
The secondary connector, is the ATX12V connector. It powers
the processor, and ideally, is separate from the main harness.
It is typically a 2x2 connector on a desktop. Two wires are
yellow (+12V), and two wires are black (ground). If
you assumed the pins could handle 6A current each, the yellow wire
max current would be 12A. Multiply 12V by 12A and get 144W
max. If the Vcore (processor power conversion) is 90%
efficient, the net power delivered to the processor,
is about 130W. And that is just about the highest
power desktop processor.
For people who overclock, it is possible to set the clock
frequency so high, that the processor draws 200W+. Some
motherboards get so hot while doing that, that the area around
the CPU socket can melt foam plastic. In such extreme situations,
the other connector version comes in handy. That is the 2x4
connector. It has four yellow wires and four black wires, and
while the function is not changed, the amount of current
that can flow without burning any pins, is increased.
One difference between the old AT supply, and the new ATX,
is the ATX has "soft power" control. The PS_ON# signal, sent
from the motherboard to the power supply, indicates when the
motherboard wants the main power signals turned on. The
+5VSB power rail, is present while the computer is sleeping,
and is used for the logic driving PS_ON# as well. This
means the ATX power supply is split into two pieces, a
+5VSB chunk for standby power. And the rest of the rails,
switched on while the user is actually running the computer.
The rest of the functions (intelligence, if you will), is
the motherboard logic chips, and the OS and its ACPI code.
*******
To make ACPI work requires
1) ACPI compliant BIOS (able to "pass good tables").
2) BIOS table value passed, is able to indicate a working S3.
That is, if you want Suspend to RAM.
3) When WinXP is installed, a HAL is selected that supports ACPI.
Pressing F5 and selecting "Standard PC" would break it. The
OS installer would normally automatically notice the BIOS
supports ACPI, and install an ACPI HAL. A broken BIOS (I had
one), results in the wrong HAL being installed.
4) If Device Manager "Computer" entry properties indicates
"ACPI" in the name, then a good HAL (Hardware Abstraction Layer)
is present. If the user has just corrected an error in the
BIOS setting (for S3), then Microsoft "dumppo.exe" can be used
to attempt to correct the situation.
I expect there is a potential for some other issues, which
surround the presentation of options on the screen during
shutdown. But I don't know how that stuff works. For example,
sometimes an option will be grayed out, but I don't know
what thing in the registry might be responsible.
The purpose of all this Hardware Abstraction Layer stuff,
is to hide the details of doing stuff, from the OS. So
you may not find a piece of code in the OS, that
actually loads a register in the logic, and switches
off the power. It may actually be some BIOS code, with
the OS handing off control to the BIOS just about when
shutdown is to occur. That means, to some extent, the
OS works at a higher level. Otherwise, you'd "need a
driver", to make the soft power button stuff work.
For example, consider hibernation. On my computer, if
I hibernate (S4), the BIOS puts up a blue screen with
the word "Hibernate" at startup the next time. Apparently,
the BIOS has set some storage bit, so it knows that
hibernate was requested at last shutdown. The BIOS
is not clever enough, to go sniffing around for a
hiberfile (because the BIOS would have to know how
each OS in existence works). Instead, during shutdown,
the OS must be telling the BIOS, what state is to be used.
For S3, it would be told to maintain RAM contents.
For S4, it might set a bit indicating that
hibernation is currently in progress. But that
doesn't prevent the OS from also playing a part.
If the power fails, the BIOS hibernation bit is
cleared, the OS can still discover the hiberfile
is present, and load it instead of executing the
normal boot sequence. So this standard, does
appear to affect what the BIOS has to support.
So that is a bit of background (the bits I've learned,
without reading the ACPI spec
).
Paul