android内核分析

android内核分析

ID:37177007

大小:363.93 KB

页数:4页

时间:2019-05-21

android内核分析_第1页
android内核分析_第2页
android内核分析_第3页
android内核分析_第4页
资源描述:

《android内核分析》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、内核分析Android陈璟陈平华李文亮,,(广东工业大学计算机学院,广州510006)摘要:介绍Android移动平台系统架构,通过对Android源代码的分析,将其与标准Linux内核(2.6.27)源代码相比较,详细解析Android内核的功能更新,分析讨论Android内核与标准Linux内核之间的不同以及Android在移动平台上的优势,并对Android在各种内核之间做出一个定位,介绍Ubuntu环境下Android内核的获得与编译。关键词:Android;内核;编译引言随着嵌入式技术的发展,智能手机

2、的运行速度和所集成的功能获得了极大提升。借着这股东风,Google主导的开放手机联盟OHA(OpenHandsetAlliance)顺势在2008年推出了Android移动终端平台。Android是一个开放、自由的移动终端平台[1],它的发布,打破了诺基亚Symbian操作系统和微软WindowsMobile操作Dalvik,它包含J2SE所提供的绝大部分功能。每个0Android应用都运行在自己的进程上,Dalvik虚拟机为它分配自有的实例。Dalvik使一台设备能运行多个虚拟机程序但消耗较少的资源。在And

3、roid中,编译器将Java源文件转为class文件,内置的dx工具又将class文件转化为Dex文件,Dex文件是在Dalvik虚拟机上运行程序的标准格式。各种程序库[3]:包含一套C/C++库,Android的各式组件都可使用。这些功能通过组件间接提供给开发者。这些库包括图形框架、媒体功能库、Webkit、及SQLite数据库,等等。(3)应用程序框架:提供应用程序开发所需要的各种API。在开发过程中,开发人员通过充分使用应用框架提供的API,对各种组件、服务进行重用,从而系统在智能手机平台上的垄断地位,同

4、时,其平台化的优势也大大丰富各种手持式设备软件的功能。Android系统架构Android是Google开发的基于Linux平台的开源手机操作系统,它是一个移动终端平台,包括了移动电话工作所需的全部软件,由操作系统、中间件、UI(UserInterface)及应用程序组成。开发人员使用Java语言,开发运行于Dalvik虚拟机上的应用程序,其运行效率比一般嵌入式Linux操作系统上的J2ME程序高。Android系统架构自底向上由以下4个层次组成[2]:基于Linux的内核模块、运行时库与其他库、应用程序框架、

5、应用程序。(1)基于Linux的内核模块1开发出精简、高效的应用程序。心组件:主要包括以下几种核UI组件:包括List、Layout、Textbox、Utton、Check-box等,用以构建应用程序与用户的交互界面。内容提供器(ContentProvider):实现标准的方法接口,让其他应用保存或读取其提供的数据,例如外部程序通过ContentProvider访问联系人数据。资源管理器(ResourceManager):管理对非代码的访问,例如本地图像、布局文件、本地化字符串等。消息管理器(Notificat

6、ionManager):让程序将警示信息显示在状态栏上,例如平台接收到短信息、电子邮件、未接电话时在状态栏上的提示。Activity管理器(ActivityManager):用来管理应用Android内核基于Linux2.6,提供安全、内存管同所有理、进程管理、网络组、驱动模型等核心服务。Linux内核一样,Android内核是介于硬件层和软件组之间的一个抽象层次。(2)运行时库与各种程序库运行时库实质是一款Java重新设计的虚拟机收稿日期:2009-10-09修稿日期:2009-11-01作者简介:陈璟(19

7、84-),男,硕士研究生,研究方向为嵌入式系统表1内核源码树目录结构程序生命周期并提供常用的导航回退功能[2]。(4)应用程序:Android预装了一系列由Java语言编写成的核心应用程序,包括短信服务、电话、Email客户端、浏览器、Google地图等。2Android内核分析以发现,Android内核与标准Linux内核在文件系统、进程间通信机制、内存管理等方面存在不同。①文件系统不同于桌面系统与服务器,移动设备大多采用的不是硬盘而是采用Flash作为存储介质,因此,Android内核中增加了标准Linux

8、内核中没有采纳的YAFFS2文件系统。YAFFS2(YetAnotherFlashFileSy-stem,2ndedition)是专用于Flash的文件系统,对NAND-Flash芯片有着良好的支持。YAFFS2是日志结构的文件系统,提供了损耗平衡和掉电保护,可以有效地避免意外断电对文件系统一致性和完整性的影响。YAFFS2按层次结构设计,分为文件管理接口、内部实现层和NAND,简化了

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。