Wednesday, April 11, 2012

Linux on AVR

Every once in a while something comes along that changes the way you look at things. A project posted last week by Dmitry Grinberg was such a thing for me. The project in itself is already pretty strange: porting a 32-bit operating system (OS) to an 8-bit microcontroller lacking most of the features needed to actually run the OS. Why would you want to run Linux on an AVR? “Because you can”, would answer George Obama (or was it Barack Mallory?) and now also Dmitry. Yes, apparently you can (I didn’t try it myself), it only takes two hours to boot Linux on the AVR, with an effective clock speed of a dazzling 6.5 kHz. It is fun as in academic demonstration.

Yet for me this demonstration, working or not, useful or not, shows more. Emulating one platform on another more powerful platform is common practice these days, but I had never thought about doing the opposite. I think emulating a 32-bit ARM processor on an 8-bit microcontroller is actually quite a cool idea. Maybe Dmitry is not the first to have done this, I don’t know, but it is an excellent example of thinking the other way around, outside the box. The result may be useless for now, but who knows what one day may come from this?

Honestly, did you ever think of hooking up a SIMM memory module to an 8-bit MCU? I didn't, but maybe I will do so in the future.

Way to go Dmitry!

What do you think? Did you try something similar yourself? Please let me know, I would love to hear about other outside-the-box MCU projects.


  1. It's a neat idea, but scarcely a new one. Back in 1976 the IBM 5100 portable computer used a 16-bit microprocessor to emulate a S/360 IBM mainframe. The hardware had the mainframe interpreters for APL and BASIC in a massive 256K byte ROM.

    Performance was slow but tolerable. The machine was very expensive: we paid about £9500 for ours, which was a lot of money in 1976. IBM sold a grand total of 4 in the UK.

  2. Who know that perhaps old processor based space probes like the Cassini launched in the by gone era may be cajouled in a jam to run new 32 bit software OR in a future emergency a redundant 8 bit processor in a sensor may be forced to take the place of a failed main 32 bit critical navigation hardware,
    Anand Raj, Bangalore /India