构建嵌入式Linux系统(第二版)(英文影印版)
基本信息
- 作者: Karim Yaghmour Jon Masters Gilad Ben-Yossef Philippe Gerum
- 丛书名: 东南大学出版社O'Reilly系列
- 出版社:东南大学出版社
- ISBN:9787564116309
- 上架时间:2009-5-31
- 出版日期:2009 年4月
- 开本:16开
- 页码:439
- 版次:2-1
- 所属分类:
计算机 > 操作系统 > Linux
计算机 > 计算机组织与体系结构 > 嵌入式计算机
编辑推荐
此次再版
更新了上一个版本的Linux系统内核,展示了之前未公开的程序
教授如何构建操作系统组件,简化了令人望而生畏的维护嵌入式系统的完全控制的任务
内容简介回到顶部↑
虽然很多公司将linux用于多种嵌入式系统,从手机到汽车abs系统和水过滤设备,但令人惊讶的是,关于linux系统内核和相关工具的建立、安装、测试方面信息的资源几乎没有。.
《构建嵌入式linux系统》是一本构造这些系统的详细指南。你不仅可以学习基本原理,而且可以学习如何去配置、设置并使用40种以上不同的开源和自由软件包。
此次再版更新了上一个版本的linux系统内核,展示了之前未公开的程序,以助你:
* 建立自己的gnu开发工具链
* 选择、配置、构建并安装特定目标的内核
* 创建完整的目标根文件系统..
* 设置、操作及使用固态存储设备
* 安装并配置目标的引导加载程序
* 交叉编译大量实用程序和包
* 使用多种工具和技术调试嵌入式系统
* 使用uclibc、busybox、u-boot、openssh、thttpd、tftp、 strace和gdb包
* 以xenomai或rt内核补丁充分发挥实时功能
此次再版教授了如何构建操作系统组件,简化了令人望而生畏的维护嵌入式系统的完全控制的任务。...
《构建嵌入式linux系统》是一本构造这些系统的详细指南。你不仅可以学习基本原理,而且可以学习如何去配置、设置并使用40种以上不同的开源和自由软件包。
此次再版更新了上一个版本的linux系统内核,展示了之前未公开的程序,以助你:
* 建立自己的gnu开发工具链
* 选择、配置、构建并安装特定目标的内核
* 创建完整的目标根文件系统..
* 设置、操作及使用固态存储设备
* 安装并配置目标的引导加载程序
* 交叉编译大量实用程序和包
* 使用多种工具和技术调试嵌入式系统
* 使用uclibc、busybox、u-boot、openssh、thttpd、tftp、 strace和gdb包
* 以xenomai或rt内核补丁充分发挥实时功能
此次再版教授了如何构建操作系统组件,简化了令人望而生畏的维护嵌入式系统的完全控制的任务。...
目录回到顶部↑
preface .
1. introduction
definitions
real life and embedded linux systems
design and implementation methodology
2. basic concepts
types of hosts
types of host/target development setups
types of host/target debug setups
generic architecture of an embedded linux system
system startup
types of boot configurations
system memory layout
3. hardware support
processor architectures
buses and interfaces
i/o
storage
general-purpose networking
industrial-grade networking
1. introduction
definitions
real life and embedded linux systems
design and implementation methodology
2. basic concepts
types of hosts
types of host/target development setups
types of host/target debug setups
generic architecture of an embedded linux system
system startup
types of boot configurations
system memory layout
3. hardware support
processor architectures
buses and interfaces
i/o
storage
general-purpose networking
industrial-grade networking
前言回到顶部↑
When the author of this book's first edition, Karim Yaghmour, first suggested using Linux in an embedded system back in 1997 while working for a hardware manufacturer, his suggestion was met with a certain degree of skepticism and surprise. Today, Linux is either in use already or is being actively considered for most embedded systems. Indeed, many industry giants and government agencies are increasingly relying on Linux for their embedded software needs. .
This book was very well received in its first edition, but a number of advances in the Linux kernel and accompanying tools since the book's appearance make Linux even more attractive. Foremost among these are a number of real-time extensions and companion environments, some of which are discussed in the last three chapters of this edition.
Also, since the first edition of this book, enthusiastic open source and free software programmers have simplified the building and installation of GNU/Linux components (we use "GNU" here to acknowledge the centrality of tools from this free software project in creating functional Linux systems). This second edition therefore introduces you to a world of wonderful high-level tools, including Eclipse and various tools that "build the build tools" for embedded Linux systems. But we preserve much of the lowlevel information for those who need it, and to help you understand what the helper tools are doing behind the scenes.
In keeping with the explosions of progress on various parts of Linux and accompanying tools, it's useful to get a variety of expert perspectives on topics in embedded and realtime Linux. Therefore, for the second edition of this book the authors are joined by a number of key participants in the GNU/Linux community, including those doing kernel development or creating related projects.
Focus on Self-Sufficiency
The widespread interest and enthusiasm generated by Linux's successful use in a number of embedded applications has led to the creation of a plethora of articles, websites, companies, and documents all pertaining to "embedded Linux." Yet, beyond the flashy announcements, the magazine articles, and the hundreds of projects and products that claim to ease Linux's use in embedded systems, professional developers seeking a useful guide are still looking for answers to fundamental questions regarding the basic methods and techniques required to build embedded systems based on the Linux kernel.
Much of the documentation currently available relies heavily on the use of a number of prepackaged, ready-to-use cross-platform development tools and target binaries. Yet other documents cover only one very precise aspect of running Linux on an embedded target.
The first edition of this book was a radical departure from the existing documentation in that, other than your desire to use Linux, it makes no assumptions as to the tools you have at hand or the scope of your project. All that is required for this book is an Internet connection to download the necessary packages, browse specific online documentation, and benefit from other developers' experiences, as well as share your own, through project mailing lists. You still need a development host and documentation regarding your target's hardware, but the explanations we outline do not require the purchasing of any product or service from any vendor.
Besides giving the greatest degree of freedom and control over your design, this approach is closest to that followed by the pioneers who have spearheaded the way for Linux's use in embedded systems. In essence, these pioneers have pulled on Linux to fit their applications by stripping it down and customizing it to their purposes. Linux's penetration of the embedded world contrasts, therefore, with the approach followed by many software vendors to push their products into new fields of applications. As an embedded system developer, you are likely to find Linux much easier to pull toward your design than to adapt the products being pushed by vendors to that same design.
This book's approach is to allow you to pull Linux toward your design by providing all the details and discussing many of the corner cases encountered when using Linux in embedded systems. Although it is not possible to claim that this book covers all embedded designs, the resources provided here allow you to easily obtain the rest of the information required for you to customize and use Linux in your embedded system.
In writing this book, our intent was to bring the embedded system developers who use open source and free software in their designs closer to the developers who create and maintain these open source and free software packages. Though a lot of mainstream embedded system developers--many of whom are high-caliber programmers--rely on third-party offerings for their embedded Linux needs, there is a clear opportunity for them to contribute to the open source and free software projects on which they rely.
Ultimately, this sort of dynamic will ensure that Linux continues to be the best operating system choice for embedded systems.
Audience for This Book
This book is intended first and foremost for the experienced embedded system designer who wishes to use Linux in a current or future project. Such a reader is expected to be familiar with all the techniques and technologies used in developing embedded systems, such as cross-compiling, BDM or JTAG debugging, and the implications of dealing with immature or incomplete hardware. If you are such a reader, you may want to skip some of the background material about embedded system development presented early in some sections. There are, however, many early sections (particularly in Chapter 2) that you will need to read, because they cover the special implications of using the Linux kernel in an embedded system.
This book is also intended for the beginning embedded system developer who would like to become familiar with the tools and techniques used in developing embedded systems based on Linux. This book is not an introduction to embedded systems, however, and you may need to research some of the issues discussed here in an introductory textbook.
If you are a power user or a system administrator already familiar with Linux, this book should help you produce highly customized Linux installations. If you find that distributions install too many packages for your liking, for example, and would like to build your own custom distribution from scratch, many parts of this book should come in handy, particularly Chapter 6.
Finally, this book should be helpful to a programmer or a Linux enthusiast who wants to understand how Linux systems are built and operated. Though the material in this book does not cover how general-purpose distributions are created, many of the techniques covered here apply, to a certain extent, as much to general purpose distributions as they do to creating customized embedded Linux installations.
Scope and Background Information
To make the best of Linux's capabilities in embedded systems, you need background in all of the following topics (which are treated distinctly in many books):
Embedded systems
This book was very well received in its first edition, but a number of advances in the Linux kernel and accompanying tools since the book's appearance make Linux even more attractive. Foremost among these are a number of real-time extensions and companion environments, some of which are discussed in the last three chapters of this edition.
Also, since the first edition of this book, enthusiastic open source and free software programmers have simplified the building and installation of GNU/Linux components (we use "GNU" here to acknowledge the centrality of tools from this free software project in creating functional Linux systems). This second edition therefore introduces you to a world of wonderful high-level tools, including Eclipse and various tools that "build the build tools" for embedded Linux systems. But we preserve much of the lowlevel information for those who need it, and to help you understand what the helper tools are doing behind the scenes.
In keeping with the explosions of progress on various parts of Linux and accompanying tools, it's useful to get a variety of expert perspectives on topics in embedded and realtime Linux. Therefore, for the second edition of this book the authors are joined by a number of key participants in the GNU/Linux community, including those doing kernel development or creating related projects.
Focus on Self-Sufficiency
The widespread interest and enthusiasm generated by Linux's successful use in a number of embedded applications has led to the creation of a plethora of articles, websites, companies, and documents all pertaining to "embedded Linux." Yet, beyond the flashy announcements, the magazine articles, and the hundreds of projects and products that claim to ease Linux's use in embedded systems, professional developers seeking a useful guide are still looking for answers to fundamental questions regarding the basic methods and techniques required to build embedded systems based on the Linux kernel.
Much of the documentation currently available relies heavily on the use of a number of prepackaged, ready-to-use cross-platform development tools and target binaries. Yet other documents cover only one very precise aspect of running Linux on an embedded target.
The first edition of this book was a radical departure from the existing documentation in that, other than your desire to use Linux, it makes no assumptions as to the tools you have at hand or the scope of your project. All that is required for this book is an Internet connection to download the necessary packages, browse specific online documentation, and benefit from other developers' experiences, as well as share your own, through project mailing lists. You still need a development host and documentation regarding your target's hardware, but the explanations we outline do not require the purchasing of any product or service from any vendor.
Besides giving the greatest degree of freedom and control over your design, this approach is closest to that followed by the pioneers who have spearheaded the way for Linux's use in embedded systems. In essence, these pioneers have pulled on Linux to fit their applications by stripping it down and customizing it to their purposes. Linux's penetration of the embedded world contrasts, therefore, with the approach followed by many software vendors to push their products into new fields of applications. As an embedded system developer, you are likely to find Linux much easier to pull toward your design than to adapt the products being pushed by vendors to that same design.
This book's approach is to allow you to pull Linux toward your design by providing all the details and discussing many of the corner cases encountered when using Linux in embedded systems. Although it is not possible to claim that this book covers all embedded designs, the resources provided here allow you to easily obtain the rest of the information required for you to customize and use Linux in your embedded system.
In writing this book, our intent was to bring the embedded system developers who use open source and free software in their designs closer to the developers who create and maintain these open source and free software packages. Though a lot of mainstream embedded system developers--many of whom are high-caliber programmers--rely on third-party offerings for their embedded Linux needs, there is a clear opportunity for them to contribute to the open source and free software projects on which they rely.
Ultimately, this sort of dynamic will ensure that Linux continues to be the best operating system choice for embedded systems.
Audience for This Book
This book is intended first and foremost for the experienced embedded system designer who wishes to use Linux in a current or future project. Such a reader is expected to be familiar with all the techniques and technologies used in developing embedded systems, such as cross-compiling, BDM or JTAG debugging, and the implications of dealing with immature or incomplete hardware. If you are such a reader, you may want to skip some of the background material about embedded system development presented early in some sections. There are, however, many early sections (particularly in Chapter 2) that you will need to read, because they cover the special implications of using the Linux kernel in an embedded system.
This book is also intended for the beginning embedded system developer who would like to become familiar with the tools and techniques used in developing embedded systems based on Linux. This book is not an introduction to embedded systems, however, and you may need to research some of the issues discussed here in an introductory textbook.
If you are a power user or a system administrator already familiar with Linux, this book should help you produce highly customized Linux installations. If you find that distributions install too many packages for your liking, for example, and would like to build your own custom distribution from scratch, many parts of this book should come in handy, particularly Chapter 6.
Finally, this book should be helpful to a programmer or a Linux enthusiast who wants to understand how Linux systems are built and operated. Though the material in this book does not cover how general-purpose distributions are created, many of the techniques covered here apply, to a certain extent, as much to general purpose distributions as they do to creating customized embedded Linux installations.
Scope and Background Information
To make the best of Linux's capabilities in embedded systems, you need background in all of the following topics (which are treated distinctly in many books):
Embedded systems


点击看大图





加载中...
