Book Image

Instant Optimizing Embedded Systems Using BusyBox

By : Wu Zhangjin, Cao Ziqiang
Book Image

Instant Optimizing Embedded Systems Using BusyBox

By: Wu Zhangjin, Cao Ziqiang

Overview of this book

As hundreds of millions of people have started using Android smartphones, embedded Linux systems are becoming more and more popular. To get more market share, not only for hardware and function piling up, smartphone manufacturers gradually realized the importance of user experience. To improve user experience, the back-end Linux system must be optimized in many ways. Instant Optimizing Embedded System Using BusyBox is a practical, hands-on guide that provides you with a number of clear, step-by-step exercises to help you take advantage of the real power behind Busybox, and give you a good grounding for using it to optimize your embedded (Android Linux) systems. Moving on from the basics, this book will teach you how to configure and compile it from source code, including cross-compiling it with static linking and dynamic linking. You will also learn how to install and use Busybox on the Android emulator. You will learn to replace the simple Android mksh console with Busybox ash console and start a telnet and HTTP service provided by Busybox. You will also build embedded Linux file system from scratch and start it on Android emulator. We will take a look at how to add functionality to Busybox based system, including adding external applets to Busybox, as well as building development environments (like Bash and C) for it manually or with the automatic Buildroot system. If want to learn how to take advantage of using Busybox applets to optimize your embedded system, then this is the book for you for it will also show you how to use the powerful applets to optimize multiple aspects of an embedded (Android Linux) system.This book will teach you how to build an embedded (Android Linux) system with Busybox, enhance its functionality to meet diverse system requirements, and optimize it to provide a better user experience for embedded products.
Table of Contents (8 chapters)

Acknowledgments

We're constantly very appreciative of the help provided by open source developers and communities. During the course of this project, we used a lot of open source tools and got a lot of inspiration from answers to open questions. In no particular order, we'd like to express our gratitude to developers and communities of BusyBox, Android, Gnu Toolchain, Buildroot, Ubuntu, Linux Kernel, and other utilities from the embedded system world.

I wish to acknowledge my sincere appreciation for Nicholas McGuire and Qingguo Zhou, who were my university instructors; they brought me into the Linux world. I want to thank the team members from the Open Source Community of Lanzhou University, who worked with me to build an excellent Linux system study environment. Many thanks to our previous and current colleagues, who discussed embedded system issues together and strengthened my embedded system experience a lot.

I also want to thank Cao Ziqiang, the co-author of this book; without his professional work, it would have been impossible to complete this book on time. And many thanks to my girlfriend, Rogina Lee, for her patient support and encouragement in the writing process.

Finally, thanks to Packt Publishing, who invited us and gave us the opportunity to discuss embedded system optimization with developers from all over the world. A special thank you to the production team and the reviewers who worked with us during this project and gave us guidance and feedback.

Cao Ziqiang is a Linux fan since 2004, and has more than eight years of experience in using the Linux operating system. He has extensive experience in video programs and network programs in C/C++ under Linux and has also majored in Linux kernel and device-driver development. In recent years, he has paid more attention to system stability and robustness, and worked for a smartphone company that uses Android as their main software platform. He is good at analyzing and resolving problems at the development phase using Linux tools such as toolbox, BusyBox, and some other open source projects of the Linux community. As a participant, he tested and fixed bugs in the Google Samsung kernel community. This is his first book as a co-author. He sincerely believes in the sharing of experience, which he has done with this book, and he will not stop sharing.