Linked by Thom Holwerda on Fri 30th Mar 2012 22:13 UTC, submitted by kragil
Linux "It is common to see newbies asking in microcontroller forums if they can run Linux on their puny little 8-bit micro. The results are usually laughter. It is also common to see, in Linux forums, asked what the minimum specs for Linux are. The common answer is that it requires a 32-bit architecture and an MMU and at least a megabyte of ram to fit the kernel. This project aims to (and succeeds in) shatter(ing) these notions. The board you see on the right is based on an ATmega1284p. I've made one with an ATmega644a as well, with equal success. This board features no other processor and boots Linux 2.6.34. In fact, it can even bring up a full Ubuntu stack, including (if you have the time) X and gnome."
Permalink for comment 512647
To read all comments associated with this story, please click here.
RE: No practical use?
by Alfman on Sun 1st Apr 2012 05:13 UTC in reply to "No practical use?"
Member since:


"I was hoping it would be a little more practical than that, but I guess the aforementioned issues of running a Linux system in a 8-bit environment really are insurmountable!"

Depends if you really mean linux as in the kernel, or gnu/linux as in the whole platform. I think it would be possible to create a gnu/linux-like OS for the atmega. We'd have gnu userspace apps/libs and could compile things like ssh, apache, etc for the microcontrollers.

Fork is going to be the main source of problems since it's far less efficient without an MMU. I don't like writing software that fundamentally requires an MMU anyways, but *nix standards don't give us much choice in the matter when we want to spawn new processes. Consequently this forces many *nix programs to be dependent upon an MMU when they would otherwise not need to be.

This is directly responsible for the eyesore which is vfork.

Reply Parent Score: 2