Los procesadores modernos vienen con todo tipo de funciones de administración de energía de las que normalmente no se da cuenta como usuario hasta que inicia un programa pesado y escucha girar el ventilador de la CPU. Sin embargo, a principios de la década de 1990, la administración de energía era prácticamente desconocida, lo que significaba que una CPU sin nada que hacer pasaría por un bucle inactivo que disipaba tanta energía como una tarea informática real. [Michal Necasek] Se dio cuenta de esto mientras probaba DR-DOS 6.0 en una máquina virtual: el ventilador de su computadora portátil comenzaba a funcionar a pleno rendimiento cada vez que abría la máquina virtual. Su búsqueda de una solución a este fastidio lo llevó a un viaje fascinante a través de las complejidades de la administración de energía de DOS.
Al final resultó que, DR-DOS 6.0 tiene una funcionalidad integrada para poner la CPU en modo de ahorro de energía cuando está inactiva. Sin embargo, esta característica no está completa: Digital Research requería que cada fabricante de computadoras desarrollara un IDLE
controlador personalizado para su plataforma de hardware específica para habilitar la administración de energía. Desafortunadamente, ningún fabricante se ha molestado nunca en hacerlo, dejando [Michal] sin más opción que escribir un controlador para usted mismo. mientras hubo alguna documentación disponible, no incluía ningún código de muestra ni detalles suficientes para escribir un controlador desde cero.
Lo que incluía era una referencia a Patente de EE. UU. n.º 5.355.501. Normalmente, este tipo de información solo es de interés para aquellos que planean vender un sistema de la competencia, pero esta patente en particular incluye docenas de páginas de código ensamblador x86 bien documentado pero mal escaneado, incluido el código fuente para una aplicación básica. IDLE86.SYS
conductor. Como [Michal] no estaba ansioso por perseguir errores causados por errores de OCR, simplemente copió el código fuente a mano y lo ejecutó a través de un ensamblador. El resultado final fue un trabajo IDLE
conductor, que ahora es disponible para descarga de su sitio web.
[Michal]La publicación del blog también incluye muchos detalles sobre las primeras implementaciones de ahorro de energía, incluidas todas las llamadas de interrupción de DOS involucradas en el proceso. Por el contrario, las patentes pueden parecer aburridas, pero a veces contienen cantidades sorprendentes de información útil. Puede encontrar suficientes detalles para aplicar ingeniería inversa a un protocolo inalámbrico o incluso para ayudar a rastrear al diseñador original de un instrumento oscuro.