ACCU Home page ACCU Conference Page
Search Contact us ACCU at Flickr ACCU at GitHib ACCU at Facebook ACCU at Linked-in ACCU at Twitter Skip Navigation

Search in Book Reviews

The ACCU passes on review copies of computer books to its members for them to review. The result is a large, high quality collection of book reviews by programmers, for programmers. Currently there are 1949 reviews in the database and more every month.
Search is a simple string search in either book title or book author. The full text search is a search of the text of the review.
    View all alphabetically
Building Embedded Linux Systems
Karim Yaghmour
Michael Pont
embedded systems; Linux
Appeared in:
In the preface to Building Embedded Linux Systems the author Karim Yaghmour states that 'This book is intended first and foremost for the experienced embedded system designer who wishes to use Linux in a future or current project'. Does the book match these intentions? Not completely, but it is - nonetheless - a useful book.

Prospective readers should be aware that Yaghmour is concerned with what are (from the reviewer's point of view) fairly large embedded systems, with a 32-bit processor linked to at least 2MB of ROM and 4MB of RAM. X86, ARM and PPC hardware are the main platforms that are discussed.

It should also be noted that the book is primarily concerned with 'soft' real-time designs and issues such as scheduling mechanisms in Linux are not discussed. Furthermore, issues of interrupt latency are only considered right at the end of the book and here no figures are given (instead some simple techniques for measuring such latencies are presented).

In the discussion of interrupt latency, Yaghmour suggests that if the interrupt response of Linux is not sufficiently fast, one of the real-time derivatives of Linux should be chosen as an alternative. These variants are discussed (briefly) at the start of the book, in a section focusing on licensing (and patent) issues. If you intend to use Linux in a commercial project, then Yaghmour's discussion of the legal implications of doing so may prove to be valuable.

Another issue that is covered towards the end of this book is the tracing facility provided by Linux; this is not widely used on desktop systems, but it provides a useful way for embedded developers to explore how their applications interact with each other and with the kernel.

Overall, if you have some knowledge of Linux, some experience with embedded systems and wish to use a 'standard' OS in a comparatively large system with soft timing constraints, then this book will prove very useful. Recommended.