网站大量收购独家精品文档,联系QQ:2885784924

Linux基础及应用教程 陈英 第11章 嵌入式Linux新.ppt

Linux基础及应用教程 陈英 第11章 嵌入式Linux新.ppt

  1. 1、本文档共31页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
陈英 梁建武主编 中国水利水电出版社 Linux基础及应用 第11章 嵌入式Linux 11.1嵌入式系统简介 11.1.1 嵌入式系统的定义 嵌入式系统是将先进的计算机技术、半导体技术和电子技术与各个行业的具体应用相结合后的产物。 Linux提供了完成嵌入功能的基本的内核和所需要的所有用户界面,它是多面的。它能处理嵌入式任务和用户界面。将Linux看作是连续的统一体,从一个具有内存管理、任务切换和时间服务及其他的分拆的、微内核到完整的服务器,支持所有的文件系统和网络服务。 11.1.2 嵌入式系统的特征 嵌入式系统是面向用户、面向产品、面向应用的,如果独立于应用自行发展,则会失去市场。嵌入式处理器的功耗、体积、成本、可靠性、速度、处理能力、电磁兼容性等方面均受到应用要求的制约,这些也是各个半导体厂商之间竞争的热点。 11.2 嵌入式Linux基础 11.2.1 嵌入式Linux的应用 信息家电:PDA,机顶盒,Digital Telephone,Answering Machine,Screen Phone; 数据网络:Ethernet Switches,Router,Bridge,Hub,Remote access servers,ATM,Frame relay; 远程通信; 医疗电子; 交通运输; 计算机外设; 工业控制; 航空航天领域 11.2.2 Linux作为嵌入式操作系统的优势 1.免许可证费用 嵌入式Linux的版权费是免费的,其购买费用仅为媒介成本。大多数的商业操作系统,例如Windows, Windows CE对每套操作系统收取一定的许可证费用。相对地,Linux是一个免费软件,并且公开源代码。只要不违反GPL(General Public License,通用版权许可协议),就可以自由应用和发布Linux。 2.有很高的稳定性 在PC硬件上运行时,Linux是非常可靠和稳定的,特别是和现在流行的一些操作系统相比。 有两个因素会影响稳定性,一是使用了混乱的驱动程序。驱动程序的选择很有限,有些稳定有些不稳定。一旦离开了通用的PC平台,需要自己编写。二是使用了硬盘。 3.强大的网络功能 Linux天生就是一个网络操作系统,几乎所有的网络防议和网络接口都已经被定制在Linux中。Linux内核在处理网络防议方面比标准的Unix更具执行效率,在每一个端口上有更高的吞吐量。 4.丰富的开发工具 Linux提供C, C++, JAVA以及其他很多的开发工具。更重要的是,爱好者可以免费获得,技术上由全世界的自由软件开发者提供支持。 Linux基于GNU的工具包,此工具包提供了完整与无缝交叉平台开发工具,从编辑器到底层调试。其C编译器产生更有效率的执行代码。 5.实时性 在实时性能方面,RT_Linux ,Hardhat Linux 等嵌入式Linux支持实时性能;稳定性好,安全性好。 11.3 Linux I/O端口编程 11.3.1如何在C语言下使用I/O端口 1.一般方法 在存取任何I/O端口之前,必须让程序有如此做的权限。要完成这个目的,可以在程序一开始的地方(但是,要在任何I/O端口存取动作之前)调用ioperm()这个函数(该函数在文件unistd.h中,并且被定义在内核中)。 使用语法是: ioperm(from,num,turn_on) 其中from是第一个允许存取的I/O端口地址,num是接着连续存取I/O端口地址的数目。 函数ioperm()只能取得端口地址0x000到0x3ff的存取权限;至于较高地址的端口,需要使用函数iopl()(该函数可以一次存取所有的端口地址)。将权限等级参数值设为3(例如,iopl(3)),以便程序能够存取所有的I/O端口(如果存取到错误的端口地址将对计算机造成各种不可预期的损害。同样地,调用函数iopl()必需要拥有root的权限。 接着来实际地存取I/O端口。要从某个端口地址输入一个字节(8位)的信息,调用函数inb(port),该函数会传回所取得的一个字节的信息。要输出一个字节的信息,调用函数outb(value,port)。要从某两个端口地址x和x+1(两个字节组成一个字,故使用组合语言指令inw)输入一个字(16个bit)的信息,需要调用函数inw(x);要输出一个字的信息到两个端口地址,需要调用函数outw(value,x)。 2

文档评论(0)

精品课件 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档