skip to main content
Skip header Section
Embedded Linux Primer: A Practical Real-World ApproachNovember 2010
Publisher:
  • Prentice Hall Press
  • One Lake Street Upper Saddle River, NJ
  • United States
ISBN:978-0-13-701783-6
Published:05 November 2010
Pages:
656
Skip Bibliometrics Section
Bibliometrics
Skip Abstract Section
Abstract

Up-to-the-Minute, Complete Guidance for Developing Embedded Solutions with Linux Linux has emerged as todays #1 operating system for embedded products. Christopher Hallinans Embedded Linux Primer has proven itself as the definitive real-world guide to building efficient, high-value, embedded systems with Linux. Now, Hallinan has thoroughly updated this highly praised book for the newest Linux kernels, capabilities, tools, and hardware support, including advanced multicore processors. Drawing on more than a decade of embedded Linux experience, Hallinan helps you rapidly climb the learning curve, whether youre moving from legacy environments or youre new to embedded programming. Hallinan addresses todays most important development challenges and demonstrates how to solve the problems youre most likely to encounter. Youll learn how to build a modern, efficient embedded Linux development environment, and then utilize it as productively as possible. Hallinan offers up-to-date guidance on everything from kernel configuration and initialization to bootloaders, device drivers to file systems, and BusyBox utilities to real-time configuration and system analysis. This edition adds entirely new chapters on UDEV, USB, and open source build systems. Tour the typical embedded system and development environment and understand its concepts and components. Understand the Linux kernel and userspace initialization processes. Preview bootloaders, with specific emphasis on U-Boot. Configure the Memory Technology Devices (MTD) subsystem to interface with flash (and other) memory devices. Make the most of BusyBox and latest open source development tools. Learn from expanded and updated coverage of kernel debugging. Build and analyze real-time systems with Linux. Learn to configure device files and driver loading with UDEV. Walk through detailed coverage of the USB subsystem. Introduces the latest open source embedded Linux build systems. Reference appendices include U-Boot and BusyBox commands.

Contributors

Recommendations

G. Sivakumar

Hallinan concludes his very brief introductory chapter, which makes the case for GNU/Linux as the best choice for developing embedded systems, with a very potent but matter-of-fact statement: "Embedded Linux has won the race."? In the next 18 chapters, he sketches out a panoramic view of the multifarious concepts and skills that a programmer needs, beyond passion and excitement, to develop an embedded application. Though the book is not explicitly organized in this fashion, its contents can be broadly grouped into three parts: how embedded systems work; how to develop and debug embedded applications; and advanced topics. After chapters 2, "The Big Picture,"? and 3, "Processor Basics,"? the book progresses to a very useful road map for working with the Linux kernel in chapter 4. Chapters 5 and 6 explain essential knowledge about the initialization process, first of the kernel and then of the user space. Chapter 7 offers a fascinating treatment of boot loaders, and the almost magical way in which the first piece of software starts applying power. The explanation of how embedded systems work concludes with device drivers, file systems, and memory technology devices (chapters 8 to 10). Armed with these concepts, programmers are then introduced to the essential utilities (BusyBox) (chapter 11) and the development environment and tools (chapters 12 and 13). No programmer can build things perfectly the very first time; hence, he or she needs to know how to debug both at the kernel level (chapter 14) and application level (chapter 15). Since no real system is monolithic, the knowledge about build systems that chapter 16 provides will be very useful. The book concludes with chapters on real-time features in the Linux kernel (chapter 17), the universal serial bus (chapter 18), and the udev system configuration utility (chapter 19). Given the vast scope, as well as the rapidly evolving tools and techniques, this book, wisely, is not a simple compendium of user manuals or guides to specific software. Instead, it gives an invaluable perspective on the main ideas, mostly independent of a particular tool. One cannot become an expert on a topic like this by reading alone, and the book contains sufficient pointers and tips for hands-on learning experiments with freely available tools. For anyone who aspires to build embedded system applications, this book will significantly facilitate the arduous navigation, thus making the journey much more enjoyable and trouble free. Online Computing Reviews Service

Access critical reviews of Computing literature here

Become a reviewer for Computing Reviews.