REVIEW - Building Embedded Linux Systems - Concepts, Techniques, Tricks, and Traps

Title:

Building Embedded Linux Systems - Concepts, Techniques, Tricks, and Traps

Author:

Karim Yaghmour

ISBN:

9780596002220

Publisher:

O'Reilly (2003)

Pages:

464pp

Reviewer:

Michael Pont

Reviewed:

December 2003

Rating:

3 out of 5

if you wish to use a 'standard' OS in a comparatively large system with soft timing constraints, then this book will prove very useful

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.


Book cover image courtesy of Open Library.