Linux Appliance Design: A Hands-On Guide to Building Linux Appliances
Linux appliances are computers that serve a single, well-defined purpose. Modern appliances are complex machines, with processors, operating systems, and application software. For example, the Tivo is essentially a Linux-based computer with a single purpose: recording television. While there are books that tell readers how to run Linux on embedded hardware and books on how to build a Linux application, Linux Appliance Design is the first book to demonstrate how to merge the two to create a Linux appliance. Programmers will learn how to build backend daemons, handle asynchronous events, and connect various user interfaces (including web, framebuffers, infared control, SNMP, and front panels) to these processes for remote configuration and control. Linux Appliance Design also introduces the Runtime Access Protocol, which provides a uniform mechanism for user interfaces to communicate with daemons. The accompanying CD includes a prototype appliance — a home alarm system — that supports the book’s lessons. The prototype is written using a liberal BSD style license, which allows readers to use and modify the code used in the prototype.