Preface xix
execution in eCos, the thread, and provide a detailed look at the various synchronization mecha-
nisms supported by eCos.
Chapter 7, Other eCos Architecture Components, continues with our look at the different
eCos components by focusing on timing components, asserts and tracing functionality, and the I/O
control system.
Chapter 8, Additional Functionality and Third-Party Contributions, includes a broader
look at some of the additional features available for eCos developed by the eCos project main-
tainers and third-party contributors. These include networking support, ROM monitors, file sys-
tems, PCI support, USB support, and the GoAhead WebServer.
In Chapter 9, The RedBoot ROM Monitor, we focus on the RedBoot ROM monitor. This
standalone program is designed for embedded systems to provide a debugging and bootstrap
environment. RedBoot is an eCos-based application and uses the eCos Hardware Abstraction
Layer (HAL) for its foundation.
We begin our hands-on experience in Chapter 10, The Host Development Platform, with
the installation of the host development tools. We discuss the Cygwin native tools, the GNU
cross-development tools, and the eCos development kit. We also cover the installation of a Con-
current Versions System (CVS) client, WinCVS, to enable access to the online eCos source code
repository. This gives you the ability to take advantage of any bug fixes or extended functionality
contributed to the eCos source code.
In Chapter 11, The eCos Toolset, we delve into the eCos toolset with a detailed look at
how the tools operate on the eCos source code, and the layout of the tools. Also included are
some other open-source tools to round out and complete our open-source embedded develop-
ment system. This prepares us for the next step, putting the tools to work to build our applica-
tion.
Chapter 12, An Example Application Using eCos, lets you put your knowledge to work.
The chapter starts with an overview of the eCos build process, followed by a build of the Red-
Boot ROM monitor. We then do a build of the eCos real-time operating system, and, finally, put
it all together by building an application. This chapter provides a baseline on which you can then
add additional components to assemble a system to meet your embedded software requirements.
Finally, Chapter 13, Porting eCos, closes with a look at porting eCos onto another hard-
ware platform. This is key to getting your application running on your new target hardware plat-
form, which is typically the main goal in embedded software development.
Development System and Examples
As mentioned previously, in Chapter 10 we go through the process of setting up an eCos devel-
opment system. This development system includes the native Cygwin tools for Windows, the
GNU cross-development tools (binutils, compiler, and debugger), the eCos configuration and
management tools, a CVS client, and a lint program.
This system enables you to configure and build the eCos library, which is then linked with
an application to run the eCos RTOS. The RedBoot ROM monitor is also built using this system.