Hello LinuxBoot, Goodbye UEFI: llega la alternativa libre del firmware

 

LinuxBoot logo

En el mundo de la tecnología se han hecho muchos «crímenes», y en este artículo vamos a hablar de dos de ellos aunque hay algunos más. Uno de los lastres más importantes en el mundo del IBM PC era la BIOS, pero luego llegó la esperanza que no era tal con UEFI y el Secure Boot que tantos quebraderos de cabeza  ha dado a la comunidad de software libre y a los que se dedican a crear otros sistemas operativos que no sean Microsoft Windows, ya que se veían con la impotencia de no poder arrancarlos bajo un equipo por este sistema implantado por Microsoft…

También recordaremos la alianza conocida como Wintel, es decir, Windows (Microsoft) + Intel, que consiguieron llevar los productos de estas compañías a dominar todo el sector con mano de hierro, como aún siguen haciendo a día de hoy. Si no sabes qué es Wintel, pues se trata de aquellos ordenadores con el sistema operativo de Microsoft y algún microprocesador de Intel. Esto no tiene que ver con el término MacIntel, es decir, la alianza de Apple con Intel por la cual cambiaron los antiguos PowerPC (AIM) por esta nueva asociación tecnológica…

Wintel: comienza el complot

wintel logo

En los años 80s hubo un cáos de compatibilidad en cuanto a equipos informáticos con varios estándares en la industria (Amiga, Apple, Atari, Acorn,…), lo que obligó a los fabricantes de software y hardware a tener que innovar y crear tecnologías mejores de forma más rápida para captar a los dispersos clientes que había en la época. Pero claro, eso no era manera de dominar el sector y monopolizarlo, de hecho fue una era en la que ninguna empresa monopolizaba la industria.

En cambio, esa tendencia de innovación se iba a transformar en una excepción por la alianza Wintel, cuando Microsoft e Intel intentaron posicionarse para dominar el sector e implantar sus sistemas operativos Microsoft Windows y los microprocesadores Intel respectivamente. Eso los llevó al dominio casi absoluto que tienen en la actualidad, aunque según estas dos empresas fue una alianza fructífera, lo cierto es que solo lo fue para ellos. Ya que nosotros lo que tenemos ahora es a una Intel muy poderosa cuyos competidores han ido desapareciendo progresivamente a excepción de AMD (porque les conviene a la propia Intel para evitar más demandas por monopolio).

Contra Wintel, usemos Amux (AMD+Unix)!!!

Quizás muchos de ustedes recordarán nombres como IBM, STMicroelectronics, NEC, muchas compañías del bloque soviético, y tantos otros que fabricaban chips compatibles con los x86 de Intel. Todos ellos fueron dejando de hacerlo, incluso compañías que se dedicaban expresamente a ello como IDT, Cyrix, VIA, Transmeta, etc., han ido desapareciendo poco a poco. De todas ellas solo queda AMD y VIA, pero esta última prácticamente no representan ningún porcentaje del mercado…

El IBM PC que representaba una pequeña franja del sector de la computación personal crecío al publicar esquemas y documentación sobre las especificaciones de sus equipos (open architecture) para que terceros pudieran crear hardware compatible con estos equipos. Y con la llegada de la alianza Wintel, ese incremento de popularidad fue exponencial, y ahora no hay más que ver a nuestro alrededor para saber de lo que hablo…

Esto tuvo un impacto directo sobre la industria del software, ya que todos los desarrolladores comenzaron a mirar con buenos ojos a la plataforma que se había creado, ya que al ser la más popular se garantizaban tener la mayor parte de los clientes para sus productos. Escribir un programa para otra plataforma significaban gastos de implementación para escasas ventas, mientras que hacerlo para los IBM PC significó el éxito garantizado. Esto es otra de las lacras que ha tenido Linux y otros sistemas libres en el pasado a la hora de compatir con Windows en cuanto a drivers y software nativo, como bien hemos hablado aquí.

