《Linux嵌入式实时应用开发实战(原书第3版)》—— 导读

前 言
使用minix的朋友们,大家好!
我正在为386(486)AT系列编写一个(免费的)操作系统(这仅仅是业余爱好,不会太大,也不会像GNU那样专业)。我从4月份开始酝酿,现在快准备好了。我希望得到任何关于minix的反馈,包括你们在使用过程中喜欢和不喜欢的地方。因为我的操作系统和它多少有点类似(比如文件系统具有相同的物理布局(出于实用的原因))。
我目前已经移植了bash(1.08)和gcc(1.40),而且进展好像很顺利。这意味着我将在未来几个月内把这个系统推向应用,所以我想知道大多数人希望系统具有什么特性。欢迎任何建议,但是我不能保证都能实现∶-)
Linus(torvalds@kruuna.helsinki.fi)
补充一下,任何minix代码都是免费的,而且具有多线程的文件系统。
它不是便携的(如使用386任务切换等),很可能永远不能支持除了AT硬盘以外的东西,这就是我目前能达到的状态∶-(
在当时刚出现的只能处理文字的互联网上,Linus Torvalds,一个芬兰的大学生,用这则信息开启了一场革命。当我在2011年年末写下这些文字时,Linux已经庆祝了它的20周年纪念日。我怀疑,Linus当时并没有想到他的“爱好”项目会很快变成一个功能强大的32位和后来的64位操作系统,甚至可以与微软有力地竞争。
毫无疑问,20年来,Linux走过了很长的一段路。1991年9月17日首次发布的0.01版本包含88个文件,总共278KB。最新发布的Linux版本包括近40 000个文件,超过400MB。据说,全球几千个程序员都不同程度地参与到了Linux的开发中。
自2006年本书的第2版出版以来,Linux世界又发生了很多变化,这也是本书再版的一个直接原因。Linux内核持续改进,为了庆祝20周年,最近提高到了3.0版。2007年年底,谷歌引入了安卓系统。据统计,截至2011年8月,安卓占有智能手机市场48%的份额,每天有500 000台设备被激活。
在本书第1版的前言中我就承认,我没有真正喜欢过UNIX,因为它有意设计得晦涩而且很难使用。一开始,Linux在这方面几乎没做任何改变,我也仍然坚持这种几分喜爱几分讨厌的态度。
但是,当Linux逐渐开始为桌面处理世界的黄金时代做好准备时,它在我工作的嵌入式领域和网络服务器方面都取得了显着的成就。2007年,LinuxDevices.com报道了Linux正用于近50%的嵌入式项目,到2012年将有超过70%的相关发布产品。甚至微软公司也承认全球有60%的网络服务器运行Linux操作系统,与此同时只有40%运行Windows。
Linux确实很复杂,除非你已经是一个UNIX高手,学习起来才会很快。相关信息就在网上,但是通常它们既不易找到也不易读懂。市场上有数百本已出版的Linux书籍,覆盖了从初学者指南到内核内部工作原理的各个方面。目前为止甚至有不少书讨论过嵌入式和实时应用领域的Linux。
我决定学习Linux,一部分是因为我看到了这个新兴的市场机会,另一部分是因为这种开源的开发模式激励了我。仅仅是出于对它的兴趣,全世界程序员的创意都对这个高度成熟的操作系统做出了贡献。拥有完整的源代码不仅允许你随自己意愿进行改动,也让你(至少在理论上)能理解代码是怎么工作的。
开源有潜力成为社会商业模式转换方面的一个重要范例,因为它表明在解决问题方面,合作可以和竞争同样有效。而且就在我怀疑是否有人能通过Linux得到惊人的财富时,许多公司已经证明针对Linux建立一个赚钱的商业模式是可能的。
读者和阅读准备
我写本书的目的是写一本在我初学Linux时渴望拥有的书。因此,基于这样的想法,本书是直接面向两种不同读者的:
1)主要读者是嵌入式程序员,他们需要得到在嵌入式领域的Linux指导。这也是我初学Linux时的状况和我开始学习Linux的原因,因此,这似乎是架构本书的一个合理方法。
2)另一类读者是Linux程序员,他们需要得到嵌入式和实时编程概念的指导。
因此,尽管本书采用了一个新的角度,但每类读者都很可能看到一些熟悉的内容。
目 录
第一部分 入 门 指 导
第1章 嵌入式和实时空间
1.1 什么是嵌入式
1.2 什么是实时
1.3 为什么Linux适用
1.4 哪里用嵌入式Linux
1.5 开源协议
1.6 资源
第2章 安装Linux
2.1 发行版
2.2 硬件需求
2.3 安装方案
2.4 DVD 还是激活CD
2.5 安装过程
2.6 资源
第3章 Linux入门
3.1 运行Linux——KDE
3.2 Linux属性
3.3 保护模式架构
3.4 Linux进程模型
3.5 Linux文件系统
3.6 系统配置
3.7 shell
3.8 获得帮助
3.9 资源
最后更新:2017-07-07 15:03:36