1 |
1026 |
ivang |
@c
|
2 |
|
|
@c COPYRIGHT (c) 1988-2002.
|
3 |
|
|
@c On-Line Applications Research Corporation (OAR).
|
4 |
|
|
@c All rights reserved.
|
5 |
|
|
@c
|
6 |
|
|
@c intro.texi,v 1.9 2002/01/17 21:47:45 joel Exp
|
7 |
|
|
@c
|
8 |
|
|
|
9 |
|
|
@ifinfo
|
10 |
|
|
@node Introduction, Introduction Supporting Tools, Top, Top
|
11 |
|
|
@end ifinfo
|
12 |
|
|
@chapter Introduction
|
13 |
|
|
@ifinfo
|
14 |
|
|
@menu
|
15 |
|
|
* Introduction Supporting Tools::
|
16 |
|
|
* Introduction Documentation::
|
17 |
|
|
@end menu
|
18 |
|
|
@end ifinfo
|
19 |
|
|
|
20 |
|
|
This document describes the contents, installation
|
21 |
|
|
procedure, and current status of Release @value{VERSION} of the RTEMS
|
22 |
|
|
executive. An installation procedure is provided which
|
23 |
|
|
describes the steps necessary to load and configure the RTEMS
|
24 |
|
|
environment, including the GNU Development Environment and the
|
25 |
|
|
Cygnus NEWLIB ANSI C Library, on a host computer. The status of
|
26 |
|
|
the RTEMS environment is given, which includes supported
|
27 |
|
|
processors and target boards, versions of the GNU utilities
|
28 |
|
|
which were used by the RTEMS developers for this release,
|
29 |
|
|
support libraries status, features which are not implemented,
|
30 |
|
|
and any known existing problems.
|
31 |
|
|
|
32 |
|
|
This RTEMS release package contains the following general components:
|
33 |
|
|
|
34 |
|
|
@itemize @bullet
|
35 |
|
|
@item RTEMS C Executive
|
36 |
|
|
|
37 |
|
|
@item RTEMS C Documentation Set
|
38 |
|
|
|
39 |
|
|
@item RTEMS NEWLIB ANSI C Library
|
40 |
|
|
|
41 |
|
|
@item Patches to GNU Development Tools
|
42 |
|
|
|
43 |
|
|
@end itemize
|
44 |
|
|
|
45 |
|
|
There is a mailing list dedicated to RTEMS. This is
|
46 |
|
|
a Majordomo style mailing list and may be subscribed to
|
47 |
|
|
by sending a message to rtems-list-request@@OARcorp.com with
|
48 |
|
|
the following line as the body:
|
49 |
|
|
|
50 |
|
|
@example
|
51 |
|
|
subscribe rtems_user@@your_email_goes_here.com
|
52 |
|
|
@end example
|
53 |
|
|
|
54 |
|
|
Please replace rtems_user@@your_email_goes_here.com with your
|
55 |
|
|
email address.
|
56 |
|
|
|
57 |
|
|
@ifinfo
|
58 |
|
|
@node Introduction Supporting Tools, GNU Development Tools, Introduction, Introduction
|
59 |
|
|
@end ifinfo
|
60 |
|
|
@section Supporting Tools
|
61 |
|
|
@ifinfo
|
62 |
|
|
@menu
|
63 |
|
|
* GNU Development Tools::
|
64 |
|
|
* ANSI C Libraries::
|
65 |
|
|
* GNU C Library::
|
66 |
|
|
* Cygnus NEWLIB C Library::
|
67 |
|
|
@end menu
|
68 |
|
|
@end ifinfo
|
69 |
|
|
|
70 |
|
|
This section discusses the freely available tools and
|
71 |
|
|
libraries which are part of the RTEMS Development Environment.
|
72 |
|
|
None of the tools discussed in this section were developed by
|
73 |
|
|
the RTEMS project, although many do include submissions from the
|
74 |
|
|
project. All of the tools and libraries required to build RTEMS
|
75 |
|
|
are freely available. The home ftp site for most of the non-RTEMS
|
76 |
|
|
specific tools is either prep.ai.mit.edu (18.71.0.38) or
|
77 |
|
|
ftp.cygnus.com (140.174.1.3).
|
78 |
|
|
|
79 |
|
|
Specifically of interest to embedded systems developers
|
80 |
|
|
using the GNU tools is the crossgcc mailing list. This is
|
81 |
|
|
a Majordomo style mailing list and may be subscribed to
|
82 |
|
|
by sending a message to crossgcc-request@@cygnus.com with
|
83 |
|
|
the following line as the body:
|
84 |
|
|
|
85 |
|
|
@example
|
86 |
|
|
subscribe rtems_user@@your_email_goes_here.com
|
87 |
|
|
@end example
|
88 |
|
|
|
89 |
|
|
Please replace rtems_user@@your_email_goes_here.com with your
|
90 |
|
|
email address. The FAQ for crossgcc is in the /pub/embedded/crossgcc
|
91 |
|
|
directory on ftp.cygnus.com (205.180.83.42).
|
92 |
|
|
|
93 |
|
|
@ifinfo
|
94 |
|
|
@node GNU Development Tools, ANSI C Libraries, Introduction Supporting Tools, Introduction Supporting Tools
|
95 |
|
|
@end ifinfo
|
96 |
|
|
@subsection GNU Development Tools
|
97 |
|
|
|
98 |
|
|
Numerous GNU tools are used in the RTEMS Development
|
99 |
|
|
Environment including C and Ada compilers, the GNU make program,
|
100 |
|
|
GNU m4, the GNU assembler and binary utilities (linker,
|
101 |
|
|
librarian, etc.), GNU tar, GNU zip, and the GNU debugger. These
|
102 |
|
|
tools are distributed in source form and are all licensed under
|
103 |
|
|
the GNU Public License which allows for unrestricted
|
104 |
|
|
distribution under the condition that source code always be
|
105 |
|
|
available. The Free Software Foundation is officially the
|
106 |
|
|
originator of most of the GNU tools although many individuals
|
107 |
|
|
have contributed to the GNU projects. In keeping with the
|
108 |
|
|
spirit of the GPL, most of the time the GNU tools are
|
109 |
|
|
distributed as source code without executables. It is the
|
110 |
|
|
responsibility of the local site to install each tool. Numerous
|
111 |
|
|
organizations and individuals supply executables for the GNU
|
112 |
|
|
tools. All are required by the terms of the GPL to also make
|
113 |
|
|
the source code available to the end user.
|
114 |
|
|
|
115 |
|
|
The primary ftp site for the FSF GNU tools is
|
116 |
|
|
prep.ai.mit.edu (18.71.0.38) in the /pub/gnu directory. These
|
117 |
|
|
tools are mirrored on numerous ftp sites.
|
118 |
|
|
|
119 |
|
|
Intel maintains a toolset for their i960 processor
|
120 |
|
|
family based on the GNU tools referred to as GNU/960. The
|
121 |
|
|
source code for this toolset is available from ftp.intel.com
|
122 |
|
|
(143.185.65.2). [NOTE: The GNU/960 toolset generally includes
|
123 |
|
|
an older version of GCC than that available from the FSF. When
|
124 |
|
|
the FSF version of GNU C is significantly newer than that in the
|
125 |
|
|
GNU/960 release, the RTEMS developers replace the GCC in the
|
126 |
|
|
GNU/960 toolset with the FSF release.]
|
127 |
|
|
|
128 |
|
|
Cygnus maintains an ftp site -- ftp.cygnus.com
|
129 |
|
|
(205.180.83.42) -- which contains a source code which appeals to
|
130 |
|
|
embedded developers. Of especial interest on this site are the
|
131 |
|
|
directories /pub/newlib and /pub/embedded.
|
132 |
|
|
|
133 |
|
|
@ifinfo
|
134 |
|
|
@node ANSI C Libraries, GNU C Library, GNU Development Tools, Introduction Supporting Tools
|
135 |
|
|
@end ifinfo
|
136 |
|
|
@subsection ANSI C Libraries
|
137 |
|
|
|
138 |
|
|
This section discusses the following freely
|
139 |
|
|
distributable ANSI C Libraries:
|
140 |
|
|
|
141 |
|
|
@itemize @bullet
|
142 |
|
|
@item GNU C Library, and
|
143 |
|
|
|
144 |
|
|
@item Cygnus NEWLIB
|
145 |
|
|
@end itemize
|
146 |
|
|
|
147 |
|
|
No C Library is included in the standard RTEMS
|
148 |
|
|
distribution. It is the responsibility of the user to obtain
|
149 |
|
|
and install a C Library separately.
|
150 |
|
|
|
151 |
|
|
@ifinfo
|
152 |
|
|
@node GNU C Library, Cygnus NEWLIB C Library, ANSI C Libraries, Introduction Supporting Tools
|
153 |
|
|
@end ifinfo
|
154 |
|
|
@subsection GNU C Library
|
155 |
|
|
|
156 |
|
|
The GNU C Library is a robust and well-documented C
|
157 |
|
|
Library which is distributed under the terms of the Library GNU
|
158 |
|
|
Public License (LGPL). This library was not designed for use in
|
159 |
|
|
real-time, embedded systems and the resource requirements of
|
160 |
|
|
some of the routines in this library are an obvious indication
|
161 |
|
|
of this. Additionally, this library does not have support for
|
162 |
|
|
reentrancy in the sense that each task in a multitasking system
|
163 |
|
|
could safely invoke every routine in the library. Finally, the
|
164 |
|
|
distribution terms of the LGPL are considered undesirable by
|
165 |
|
|
many embedded systems developers. However, the GNU C Library is
|
166 |
|
|
very complete and is compliant with as many standards as
|
167 |
|
|
possible. Because of this, it may be the only choice for many
|
168 |
|
|
developers.
|
169 |
|
|
|
170 |
|
|
There is currently no RTEMS support for the GNU C Library.
|
171 |
|
|
|
172 |
|
|
The primary ftp site for this library is
|
173 |
|
|
prep.ai.mit.edu (18.71.0.38).
|
174 |
|
|
|
175 |
|
|
@ifinfo
|
176 |
|
|
@node Cygnus NEWLIB C Library, Introduction Documentation, GNU C Library, Introduction Supporting Tools
|
177 |
|
|
@end ifinfo
|
178 |
|
|
@subsection Cygnus NEWLIB C Library
|
179 |
|
|
|
180 |
|
|
The Cygnus NEWLIB C Library was specifically designed
|
181 |
|
|
for real-time embedded systems. It is a small, reasonably
|
182 |
|
|
documented Library with support for reentrancy. This library is
|
183 |
|
|
a collection of freely distributable and public domain source
|
184 |
|
|
code and is freely distributable with as few restrictions as
|
185 |
|
|
possible placed on the end user.
|
186 |
|
|
|
187 |
|
|
The primary ftp site for this library is ftp.cygnus.com (205.180.83.42).
|
188 |
|
|
|
189 |
|
|
@ifinfo
|
190 |
|
|
@node Introduction Documentation, Installation Procedure, Cygnus NEWLIB C Library, Introduction
|
191 |
|
|
@end ifinfo
|
192 |
|
|
@section Documentation
|
193 |
|
|
|
194 |
|
|
The RTEMS Documentation Set is provided online at http://www.OARcorp.com/
|
195 |
|
|
as reference information for all levels of RTEMS users. The set includes
|
196 |
|
|
the following documents:
|
197 |
|
|
|
198 |
|
|
@itemize @bullet
|
199 |
|
|
@item C Applications User's Guide
|
200 |
|
|
|
201 |
|
|
@item Intel i386 Applications Supplement
|
202 |
|
|
|
203 |
|
|
@item Intel i960CA Applications Supplement
|
204 |
|
|
|
205 |
|
|
@item Motorola MC68xxx Applications Supplement
|
206 |
|
|
|
207 |
|
|
@item Hewlett Packard PA-RISC 1.1 Applications Supplement
|
208 |
|
|
|
209 |
|
|
@item SPARC Applications Supplement
|
210 |
|
|
|
211 |
|
|
@item Development Environment Guide
|
212 |
|
|
|
213 |
|
|
@item Release Notes
|
214 |
|
|
@end itemize
|
215 |
|
|
|
216 |
|
|
The RTEMS documentation set is available in alternate formats to
|
217 |
|
|
support customers.
|