Follow Slashdot stories on Twitter

 



Forgot your password?
typodupeerror
×
News

Micro End Linux Systems? 11

This not-so Anonymous Coward asks: "What is the 'lightest' Linux hardware platform available (when I say 'light', I mean in terms of processing power and memory)? Searching the web will reveal plenty of 32MB x86 / strongARM / Hitachi H8S, but what about real microcontroller sized designs? Has anyone produced a hardware design in something smaller than, say a 16bit CPU running at 16MHz with 64KB RAM, and 512KB FLASH?"
This discussion has been archived. No new comments can be posted.

Minimal Linux System?

Comments Filter:
  • by Anonymous Coward
    I seem to recall reading about a Linux wristwatch that IBM unveiled at a BlueTooth conference. It is indeed light. It weighs about 1.5 ounces.
  • Considering that Linux only runs on 32-bit and some 64-bit platforms, your chances for finding a configuration involving a 16-bit microprocessor are slim.

    Consider that the original Unix ran very nicely on 16 bit processors!

    Full-featured (although pre-networking and pre-graphics) Unix Version 6 and 7 ran on the PDP 11/70, which was 16 bits, although with the helpful extension of giving one 64K byte address space for data and a separate 64K byte address space for instructions, for a total of 128K bytes. It also helped that the 11/70 supported something like 512K of RAM, so that the operating system could use its full 128K at the same time that several other processes were also resident in other RAM.

    Call it a minimum of 256K of RAM, although 512K would be better.

    There were versions of Unix that ran in less, even in a total of only 64KB, but this was very difficult, and features needed to be stripped out of the kernel to get that to work.

    Anyway this suggests that it would be close to hopeless to look for any Unix/Linux variant that could run in only 64KB RAM total.

    (Unless it used an MMU to swap RAM and Flash chunks extremely frequently, which is (a) probably undesirable and (b) probably is not an existing hardware configuration, unless you did a homebrew MMU.)

    If you stripped out enough features for a Linux/Unix kernel to run in 64K, it would be so crippled that it would be pointless; it would be better to use an OS that was designed to be ultra-small in the first place.

    Note that you'd also have the problem that extremely few apps would run in only 64K of RAM. Almost none, if there is no MMU to swap to Flash.

    P.S. Version 6 Unix actually didn't use ANY RAM! Yep, it's true. Instead it used magnetic core memory. :-) RAM wasn't available for the 11/70 until approximately the time of Unix Version 7.

  • That is so true as the uClinux has no memory protection between processes.

    But to answer the question linux has trouble running on anything that does not have a full MMU.
  • At what point is it no longer Linux, or Unix?
  • Back in the day I had an old version of slackware successfully booting on a 386sx-16 with 2MB of ram and a very small (80MB?) hard drive, without a working video card no less. It could successfully run minicom over a serial line and dial a modem, but spent so much time swapping just trying to log in it was nigh unto useless.
  • by joq ( 63625 )
    I ran Linux on a tickle me elmo doll for faster word processing. Why not just invest on getting something bigger processors are dirt cheap unless your experimenting. IMHO I think it'd be a waste of time running on something extremely obsolete and I highly doutb any developer of the Linux time would code for an obsolete architecture
  • Maybe, maybe not. Depends on what you call Linux.
    Look at the Elks Distro in 8 BIT.
    ELKS [soton.ac.uk]
  • Correction 16 BIT
  • Considering that Linux only runs on 32-bit and some 64-bit platforms, your chances for finding a configuration involving a 16-bit microprocessor are slim. I can understand the desire for small configurations, but perhaps you should consider a real embeded operating system, or a custom one.

    /*
    *Not a Sermon, Just a Thought
    */
  • Well, there is always ELKS [soton.ac.uk](Embedable Linux Kernal Subset) which runs on 8086, 8088 & 80286 (as well as some PDA called the Psion). While it's not a full-featured version of linux (hense the "subset" in the title) it does work on 16bit hardware.

    You could always take a look at Minix...

    Redhat's eCos [redhat.com] is an embeded unixesque OS that runs on a number of 16/32/64bit architectures [redhat.com].

    And, for another version of linux that runs on systems w/o MMUs, you can always take a look at uClinux [uclinux.org](that u should be a mu, as in micro). It seems they've focused mostly on Motorola chips, but a few others (such as the i960) are supported as well.

    I'm tired of doing your research for you, but I seem to remember something out QNX originally being targeted at embedded architectures, and being available on a some non-Intel patforms.

    OMG, a quick check over at DMOZ.org's search engine on "embedded" gives me entire CATEGORIES dedicated about it, several of which involve Linux as well! Yahoo does too! How dare they make you -look- for information. I feel sorry for the engineer that's going to have to design the board, and look up the specs on EVERY component he puts on the board...
  • Sometimes the moderation system astounds me. I mean, on the whole, this post is not flamebait.

A morsel of genuine history is a thing so rare as to be always valuable. -- Thomas Jefferson

Working...