diff options
author | Chris Johns <chrisj@rtems.org> | 2016-07-06 14:59:00 +1000 |
---|---|---|
committer | Chris Johns <chrisj@rtems.org> | 2016-07-06 14:59:00 +1000 |
commit | 8da3a62701bd78adc6c2d9e3f858c593a82357c0 (patch) | |
tree | d36bd54da6e5ed6b616fa977e700182f5c564e36 /user/hardware/architectures.rst | |
parent | Update the glossary. (diff) | |
download | rtems-docs-8da3a62701bd78adc6c2d9e3f858c593a82357c0.tar.bz2 |
Add a Hardware section.
Diffstat (limited to 'user/hardware/architectures.rst')
-rw-r--r-- | user/hardware/architectures.rst | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/user/hardware/architectures.rst b/user/hardware/architectures.rst new file mode 100644 index 0000000..1d6fd26 --- /dev/null +++ b/user/hardware/architectures.rst @@ -0,0 +1,55 @@ +.. comment SPDX-License-Identifier: CC-BY-SA-4.0 + +.. comment: Copyright (c) 2016 Chris Johns <chrisj@rtems.org> +.. comment: All rights reserved. + +Architectures +------------- +.. index:: Architectures + +An RTEMS architecture is a class or family of a processor that RTEMS +supports. The RTEMS architecture model follows the architecture model of +GCC. An architecture in GCC results in a specific RTEMS GCC compiler. This +compiler may support a range of processors in the family that may have +differences in instructions sets or floating point support. RTEMS configures +GCC to create separate runtime libraries for each supported instruction set and +floating point unit in the architecture. This is termed **multlib**. Multlibs +are manage automatically by GCC by selecting a specific instruction set or +specific device in a family. + +RTEMS executables are statically linked for a specific target therefore a +precise and exact match can be made for the hardware that extracts the best +possible performance. The compiler supports the variants to the instruction set +and RTEMS extends the specialization to specific processors in an +architecture. This specialization gives RTEMS a finer resolution of features +and capabilites a specific device may offer allowing the kernel, drivers and +application to make the most of those resources. The trade off is portability +however this is not important because the executable are statically linked for +a single target. + +.. note:: + + RTEMS support dynamically load code through the ``dlopen`` + interface. Loading code via this interface results in an executable image + that is equivalent to statically linked executable of the same code. Dynamic + loading is a system level tool for system architects. + +RTEMS supports 17 architectures: + +- arm +- bfin +- epiphany +- i386 +- lm32 +- m32c +- m68k +- mips +- moxie +- nios2 +- no_cpu +- or1k +- powerpc +- sh +- sparc +- sparc64 +- v850 |