summaryrefslogtreecommitdiffstats
path: root/user/hardware/architectures.rst
diff options
context:
space:
mode:
authorChris Johns <chrisj@rtems.org>2016-07-06 14:59:00 +1000
committerChris Johns <chrisj@rtems.org>2016-07-06 14:59:00 +1000
commit8da3a62701bd78adc6c2d9e3f858c593a82357c0 (patch)
treed36bd54da6e5ed6b616fa977e700182f5c564e36 /user/hardware/architectures.rst
parentUpdate the glossary. (diff)
downloadrtems-docs-8da3a62701bd78adc6c2d9e3f858c593a82357c0.tar.bz2
Add a Hardware section.
Diffstat (limited to 'user/hardware/architectures.rst')
-rw-r--r--user/hardware/architectures.rst55
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