source: rtems-docs/user/hardware/architectures.rst @ aa1c010

4.115
Last change on this file since aa1c010 was aa1c010, checked in by Chris Johns <chrisj@…>, on 11/09/16 at 01:20:46

user: Fix header levels.

  • Property mode set to 100644
File size: 1.9 KB
Line 
1.. comment SPDX-License-Identifier: CC-BY-SA-4.0
2
3.. comment: Copyright (c) 2016 Chris Johns <chrisj@rtems.org>
4.. comment: All rights reserved.
5
6Architectures
7=============
8.. index:: Architectures
9
10An RTEMS architecture is a class or family of a processor that RTEMS
11supports. The RTEMS architecture model follows the architecture model of
12GCC. An architecture in GCC results in a specific RTEMS GCC compiler. This
13compiler may support a range of processors in the family that may have
14differences in instructions sets or floating point support. RTEMS configures
15GCC to create separate runtime libraries for each supported instruction set and
16floating point unit in the architecture. This is termed **multlib**. Multlibs
17are manage automatically by GCC by selecting a specific instruction set or
18specific device in a family.
19
20RTEMS executables are statically linked for a specific target therefore a
21precise and exact match can be made for the hardware that extracts the best
22possible performance. The compiler supports the variants to the instruction set
23and RTEMS extends the specialization to specific processors in an
24architecture. This specialization gives RTEMS a finer resolution of features
25and capabilites a specific device may offer allowing the kernel, drivers and
26application to make the most of those resources. The trade off is portability
27however this is not important because the executable are statically linked for
28a single target.
29
30.. note::
31
32   RTEMS support dynamically load code through the ``dlopen``
33   interface. Loading code via this interface results in an executable image
34   that is equivalent to statically linked executable of the same code. Dynamic
35   loading is a system level tool for system architects.
36
37RTEMS supports 17 architectures:
38
39- arm
40- bfin
41- epiphany
42- i386
43- lm32
44- m32c
45- m68k
46- mips
47- moxie
48- nios2
49- no_cpu
50- or1k
51- powerpc
52- sh
53- sparc
54- sparc64
55- v850
Note: See TracBrowser for help on using the repository browser.