I'm not an authority on this, but the utilities I've seen that do that sort of reporting usually depend on a device driver that talks to a device on the chipset or through the CPU's Model Specific Registers (MSRs).
It seems you'd want to study up on these registers for the chips you want to support, as talking to the chipset opens the door to a lot more things to consider.
Update: Since you did mention that pointers on info for other OSes was perhaps helpful in the future, and since it's Open Source and therefore might give some code hints, here's
x86info, which at least dumps MSRs for some CPUs.