1 <!-- Copyright (C) 2003 Red Hat, Inc. -->
2 <!-- This material may be distributed only subject to the terms -->
3 <!-- and conditions set forth in the Open Publication License, v1.0 -->
4 <!-- or later (the latest version is presently available at -->
5 <!-- http://www.opencontent.org/openpub/). -->
6 <!-- Distribution of the work or derivative of the work in any -->
7 <!-- standard (paper) book form is prohibited unless prior -->
8 <!-- permission is obtained from the copyright holder. -->
12 >eCos User Guide</TITLE
13 ><meta name="MSSmartTagsPreventParsing" content="TRUE">
16 CONTENT="Modular DocBook HTML Stylesheet Version 1.76b+
20 HREF="user-guide-introduction.html"></HEAD
31 NAME="ECOS-USER-GUIDE"><DIV
36 NAME="AEN2">eCos User Guide</H1
39 >Copyright © 2001, 2002 by Red Hat, Inc.</P
42 >Copyright © 2003 by eCosCentric Ltd.</P
48 >Documentation licensing terms</B
51 >This material may be distributed only subject to the terms
52 and conditions set forth in the Open Publication License, v1.0
53 or later (the latest version is presently available at
55 HREF="http://www.opencontent.org/openpub/"
57 >http://www.opencontent.org/openpub/</A
60 >Distribution of the work or derivative of the work in any
61 standard (paper) book form is prohibited unless prior
62 permission is obtained from the copyright holder.</P
72 >Red Hat, the Red Hat Shadow Man logo®, eCos™, RedBoot™,
73 GNUPro®, and Insight™ are trademarks of Red Hat, Inc. </P
75 >Sun Microsystems® and Solaris® are registered trademarks of
76 Sun Microsystems, Inc. </P
78 >SPARC® is a registered trademark of SPARC International, Inc., and
79 is used under license by Sun Microsystems, Inc. </P
81 >Intel® is a registered trademark of Intel Corporation.</P
83 >Motorola™ is a trademark of Motorola, Inc.</P
85 >ARM® is a registered trademark of Advanced RISC Machines, Ltd.</P
87 >MIPS™ is a trademark of MIPS Technologies, Inc.</P
89 >Toshiba® is a registered trademark of the Toshiba Corporation.</P
91 >NEC® is a registered trademark if the NEC Corporation.</P
93 >Cirrus Logic® is a registered trademark of Cirrus Logic, Inc.</P
95 >Compaq® is a registered trademark of the Compaq Computer Corporation.</P
97 >Matsushita™ is a trademark of the Matsushita Electric Corporation.</P
99 >Samsung® and CalmRISC™ are trademarks or registered trademarks
102 >Linux® is a registered trademark of Linus Torvalds. </P
104 >UNIX® is a registered trademark of The Open Group. </P
106 >Microsoft®, Windows®, and Windows NT® are registered trademarks
107 of Microsoft Corporation, Inc. </P
109 >All other brand and product names, trademarks, and copyrights are the
110 property of their respective owners. </P
118 >Table of Contents</B
122 HREF="user-guide-introduction.html"
129 HREF="ecos-key-features.html"
134 HREF="ecos-overview.html"
142 HREF="ecos-licensing.html"
146 > Licence Overview</A
152 HREF="ecos-licensing.html#ECOS-LICENSING-QNA"
153 >Questions and answers</A
157 HREF="ecos-licensing-previous.html"
164 HREF="notation-and-conventions.html"
165 >Notation and Conventions</A
171 HREF="notation-and-conventions.html#GDB-AND-GCC-COMMAND-NOTATION"
172 >GDB and GCC Command Notation</A
176 HREF="directory-and-file-system-conventions.html"
177 >Directory and File System Conventions</A
181 HREF="version-conventions.html"
182 >Version Conventions</A
188 HREF="documentation-roadmap.html"
189 >Documentation Roadmap</A
195 HREF="user-guide-installation.html"
205 HREF="user-guide-installation-requirements.html"
206 >System Requirements</A
210 HREF="user-guide-installation-linux.html"
211 >Installation on Linux</A
215 HREF="user-guide-installation-windows.html"
216 >Installation on Windows</A
220 HREF="user-guide-installation-target.html"
227 HREF="user-guide-installation-target.html#CONNECTING-TARGET-SERIAL"
228 >Connecting Via Serial Line</A
232 HREF="connecting-target-ethernet.html"
233 >Connecting Via Ethernet</A
237 HREF="connecting-target-sim.html"
238 >Using A Simulator Target</A
242 HREF="connecting-target-synth.html"
243 >Using A Synthetic Target</A
251 HREF="user-guide-programming.html"
252 >Programming With <SPAN
261 HREF="programming-with-ecos.html"
262 >Programming With <SPAN
271 HREF="programming-with-ecos.html#DEVELOPMENT-PROCESS"
272 >The Development Process</A
278 HREF="configuring-and-building-ecos-from-source.html"
279 >Configuring and Building <SPAN
288 HREF="configuring-and-building-ecos-from-source.html#ECOS-STARTUP-CONFIGS"
292 > Start-up Configurations</A
296 HREF="using-configtool-windows-linux.html"
297 >Configuration Tool on Windows and Linux Quick Start</A
301 HREF="using-ecosconfig-on-linux.html"
302 >Ecosconfig on Windows and Linux Quick Start</A
308 HREF="running-an-ecos-test-case.html"
318 HREF="running-an-ecos-test-case.html#USING-CONFIGTOOL-TESTCASE"
321 >Configuration Tool</SPAN
326 HREF="using-commandline-testcase.html"
327 >Using the command line</A
331 HREF="testing-filters.html"
338 HREF="building-and-running-sample-appliations.html"
339 >Building and Running Sample Applications</A
345 HREF="building-and-running-sample-appliations.html#ECOS-HELLO-WORLD"
353 HREF="sample-twothreads.html"
354 >A Sample Program with Two Threads</A
360 HREF="clocks-and-alarm-handlers.html"
361 >More Features — Clocks and Alarm
368 HREF="clocks-and-alarm-handlers.html#SAMPLE-ALARMS"
369 >A Sample Program with Alarms</A
377 HREF="the-ecos-configuration-tool.html"
378 >The eCos Configuration Tool</A
384 HREF="config-tool-getting-started.html"
391 HREF="config-tool-getting-started.html#CONFIG-TOOL-GETTING-STARTED-INTRO"
396 HREF="config-tool-invoking.html"
402 >Configuration Tool</SPAN
407 HREF="config-tool-component-repository.html"
408 >The Component Repository</A
412 HREF="config-tool-documents.html"
418 >Configuration Tool</SPAN
425 HREF="config-tool-getting-help.html"
432 HREF="config-tool-getting-help.html#CONFIG-TOOL-CONTEXT-HELP-DIALOGS"
433 >Context-sensitive Help for Dialogs</A
437 HREF="config-tool-context-help-otherwin.html"
438 >Context-sensitive Help for Other Windows</A
442 HREF="config-tool-context-help-config-items.html"
443 >Context-sensitive Help for Configuration Items</A
447 HREF="methods-of-displaying-html-help.html"
448 >Methods of Displaying HTML Help</A
454 HREF="config-tool-customization.html"
461 HREF="config-tool-customization.html#CONFIG-TOOL-WINDOW-PLACEMENT"
466 HREF="config-tool-settings.html"
473 HREF="config-tool-screen-layout.html"
480 HREF="config-tool-screen-layout.html#CONFIG-TOOL-CONFIGURATION-WINDOW"
481 >Configuration Window</A
487 HREF="config-tool-updating-configuration.html"
488 >Updating the Configuration</A
494 HREF="config-tool-updating-configuration.html#CONFIG-TOOL-ADDING-REMOVING-PACKAGES"
495 >Adding and Removing Packages</A
499 HREF="config-tool-platform-selection.html"
500 >Platform Selection</A
504 HREF="config-tool-using-templates.html"
511 HREF="config-tool-searching.html"
516 HREF="config-tool-building.html"
523 HREF="config-tool-building.html#CONFIG-TOOL-SELECTING-BUILD-TOOLS"
524 >Selecting Build Tools</A
528 HREF="config-tool-selecting-user-tools.html"
529 >Selecting User Tools</A
535 HREF="config-tool-test-execution.html"
542 HREF="config-tool-test-execution.html#CONFIG-TOOL-TEST-PROPERTIES"
549 HREF="config-tool-creating-a-shell.html"
556 HREF="config-tool-creating-a-shell.html#CONFIG-TOOL-KEYBOARD-ACCELERATORS"
557 >Keyboard Accelerators</A
565 HREF="ecos-programming-concepts-and-techniques.html"
569 > Programming Concepts and Techniques</A
575 HREF="cdl-concepts.html"
582 HREF="cdl-concepts.html#CDL-CONCEPTS-ABOUT"
583 >About this chapter</A
587 HREF="cdl-component-repository.html"
588 >Component Repository</A
592 HREF="cdl-component-definition-language.html"
593 >Component Definition Language</A
597 HREF="cdl-packages.html"
602 HREF="cdl-configuration-items.html"
603 >Configuration Items</A
607 HREF="cdl-conflicts.html"
612 HREF="cdl-templates.html"
619 HREF="component-repo-and-working-dirs.html"
620 >The Component Repository and Working Directories</A
626 HREF="component-repo-and-working-dirs.html#COMPONENT-REPO"
627 >Component Repository</A
631 HREF="build-tree.html"
636 HREF="install-tree.html"
641 HREF="repository-app-build-tree.html"
642 >Application Build Tree</A
648 HREF="compiler-and-linker-options.html"
649 >Compiler and Linker Options</A
655 HREF="compiler-and-linker-options.html#COMPILING-C-APP"
656 >Compiling a C Application</A
660 HREF="compiling-cpp-app.html"
661 >Compiling a C++ Application</A
667 HREF="debugging-techniques.html"
668 >Debugging Techniques</A
674 HREF="debugging-techniques.html#TRACING"
679 HREF="kernel-instrumentation.html"
680 >Kernel Instrumentation</A
688 HREF="configuration-and-the-package-repository.html"
689 >Configuration and the Package Repository</A
695 HREF="manual-configuration.html"
696 >Manual Configuration</A
702 HREF="manual-configuration.html#DIRECTORY-TREE-STRUCTURE"
703 >Directory Tree Structure</A
707 HREF="creating-build-tree.html"
708 >Creating the Build Tree</A
712 HREF="conflicts-and-constraints.html"
713 >Conflicts and constraints</A
717 HREF="building-the-system.html"
718 >Building the System</A
722 HREF="ecos-packages.html"
727 HREF="coarse-grained-configuration.html"
728 >Coarse-grained Configuration</A
732 HREF="fine-grained-configuration.html"
733 >Fine-grained Configuration</A
737 HREF="editing-an-ecos-savefile.html"
745 HREF="editing-the-sources.html"
746 >Editing the Sources</A
750 HREF="modifying-the-memory-layout.html"
751 >Modifying the Memory Layout</A
757 HREF="managing-package-repository.html"
758 >Managing the Package Repository</A
764 HREF="managing-package-repository.html#PACKAGE-INSTALLATION"
765 >Package Installation</A
769 HREF="package-structure.html"
770 >Package Structure</A
778 HREF="appendices.html"
785 HREF="appendix-target-setup.html"
792 HREF="appendix-target-setup.html#SETUP-MN10300-STDEVAL1"
793 >MN10300 stdeval1 Hardware Setup</A
797 HREF="setup-mn10300-sim.html"
798 >MN10300 Architectural Simulator Setup</A
802 HREF="setup-am33-stb.html"
803 >AM33 STB Hardware Setup</A
807 HREF="setup-tx39-jmr3904.html"
808 >TX39 Hardware Setup</A
812 HREF="setup-tx39-sim.html"
813 >TX39 Architectural Simulator Setup</A
817 HREF="setup-tx49-ref4955.html"
818 >TX49 Hardware Setup</A
822 HREF="setup-vr4300-vrc4373.html"
823 >VR4300 Hardware Setup</A
827 HREF="setup-vr4300-vrc4375.html"
828 >VRC4375 Hardware Setup</A
832 HREF="setup-mips-atlasmalta.html"
833 >Atlas/Malta Hardware Setup</A
837 HREF="setup-ppc-cogent.html"
838 >PowerPC Cogent Hardware Setup</A
842 HREF="setup-ppc-mbx860.html"
843 >PowerPC MBX860 Hardware Setup</A
847 HREF="setup-ppc-sim.html"
848 >PowerPC Architectural Simulator Setup</A
852 HREF="setup-sparclite-sleb.html"
853 >SPARClite Hardware Setup</A
857 HREF="setup-sparclite-sim.html"
858 >SPARClite Architectural Simulator Setup</A
862 HREF="setup-arm-pid.html"
863 >ARM PID Hardware Setup</A
867 HREF="setup-arm-aeb1.html"
868 >ARM AEB-1 Hardware Setup</A
872 HREF="setup-arm-cma230.html"
873 >ARM Cogent CMA230 Hardware Setup</A
877 HREF="setup-arm-ep7211.html"
878 >Cirrus Logic ARM EP7211 Development
879 Board Hardware Setup</A
883 HREF="setup-arm-ep7212.html"
884 >Cirrus Logic ARM EP7212 Development Board
889 HREF="setup-arm-ep7312.html"
890 >Cirrus Logic ARM EP7312 Development Board
895 HREF="setup-arm-ep7209.html"
896 >Cirrus Logic ARM EP7209 Development Board Hardware Setup</A
900 HREF="setup-arm-clps7111.html"
901 >Cirrus Logic ARM CL-PS7111 Evaluation Board Hardware Setup</A
905 HREF="setup-arm-ebsa285.html"
906 >StrongARM EBSA-285 Hardware Setup</A
910 HREF="setup-arm-ipaq.html"
911 >Compaq iPAQ PocketPC Hardware Setup</A
915 HREF="setup-sh-edk7708.html"
916 >SH3/EDK7708 Hardware Setup</A
920 HREF="setup-sh-cq7708.html"
921 >SH3/CQ7708 Hardware Setup</A
925 HREF="setup-sh-hs7729pci.html"
926 >SH3/HS7729PCI Hardware Setup</A
930 HREF="setup-sh-se77x9.html"
931 >SH3/SE77x9 Hardware Setup</A
935 HREF="setup-sh-cq7750.html"
936 >SH4/CQ7750 Hardware Setup</A
940 HREF="setup-sh-se7751.html"
941 >SH4/SE7751 Hardware Setup</A
945 HREF="setup-v850-cebsa1.html"
946 >NEC CEB-V850/SA1 Hardware Setup</A
950 HREF="setup-v850-cebsb1.html"
951 >NEC CEB-V850/SB1 Hardware Setup</A
955 HREF="setup-i386-pc.html"
956 >i386 PC Hardware Setup</A
960 HREF="setup-synth-i386linux.html"
961 >i386/Linux Synthetic Target Setup</A
967 HREF="real-time-characterization.html"
968 >Real-time characterization</A
974 HREF="real-time-characterization.html#RT-ARM-AEB1"
975 >Board: ARM AEB-1 Revision B Evaluation Board</A
979 HREF="rt-at91-eb40.html"
980 >Board: Atmel AT91/EB40</A
984 HREF="rt-arm-ebsa285.html"
985 >Board: Intel StrongARM EBSA-285 Evaluation Board</A
989 HREF="rt-arm-ep7211.html"
990 >Board: Cirrus Logic EDB7111-2 Development Board</A
994 HREF="rt-arm-pid.html"
995 >Board: ARM PID Evaluation Board</A
999 HREF="rt-arm-iq80310.html"
1000 >Board: Intel IQ80310 XScale Development Kit</A
1004 HREF="rt-tx39-jmr3904.html"
1005 >Board: Toshiba JMR3904 Evaluation Board</A
1009 HREF="rt-tx49-ref4955.html"
1010 >Board: Toshiba REF 4955</A
1014 HREF="rt-mn10300-stdeval1.html"
1015 >Board: Matsushita STDEVAL1 Board</A
1019 HREF="rt-sparclite-sleb.html"
1020 >Board: Fujitsu SPARClite Evaluation Board</A
1024 HREF="rt-ppc-cogent.html"
1025 >Board: Cogent CMA MPC860 (PowerPC) Evaluation</A
1029 HREF="rt-vr4300-vrc4373.html"
1030 >Board: NEC VR4373</A
1034 HREF="rt-arm-assabet.html"
1035 >Board: Intel SA1110 (Assabet)</A
1039 HREF="rt-arm-brutus.html"
1040 >Board: Intel SA1100 (Brutus)</A
1044 HREF="rt-ppc-mbx860.html"
1045 >Board: Motorola MBX</A
1049 HREF="rt-sh-edk7708.html"
1050 >Board: Hitachi EDK7708</A
1054 HREF="rt-sh-cq7708.html"
1055 >Board: CQ CqREEK SH3 Evaluation Board (cq7708)</A
1059 HREF="rt-sh-hs7729pci.html"
1060 >Board: Hitachi HS7729PCI HS7729 SH3</A
1064 HREF="rt-sh-se7751.html"
1065 >Board: Hitachi Solution Engine 7751 SH4 (se7751)</A
1069 HREF="rt-i386-pc.html"
1074 HREF="rt-v850-cebsa1.html"
1075 >Board: NEC V850 Cosmo Evaluation Board</A
1079 HREF="rt-v850-cebsb1.html"
1080 >Board: NEC V850 Cosmo Evaluation Board</A
1086 HREF="gnu-general-public-license.html"
1087 >GNU General Public License</A
1103 HREF="configuring-and-building-ecos-from-source.html#USER-GUIDE-DOWNLOAD-METHODS"
1104 >Configuration for various download methods</A
1108 HREF="config-tool-screen-layout.html#AEN1273"
1113 HREF="config-tool-creating-a-shell.html#KEYBOARD-ACCELERATORS"
1114 >Keyboard accelerators</A
1118 HREF="cdl-configuration-items.html#CDL-EXPRESSIONS"
1123 HREF="cdl-configuration-items.html#TABLE-CONFIGURATION-PROPERTIES"
1124 >Configuration properties</A
1138 HREF="using-configtool-windows-linux.html#PROGRAMMING-FIGURE-CONFIGURATION-TOOL"
1139 >Configuration Tool</A
1143 HREF="using-configtool-windows-linux.html#FIGURE-TEMPLATE-SELECTION"
1144 >Template selection</A
1148 HREF="using-configtool-windows-linux.html#CONFIGURING-FOR-THE-TARGET"
1154 HREF="using-configtool-windows-linux.html#FIGURE-SELECTING-THE-BUILD-LIBRARY-MENU-ITEM"
1155 >Selecting the Build Library menu item</A
1159 HREF="using-configtool-windows-linux.html#AEN607"
1160 >Save file dialog</A
1164 HREF="using-configtool-windows-linux.html#FIGURE-BUILD-TOOLS-DIALOG"
1165 >Build tools dialog</A
1169 HREF="using-configtool-windows-linux.html#FIGURE-USER-TOOLS-DIALOG"
1170 >User tools dialog</A
1174 HREF="using-configtool-windows-linux.html#AEN648"
1175 >Selecting the Build Tests menu item</A
1179 HREF="running-an-ecos-test-case.html#PROGRAMMING-RUN-TESTS"
1184 HREF="running-an-ecos-test-case.html#PROGRAMMING-RUN-PROPERTIES"
1185 >Properties dialog box</A
1189 HREF="sample-twothreads.html#FIGURE-TWOTHREADS-WITH-SIMPLE-PRINTS"
1191 threads with simple print statements after random delays</A
1195 HREF="config-tool-invoking.html#FIGURE-CONFIGURATION-TOOL"
1198 >Configuration Tool</SPAN
1203 HREF="config-tool-component-repository.html#AEN1047"
1204 >Repository relocation dialog box</A
1208 HREF="config-tool-documents.html#AEN1076"
1209 >Save As dialog box</A
1213 HREF="config-tool-documents.html#AEN1085"
1218 HREF="methods-of-displaying-html-help.html#FIGURE-HELP-VIEWER"
1219 >HTML Help viewer</A
1223 HREF="config-tool-settings.html#AEN1207"
1224 >Settings dialog, Display tab</A
1228 HREF="config-tool-settings.html#AEN1233"
1229 >Settings dialog, Viewers tab</A
1233 HREF="config-tool-updating-configuration.html#AEN1376"
1234 >Packages dialog box</A
1238 HREF="config-tool-platform-selection.html#AEN1393"
1239 >Platforms dialog box</A
1243 HREF="config-tool-platform-selection.html#AEN1400"
1244 >Platform Modify dialog box</A
1248 HREF="config-tool-using-templates.html#AEN1417"
1249 >Templates dialog box</A
1253 HREF="config-tool-using-templates.html#AEN1430"
1258 HREF="config-tool-using-templates.html#AEN1450"
1259 >Resolve conflicts window</A
1263 HREF="config-tool-searching.html#AEN1471"
1268 HREF="config-tool-building.html#AEN1521"
1273 HREF="config-tool-selecting-user-tools.html#AEN1533"
1278 HREF="config-tool-test-execution.html#AEN1564"
1279 >Properties dialog box</A
1283 HREF="config-tool-test-execution.html#AEN1603"
1288 HREF="config-tool-test-execution.html#AEN1616"
1289 >Add files from folder</A
1293 HREF="component-repo-and-working-dirs.html#AEN2022"
1294 >Component repository</A
1304 >List of Examples</B
1308 HREF="using-ecosconfig-on-linux.html#AEN683"
1309 >Getting help from ecosconfig</A
1313 HREF="using-ecosconfig-on-linux.html#AEN686"
1314 >ecosconfig output —
1315 list of available packages, targets and templates</A
1319 HREF="clocks-and-alarm-handlers.html#AEN910"
1320 >A sample program that creates an alarm</A
1324 HREF="debugging-techniques.html#AEN2289"
1325 >Hello world with tracing</A
1329 HREF="kernel-instrumentation.html#AEN2358"
1330 >Using instrument buffers</A
1334 HREF="kernel-instrumentation.html#AEN2367"
1335 >Instrument buffer output</A
1339 HREF="modifying-the-memory-layout.html#AEN2992"
1343 > linker script fragment</A
1353 SUMMARY="Footer navigation table"
1374 HREF="user-guide-introduction.html"