序言
虽然涉及Linux的有很多好书,但是这本书带来了多角度的信息和建议,特别是嵌入式Linux开发者。
除此之外,许多其它的书籍也写到了关于Linux内核,Linux系统管理,等等。这本书是这些我想到的书中最好的了。
这本书的许多重要内容是来自作为一个嵌入式Linux顾问的能力范围之内的开发工程师接触到的问题所促发的,最直接的影响是商业嵌入式Linux市场。
嵌入式Linux对经验丰富的工程师有几方面独一无二的挑战。第一点,多年实时操作系统(RTOSs)的经验遗产很难把他们的思想转换到Linux上。第二点,有经验的应用程序开发者经常很难明白相关交叉开发环境的复杂性。
虽然这是一本初级书,适合刚进入嵌入式Linux开发的人,我很自信有经验的嵌入式Linux开发人员也将从本书中学的很多。
目标读者
这本书适合于那些用C语言进行编程的程序员。我假设你知道局域网和互联网概念。你应该懂得IP地址是如何应用在一个简单的局域网中的。我同样假定大家都懂得十六进制和八进制系统,这些在本书中是经常使用到的。
几个与C语言编译和链接的超前概念被探索,所以你将会很自信至少对C程序链接者的角 {MOD}有一个粗略的认识。GNU的知识使语意和操作有益。
什么是这本书不提供的
这本书没有一个很详细的硬件指导。嵌入式开发者面对的一个困难是今天大量使用的硬件。一个经过整合的32位处理器的用户手册很容易就超过1000页。(译者:而且大多数还都是英文的,情何以堪)没有捷径,如果你需要从一个程序员的视野来了解硬件设备的话,你必须要坐在椅子上阅读硬件数据单以及参考指南,以及花很多时间来写和测试这些硬件的代码!
这不是一本写Linux核心的书。在这本书里,你将不会学到用于实现Linux内存管理策略和程序的内存管理单元那些复杂的内容,在这方面已经很多很好的书籍了。在后面的章节中我们将构建嵌入式Linux。