Everyone always talks about making their computer faster and faster, but what about if you wanted to make it slower? It’s not as easy as you might think. Using the standard assortment of compatible components means that there is a point where your computer can’t really get any slower, because the old parts just won’t work with the software. For example, you can’t load Windows 8 CP on that 486 you keep in the deepest, darkest corner of the basement. While that might be true, there are ways to work around it if you are really intent on building yourself the worst computer ever.
Super tinkerer Dmitry Grinberg was able to load Ubuntu — including X and GNOME — using an 8-bit microcontroller. If you’re not familiar with gear like Atmel’s ATmega1284p, it’s a 8-bit CMOS microcontroller that’s designed for very simple, Arduino-like tasks.
It’s very good at what it does, but it’s not designed to run full visual operating systems, certainly not 32-bit ones. In fact, if you asked a geek if you could run Linux on a microcontroller, they would almost certainly put their face in their hands and tell you no. (And keep in mind, I don’t mean running the Arduino coding environment on Linux, that’s doable, I mean actually using the microcontroller to support a desktop Linux operating system which is many, many times above the minimum requirements.) The world’s of embedded computing and desktop computing, are just very different from one another.
Regardless of the seemingly insurmountable challenges, Grinberg figured out a way to make it work. His system loads Ubuntu 9.04 (Jaunty Jackelope) in 6 hours. 6 hours. And that’s not including X (windows system). Reaching the Bash prompt alone takes two grueling hours.
But how was he able to pull it off? Things get pretty complicated, but basically it was through the miracle of emulation. Grinberg emulated a ARMv5TE SoC (something you might find in one of Marvell’s SheevaPlug devices) but that was just the start. He had to do some custom wiring in order to put the whole rig together in order to make the emulation work. The end result is a system that runs at a blazing 6.5KHz.
The project took Grinberg about 6 months to put together.