1 | @c |
---|
2 | @c COPYRIGHT (c) 1988-2002. |
---|
3 | @c On-Line Applications Research Corporation (OAR). |
---|
4 | @c All rights reserved. |
---|
5 | @c |
---|
6 | @c $Id$ |
---|
7 | @c |
---|
8 | |
---|
9 | @chapter RTEMS Specific Utilities |
---|
10 | |
---|
11 | This section describes the additional commands |
---|
12 | available within the RTEMS Development Environment. Although |
---|
13 | some of these commands are of general use, most are included to |
---|
14 | provide some capability necessary to perform a required function |
---|
15 | in the development of the RTEMS executive, one of its support |
---|
16 | components, or an RTEMS based application. The commands have |
---|
17 | been classified into the following categories for clarity: |
---|
18 | |
---|
19 | @itemize @bullet |
---|
20 | @item C Language Specific Utilities |
---|
21 | |
---|
22 | @item Ada Language Specific Utilities |
---|
23 | @end itemize |
---|
24 | |
---|
25 | Some of the commands are implemented as C programs. |
---|
26 | However, most commands are implemented as Bourne shell scripts. |
---|
27 | Even if the current user has selected a different shell, the |
---|
28 | scripts will automatically invoke the Bourne shell during their |
---|
29 | execution lifetime. |
---|
30 | |
---|
31 | The commands are presented in UNIX manual page style |
---|
32 | for compatibility and convenience. A standard set of paragraph |
---|
33 | headers were used for all of the command descriptions. If a |
---|
34 | section contained no data, the paragraph header was omitted to |
---|
35 | conserve space. Each of the permissible paragraph headers and |
---|
36 | their contents are described below: |
---|
37 | |
---|
38 | @table @code |
---|
39 | @item SYNOPSIS |
---|
40 | describes the command syntax |
---|
41 | |
---|
42 | @item DESCRIPTION |
---|
43 | a full description of the command |
---|
44 | |
---|
45 | @item OPTIONS |
---|
46 | describes each of the permissible options for the command |
---|
47 | |
---|
48 | @item NOTES |
---|
49 | lists any special noteworthy comments about the command |
---|
50 | |
---|
51 | @item ENVIRONMENT |
---|
52 | describes all environment variables utilized by the command |
---|
53 | |
---|
54 | @item EXAMPLES |
---|
55 | illustrates the use of the command with specific examples |
---|
56 | |
---|
57 | @item FILES |
---|
58 | provides a list of major files that the command references |
---|
59 | |
---|
60 | @item SEE ALSO |
---|
61 | lists any relevant commands which can be consulted |
---|
62 | @end table |
---|
63 | |
---|
64 | Most environment variables referenced by the commands |
---|
65 | are defined for the RTEMS Development Environment during the |
---|
66 | login procedure. During login, the user selects a default RTEMS |
---|
67 | environment through the use of the Modules package. This tool |
---|
68 | effectively sets the environment variables to provide a |
---|
69 | consistent development environment for a specific user. |
---|
70 | Additional environment variables within the RTEMS environment |
---|
71 | were set by the system administrator during installation. When |
---|
72 | specifying paths, a command description makes use of these |
---|
73 | environment variables. |
---|
74 | |
---|
75 | When referencing other commands in the SEE ALSO |
---|
76 | paragraph, the following notation is used: command(code). |
---|
77 | Where command is the name of a related command, and code is a |
---|
78 | section number. Valid section numbers are as follows: |
---|
79 | |
---|
80 | @table @code |
---|
81 | @item 1 |
---|
82 | Section 1 of the standard UNIX documentation |
---|
83 | |
---|
84 | @item 1G |
---|
85 | Section 1 of the GNU documentation |
---|
86 | |
---|
87 | @item 1R |
---|
88 | a manual page from this document, the RTEMS Development Environment Guide |
---|
89 | @end table |
---|
90 | |
---|
91 | For example, ls(1) means see the standard ls command |
---|
92 | in section 1 of the UNIX documentation. gcc020(1G) means see |
---|
93 | the description of gcc020 in section 1 of the GNU documentation. |
---|
94 | |
---|
95 | @section C Language Specific Utilities |
---|
96 | |
---|
97 | The C language utilities provide a powerful set of |
---|
98 | tools which combine to allow operations within the RTEMS |
---|
99 | Development Environment to be consistent and easy to use. Much |
---|
100 | effort was devoted to providing as close to the standard UNIX |
---|
101 | and GNU style of operations as possible. Each of these |
---|
102 | utilities are described in the section below. |
---|
103 | |
---|
104 | @subsection packhex - Compress Hexadecimal File |
---|
105 | |
---|
106 | @subheading SYNOPSIS |
---|
107 | |
---|
108 | @example |
---|
109 | packhex <source >destination |
---|
110 | @end example |
---|
111 | |
---|
112 | @subheading DESCRIPTION |
---|
113 | |
---|
114 | packhex accepts Intel Hexadecimal or Motorola Srecord |
---|
115 | on its standard input and attempts to pack as many contiguous |
---|
116 | bytes as possible into a single hexadecimal record. Many |
---|
117 | programs output hexadecimal records which are less than 80 bytes |
---|
118 | long (for human viewing). The overhead required by each |
---|
119 | unnecessary record is significant and packhex can often reduce |
---|
120 | the size of the download image by 20%. packhex attempts to |
---|
121 | output records which are as long as the hexadecimal format |
---|
122 | allows. |
---|
123 | |
---|
124 | @subheading OPTIONS |
---|
125 | |
---|
126 | This command has no options. |
---|
127 | |
---|
128 | @subheading EXAMPLES |
---|
129 | |
---|
130 | Assume the current directory contains the Motorola |
---|
131 | Srecord file download.sr. Then executing the command: |
---|
132 | |
---|
133 | @example |
---|
134 | packhex <download.sr >packed.sr |
---|
135 | @end example |
---|
136 | |
---|
137 | will generate the file packed.sr which is usually |
---|
138 | smaller than download.sr. |
---|
139 | |
---|
140 | @subheading CREDITS |
---|
141 | |
---|
142 | The source for packhex first appeared in the May 1993 |
---|
143 | issue of Embedded Systems magazine. The code was downloaded |
---|
144 | from their BBS. Unfortunately, the author's name was not |
---|
145 | provided in the listing. |
---|
146 | |
---|
147 | @subsection unhex - Convert Hexadecimal File into Binary Equivalent |
---|
148 | |
---|
149 | @subheading SYNOPSIS |
---|
150 | |
---|
151 | @example |
---|
152 | unhex [-valF] [-o file] [file [file ...] ] |
---|
153 | @end example |
---|
154 | |
---|
155 | @subheading DESCRIPTION |
---|
156 | |
---|
157 | unhex accepts Intel Hexadecimal, Motorola Srecord, or |
---|
158 | TI 'B' records and converts them to their binary equivalent. |
---|
159 | The output may sent to standout or may be placed in a specified |
---|
160 | file with the -o option. The designated output file may not be |
---|
161 | an input file. Multiple input files may be specified with their |
---|
162 | outputs logically concatenated into the output file. |
---|
163 | |
---|
164 | @subheading OPTIONS |
---|
165 | |
---|
166 | This command has the following options: |
---|
167 | |
---|
168 | @table @code |
---|
169 | @item v |
---|
170 | Verbose |
---|
171 | |
---|
172 | @item a base |
---|
173 | First byte of output corresponds with base |
---|
174 | address |
---|
175 | |
---|
176 | @item l |
---|
177 | Linear Output |
---|
178 | |
---|
179 | @item o file |
---|
180 | Output File |
---|
181 | |
---|
182 | @item F k_bits |
---|
183 | Fill holes in input with 0xFFs up to k_bits * 1024 bits |
---|
184 | @end table |
---|
185 | |
---|
186 | @subheading EXAMPLES |
---|
187 | |
---|
188 | The following command will create a binary equivalent |
---|
189 | file for the two Motorola S record files in the specified output |
---|
190 | file binary.bin: |
---|
191 | |
---|
192 | @example |
---|
193 | unhex -o binary.bin downloadA.sr downloadB.sr |
---|
194 | @end example |
---|
195 | |
---|
196 | @subsection size_rtems - report RTEMS size information |
---|
197 | |
---|
198 | @subheading SYNOPSIS |
---|
199 | |
---|
200 | @example |
---|
201 | size_rtems |
---|
202 | @end example |
---|
203 | |
---|
204 | @subheading DESCRIPTION |
---|
205 | |
---|
206 | size_rtems analyzes RTEMS and determines all of the |
---|
207 | critical sizing information which is reported in the related |
---|
208 | documentation. |
---|
209 | |
---|
210 | @subheading EXAMPLES |
---|
211 | |
---|
212 | To generate the RTEMS size report for the currently |
---|
213 | configured processor, execute the following command: |
---|
214 | |
---|
215 | @example |
---|
216 | size_rtems |
---|
217 | @end example |
---|
218 | |
---|
219 | Although the actual size information will differ, a |
---|
220 | report of the following format will be output: |
---|
221 | |
---|
222 | @example |
---|
223 | RTEMS SIZE REPORT |
---|
224 | |
---|
225 | CODE DATA BSS |
---|
226 | ================== |
---|
227 | MANAGERS: 15988 0 0 |
---|
228 | CORE : 4568 0 0 |
---|
229 | CPU : 364 0 0 |
---|
230 | OVERALL : 20556 0 0 |
---|
231 | MINIMUM : 8752 0 0 |
---|
232 | |
---|
233 | init : 1592 0 0 |
---|
234 | tasks : 2440 0 0 |
---|
235 | intr : 64 0 0 |
---|
236 | clock : 2252 0 0 |
---|
237 | sem : 876 0 0 |
---|
238 | msg : 1624 0 0 |
---|
239 | event : 604 0 0 |
---|
240 | signal : 212 0 0 |
---|
241 | part : 872 0 0 |
---|
242 | region : 844 0 0 |
---|
243 | dpmem : 532 0 0 |
---|
244 | timer : 424 0 0 |
---|
245 | io : 288 0 0 |
---|
246 | fatal : 40 0 0 |
---|
247 | rtmon : 764 0 0 |
---|
248 | mp : 2984 0 0 |
---|
249 | |
---|
250 | sem : 4 0 0 |
---|
251 | msg : 4 0 0 |
---|
252 | event : 4 0 0 |
---|
253 | signal : 4 0 0 |
---|
254 | part : 4 0 0 |
---|
255 | region : 4 0 0 |
---|
256 | timer : 4 0 0 |
---|
257 | dpmem : 4 0 0 |
---|
258 | io : 4 0 0 |
---|
259 | rtmon : 4 0 0 |
---|
260 | mp : 8 0 0 |
---|
261 | @end example |
---|
262 | |
---|
263 | @subheading SEE ALSO |
---|
264 | |
---|
265 | gsize020(1G), gsize386(1G), gsize960(1G) |
---|
266 | |
---|
267 | |
---|