Y seguimos la historia en el siguiente apartado…

BIOS: objeto de controversia

Ya tenemos la dominación de Wintel con el estándar IBM PC, pero a este capítulo de la historia se les unieron otras compañías para dar el toque final a esta historia. Esas fueron empresas como Award, Phoenix, AMI, Chips and Technologies, etc., que comenzaron a crear chips con un firmware compatible con los IBM PC para que cualquier otro fabricante de equipos pudiese crear equipos compatibles con el hardware que quisiese. Esto sería el principio del fin del IBM PC para dar comienzo a la era PC y la inclusión de todos los fabricantes que hoy día conocemos en este sector. IBM perdió fuerza y su herencia la recogían ahora otras firmas que ensamblaban equipos PCs compatibles (p.e.: Compaq).

Microsoft ganaba ya grandes cantidades de dinero por su MS-DOS o por las licencias de DOS concedidas a otras empresas, Intel ídem, ya que fabricaba una buena cantidad de chips o recibía regalías de los que fabricaban chips compatibles, excepto de las empresas del bloque soviético que he citado anteriormente que en muchas ocasiones eran clones sin licencia, producidos a espaldas de Intel. Pero bien, vamos a resumir y reconducir la historia hacia donde nos interesa, y es hacia esas empresas que he remarcado en negrita en el párrafo anterior…

Ellas lo que estaban creando no era ni más ni menos que chips BIOS (Basic Input Output System), es decir, los chips con el firmware necesario para realizar la rutina de arranque en los PCs aunque los fabricantes fueran muy diversos, agregando modularidad. El acrónimo BIOS fue indeado por Gary Kildall y apareció en 1975 para los sistemas operativos CP/M para implementar lo necesario en una ROM para que el hardware pudiese arrancar el SO. Esto fue adoptado por los sitemas DOS.

En los DOS se tiene la necesidad de incluir una ROM con un firmware BIOS llamado BIOS DOS que es capaz de realizar una configuración inicial del hardware cargando unas rutinas para iniciar el sistema, y luego ser capaz de realizar un test denominado POST (Power-On-Self-Test) para finalmente localizar el sistema operativo instalado y arrancarlo, en ese momento pasa el control a éste. ¿Y qué?

Pues que como Microsoft ya dominaba el mercado, todos los fabricantes de equipos implantaron estos sistemas para dar soporte a los sistemas de la compañía, ya que no hacerlo suponía operar en una cuota de mercado minoritaria. El BIOS no es el mejor de los sistemas y tiene muchos techos y problemas, pero eso importó poco, siendo la necesidad también heredada por Windows y siguiendo con este lastre a pesar de que había alternativas mejores como EFI, Open Firmware de los PowerPC, o proyectos más recientes como CoreBoot (del que hemos hablado ya en LxA), etc. Y por tanto, GNU/Linux, FreeBSD, o cualquier otro sistema operativo que se quisiese instalar en un PC, tendría que lidiar con este lastre…

UEFI: la nueva traición disfrazada de esperanza…

UEFI Logo

Y entonces entra en escena UEFI (Universal Extensible Firmware), un sistema que parecía traer la esperanza para sustituir al BIOS y derrotar al viejo y primitivo sistema BIOS. Lo cierto es que lo consiguió, pero no trajo luz, sino oscuridad, y el principal motivo vuelve a ser Microsoft y su presión para implantar Secure Boot en los equipos para que san compatibles con Windows 8 o versiones posteriores.

UEFI era un sistema más moderno, pero todos sabemos lo que ha supuesto Secure Boot para la comunidad de software libre. Hemos escrito ríos de posts sobre ello, e incluso a día de hoy sigue habiendo algunos problemas en ciertas distros minoritarias para poderlas instalar en un equipo. Las soluciones aportadas han sido de lo más variado, algunas pasan por comprar keys o firmas a la propia Microsoft (ya que evita el arranque de sistemas operativos no firmados por, supuestamente, motivos de seguridad, y los únicos que a priori están firmados son los de la propia Microsoft, vamos un negocio redondo…), por lo que todo está orientado para que la gran beneficiada sea Microsoft…

