DOS Mystery: Source Code of Power Management Found In Patent
Modern power management ensures quiet PCs with little load, but in the early 90s, such systems were still in their infancy. Now a programmer reports a curious trip into the depths of DOS to silence a fan.
When the fan is running, the programmer goes into the search
In the early 1990s, it was still fairly common for idle CPUs to go through an idle loop that continues to busily consume power and generate heat. Three decades later, it was this fact that would lead programmer Michal Necasek on an interesting journey into the depths of DR-DOS 6.0. When working with the operating system in a VM, Necasek found that his laptop’s fan ran at full load immediately.
As Hackaday describes, the developer made an interesting discovery in his search for a solution. The developers of DR-DOS 6.0 had started work on an energy-saving mode that can be activated when the CPU is idle. However, the implementation required that each manufacturer develop the required IDLE driver for its hardware itself. Necasek quickly realized that no manufacturer of the time had done so.
And so, in the next step, the programmer set about creating a corresponding driver, but had to realize that the documentation did not provide any example code here. But one detail brought the decisive breakthrough for Necasek: the reference to US Patent No. 5,355,501. “The PDF version of the patent is about 80% source code listings that nobody has OCRed,” Necasek said in his blog post.
The programmer quickly copied what he had found and ran it through an assembler. And lo and behold: the source code, recorded in a decades-old patent, resulted in a working IDLE driver. The reward for this effort: “The laptop’s fan calmed down immediately,” says Necasek.
Research Snipers is currently covering all technology news including Google, Apple, Android, Xiaomi, Huawei, Samsung News, and More. Research Snipers has decade of experience in breaking technology news, covering latest trends in tech news, and recent developments.