lunes, 23 de julio de 2012

LA HIBERNACIÓN DE LAS COMPUTADORAS

Una novela de suspenso, apagado e hibernación

Habré sido oso en otra vida. Tengo debilidad por la hibernación. La de las computadoras, desde luego, aunque es igualmente cierto que el frío no me seduce ni un poco. Dicen ola polar y ya me siento incómodo.
En fin. Volvamos a los chips. Siempre fue un tema algo confuso, tal vez porque, una vez más, eligieron las palabras incorrectas. La cuestión es que sigo recibiendo muchas consultas sobre qué hacer con la notebook cuando no se la usa. De hecho, hay una pregunta de este tipo en el Feedback de hoy.
Para empeorar las cosas, la hibernación (mi preferida, ¿lo dije?) puede fácilmente desaparecer de las opciones en Windows y Linux, entre otras cosas porque el hardware no es compatible con ese método, pero también por una actualización del sistema operativo. A no desesperar. Más adelante, las formas de probar si tu Windows o tu Linux son compatibles con la hibernación y cómo ponerla en funciones nuevamente.
Necesito desenchufarme
Primero las obviedades que de tan obvias nadie se atreve a preguntar.
Apagar una computadora es apagarla por completo. Notebook o PC, el microprocesador deja de recibir electricidad, lo mismo que la mayor parte de los otros componentes: el disco, los puertos USB, la memoria RAM, y así. Pero no todos, así que cuidado al desarmar un equipo si sigue enchufado.
Opuestamente, encender el equipo significa que todos los componentes están recibiendo la corriente exacta que necesitan y pueden responder a cualquier solicitud de nuestra parte o de parte de un software. De hecho, lo primero que hace la computadora un microsegundo después de que apretamos el botón de encendido es disparar un programa llamada POST , por Power On Self Test , que entre muchas otras cosas verifica que le esté llegando la corriente correcta al microprocesador.
Encender y apagar eran los dos estados que conocíamos al principio de la informática personal. Como la tele o una lamparita, la PC conocía dos estados: on y off .
Después, como suele ocurrir, la historia se complicó. Pero era inevitable. Las computadoras están tan lejos de un televisor o una lamparita como el Apollo 11 lo estaba del hacha de pedernal.
Queda usted suspendido
Con las portátiles surgió la necesidad de reducir tanto como fuera posible el consumo de batería mientras usábamos la máquina y, a la vez, tener un acceso rápido al sistema. Es decir, consumir sin apagarla. No sólo porque el arranque llevaba mucho tiempo sino porque, con todo ese enloquecido acceso al disco rígido, constituía por sí mismo un inoportuno derroche energético.
Una forma de reducir el consumo y tener acceso más o menos rápido al sistema es poner el equipo en suspensión, un modo también llamado Sleep (dormir, en inglés), palabra tan cercana a hibernar que no hizo sino sumar a la confusión. También se la conoció como Stand By . Y a eso hay que añadirle todas las traducciones.
Dos cosas, pues. Sleep , suspender o stand by no son Hibernar . Y suspender no apaga el equipo. Repito: no lo apaga. Así que si le saca las baterías a una notebook suspendida tendrá un apagado malo de Windows, con las posibles indeseables consecuencias. Además, sigue consumiendo batería. Poco, pero sigue.
OK, ¿pero qué hace el modo Suspender? Corta la corriente en todos los componentes excepto en la RAM, que contiene el estado actual del sistema (es decir, lo que estábamos haciendo con la computadora), y los que se requieren para despertar la notebook (el teclado, por ejemplo, o el ratón). Todo lo demás se desconecta o pasa consumir mucho menos.
Los puertos USB pueden seguir recibiendo corriente si el equipo está enchufado y en stand by, típicamente en una PC. En una notebook, en cambio, los USB dejarán de entregar corriente mientras está suspendida, así que no le servirá para cargar el celular, por poner un ejemplo.
Ahora sí, a dormir
La otra opción (la que más me gusta, por si no lo dije) es Hibernar. Aunque detrás de bambalinas hay unas cuantas complejidades técnicas, Hibernar tiene, para el usuario, la belleza de lo simple. La máquina, en ese estado, se apaga.
¿Se apaga o se hiberna? ¡Son 99% lo mismo!
Desde el punto de vista eléctrico, es equivalente a apagarla. Deja de consumir. Por completo. Está totalmente off.
No hay mejor ahorro que no gastar, y la notebook en este estado no consume nada porque está apagada. Se le puede sacar la batería y volverla a poner y no habrá percance.
¿Y que es ese sospechoso 1% de diferencia?
El truco de la hibernación es que antes de apagar el equipo guarda el estado de la memoria RAM en un archivo (llamado hiberfil.sys , en Windows; en el espacio de swap , en Linux) y, por lo tanto, se inicia más rápido que en un arranque normal. No tan rápido como volver de la suspensión, pero es muchísimo más veloz que un inicio normal.
Esperar unos 10 o 15 segundos no es nada grave si se compara las ventajas de la hibernación con la suspensión. La notebook puede estar un día o dos semanas suspendida, para el hardware y las baterías es como estar apagados. Eligiendo la carga correcta (alrededor de un 40%), es la mejor forma de tener las baterías de iones de litio ociosas. Con un adicional no menor: no habrá calor, enemigo número uno de las baterías. Esto nos permitirá, dicho sea de paso, ponerla en un bolso abrigado sin que se acumule calor.
La hibernación no arroja dudas. No hay luces que titilen ni roces involuntarios que pongan la máquina a funcionar de vuelta sin que nos demos cuenta. Está apagada. Si alguna lucecita sigue brillando, entonces algo salió mal. He visto varias veces que alguien sacaba una notebook de una mochila más o menos a la temperatura a la que se funde el tungsteno. ¿Por qué? Porque al cerrar la tapa la máquina, por algún motivo, no se había suspendido, sino que había seguido en marcha. Bonito.
Desde el punto de vista del consumo eléctrico (y de la ecología, para el caso), ni hablar: es cero. Si el sistema es compatible con la hibernación (más sobre esto enseguida), entonces resulta muy confiable. En mi práctica cotidiana, es la opción obligada también para la reacción de un UPS cuando se corta la luz.
No puedo dormir
Por desgracia, la hibernación es técnicamente problemática. La suspensión también, pero la hibernación tiene, digamos, más bemoles. En Linux, por ejemplo, el soporte para este método apareció recién a partir de la versión 2.6 del kernel (eso incluye toda la historia de Ubuntu, pero antes de 2004 las cosas eran bastante más complicadas. Los que estén interesados en esa historia, pueden consultar este artículo: www.freesoftwaremagazine.com/articles/hibernate_linux Para hacerlo breve, la hibernación apareció como un patch para los núcleos 2.2 o mayores (la serie 2.2 arrancó en 1999). El parche se incorporó en el kernel 2.5.18 (es fue en 2002). Sólo a partir del kernel 2.6 la función de hibernar llegó a cualquier máquina con un núcleo Linux. Era 2004, el mismo año en que nació Ubuntu, cuya primera versión, la 4.10, llamada Warty Warthog, venía con el núcleo 2.6.8 (la actual sale con el 3.2). A propósito, para ver qué versión de kernel tiene tu máquina, escribí este comando en una terminal:
uname -r
En general, por lo tanto, la hibernación está disponible en cualquier Linux moderno. Pero, como dije, puede desaparecer. Me ocurrió tan pronto instalé la versión 12.04 de Ubuntu en mi netbook. Así que lo primero que hice fue ver si, por alguna cuestión de controladores o algo por el estilo, el equipo todavía era capaz de hibernarse. Para eso, guardé todos los documentos que estaban sin salvar y abrí una terminal. Allí ejecuté:
sudo pm-hibernate
y crucé los dedos.
El comando sudo es la combinación de su (por superuser) y do (hacer, en inglés). Es lo mismo que cuando corremos un programa de Windows con la opción Ejecutar como administrador.
Por su parte, pm-hibernate , es una de las utilidades de administración de energía de Linux ( pm-utils ) y tiene otras dos opciones:
pm-suspend pm-suspend-hybrid (la suspensión híbrida graba en un archivo el estado de la RAM antes de entrar en sleep, por lo que puede apagarse el equipo cuando está en este modo; si anda, es la combinación de lo mejor de ambos mundos)
Es decir, que pm-hibernate le ordena al equipo que se hiberne. Mi netbook lo hizo sin problema. Pero esa es la mitad de la historia. Lo más importante es que la máquina vuelva de su sueño sin inconvenientes. La encendí y todo anduvo de maravillas. La huidiza hibernación se había evaporado de los menús, ¡pero andaba!
Así que hice esto. En la terminal escribí:
sudo gedit /etc/polkit-1/localauthority/50-local.d/com.ubuntu.enable-hibernate.pkla
Eso abrió un documento de texto vacío ubicado en la ruta /etc/polkit-1/localauthority/50-local.d En ese documento añadí estás líneas:
[Enable Hibernate]Identity=unix-user:*Action=org.freedesktop.upower.hibernateResultActive=yes
Luego de esto, lo guardé, cerré todo, reinicié el sistema y recuperé la opción de Hibernar. Quizás no haga falta aclararlo, pero estos pasos andan con Ubuntu. La verdad es que lo del menú Hibernar es una sutileza innecesaria. Si instalás las pm-utils y creás un atajo de teclado que dispare pm-hibernate, no necesitás ningún menú y es todo más rápido.
Hay dos grupos de razones por las que la hibernación desaparece de un Linux. La primera, que haya algo que el sistema considera incompatible con este modo. La otra es que no haya o no esté correctamente montado el archivo de swap (intercambio) o la partición correspondiente. O que no sea del tamaño adecuado. Si hay preguntas al respecto, envíenlas por correo, porque si entro en ese asunto aquí este texto se hará muy largo y denso.
Windows XP y 7
En XP la hibernación no suele dar muchas vueltas: o anda o no anda.
Supuesto el caso de que la pestaña hibernación no esté en el panel de control de Opciones de energía, puede verse cuál es la situación con esta orden en un intérprete de comandos:
powercfg /hibernate on
Si le responde "El sistema no es compatible con el modo de hibernación", entonces la computadora o no es compatible con la hibernación (y no se puede hacer nada) o las opciones de administración de energía no ha sido activada en el BIOS.
Con powercfg /query vas a ver la información relevante sobre las opciones de energía en tu sistema con XP.
Si todo está OK, el botón Hibernar de todas formas no aparece en XP al elegir Apagar el equipo. Para eso hay que apretar Mayúsculas cuando aparece el menú de apagado, lo que cambia el botón Suspender por Hibernar.
La situación en Windows 7 es muy semejante. Si se escribe en una ventana del intérprete de comandos:
powercfg /a
el sistema dirá cuáles son las opciones de suspensión/hibernación disponibles. Con
powercfg -hibernate on
se activa la hibernación, en caso de que aparezca como disponible pero no figure en los menús, lo que es bastante raro. Obviamente, si no está disponible, seguirá ausente de los menús por más que ejecutemos este comando.
FUENTE: YAHOO

No hay comentarios: