¿Qué es coreboot?

Como se describe en la página de Wikipedia:

coreboot, anteriormente conocido como LinuxBIOS, es un proyecto de software destinado a sustituir el firmware propietario (BIOS o UEFI) que se encuentra en la mayoría de los ordenadores con un firmware ligero diseñado para realizar sólo el número mínimo de tareas necesarias para cargar y ejecutar un sistema operativo moderno de 32 o 64 bits.

Esencialmente, es una iniciativa destinada a «abrir» y simplificar el nivel de firmware de los ordenadores modernos. Creo que la mayor parte posible es software libre; sin embargo, se requieren blobs binarios para que funcione en algunos dispositivos de hardware. Libreboot es una versión de Coreboot que está completamente libre de blobs y, por tanto, es 100% software libre. Sin embargo, debido a esto, Libreboot sólo funcionará en un subconjunto más restrictivo de hardware.

¿Por qué alguien querría usar Coreboot? Se me ocurren varias razones:

Si están interesados en involucrarse en el desarrollo de firmware para PC, entonces podrían querer cambiar su firmware propietario por Coreboot, ya que es Open Source. De esta manera (similar a GNU/Linux en general), pueden hurgar en el código y tratar de aprender cómo funciona. Así, podría ser bueno desde un punto de vista educativo.

Si alguien se preocupa por el software libre, podría preferir usar Coreboot o Libreboot por esa razón. Si tienes blobs binarios en tu firmware, no sabes lo que contienen – en teoría podrían contener código que podría comprometer tu privacidad/seguridad. La Fundación de Software Libre sólo respalda los sistemas que se ejecutan con el firmware Libreboot.

Otra cosa que se me ocurre es que si alguien está desarrollando un nuevo dispositivo, entonces portar Coreboot a él podría ser visto como más simple que escribir su propio firmware desde cero, o tener que pagar por el firmware propietario. Coreboot es muy ligero, rápido y eficiente, porque sólo contiene el código mínimo necesario para poner en marcha un sistema. Vale la pena señalar que Coreboot no proporciona por sí mismo ningún servicio de BIOS o UEFI – sólo inicializa el hardware y luego pasa el control a otra cosa. Por lo tanto, si un sistema operativo requiere alguno de esos servicios, estos tendrían que ser proporcionados por una carga útil (mencionada más adelante).

¿Afecta a la capacidad de instalar otros sistemas operativos?

En primer lugar, el sistema operativo principal generalmente no se instala en la placa (a menos que se trate de un sistema embebido). Normalmente, se instala en un dispositivo de almacenamiento externo (es decir, disco duro). Así que, mientras Coreboot pueda configurar un entorno básico suficiente para poder acceder al dispositivo de almacenamiento y llamar al SO principal, no creo que haya ninguna razón en teoría por la que no pueda arrancar cualquier SO. Hay varios payloads disponibles para ello que ayudan a facilitar eso. Un payload es básicamente un gestor de arranque que está integrado en el firmware, en lugar de estar almacenado en un soporte externo. Por ejemplo, GRUB puede ser incorporado en Coreboot como un payload, que es ciertamente capaz de arrancar Linux y Windows. No estoy seguro de si hay una opción de carga útil que pueda arrancar MacOS, pero no me sorprendería que la hubiera.

Leave a Reply