FIRMWARE

 El Firmware

¿Qué es el firmware?

    Es un tipo de programa de software que permite controlar y comunicarse con el hardware de un equipo de forma directa. Un ejemplo de firmware podría ser el BIOS de un ordenador, pero la gran mayoría de dispositivos electrónicos diferentes cuentan con firmware como un coche, un móvil, un rúter y ahora hasta lavadoras u otros electrodomésticos inteligentes de la casa.

    En un ordenador o sistema, hay varias capas de software interactuando entre ellas para hacerlo funcionar. Las capas más altas son las que se ven y con las que suele interactuar el usuario final como pueden ser el sistema operativo de un ordenador o la interfaz de una Smart TV, el navegador de a bordo de un coche … Pero estas capas más altas se comunican con otros niveles de software por debajo que a su vez interactúan con los demás a su alrededor hasta que llegamos al nivel más bajo donde está el firmware, que se comunica con el hardware en sí.

    El firmware siempre se encuentra en dispositivos de memoria no volátil, como puede ser memoria ROM, EPROM o memoria Flash. Si se encuentra en los primeros se necesitará cambiar al chip físicamente para sustituir el firmware o actualizarlo, mientras que si es memoria EPROM o Flash se podrá actualizar el firmware más fácilmente, como en el caso de los ordenadores en los que se puede hacer incluso desde el propio BIOS.

    El firmware sirve para comunicarse con los dispositivos de hardware de un sistema, la cual es necesario para el correcto funcionamiento de los niveles superiores de software. Todas las piezas "inteligentes" tienen un firmware, por lo que en sistemas complejos como un ordenador es común tener varios firmwares.

    Por ejemplo, en un ordenador tienes el firmware de la placa base, el BIOS, que es el más conocido, pero otras piezas como el procesador, los discos duros o las tarjetas gráficas tienen también su propio firmware. Estos firmwares obviamente están a diferentes niveles y en el caso de un ordenador tenemos el BIOS como firmware "principal" que es el que se comunica, gestiona y configura los demás para que todo pueda funcionar de forma conjunta.

    Tú puedes tener varios circuitos conectados en el interior de tu dispositivo, pero esos circuitos necesitan una lógica primaria, unas instrucciones básicas que les digan cómo tienen que funcionar, cómo tienen que arrancar y qué operaciones tienen que realizar. Eso, simplificándolo para que se entienda, viene a ser lo que significa el firmware.

    El código que compone el firmware de cualquier dispositivo suele venir en chips de memoria a parte de las principales. Esto quiere decir que desde tu ratón hasta tu lavadora, en todos los dispositivos hay una mínima memoria ROM en la que está almacenado este firmware. Gracias a él, también se establece una interfaz para la configuración del sistema y permite controlar el arranque y las conexiones y funciones principales del dispositivo.




    EL firmware puede ser calificado tanto como parte de hardware como del software de un dispositivo. Es parte del hardware porque siempre está integrado en la electrónica, pero no deja de ser un programa informático, por lo que también es software. Así pues, es prácticamente uno de los principales puntos de unión entre ambos.

    Esta porción de código puede ser actualizada para solucionar errores o ganar alguna funcionalidad puntual. Sin embargo, la actualización no es automática como pasa con los programas dentro ya del sistema operativo, y tendrá que ser manual. Esto hace que en algunos dispositivos el usuario ni siquiera pueda actualizar el firmware sin herramientas avanzadas, aunque en otros sí que hay maneras de hacerlo.

FIRMWARE / DRIVERS

    Aunque son dos tipos de piezas de software que sirven para hacer funcionar un dispositivo, el firmware y los drivers son dos cosas totalmente diferentes. El firmware es un código que va siempre instalado en todos los dispositivos en un módulo de memoria a parte, mientras que el driver es un código que no se instala en el dispositivo en sí, sino en el sistema operativo con el que algunos de ellos funcionan.

    Así pues, mientras que el firmware es el nivel más bajo de software que interactúa con un hardware, los drivers suelen estar a niveles superiores instalándose en el sistema operativo. Además, estos no están en una unidad de almacenamiento a parte, sino en el mismo disco duro en el que esté instalado el sistema. Si formateas el disco duro perderás los drivers, pero no el firmware.

    Los firmware te los vas a encontrar en todos los dispositivos electrónicos de tu casa, mientras que los drivers van a estar siempre en dispositivos que tengan un sistema operativo. Los drivers sin también importantes para el correcto funcionamiento de un teclado, un ratón en un ordenador o smartphone, mientras que sin el firmware estos directamente o no se encenderían o no podrían hacer sus funciones básicas.





FIRMWARE ACTUALIZACIÓN

    Actualizar el firmware es tan importante e incluso algo más que el hecho de actualizar el software que instalamos dentro del dispositivo que utilicemos, puesto que, al ser parte indispensable del funcionamiento del hardware, tenerlo al día garantiza el mejor rendimiento posible.

    Las actualizaciones de firmware dependen mucho del dispositivo del que estemos hablando, ya que alguno no recibe ninguna en mucho tiempo y en otros como pueden ser impresoras, módems o cámaras (por poneros tres ejemplos) estas actualizaciones sueles ser mucho más habituales, sobre todo si están conectados a internet de manera asidua.

    Las actualizaciones de firmware son importantes sobre todo por corregir algún tipo de error, algún fallo de seguridad o para parchar alguna vulnerabilidad, además de incorporar alguna que otra función extra para mejorar el rendimiento del dispositivo.

    Esta potenciación en el rendimiento del firmware puede afectar a todo el conjunto y hacer que el funcionamiento general de todo el sistema sea mejor y que se aproveche el hardware que sea, lo que puede significar una gran diferencia en el funcionamiento del dispositivo.

    Pero estas actualizaciones también pueden corregir errores, es decir, tareas u opciones que antes no funcionaban o no lo hacía a pleno rendimiento, lo que provocaba que se aprovechara todo el potencial existente.

FIRMWARE TIPOS

BIOS

    Como seguro que ya sabes, nada más arrancar un ordenador lo primero que se ejecuta es la BIOS, ya que es la parte que interactúa con el hardware para otorgarle todo su potencial. Después entra en juego el Bootloader, que no otra cosa que el que se encarga de que el sistema operativo se ponga en marcha, para partir de ahí ya tener todo como lo vemos funcionando siempre.

    Es decir, la BIOS es un firmware que se encarga de que los componentes de hardware funcionen y no tengan error. El problema es que se ha quedado obsoleto después de dos décadas donde no ha evolucionado.

EFI

    Como la BIOS ya no es moderna, se ha creado el EFI, forma abreviada de llamar al Extensible Firmware Interface, un nuevo firmware que proporciona todo lo que se necesita el hardware para funcionar y así dejar que funcione el gestor de arranque Bootloader.

    La EFI, también es conocida muchas veces como UEFI (Interfaz de firmware extensible unificada), algo que posiblemente esté más extendido en los últimos tiempos.











Comentarios