RTEMS Logo

RTEMS 4.6.1 On-Line Library


Configuring a System Determining Memory Requirements

PREV UP NEXT Bookshelf RTEMS Ada User's Guide

22.12: Determining Memory Requirements

Since memory is a critical resource in many real-time embedded systems, the RTEMS Classic API was specifically designed to allow unused managers to be forcibly excluded from the run-time environment. This allows the application designer the flexibility to tailor RTEMS to most efficiently meet system requirements while still satisfying even the most stringent memory constraints. As result, the size of the RTEMS executive is application dependent. A Memory Requirements worksheet is provided in the Applications Supplement document for a specific target processor. This worksheet can be used to calculate the memory requirements of a custom RTEMS run-time environment. To insure that enough memory is allocated for future versions of RTEMS, the application designer should round these memory requirements up. The following Classic API managers may be optionally excluded:

RTEMS is designed to be built and installed as a library that is linked into the application. As such, much of RTEMS is implemented in such a way that there is a single entry point per source file. This avoids having the linker being forced to pull large object files in their entirety into an application when the application references a single symbol.

RTEMS based applications must somehow provide memory for RTEMS' code and data space. Although RTEMS' data space must be in RAM, its code space can be located in either ROM or RAM. In addition, the user must allocate RAM for the RTEMS RAM Workspace. The size of this area is application dependent and can be calculated using the formula provided in the Memory Requirements chapter of the Applications Supplement document for a specific target processor.

All private RTEMS data variables and routine names used by RTEMS begin with the underscore ( _ ) character followed by an upper-case letter. If RTEMS is linked with an application, then the application code should NOT contain any symbols which begin with the underscore character and followed by an upper-case letter to avoid any naming conflicts. All RTEMS directive names should be treated as reserved words.


PREV UP NEXT Bookshelf RTEMS Ada User's Guide

Copyright © 1988-2004 OAR Corporation