构建嵌入式LINUX 系统(第二版,影印版)
构建嵌入式LINUX 系统(第二版,影印版)
Karim Yaghmour, Jon Masters, Gilad Ben-Yossef, Philippe Gerum
出版时间:2009年04月
页数:439
虽然很多公司将Linux用于多种嵌入式系统,从手机到汽车ABS系统和水过滤设备,但令人惊讶的是,关于Linux系统内核和相关工具的建立、安装、测试方面信息的资源几乎没有。

《构建嵌入式Linux系统》是一本构造这些系统的详细指南。你不仅可以学习基本原理,而且可以学习如何去配置、设置并使用40种以上不同的开源和自由软件包。

此次再版更新了上一个版本的Linux系统内核,展示了之前未公开的程序,以助你:

* 建立自己的GNU开发工具链
* 选择、配置、构建并安装特定目标的内核
* 创建完整的目标根文件系统
* 设置、操作及使用固态存储设备
* 安装并配置目标的引导加载程序
* 交叉编译大量实用程序和包
* 使用多种工具和技术调试嵌入式系统
* 使用uClibc、BusyBox、U-Boot、OpenSSH、thttpd、tftp、 strace和gdb包
* 以Xenomai或RT内核补丁充分发挥实时功能

此次再版教授了如何构建操作系统组件,简化了令人望而生畏的维护嵌入式系统的完全控制的任务。
“这本书中没有关于常用工具或项目范围的任何假设。所需要的……就是下载必要包和浏览详尽在线文档的Internet连接,从而与其他开发者互享经验并从中获益。

这些讲述不仅在设计上给予恰到好处的自由及控制,也紧随Linux嵌入式系统应用的开发先锋们的观点。”
——节自Preface
  1. Preface
  2. 1. Introduction
  3. Definitions
  4. Real Life and Embedded Linux Systems
  5. Design and Implementation Methodology
  6. 2. Basic Concepts
  7. Types of Hosts
  8. Types of Host/Target Development Setups
  9. Types of Host/Target Debug Setups
  10. Generic Architecture of an Embedded Linux System
  11. System Startup
  12. Types of Boot Configurations
  13. System Memory Layout
  14. 3. Hardware Support
  15. Processor Architectures
  16. Buses and Interfaces
  17. I/O
  18. Storage
  19. General-Purpose Networking
  20. Industrial-Grade Networking
  21. System Monitoring
  22. 4. Development Tools
  23. A Practical Project Workspace
  24. GNU Cross-Platform Development Toolchain
  25. C Library Alternatives
  26. Java
  27. Perl
  28. Python
  29. Other Programming Languages
  30. Eclipse: An Integrated Development Environment
  31. Terminal Emulators
  32. 5. Kernel Considerations
  33. Selecting a Kernel
  34. Configuring the Kernel
  35. Compiling the Kernel
  36. Installing the Kernel
  37. In the Field
  38. 6. Root Filesystem Content
  39. Basic Root Filesystem Structure
  40. Libraries
  41. Kernel Modules
  42. Kernel Images
  43. Device Files
  44. Main System Applications
  45. Custom Applications
  46. System Initialization
  47. 7. Storage Device Manipulation
  48. MTD-Supported Devices
  49. Disk Devices
  50. To Swap or Not To Swap
  51. 8. Root Filesystem Setup
  52. Filesystem Types for Embedded Devices
  53. Writing a Filesystem Image to Flash Using an NFS-Mounted Root Filesystem
  54. Placing a Disk Filesystem on a RAM Disk
  55. Rootfs and Initramfs
  56. Choosing a Filesystem’s Type and Layout
  57. Handling Software Upgrades
  58. 9. Setting Up the Bootloader
  59. Embedded Bootloaders
  60. Server Setup for Network Boot
  61. Using the U-Boot Bootloader
  62. 10. Setting Up Networking Services
  63. Network Settings
  64. Busybox
  65. Dynamic Configuration Through DHCP
  66. The Internet Super-Server
  67. Remote Administration with SNMP
  68. Network Login Through Telnet
  69. Secure Communication with SSH
  70. Serving Web Content Through HTTP
  71. Provisioning
  72. 11. Debugging Tools
  73. Eclipse
  74. Debugging Applications with gdb
  75. Tracing
  76. Performance Analysis
  77. Memory Debugging
  78. A Word on Hardware Tools
  79. 12. Introduction to Real-Time Linux
  80. What Is Real-Time Processing?
  81. Should Your Linux Be Real-Time?
  82. Common Real-Time Kernel Requirements
  83. Some Typical Users of Real-Time Computing Technology
  84. The Linux Paths to Real-Time
  85. 13. The Xenomai Real-Time System
  86. Porting Traditional RTOS Applications to Linux
  87. The Xenomai Architecture
  88. How Xenomai Works
  89. The Real-Time Driver Model
  90. Xenomai, Chameleon by Design
  91. 14. The RT Patch
  92. Interrupts As Threads
  93. Priority Inheritance
  94. Configuring the Kernel with the RT Patch
  95. High-Resolution Timers
  96. The Latency Tracer
  97. Conclusion
  98. Index
