It's been a long time since I wrote anything here. This one
sucks, but here it is anyway.
Blah blah blah. At least that is what this is going to sound like
to you non techies out there.
Ever since I started running distributed computing projects on my
laptop I've had problems with instability, and after some time I would
have to tear the laptop apart and refurbish the cooling. It was
getting the CPU so hot that it was boiling/burning away the thermal
compound until it overheated to the point where it wouldn't run for
more than a few minutes.
Yesterday I had to do this again, and I was considering rewiring the
"smart" fan so that it would turn on high speed all the time instead of
when the laptop thought it was hot. This wasn't actually
happening. I should add that this is with the AC power connected
so power saving is not the issue. The fan has four speeds from
off to high, but it never ran any faster than slow. This was the
situation in every Microsoft OS I've used on it.
But while I had it open I didn't feel like getting up to turn on the
light, so the soldering was hard to do. I decided to try
something else first. I put it back together and booted
Linux. There I asked the kernel about the ACPI. Linux can
read the CPU temperature while I've never found any tool for Windows
either from the laptop maker, or third party that could do this in
spite of hours of searching.
Linux says, "yes, your CPU is getting stupidly hot under full
load. And here is this fan control hardware you might want to
look at." So I spent about 15 minutes learning how Linux talked
to the fan hardware and about 3 minutes later I had written a program
that watches the CPU temperature and adjusts the fan speed as
needed. Now the CPU runs 20º C cooler even under
full load, even in hot ambient conditions. Yeah, Open Source.
<RANT>
If I was almost anyone else, I would have smoked my laptop, and it
would have been just mysterious "Oh, its dead." Actually caused
by closed source. Shame on Compaq for making an Armada laptop
with firmware that doesn't keep the CPU safe under heavy load.
Don't say "normal" use doesn't make that heavy a load. I've seen
guys use this same model for live music mixing. Very high
load. Shame on Microsoft for not having a decent interface to the
hardware in for instance Windows 2000 Pro. Pro is supposed to
mean something. I think it means more $$$ for the same
crap. But instead of dying at the hands of poor quality sw/hw I
had the skill to fix the physical aspects to keep it going and fix the
software so the problem is actually fixed. Open Source is so open
that I was able to learn about a subsystem that I've never looked at
before in just a few minutes. I coded my own fan controller, but
there were also many available for free on the net that I could have
used.
</RANT>