Slashdot Mirror


How to Embed Linux

Doc Ruby writes "LinuxJournal has an intro to uCLinux by David McCullough, one of the project developers. Specific techniques are discussed for Linux programming on this version, that runs on devices without the MMU that the Linux VM usually requires. Developers can make Linux apps run on uCLinux devices, including PDAs like a Palm IIIx, routers, DVD players, and even a FPGA."

9 of 25 comments (clear)

  1. Embed Linux? It's not an ideal choice. by Anonymous Coward · · Score: 4, Interesting

    Two words: Interrupt latency.

    Linux is a server/desktop OS. It's not a real-time OS. There are very different requirements for that job, and Linux would need a complete redesign to meet them. Read Ed Nisley's column in Dr. Dobb's; he's gone into detail about this stuff.

    If you try to please everybody, you'll please nobody. There is no need to put a server OS in a defibrillator.

    There are many other options far better suited to the problem domain. QNX, for example.

    1. Re:Embed Linux? It's not an ideal choice. by byolinux · · Score: 3, Funny

      Linux is a server/desktop OS. It's not a real-time OS.

      It's a kernel. But yeah, it's not a real time OS. Or a dog. Or a salad.

    2. Re:Embed Linux? It's not an ideal choice. by sk6307 · · Score: 2, Funny

      I think you will find that linux can be real time.

      For that matter, it can also be a dog, or a salad. :)

    3. Re:Embed Linux? It's not an ideal choice. by SmegTheLight · · Score: 3, Insightful

      There are many other options far better suited to the problem domain

      Which problem domain ?

      It seems you are assuming that every possible embedded situation requires real time scheduling from the OS.

      I use the Linux kernel for many embedded devices where I work, but I have not REQUIRED real time scheduling yet for any of them. DVD Player, Parking Machine, Firewall Appliance, Router, etc... None of those need real time scheduling.

      There is no need to put a server OS in a defibrillator

      But I don't make defibrillators.. :)

      --
      Time travel is possible. We are quickly heading for 1984.
    4. Re:Embed Linux? It's not an ideal choice. by Voivod · · Score: 3, Informative

      Two words: Interrupt latency.

      Tried RTLinux? All the fun of Linux, with all the benefits of a hard real-time microkernel. I just finished about 3 weeks of development with it, and it performed as advertised. It was very cool to have a scope hooked up watching interrupt line latency and see no change in ISR performance as I ran a kernel compile and copied huge files around in the background while my hard real-time task continued marching along.
    5. Re:Embed Linux? It's not an ideal choice. by GlassHeart · · Score: 2
      A DVD player on sufficiently low-powered hardware would need real time scheduling. It has to read the audio and video streams from disc, decode, and playback according to a strict schedule (~30 fps on NTSC, etc).

      Any "need" for real time scheduling can be mitigated by using much faster hardware. However, we should not confuse the analysis of the hard real time requirements with overkill solutions.

      A firewall or router, on the other hand, is generally required to have a certain average performance. That is, even if a particular packet is delayed a little more than usual, nobody is likely to notice and be upset. Therefore, they generally don't have hard real time requirements, and even unmodified Linux boxes do well at these tasks.

  2. The best way (to embed Linux) by SpaceLifeForm · · Score: 4, Funny

    is to cram a distro up the back end of Darl McBride.

    --
    You are being MICROattacked, from various angles, in a SOFT manner.
  3. This may be a dumb question.. by irenetheno · · Score: 2, Interesting
    ..but is "uCLinux" pronounced "micro-C Linux?"

    I haven't seen this answered in any articles or FAQs.

  4. uClinux Also on an iPod by BlindSpy · · Score: 2, Interesting

    Its been /.ed about on multiple occations, but the uClinux distro (if you can call it that?) is what we use on the

    We've got really great developers working on the project and even though there is no GUI way of putting linux on your iPod, its in the works. Its still simple to any /.er to do without a GUI and I suggest checking it out.

    We're still working on getting the 2.6 kernel working with the iPod. We've only sucessfully got 2.6 working once (I think) and it sounded great! 2.4 doesnt sound as good but it works flawlessly.

    Check out the forums if you have any questions or want to help out. We're always looking for new developers. We've also got #ipodlinux on irc.freenode.net

    --
    Whoever dies with the most toys wins.