- 1、本文档共13页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第三章 android系统移植结构和方法
第 * 页 Android系统移植 第三章 android移植的结构和方法 一、android的linux内核 二、驱动程序简介 一、Android的linux操作系统 Android是基于linux操作系统的,linux操作系统包括linux内核和驱动程序,linux操纵系统位于android软件系统的最底层。 标准的linux操作系统,支持多种硬件。 核心部件:进程调度、进程间通信、内存管理、虚拟文件系统、网络。 二、驱动程序简介 从程序结构的角度来看,驱动程序是子程序和数据的集合,是输入、输出设备的软件接口,他的任务就是向系统提供接口函数,从而实现对系统中各种设备进行访问的功能,所以简单说编写驱动就是实现接口函数。 Linux核心和设备驱动程序之间必须有一个以标准的方式进行相互操作的接口,每一类设备都提供了通用接口,一边在方便时为内核提供服务,这种通用的接口使得内核可以以相同的方式来对待不同的设备以及设备驱动。 设备驱动只是负责处理硬件,将如何使用硬件的问题留给了应用程序,可以从不同的侧面来看驱动程序,他是位于应用层和实际设备之间的一个“黑盒子”。用户通过一组标准的调用来完成工作。 常见的设备分为3种:字符设备、块设备、网络设备 二、驱动程序简介-字符设备 字符设备可以象文件一样访问,字符设备的驱动负责实现这些功能,这样的驱动通常会实现read、write、open、close等系统调用。 控制台、并口就是字符型设备的例子,他们可以使用流概念来描述,通过文件节点可以访问字符设备 例如 /dev/tty1 dev/lp1。 字符设备和普通文件的区别是普通文件允许在上面来回读写,而大多数字符设备仅仅是普通数据通道,只能顺序读写。 二、驱动程序简介-块设备 块设备是文件的宿主如硬盘 在linux中可以将块设备当做多个块访问,一个块的大小为1KB。Linux允许用户像字符设备一样读取块设备,允许一次传输任意数目的字节,结果是块设备和字符设备只是在内核内部管理上有所区别。 每个块设备也可以象字符设备一样通过文件节点来读取数据。块设备驱动程序和内核的接口和字符设备和内核的接口是一样的。 二、驱动程序简介-网络设备 任何网络事务的处理都需要通过接口实现,既可以和其他宿主交换数据的设备。 通常接口是一个硬件设备,他负责接收和发送数据报,而无需知道每次事务时如何映射到实际被发送的数据报。 尽管telnet和ftp都是面向流的,但是他们同样要使用网络设备进行传输,但设备并没有看到任何流,而只是看到了数据包。 由于不是面向流的设备,所以网络接口不能像/dev/tty1那样简单的映射到文件系统的节点上,linux调用这些接口的方式是给他们分配一个独立的名字(如eth0)。这样的名称在文件节点中没有对应,内核对网络设备的调用和字符和块设备完全不一样,不能再使用read和write,他调用与数据传输相关的函数(socket)来实现。 二、linux的内核移植和驱动程序 Linux内核支持众多体系架构,每种设置一个文件夹。 驱动程序是liunx设备的也是操作系统的一部分,在目前的linux内核中,驱动程序占用了大部分,他的代码包括两部分,与硬件相关的和与硬件无关的。 目前的源代码中驱动占了大部分,在liunx中系统能够系统调用驱动程序,在linux操作系统中,系统调用是应程序内核之间的接口,设备驱动分是操作统和硬件之间的接口。 设备的驱动程序作为应用程序屏蔽了硬件的细节。 设备作为驱动设备,可以像文件那样操作 一、Android与linux 常见的设备: 字符设备、块设备、网络设备 这种分类方式是按照驱动程序对着用户空间的接口来区分的,在用户空间,通过设备文件访问字符设备和块设备。通过socket访问网络设备。 随着信息产业的linux发展,驱动程序也越来越复杂,某些只有对内核的接口,没有用户空间的接口,某些驱动程序不需要使用设备节点的方式向用户空间提供接口,而是使用sysfs的方式。 Linux中的驱动程序大都具有标准架构,基于这个架构可以构建出多种多样的驱动程序。 三、Android对于linux的使用 在android中使用的是标准的linux2.6内核,这个内核和其他的linux系统类似。 和普通的linux相比较,android的linux内核还包括有一下三个方面的内容: 体系结构和处理器 Android特定的驱动程序 标准的设备驱动 第 * 页 * *
您可能关注的文档
- 第一章_状态空间表达式.ppt
- 第一章_运动和力(运动的描述2).ppt
- 第一章拱桥概述.ppt
- 第一章第二部分智能汽车电源研究.ppt
- 第一节孟德尔豌豆杂交实验1.ppt
- 第一节硅酸盐与无机非金属材料(课时2).ppt
- 第一节泵与风机的用途及分类.ppt
- 第一讲 用户界面介绍.ppt
- 第一讲 台湾问题的历史由来与实质.ppt
- 第一课________美术作品的产生.ppt
- 2025年一级建造师考试《水利水电工程管理与实务》冲刺必刷卷.docx
- 2025年一级建造师考试《水利水电工程管理与实务》逆袭破题卷1.docx
- 2025年一级建造师考试《市政工程管理与实务》冲刺必刷卷 .docx
- 2025年一级造价工程师考试《建设工程计价》预习卷.docx
- 2025年一级造价工程师考试《建设工程造价管理》预习卷.docx
- 2025年一级造价工程师考试《建设工程造价案例分析(安装专业)》预习卷.docx
- 2025年一级造价工程师考试《建设工程造价案例分析(土建专业)》预习卷.docx
- 2025年中级会计考试《会计实务》冲刺提分卷.docx
- 2025年中级会计考试《财务管理》冲刺提分卷.docx
- 2025年中级会计考试《财务管理》全真模拟卷.docx
文档评论(0)