Some ThinkPads have a slight coil whine, derived from the CPU load. Mine (T550) does. It is not really loud, but it can get annoying when working in quiet environment.
The coil whine is caused by the processor entering and leaving its power-saving states. This causes a change in the current going into the processor and the power circuitry around it emits a noise (some people also suggest the processor itself makes such a noise).
More info: ThinkWiki
I have noticed that the coil whine is much more prominent under my Windows installation than on Linux. Windows has a continous note, whereas Linux emits sort of a buzz/noise/clicks (similar to noise of a seeking harddisk). Clearly Windows wakes up the processor in regular intervals.
In a similar fashion installing a non-tickless Linux kernel should also make the noise a continuous tone and much more prominent. Some people on the internets have made the observation that installing tickless kernel improves the situation a lot.
Note: I don't want to bash Windows, it could be one of the programs running on Windows. But the installation is mostly clean, with the exception of Lenovo's shovelware. It would be a bit ironic if that was the cause :).
Ok, what if we control the frequency of the wakeups? We could make any sound we want ... So I wrote a little program to do exactly that. If you have a whining ThinkPad (or any other computer with a CPU whine) and Linux, you can try it. It periodically wakes up all CPU cores with a given frequency and thus can play notes.