Chapter 2. Basic Concepts

As we saw in the previous chapter, there is a rich variety of embedded Linux systems. And as time moves forward, this diversity is increasing as new markets open up, be it for the millions of Linux-based cell phones sold every year, or for experimental amateur rockets with precise real-time requirements. In spite of such a variety, there are nevertheless a few key characteristics that apply uniformly to most embedded Linux systems. The purpose of this chapter is to present you with the basic concepts and issues that you are likely to encounter when developing any sort of embedded Linux system.

Many of the subjects introduced here will be discussed in far greater detail in other chapters. They are covered here briefly to give you an understanding of how the system forms a cohesive whole, and to avoid so-called undeclared forward references (a programming term for using something before it has been fully defined). The chapter starts with a discussion of the types of hosts most commonly used for developing embedded Linux systems, the types of host/target development setups, and the types of host/target debug setups. These sections are meant to help you select the best environment for developing embedded Linux systems or, if the environment is already specified, understand how your particular setup will influence the rest of your development effort. We will then present details of the structure commonly found in most embedded Linux systems, and the generic architecture ...

Get Building Embedded Linux Systems, 2nd Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.