The central software on which an embedded Linux system depends, of course, is the Linux kernel. This book concentrates on Version 2.4 of the Linux kernel, and on Release 2.4.18 in particular. Changes within 2.4 will probably have only a benign effect on the information in the book. That is, new releases will probably support more hardware than Chapter 3 lists. But the essential tasks described in this book are unlikely to change in 2.4. As the kernel evolves past Version 2.4, however, some of the steps described in this book are likely to require updating.
In addition, this book discusses the configuration, installation, and use of over 40 different open source and free software packages. Each package is maintained independently and is developed at a different pace. Because these packages change over time, it is likely that the package versions covered in this book may be outdated by the time you read it. In an effort to minimize the effect of software updates on the text, I have kept the text as version independent as possible. The overall structure of the book and the internal structure of each chapter, for example, are unlikely to vary regardless of the various software changes. Also, many packages covered by this book have been around for quite some time, so they are unlikely to change in any substantial way. For instance, the commands to install, set up, and use the different components of the GNU development toolchain, which is used throughout this book, have been relatively constant for a number of years, and are unlikely to change in any substantial way in the future. This statement applies equally to most other software packages discussed.