The slowest Linux computer

Original author: Dmitry Grinberg
  • Transfer
image
Often people who just bought a brand new eight-bit microcontroller are interested in how to run Linux on it. But usually they become only an object of ridicule. And on the forums on Linux, sometimes questions slip through, they say what kind of minimal characteristics are needed to run the OS. The most common answer is 32-bit architecture, MMU, and at least 1 mb of RAM. My project breaks these stereotypes. The computer is based on the ATmega1284p. I even did another one on the ATmega644a, and it worked too. There is no longer any processor or other hidden parts. All this works on kernel version 2.6.34, and even (if you have time for this), loads full-fledged Ubuntu, with an X server and Gnome.


RAM


Yes, LInux requires megabytes of RAM and a 32-bit processor architecture with MMU. Here it all is.
I had to use an old thirty-pin SIMM type bar. For reference: such memory was used in 286 computers.
How fast is she? About 300 kilobytes per second. Not much, but still.

File vault


This was not a problem for me. It is easy to work with SD cards by SPI, and this is exactly the method I used. A 1 gigabyte card works fine, but for Ubuntu Jaunty, 512 megabytes might be enough. ATmega has a hardware-based SPI module, and it was easy to get the card to work. Pretty slow - about 200 kilobytes per second.
image

CPU


As mentioned earlier, we need 32-bit architecture and MMU support. And AVR is eight-bit, and MMU naturally does not support it either. I wrote an ARM emulator. ARM is quite similar to AVR, and writing an emulator was not so difficult, despite the fact that I did not find such projects.
image

Other features


The computer communicates with the outside world via a serial port. Now I communicate with minicom on my computer, but I plan to connect a keyboard and character display to make everything autonomous. I also have two LEDs that show accesses to the SD card (one reading, another recording). The microcontroller itself from standard 20 is dispersed to 24 megahertz.
image

How slow is all this ?!


Two hours for basic boot (init = / bin / bash). 4 more to enter Ubuntu (exec init), and then log in. Running Xs is even longer. The emulated speed is about 6.5 kilohertz. Oddly enough, but after loading, the system is even sometimes usable. The answer to the command in the terminal comes in about a minute. SD card formatted day. I think this is the slowest, cheapest and easiest-assembled computer on Linux.

Also popular now: