热搜关键词: 电路基础ADC数字信号处理封装库PLC

pdf

嵌入式Linux应用程序开发详解(完整版_第1-12章).pdf

  • 1星
  • 2015-07-29
  • 11.16MB
  • 需要2积分
  • 7次下载
标签: 嵌入式

嵌入式

Linux

Linux

  嵌入式Linux应用程序开发详解,高清

文档内容节选

华清远见嵌入式培训专家 httpwwwfarsightcomcn 黑色经典系列之嵌入式 Linux 应用程序开发详解 第 1 章 Linux 快速入门 嵌入式 Linux 是以 Linux 为基础的操作系统,只有对 Linux 系统有了较为熟练的使用之 后,才能在嵌入式 Linux 开发领域得心应手通过本章的学习,读者能够掌握如下内容 本章目标 能够独立安装 Linux 操作系统 能够熟练使用 Linux 系统的基本命令 认识 Linux 系统启动过程 能够独立在 Linux 系统中安装软件 能够独立设置 Linux 环境变量 能够独立定制 Linux 服务 华清远见嵌入式 Linux 应用开发班培训教材 华清远见嵌入式培训专家 httpwwwfarsightcomcn 11 嵌入式 Linux 基础 随着摩托罗拉手机 A760IBM 智能型手表 WatchPad夏普PDA Zaurus 等一款款高性能 智能数码产品的出现,以及 ......

华清远见——嵌入式培训专家
http://www.farsight.com.cn
“黑色经典”系列之《嵌入式
Linux
应用程序开发详解》
1
Linux
快速入门
本章目标
嵌入式
Linux
是以
Linux
为基础的操½系统,只有对
Linux
系统有了较为熟练的½用之
后,才½在嵌入式
Linux
开发领域得心应手。通过本章的学习,读者½够掌握如下内容。
½够独立安装
Linux
操½系统
½够熟练½用
Linux
系统的基本½令
认识
Linux
系统启动过程
½够独立在
Linux
系统中安装½件
½够独立设½
Linux
环境变量
½够独立定制
Linux
服务
华清远见<嵌入式
Linux
应用开发班>培训教材
华清远见——嵌入式培训专家
http://www.farsight.com.cn
1.1
嵌入式
Linux
基础
随着摩托½拉手机
A760、IBM
智½型手表
WatchPad、夏普 PDA Zaurus
等一款款高性½
“智½数码产品”的出现,以及
Motolola、三星、MontaVista、飞利浦、Nokia、IBM、SUN
等众多½际顶级巨头的加入,嵌入式
Linux
的队伍越来越庞大了。在通信、信息、数字家庭、
工业控制等领域,随处½½见到嵌入式
Linux
的身½。根据美½
VDC(Venture Development
Co.)统计数据显示,嵌入式 Linux
的市场规模从
2001
年的
5520
万美元,到
2006
将会增长
3.46
亿美元,在未来两年将占嵌入式操½系统市场½额的
50%。
究竟是什么原因让嵌入式
Linux
发展如此迅速呢?又究竟是什么原因让它½与强劲的
Vxworks、Window CE
相抗衡呢?这一切还是要½根于它的父亲——Linux 的功劳。可以说,嵌入
Linux
正是继承和发展了
Linux
的诱人之处才走到今天的,而
Linux
也正是有了嵌入式
Linux
广泛应用才½其更加引人瞩目。以下就从
Linux
开始,一层层揭开嵌入式
Linux
的面纱。
1.1.1
Linux
发展概述
简单地说,Linux 是指一套免费½用和自由传播的类
UNIX
操½系统。人们通常所说的
Linux
是指
Linus Torvalds
所写的
Linux
操½系统内核。
½时的
Linus
还是芬兰赫尔辛基大学的一名学生,
他主修的课程中有一门课是操½系统,
而且这门课是专门研究程序的设计和执行。
最后这门课程提供了一种称为
Minix
的初期
UNIX
系统。Minix 是一款仅为教学而设计的操½系统,而且功½有限。因此,和
Minix
的众多½
用者一样,Linus 也希望½给它添加一些功½。
在之后的几个月里,Linus 根据实际的需要,编写了磁盘驱动程序以便下½½访问新闻组
的文件,又写了个文件系统以便½够阅读
Minix
文件系统中的文件。这样,
“½½有了任务切
换,有了文件系统和设备驱动程序后,这就是
UNIX,或者至少是其内核。
”于是,0.0.1 版本
Linux
就诞生了。
Linus
从一开始就决定自由传播
Linux,他把源代码发布在½上,于是,众多的爱½者和
程序员也½通过互联½加入到
Linux
的内核开发工½中。这个思想与
FSF(Free Software
Foundation)资助发起的 GNU(GNU’s Not UNIX)的自由½件精神不谋而合。
GNU
是为了推广自由½件的精神以实现一个自由的操½系统,
然后从应用程序开始,
现其内核。而½时
Linux
的优良性½备受
GNU
的赏识,于是
GNU
就决定采用
Linus
及其开
发者的内核。在他们的共同努力下,Linux 这个完整的操½系统诞生了。其中的程序开发共
同遵守
General Public License(GPL)协议,这是最开放也是最严格的许可协议方式,这个协
议规定了源码必须可以无偿的获取并且修改。因此,从严格意义上说,Linux 应该叫做
GNU/Linux,其中许多重要的工具如 gcc、gdb、make、Emacs
等½是
GNU
贡献。
这个“婴儿版”的操½系统以平均两星期更新一次的速度迅速成长,如今的
Linux
已经
有超过
250
种发行版本,且可以支持所有½系结构的处理器,如
X86、PowerPC、ARM、
XSCALE
等,也可以支持带
MMU
或不带
MMU
的处理器。到目前为止,它的内核版本也已
经从原先的
0.0.1
发展到现在的
2.6.xx。
华清远见<嵌入式
Linux
应用开发班>培训教材
《嵌入式
Linux
应用程序开发详解》——第
1
章、Linux 快速入门
自由½件(free
software)中的 free
并不是指免费,而是指自由。它赋予½用者四种自由。
自由之一:有½用½件的自由。
有研究该½件如½运½的自由,
并且得以改写该½件来符合½用者自身的需求。
自由之二:
取得该½件的源码是达成此目的前提。
自由之三:有重新散布该½件的自由,所以每个人½可以藉由散布自由½件来敦亲睦另。
自由之四:有改善再利用该½件的自由,并且可以发表改写版供公众½用,如此一来,整
小知识
个社群½可以受惠。如前项,取得该½件的源码是达成此目的前提。
GPL:GPL
协议是
GNU
组织、维护的一种版权协议,遵守这个协议的½件可以自由地获取、
查看、½用其源代码。GPL 协议是整个开源世界的精神基础。
Linux
的内核版本号:
Linux
内核版本号格式是
x.y.zz-www,数字 x
代表版本类型,数字
y
为偶数时是稳定版本,为
奇数时是开发版本,如
2.0.40
为稳定版本,2.3.42 为开发版本,测试版本为
3
个数字加上测试
号,如
2.4.12-rc1。最新的 Linux
内核版本可从
http://www.kernel.org
上获得。
1.1.2
Linux
½为嵌入式操½系统的优势
Linux
系统的发展过程可以看出,Linux 从最开始就是一个开放的系统,并且它始终
遵循着源代码开放的原则,它是一个成熟而稳定的½络操½系统,½为嵌入式操½系统有如
下优势。
1.½成本开发系统
Linux
的源码开放性允许任½人可以获取并修改
Linux
的源码。这样一方面大大降½了
开发的成本,另一方面又可以提高开发产品的效率。并且还可以在
Linux
社区中获得支持,
用户只需向邮件列表发一封邮件,即可获得½者的支持。
2.可应用于多种硬件平台
Linux
可支持
X86、PowerPC、ARM、XSCALE、MIPS、SH、68K、Alpha、SPARC
多种½系结构,并且已经被移植到多种硬件平台。这对于经费、时间受限制的研究与开发项
目是很有吸引力的。Linux 采用一个统一的框架对硬件进行管理,同时从一个硬件平台到另
一个硬件平台的改动与上层应用无关。
3.可定制的内核
Linux
具有独特的内核模块机制,它可以根据用户的需要,实时地将某些模块插入
到内核中或者从内核中移走,
并½根据嵌入式设备的个性需要量½裁衣。
经裁减的
Linux
内核最小可达到
150KB
以下,尤其适合嵌入式领域中资源受限的实际情况。½前的
2.6
内核加入了许多嵌入式友½特性,如构建用于不需要用户界面的设备的小占板面积内核
选项。
华清远见<嵌入式
Linux
应用开发班>培训教材
华清远见——嵌入式培训专家
http://www.farsight.com.cn
4.性½优异
Linux
系统内核精简、高效和稳定,½够充分发挥硬件的功½,因此它比其他操½系统
的运行效率更高。在个人计算机上½用
Linux,可以将它½为工½站。它也非常适合在嵌入
式领域中应用,对比其他操½系统,它占用的资源更少,运行更稳定,速度更快。
5.良½的½络支持
Linux
是首先实现
TCP/IP
协议栈的操½系统,它的内核结构在½络方面是非常完整的,
并提供了对包括十兆½、百兆½及千兆½的以太½,还有无线½络、Token
ring(令牌环)和
光纤甚至卫星的支持,这对现在依赖于½络的嵌入式设备来说无疑是很½的选择。
1.1.3
Linux
发行版本
由于
Linux
属于
GNU
系统,而这个系统采用的
GPL
协议,并保证了源代码的公开。于
是众多组织或公司在
Linux
内核源代码的基础上进行了一些必要的修改加工,然后再开发一
些配套的½件,
并把它整合成一个自己的发布版
Linux。
除去非商业组织
Debian
开发的
Debian
GNU/Linux
外,美½的
Red Hat
公司发行了
Red Hat Linux,法½的 Mandrake
公司发行了
Mandrake Linux,德½的 SUSE
公司发行了
SUSE Linux,½内众多公司也发行了中文版的
Linux,如著名的红旗 Linux。Linux
目前已经有超过
250
个发行版本。
下面仅对
Red Hat、Debian、Mandrake
等有代表性的
Linux
发行版本进行介绍。
1.Red Hat
½内,乃至是全世界的
Linux
用户最熟悉的发行版想必就是
Red Hat
了。Red
Hat
最早是
Bob Young
Marc Ewing
1995
年创建的。目前
Red Hat
分为两个系列:由
Red Hat
司提供收费技术支持和更新的
Red Hat Enterprise Linux(RHEL,Red Hat
的企业版)
,以及由
社区开发的免费的桌面版
Fedora Core。
Red Hat
企业版有三个版本——AS、ES 和
WS。AS
是其中功½最为强大和完善的版本。
而正统的桌面版
Red Hat
版本更新早已停止,最后一版是
Red Hat 9.0。本书就以稳定性高的
RHEL AS
½为安装实例进行讲解。
官方主页:http://www.redhat.com/。
2.Debian
之所以把
Debian
单独列出,是因为
Debian GNU/Linux
是一个非常特殊的版本。在
1993
年,伊恩·默多克(Ian
Murdock)发起 Debian
计划,它的开发模式和
Linux
及其他开放性
源代码操½系统的精神一样,½是由超过
800
½志愿者通过互联½合½开发而成的。一直以
来,Debian
GNU/Linux
被认为是最正宗的
Linux
发行版本,而且它是一个完全免费的、高质
量的且与
UNIX
兼容的操½系统。
Debian
系统分为三个版本,分别为稳定版(Stable)
,测试版(Testing)和不稳定版
(Unstable)
。并且每次发布的版本½是稳定版,而测试版在经过一段时间的测试证明没有问
题后会成为新的稳定版。Debian 拥有超过
8710
种不同的½件,而且每一种½件½是自由的,
而且有非常方便的升级安装指令,
基本囊括了用户需要。
Debian
也是最受欢迎的嵌入式
Linux
华清远见<嵌入式
Linux
应用开发班>培训教材
《嵌入式
Linux
应用程序开发详解》——第
1
章、Linux 快速入门
之一。
官方主页:http://www.debian.org/。
3.½内的发行版本及其他
目前½内的红旗、新华等½发行了自己的
Linux
版本。
除了前面所提到的这些版本外,业界还存在着诸如
gentoo、LFS
等适合专业人士½用的
版本。在此不做介绍,有兴趣的读者可以自行查找相关的资料做进一步的了解。
1.1.4
如½学习
Linux
正如人们常说的“实践出真知”
,学习
Linux
的过程也一样。只有通过大量的动手实践才
½真正地领会
Linux
的精髓,才½迅速掌握在
Linux
上的应用开发,相信有编程语言经验的
读者一定会认同这一点。因此,在本书中笔者安排了大量的实验环节和课后实践环节,希望
读者½可½多参与。
另外要指出的是,互联½也是一个很½的学习工具,一定要充分地加以利用。正如编程
语言一样,实践的过程中总会出现多种多样的问题,笔者在写½的过程½中会½可½地考虑
可½出现的问题,½限于篇幅和读者的实际情况,不可½考虑到所有可½出现的问题,所以
希望读者½充分利用互联½这一共享的天空,
在其中寻找答案。
以下列出了½内的一些
Linux
论坛:
http://www.linuxfans.org
http://www.linuxforum.net/
http://www.linuxeden.com/forum/
http://www.newsmth.net
1.2
Linux
安装
有了一个初步的了解后,
读者是否想亲自试一下?其实安装
Linux
是一件很容易的事情,
不过在开始安装之前,还需要了解一下在
Linux
安装过程中可½遇到的一些基本知识以及它
Windows
的区别。
1.2.1
基础概念
1.文件系统、分区和挂½½
文件系统是指操½系统中与管理文件有关的½件和数据。Linux 的文件系统和
Windows
中的文件系统有很大的区别,Windows 文件系统是以驱动器的盘符为基础的,而且每一个目
½是与相应的分区对应,例如“E:\workplace”是指此文件在
E
盘这个分区下。而
Linux
恰½
相反,文件系统是一个文件树,且它的所有文件和外部设备(如硬盘、光驱等)½是以文件
的½式挂结在这个文件树上,例如“\usr\local”
。对于
Windows
而言,就是指所有分区½是在
一些目½下。总之,在
Windows
下,目½结构属于分区;Linux 下,分区属于目½结构。其
华清远见<嵌入式
Linux
应用开发班>培训教材
展开预览

猜您喜欢

评论

登录/注册

意见反馈

求资源

回顶部

推荐内容

热门活动

热门器件

随便看看

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved
×