A los aficionados a la programación les encantan los desafíos. Hacer que Linux se ejecute, bueno, cualquier cosa Es un desafío que muchos encuentran irresistible. El último ejemplo implica ejecutarlo en el legendario Commodore 64. Lograr que se ejecute en una Mac es una cosa, pero hacer lo mismo en una computadora de 40 años con 64 KB de memoria es otra muy distinta.
El desarrollador Onno Kortmann (a través de Slashdot) utilizó Semu, un emulador ligero de RISCV32, y lo compiló de forma cruzada con llvm-mos, lo que permitió que el código se ejecutara en el procesador MOS Technologies 6502 del C64. Cabe señalar que esto se hizo a través de un emulador y no en hardware real, aunque es sólo cuestión de tiempo antes de que eso suceda.
Utilizando el emulador VICE Commodore, Kortmann habilitó el «modo warp» que mostraba los primeros mensajes de arranque en unos pocos minutos, aunque eso llevará mucho más tiempo en una máquina real. La siguiente captura de pantalla tomó algunas horas con el modo Warp, lo que significa que un C64 real tardará una semana o más en iniciar Linux por completo.
El Commodore 64 original venía con sólo 64 KB de memoria y ejecutar un sistema operativo liviano simplemente no es posible sin el uso de una unidad de expansión de RAM. Kortmann no especifica qué REU utilizó, pero los REU C64 estaban disponibles con hasta 512 KB, o la friolera de 0,5 MB de memoria. El procesador con tecnología MOS del C64 que funciona a alrededor de 1MHz tampoco es lo que llamarías un demonio de la velocidad.
Kortmann cree que hay mucho margen de mejora y dice que podría ser posible una aceleración 10 veces mayor. Aún así, dadas las limitaciones del hardware C64, incluso con una aceleración de 10x, no espere ejecutar mucho software una vez que termine la secuencia de arranque. Este es el tipo de cosas que sirven para poco más allá de demostrar que se puede hacer. Sin embargo, eso no lo hace menos genial.
Si lo desea, el código y las instrucciones se pueden encontrar en la página de Github de Kortmann. No estoy seguro de que nadie, excepto los programadores más masoquistas o aburridos, aceptaría el desafío, pero a aquellos que lo hagan: ¡Respeto!
¿Es práctico Linux en un C64? En lo mas minimo. Pero seguro que es una hazaña impresionante que los fans de una de las mejores computadoras de todos los tiempos apreciarán.