Firmware es un programa integrado en cualquier tipo de hardware: como un teclado, disco duro, BIOS o tarjeta de vídeo. Está diseñado para dar instrucciones al hardware, como comunicarse con otros dispositivos y de realizar funciones básicas de entrada/salida. Por ejemplo, el Firmware un "de un disco duro" tendrá las instrucciones necesarias para acceder a los datos físicos y de enviarlos al ordenador.

¿Qué es el firmware?

El firmware tiene la misma función que la de un controlador, pero la diferencia es que se almacena en el propio dispositivo de hardware mientras los controladores están instalados en el sistema operativo. Además, el firmware puede iniciarse por sí solo y realizar las tareas para lo que está programado o diseñado, mientras que los controladores deben ser administrados por el sistema operativo.

Tipos de firmware

Bios

Lo primero que se activa cuando enciendes tu ordenador es el BIOS, un chip que contiene las instrucciones de arranque del sistema. Puede interactuar con el hardware y comprobar si hay errores. A continuación, apunta a otro programa llamado Bootloader que actúa como una llamada de atención del sistema operativo. Por lo tanto, el BIOS es el principal responsable de manejar los componentes hardware del equipo y se asegura de que funcionen correctamente. Aunque, el software de bajo nivel se ha mantenido prácticamente sin cambios durante dos décadas y, debido a esto, se está volviendo obsoleto y no es compatible con las tecnologías modernas. Por ejemplo, el BIOS todavía utiliza un código de 16 bits, mientras que la mayoría de los portátiles y PC ejecutan código de 32 y 62 bits.

El chip BIOS necesita de una memoria CMOS para almacenar los datos sistema: hora, orden de arranque, ...

EFI

EFI (Extensible Firmware Interface) es una especificación para una nueva generación de sistemas firmware que proporciona las primeras instrucciones utilizadas por la CPU para iniciar el hardware y transmite el control al cargador de arranque. EFI, a veces también llamada interfaz de firmware expandible unificada (UEFI) tiene algunas ventajas sobre el BIOS. Por ejemplo, garantiza que tu PC comience con un solo software aprobado por el fabricante del PC, es decir, es compatible con una característica llamada "Arranque seguro" para mejorar la seguridad.

Conocer la versión del BIOS de tu ordenador puede ayudarte a averiguar si tienes la versión más actualizada del firmware. En equipos Windows, puedes obtener la información de la versión de firmware mediante el símbolo del sistema. Como alternativa, puedes usar un asistente de actualización para tu dispositivo.

Actualización del firmware

Las actualizaciones del firmware están disponibles por los fabricantes de hardware. Por ejemplo, se puede lanzar una actualización de firmware para un enrutador de red para corregir errores, vulnerabilidades de seguridad o mejorar sus capacidades.

Algunas actualizaciones de firmware se aplican normalmente y de manera transparente para el usuario. Sin embargo, otros pueden tomar mucho tiempo, ya que implican copiar el firmware en un reproductor portátil y luego cargarlo en el dispositivo manualmente. Dicho esto, algunos dispositivos tienen una sección dedicada en la consola de administración que les permite aplicar una actualización de firmware. Es importante asegurarse de que el dispositivo que recibe la actualización de firmware no se detiene durante la actualización. Una actualización parcial del firmware deja el firmware dañado, lo que puede dañar seriamente el uso del dispositivo. Por lo tanto, asegúrate de que una vez que inicies un programa de actualización de firmware pueda finalizar con éxito.

Diferencias entre firmware y software

A menudo, la palabra Firmware y software se utiliza indistintamente. Pero en realidad, son cosas muy difentes.

Por ejemplo, el software es virtual para que pueda copiarse, modificarse y eliminarse. A menudo se almacena en una memoria que es fácilmente accesible e incluso reemplazable por el usuario. Pero en el caso del firmware, la memoria que almacena el programa está integrado en el propio dispositivo y no es reemplazable por el usuario. Esto se hace para evitar cualquier manipulación o eliminación, ya que es esencial para que el dispositivo funcione y puede causar graves consecuencias si se elimina.

Además, el software se actualiza a menudo, por lo que la información almacenada a menudo se cambia con cada ejecución de la aplicación. Por otro lado, el firmware realmente no cambia mucho.