RTEMS for Embedded Software Developers

RTEMS (Real-Time Executive for Multiprocessor Systems) is a real-time operating system (RTOS) designed for embedded systems.[1]

The long term goal of this book is to instruct the reader in:

  1. Getting Started (Getting to "Hello World") 75% developed  as of March 2015 ( March 2015 )
    1. Getting the cross-toolset
    2. Building RTEMS
    3. Running RTEMS
  2. Contributing While Learning 0% developed  as of March 2015 ( March 2015 )
  3. The RTEMS Git Repository 75% developed  as of March 2015 ( March 2015 )
    1. list RTEMS applications here
  4. RTEMS Addon packages 25% developed  as of March 2015 ( March 2015 )
    1. Using the existing RTEMS Addon Packages
    2. Adding to the RTEMS Addon Packages
  5. Device Drivers 0% developed  as of March 2015 ( March 2015 )
    1. Existing device drivers
    2. Modifying device drivers
  6. RTEMS Managers
    1. To be listed
  7. Modifying the RTEMS source code
    1. CPU kit
    2. Board Support Packages

Why RTEMS? edit

  1. RTEMS is an open source RTOS.
  2. RTEMS is an abstraction layer that makes it possible to write an application for one embedded system, and run that application on over 10 chip families and 100 board support packages.
  3. RTEMS started in 1989, and still has an active development community.
  4. RTEMS is designed to be a POSIX compliant RTOS, there is less difficulty associated with porting software designed to run on BSD or Linux.[2]
  5. RTEMS includes a TCP/IP stack[3]
  6. RTEMS includes support for a variety of filesystems including the NFS and the FAT filesystem.
  7. RTEMS supports thread-aware debug over ethernet[4]

References edit

  1. RTEMS wiki
  2. "RTEMS POSIX 1003.1 Compliance Guide". p. 1. quote: "RTEMS supports a single process, multithreaded POSIX 1003.1b environment. ... providing routines like getpid() and making them work in a sensible fashion for an embedded environment ... makes it significantly easier to port code from a UNIX environment without modifying it."
  3. "RTEMS On-Line Library".
  4. "About RTEMS".