书名:构建嵌入式LINUX 系统(第二版,影印版)
国内出版社:东南大学出版社
出版时间:2009年04月
页数:439
书号:978-7-5641-1630-9
原版书出版商:O'Reilly Media
Karim Yaghmour
 
Karim Yaghmour是Opersys公司(http://www.opersys.com)的创始人及总裁。Opersys公司的服务项目是为开源和自由软件在嵌入式系统中的使用提供专家支持和培训。作为开源和自由软件社区中活跃的成员,Karim将Opersys所提供的服务稳定地建立在社区所推动的知识共享和技术品质的核心价值上。Karim对社区的部分贡献包括:他是Linux Trace Toolkit的维护者,还是使Adeos nanokernel(允许多个操作系统并存)得以完成的白皮书(white paper)系列的作者。
Karim从小酷爱研究事物的运行原理。小时候,Karim甚至拆开家中所有的收音机和盒式录音机,以便能够“修理”它们。同样,Karim很早就展现出对操作系统内部及嵌入式系统的浓厚兴趣。他目前已经取得了蒙特拿综合理工学院的工程学士和科学硕士学位。当大家热衷于Linux的时候,Karim另辟蹊径,撰写自己的分散式微核心,藉此深入了解操作系统的设计和实现。业余时间,Karim爱好史学、哲学、社会学和人文科学。此外,他还对Umberto Eco和Gerald Messadie的散文和小说情有独钟。
Karim Yaghmour is the founder and president of Opersys, a company providing expertise
and courses on the use of open source and free software in embedded systems,
and Kryptiva, a provider of email security services. As an active member of the open
source and free software community, Karim has firmly established Opersys’s services
around the core values of knowledge sharing and technical quality promoted by this
community. As part of his community involvement, Karim is the maintainer of the
Linux Trace Toolkit and the author of a series of white papers that led to the implementation
of the Adeos nanokernel, which allows multiple operating systems to exist
side by side. Karim’s quest for understanding how things work started at a very young
age when he took it upon himself to break open all the radios and cassette players he
could lay his hands on in order to “fix” them. Very early, he developed a keen interest
in operating system internals and embedded systems. He now holds a B.Eng. and an
M.A.Sc. from the ?cole Polytechnique de Montréal. While everyone was hacking away
at Linux, Karim even took a detour to write his own distributed microkernel in order
to get to the bottom of operating system design and implementation.
When not working on software, Karim indulges in his passion for history, philosophy,
sociology, and humanities in general. He’s especially addicted to essays and novels by
Umberto Eco and Gerald Messadi.
 
 
Jon Masters
 
Jonathan Masters is a British Linux kernel engineer working for Red Hat, where he
works on the real-time kernel team, and on a variety of other projects. Jon made U.K.
history by beginning his first college degree at the tender age of 13. He has been using
and has been involved with Linux for most of his life. He has worked on a diverse variety
of embedded Linux projects in different capacities—as an independent contractor, an
employee of a large scientific research company, and at a well-known embedded Linux
vendor. Jon has written several books, many technical articles, and maintains the
module-init-tools package used by the Linux kernel.
Jon lives in Cambridge, Massachusetts, and enjoys travel, hacking embedded devices,
hiking, U.S. history, obscure legal texts, and any opportunity for random craziness.
 
 
Gilad Ben-Yossef
 
Gilad Ben-Yossef is the cofounder and CTO of Codefidence Ltd. and has been assisting
OEMs make use of free and open source software in commercial products and
services since 1998. He is also cofounder of Hamakor, an NPO devoted to the promotion
of FOSS in Israel, and a founding organizer of “August Penguin,” an Israeli community
FOSS conference.
Gilad is a member of the Israeli chapter of Mensa, the Israeli Information Technology
Association, and the Israeli chapter of the Internet Society. He holds a B.A. in computer
science from Tel-Aviv Jaffa Academic College.
When not trying to make FOSS software do something the authors never intended,
Gilad likes to scuba dive, read science fiction, and spend time with his wife, Limor, and
his two adorable girls, Almog and Yael.
 
 
Philippe Gerum
 
Philippe Gerum is the founder and lead maintainer of the Adeos and Xenomai projects.
 
 
The cover image is a 19th-century engraving from the Dover Pictorial Archive.