本篇主要提供O'Reilly:构建嵌入式Linux系统电子书的pdf版本下载,本电子书下载方式为百度网盘方式,点击以上按钮下单完成后即会通过邮件和网页的方式发货,有问题请联系邮箱ebook666@outlook.com
虽然Linux嵌入式系统几乎无所不在,从手机到汽车的ABS系统以及净水厂都可以发现它的踪迹,但是令人惊讶的是,建立、安装和测试Linux内核以及相关工具的信息来源却少得可怜。《构建嵌入式Linux系统(第二版)》是一本深入探讨如何构建这些系统的指南。通过阅读《构建嵌入式LINUX系统(第2版)》,你不仅可以获得基本的概念,还可以学到如何设置以及使用40种以上不同的开放源码和自由软件套件。《构建嵌入式LINUX系统(第2版)》的内容针对Linux内核的全新版本做过更新,并且加入之前未介绍过的程序以便协助你:
·建立你自己的GNu development toolchain(开发工具链)
·为你的目标系统选用、设定、构建以及安装专属的内核
·为你的目标系统建立完整的根文件系统
·设置、操作以及使用固态储存设备
·为你的目标系统安装及设定bootloader(引导加载程序)
·交叉编译许多的工具程序与套件
·可用于嵌入式系统调试的众多工具和技术
·使用uClibc、BusyBox、U-Boot、OpenSSH、thttpd、tftp、 strace以及gdb等套件
·用Xenomai或RT kernel patch实现实时功能阅读《构建嵌入式LINUX系统(第2版)》你将能够学到如何构建操作系统组件,以及简化全面掌控嵌入式系统的艰巨任务。
Karim Yaghmour,是Opersys(这家公司为开放源码和自由软件在嵌入式系统中的使用提供了专家支持和训练课程)以7LKryptiva(电子邮件安全服务的供应商)的创办人及总裁。身为开放源码和自由软件社群的活跃成员,Karim将Opersys所提供的服务稳固地构建在社群所推动的知识共享和技术质量的内核价值上。Karim对社群的部分贡献包括:他是Linux Trace Toolkit的维护者,以及是促使Adeos nanokernel(允许多个操作系统并存)得以实现的一系列白皮书(white paper)的作者。Karim天生喜欢探究事物的运行原理。小时候,Karim甚至拆开家中所有的收音机和卡式磁带机,以便能够“修理”它们。同样地,Karim早就展露自己对操作系统内部及嵌入式系统高度的兴趣。他目前拥有Ecole Polytechnique de Montreal(蒙特利尔工程学院)的B.Eng.(工程学位)和M-A.Sc.(研究生硕士)学位。当每个人都在为Linux开发程序的时候,Karim辟蹊径,撰写自己的分布式微内核,借此深入了解操作系统的设计及实现。不写程序的时候,Karim通常会将自己的热情投在史学、哲学、社会学和人文科学上。此外,他对Umberto Eco和GeraldMessadi的散文和小说情有独钟。
Jonathan Masters,是一位替Red Hat-Y-作的英国Linux内核工程师,他是实时内核小组的成员,同时还参与了各种其他项目。Jon是英国历史上首位以13岁的年龄进入大学就读的人。他的生活与Linux密不可分,不是在使用Linux,就是在从事Linux的工作。他曾在规模各不相同的各种嵌入式项目中工作过,做过独立承包商、大型科学研究公司的雇员以及在著名的嵌入式Linux供应商待过。Jon撰写过几本书、许多技术文章,以及维护Linux内核所使用的module-init.tools套件。Jon住在马萨诸塞州剑桥市,他喜欢旅游、修改嵌入式设备、徒步旅行、美国历史、难懂的法律用词,以及任意疯狂的任何机会。
Gilad Ben-Yossef,是Codefidence有限公司的共同创始人与CTO(首席技术总监),而且自1998年以来,一直在协助OEM(原始设备制造商)在商业产品和服务中使用自由和开放源码软件。他也是Hamakor一个以色列的非营利组织,致力于FOSS(自由和开放源码软件)的推广的共同创始人,以及“August Penguin” (以色列的社群FOSS会议)的创立委员。
选用发行套件的时候,你还会受到厂商名声的影响,不过你必须有明辨是非的能力,言过其实的传言不在少数。如果你听到某个发行套件的传言,请花些时间验证相关信息的真实性。如果这是个商业发行套件,你可以跟厂商联络。对方可能知道相关信息的来源,最重要的是,能够对传言提出合理的说明。此验证过程并非专属于嵌入式Linux发行套件。嵌入式Linux发行套件特有的现象是,当商业发行套件的厂商对开放源码社群做出贡献时,便会建立起该商业发行套件的名声。厂商若能够提供更多开放源码软件或资助其开发,表明他与开放源码社群的关系,就能够站在非常有利的位置上,了解到这些开放源码项目的变迁与开发会对其未来的产品及最终的客户造成什么影响。总之,这是了解厂商的关键性环节和依据,你可以从此处看出厂商对其所提供的软件抱持着什么态度。就开放源码发行套件来说,已经符合这个标准了,因为其本身就是一个开放源码的贡献。商业发行套件可能必须提供的另一个重要工具就是文档。在今日这个瞬息万变的年代,能够包含最新信息且内容精确的文档并不多见。开放源码项目若提供了文档,通常都已经过时。Linus Torvalds的话一点都没错,他说: “用源码,路克”(use the source,Luke)(译注1),意思是说倘若需要了解软件,你就应该看它的源码。但是要达到精通的程度必须投入相当的时间和精神,因此仍须辅以适当的文档。因为开放源码开发者宁可花时间写程序也不愿意浪费时间写文档,所以发行套件厂商必须为其产品提供适当的文件。当你在评估发行套件的时候,务必了解其随附文档的类型和程度。尽管开放源码发行套件的文档不算多,但与商业发行套件比起来,有些开放源码发行套件所提供的文档算是相当优质的了。
……
当本书第一版的作者——Karim Yaghmour于1997年任职一家硬件制造公司的时候,曾率先提议在嵌入式系统中使用Linux,他的建议在当时不仅令人感到惊讶,也受到某些质疑。现在,大多数嵌入式系统若不是已经在使用Linux,就是正在考虑使用Linux。的确,有不少大公司及政府机关在其嵌入式软件的需求上逐渐依赖Linux。本书第一版颇受欢迎,但自本书第一版发行以来,Linux内核与相应的工具取得了不少的进展,这使得Linux更具吸引力。其中最主要的是,出现了若干的实时扩展与配套环境,这会在本书第二版最后3章加以探讨。此外,由于本书第一版、热心的开放源码与自由软件程序员已经简化了GNu/Linux套件(此处之所以提到GNu,是因为要建立有效的Linux系统,需要用到来自GNu这个自由软件计划的工具)的构建与安装程序,因此本书第二版会介绍许多令人感到惊奇的高级工具,包括Eclipse以及用于替嵌入式Linux系统“打造构建工具”的各种工具。不过,我们仍会提供大量的底层信息给那些有需要的人,以协助您了解它们在背后用到了哪些辅助工具。
要跟上Linux各部分与相关工具的爆炸性进展,最好的办法就是由研究嵌入式与实时Linux相关问题的专家来告诉你。因此,本书第二版的作者加入了几位GNu/Linux社群中关键的参与者,包括了那些进行内核开发或建立相关项目的人士。