What Happened to Object Software?

CrossGCC FAQ

Gnu CC manuals in HTML

Next Previous Contents

10. Operating systems for embedded systems

10.1 RTEMS

RTEMS is a freely available real-time executive with multiprocessor capabilities. RTEMS was designed to provide performance and capabilities similar to those of the best commercial executives. The directive execution times and other critical performance measures such as interrupt latency are comparable to those of commercial executives. It was developed by On-Line Applications Research Corporation (OAR) under contract to the U.S. Army Missile Command.

RTEMS includes support for multiple APIs. Currently RTEMS supports an RTEID based API which is similar to pSOS+ and a POSIX threads API. RTEMS has a number of advanced real-time features including optional rate monotonic scheduling support, binary semapahores with priority inheritance, and watchdog timer functions.

RTEMS includes a port of the FreeBSD TCP/IP stack that has very high performance on very modest hardware. A remote debug server is supported on some targets that allows debugging across the network.

RTEMS provides a rich run-time environment with a reentrant C library, POSIX 1003.1b support, optional debug aids like stack overflow and heap integrity checking, a C++ interface, Ada95 bindings, and much more.

RTEMS is built using GNU autoconf and can be built on any host supporting the GNU tools including Linux, FreeBSD, NetBSD, Solaris, and MS-Windows to name but a few. The current RTEMS release supports a the following CPU families:

  • Motorola m680x0, m683xx, and ColdFire
  • Motorola and IBM PowerPC (4xx, 6xx, 7xx, and 8xx)
  • Hitachi SH
  • Intel i386, i486, Pentium, and i960
  • SPARC
  • MIPS
  • HP PA-RISC
  • AMD A29K

There are over 35 Board Support Packages included with RTEMS including BSPs for the SPARC and PowerPC simulators included with gdb. There are numerous BSPs for CPUs targetting the embedded market such as the Motorola m683xx and mpc8xx series which support the on-CPU peripherals.

WWW:

http://www.OARcorp.com

Email:

rtems-info@OARcorp.comor

Joel Sherrill (joel@OARcorp.com)

10.2 eCOS

eCOS stands for 'Embedded Cygnus Operating System'. All of the following information is from the Cygnus web site.

The embedded Cygnus operating system (eCos) is an open-source, configurable, portable, and royalty-free embedded RTOS. The system comes with everything necessary to develop eCos based applications, including tools, documentation and complete sources. All eCos runtime source code is distributed under the Cygnus eCos Public License (CEPL), a derivative of the Netscape Public License.
This release is a 'Technology Release'. It provides all the functionality needed for a wide variety of embedded applications, and it has undergone extensive testing. However at this stage it is only available for a limited number of target architectures, and there is lots of additional functionality that can and will be added. We have chosen to release the system at this stage because it can already be of great benefit to many embedded system developers, and to encourage the development of an eCos open source user community on the net which will help to move the system forwards.

eCos Functionality

  • Hardware Abstraction Layer (HAL)
  • Real-time kernel
  • Interrupt handling
  • Exception handling
  • Choice of schedulers
  • Thread support
  • Rich set of synchronization primitives
  • Timers, counters and alarms
  • Choice of memory allocators
  • Debug and instrumentation support
  • uITRON 3.0 compatible API layered on top of the basic kernel
  • ISO C library

Supported Targets

  • Matsushita MN10300 processor, stdeval1 evaluation board and simulator
  • Toshiba TX39 processor, jmr3904 evaluation board and simulator
  • PowerPC MPC860 processor, Cogent evaluation board and psim simulator. This target should be considered a beta.

Supported Hosts

The main supported host is Windows NT on an x86-based host. The system has also been tested on Red Hat 5.1 Linux using an x86-based host, and on both Windows 95 and 98, but these hosts should also be considered a beta. The system has not been tested on any other host platform.

Host Software

The system comes with full support for manual configuration of the system on all host platforms. In addition Windows users get a graphical configuration tool which simplifies the process of configuring a system and validating the resulting system. This tool is not yet available for Linux users. It is likely that new host tools, including future versions of the graphical configuration tool, will only be available as part of the Developer Kit product.

The system comes with a full set of tools needed for embedded systems development. This includes the compilers gcc and g++, the assembler and linker, the debugger gdb, and simulators for all the target architectures.

WWW:

http://www.cygnus.com/ecosand

http://sourceware.cygnus.com/ecos

E-mail:

ecos-info@cygnus.com


Next Previous Contents