Sí, es cierto que con UEFI tenemos una interfaz de usuario más moderna e incluso con gráficos para dejar atrás la interfaz primitiva tipo DOS de BIOS, pasar a ejecutarse en 32 y 64-bits en vez de los 16 de la BIOS, soporte más allá de las cuatro particiones soportadas en BIOS y los 2,2TB de tamaño máximo manejable para llegar a los 9,4 ZB, arranque más rápido, mayor flexibilidad y modularidad, e independencia del propio sistema operativo.

LinuxBoot: la solución final

Esquema LinuxBoot

Como vemos, solo parches puestos durante toda la historia que al final han sido meras artimañas para seguir con los problemas de siempre para la comunidad libre, no solo por las limitaciones de BIOS o por Secure Boot, sino porque seguía siendo un sistema cerrado. Pero ahora parece que hay luz al final del túnel con LinuxBoot, un sistema abierto que llega a servidores y espero tenerlo en equipos domésticos pronto.

LinuxBoot se presenta como la alternativa abierta al UEFI propietario. Un firmware que se lanzó el pasado año 2017 bajo el paragüas de la Linux Foundation, y que poco a poco se está incrementando en popularidad y cuenta cada vez con más apoyos por parte de las empresas manufactureras de equipos.

LinuxBoot ha sido una iniciativa de Ron Minnich, autor del también conocido proyecto LinuxBIOS y líder de Coreboot de Google. Ahora ha conseguido la colaboración de empresas como Google, Facebook, Hoirzon Computing Solutions, y Two Sigma que colaborarán en LinuxBoot (formalmente llamado NERF). Se pretende llevarlo a las máquinas servidor con Linux, permitiendo a los usuarios y administradores poder tener mayor control sobre sus sistemas (personalizar sus propios scripts de inicio, corregir errores, construir sus propios runtimes, realizar reflash en el firmware usando sus propias keys, etc).

Las ventajas de LinuxBoot frente a UEFI son:

  • Los servidores pueden arrancar considerablemente más rápido, con solo unos 20 segundos frente a los varios minutos que se tarda con UEFI en este tipo de máquinas.
  • Más flexible como he dicho, ya que puede usarse cualquier dispositivo, sistema de archivos (FS) o protocolos.
  • Potencialmente más seguro, ya que los controladores y sistemas FS de Linux son significativamente más robustos que los usados por UEFI.
  • Es totalmente libre.

Podéis ver la adopción cada vez mayor que se ha hecho de LinuxBoot, como ejemplo por el proyecto Open Compute Project, un proyecto iniciado por Facebook para crear centros de datos más potentes, y eficientes. Y no es el único, en el emulador QEMU que tanto usamos también se ha dado soporte para LinuxBoot, incluso en Intel S2600wf, Dell R630, etc.

No olvides dejar tus comentarios, dudas y tu opinión sobre este nuevo sistema… Espero que te haya servido de ayuda y puedas tener una idea más clara sobre el firmware y también mayor esperanza sobre este tipo de sistemas.


El contenido del artículo se adhiere a nuestros principios de ética editorial. Para notificar un error pincha aquí.

11 comentarios, deja el tuyo

Deja tu comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

*

