Slashdot Mirror


Requirements for Embedded Linux

An anonymous reader sent in: "As Embedded Linux becomes established as a solid alternative to many proprietary OSes and RTOSes, demands on embedded Linux developers and providers are increasing. This detailed technical article by Nicholas McGuire sketches the top requirements for Embedded Linux systems including considerations of user interface, network capabilities, security issues, resource optimization, performance requirements and issues, and compatibility and standards issues."

4 of 79 comments (clear)

  1. Read this! by Anonymous Coward · · Score: 2, Informative
  2. Re:Advice by clasher · · Score: 2, Informative
    I would take a look at using uClibc a C library for embedded Linux systems. (they are currently working on pthread support in the cvs which is supposedly what is keeping it from being used to compile mozilla/galeon)
    BusyBox for basic embedded versions of common linux apps (e.g. init, cp, sed, etc.)
    KDrive a tiny X server from XFree86
    Galeon for a fairly small browser (there are some other smaller ones in development (for example Skipstone and Dillo)

    What I would do is compile a stripped down kernel, use busybox for most system apps, and have your init scripts call the tinyX server and then instead of using a window manager have the startx script start galeon in full screen mode using tabs instead of separate windows for popups. The only difficult part may be getting mozilla or galeon compiled because of the gtk requirements) You could try the Xlib mozilla port perhaps.

    For a little bit of info on how I have done a similar project take a look at my linux on a floppy page.

  3. Embedded vs. "desktop" perspectives by apk · · Score: 5, Informative
    First off, it's an excellent article covering most of the issues that arise in embedded systems -- you should at least peruse it if you're going to comment in this thread. One of the biggest issues for non-embedded developers to understand is that each development task is somewhat unique -- different hardware, I/O requirements, cost targets, time to market, etc. It's not a [relatively] standard environment like that of a typical desktop computer. In fact, the vast majority of embedded devices are "headless" -- no keyboard or monitor, so support for video drivers and/or X only impacts a very small number of applications.

    My company recently went down the path of evaluating several embedded linux suppliers, including Hard Hat Linux, LynuxWorks, RTLinux, and others. This evaluation was for an embedded communications platform.

    There are many "real-world" issues that will arise when considering Linux instead of some of the more established embedded OS players (WindRiver/pSOS, Green Hills, Keil, QNX, et al -- see Embedded Systems Programming magazine for a pdf summary of embedded OS providers). These real-world issues, which will vary in importance among organizations for various reasons, include:

    • Existing non-linux OS usage (e.g., WindRiver)
    • Staff familiarity with Unix-like programming (most embedded developers know traditional RTOS-like architectures, not unix IPC methods or socket programming)
    • Ease/difficulty with which already-written application software can migrate to a new OS
    • OS support for preferred hardware devices (processor, communications peripherals, flash, etc. -- writing drivers from scratch isn't desirable)
    • Internal corporate or organizational resistance to change (don't underestimate this one, folks!)
    • Product life cycle phase
    • Existing customer experience(s) with any previous OS-related behavior that may change under linux (customers like seeing behaviors they've seen before, not something new)
    • Hard real-time versus soft real-time requirement(s)
    • Communications stack and protocol requirements

    In short, development in the embedded world tends to have many more complications associated with it. That's not necessarily bad -- in fact it often makes it more technically challenging and thus professionally satisfying -- it's just something that ought to be recognized, acknowledged, and taken into account when OS decisions are being made.


    Andy

  4. Embedded Linux Presentations by Bill+Kendrick · · Score: 4, Informative
    The last two Linux Users' Group of Davis meetings have dealt with embedded Linux.

    At our last meeting, a couple of cool folks from BlueMug in Berkeley came and talked about an embedded Linux prototype they built for a client (photos). Their presentation slide is also online here (2MB PDF).

    At the meeting before that, Rob Wehrli of Arizona Cooperative Power came to talk about Clinux (photos). His presentation is online, too.

    Enjoy!