*

  1. Responsable de los datos: AB Internet Networks 2008 SL
  2. Finalidad de los datos: Controlar el SPAM, gestión de comentarios.
  3. Legitimación: Tu consentimiento
  4. Comunicación de los datos: No se comunicarán los datos a terceros salvo por obligación legal.
  5. Almacenamiento de los datos: Base de datos alojada en Occentus Networks (UE)
  6. Derechos: En cualquier momento puedes limitar, recuperar y borrar tu información.

  1.   Fernando dijo

    Hola. Me has dejado con las patas colgando. Artículo muy interesante y muy elaborado. Enhorabuena. En cuanto al tema en su ojalá que se pueda implementar en todos los ordenadores de andar por casa. Un saludo.

  2.   Mak dijo

    Muy bueno el artículo.

  3.   Nasher_87(ARG) dijo

    Mi Asus no es compatible, paso…

  4.   Jvare dijo

    Una pena que de momento solo esté dirigido a servidores
    Está claro que Linux está avanzando muy rápido en ese sector a costa de olvidarse de los equipos de escritorio.

  5.   Bernardo dijo

    Mágnifico artículo, esperemos que LinuxBoot sea el precedente para la trasnformación de la informática y que se pueda accesar a nivel de equipos personales.

  6.   incom2 dijo

    Me parece genial esta alternativa al nefasto UEFI, pero no seamos conspiracionistas. IBM tenía la patente de la BIOS original, y no fue hasta que otros fabricantes lograron copiarla mediante ingeniería inversa y la argucia legal de decir que era algo que funcionaba igual pero no tenía el mismo código, que no empezó la era del PC clónico. En aquél entonces Microsoft no era lo que es hoy en día, no hubo ninguna alianza Wintel porque Windows tampoco existía. Es cierto que MS-DOS se posicionó como lider indiscutible, pero también es cierto que convivió con otros sistemas compatibles, de otras empresas, como DR-DOS o más adelante OS/2 Warp como alternativa a Windows 3.1.

    A donde quiero ir a parar es que la BIOS no tenía ningún elemento que impidiera instalar sistemas operativos «no Microsoft», lo único que tenía es que era lenta y rudimentaria. Y que apareció en una plataforma concreta: x86, de la que Intel sí que se llevó la palma y supo posicionar y deshacerse de sus rivales (Cyrix, Transmeta, etcétera como bien han dicho). Otras plataformas, sencillamente desaparecieron porque el x86 y el ecosistema que generó a su alrededor fue mucho más popular y terminó desbancándolas; y ARM no fue lo que es, hasta que dio con el clavo con el mercado de la telefonía actual. Y si Linux no supo o no pudo posicionarse en ese momento, no fue porque la BIOS impidiera su instalación.

    De hecho, para los usuarios domésticos no fue hasta la aparición de Windows XP que Microsoft empezó a trastear de mala manera con el sector de arranque del disco duro (que no con la BIOS) rompiendo en cuanto podía la compatibilidad con gestores de arranque múltiple y dando multitud de quebraderos de cabeza a quienes querían tener más de un SO en su máquina.

    La UEFI y su secure boot, sí que es indiscutible que sólo ha beneficiado a Microsoft y perjudicado a todos los demás. Pero las cosas como son: la BIOS no impidió de ninguna manera, ni perjudicó a otros sistemas operativos que se instalaran en un PC clónico del montón, y a Linux no empezaron a perjudicarle las instalaciones domésticas hasta la aparición de Windows-95 allá por 1996, es decir que tuvo una década entera con las mismas posibilidades que un MS-DOS o un DR-DOS o un OS/2; e incluso más allá de Windows XP, el problema no fue ni de la BIOS ni de Intel ni de la plataforma x86, sino de Microsoft y sus malas prácticas exclusivamente.

  7.   El café que ayuda dijo

    Felicidades por el artículo, muy buena info. Terminará llegando como siempre al Desktop.

  8.   Inukaze dijo

    Excelente ojala que el dia que pueda adquirir un nuevo equipo. venga con LinuxBoot y no con BIOS ni UEFI y mucho menos SecureBoot que deberia llamarse «MicrosoftBoot» xD

  9.   Elroyer26 dijo

    Excelente articulo, información muy interesante y sobre todo alentadora, Linux sigue avanzando y a grandes pasos.

  10.   Sudo dijo

    Linux Wins

  11.   Alberto dijo

    UEFI y ASUS, un fuerte dolor de cabeza a la hora de querer instalar Ubuntu….me ha llevado muchas horas