- 1、本文档共8页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
安卓面试总结---摘要
对Android底层有一定的认识,研究过相关的Android源码
我将从以下几方面简单说明:
{{{{{{----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
一、系统架构:
一)、系统分层:(由下向上)【如图】
1、安卓系统分为四层,分别是Linux内核层、Libraries层、FrameWork层,以及Applications层;
其中Linux内核层包含了Linux内核和各种驱动;
Libraries层包含各种类库(动态库(也叫共享库)、android运行时库、Dalvik虚拟机),编程语言主要为C或C++
FrameWork层大部分使用java语言编写,是android平台上Java世界的基石
Applications层是应用层,我们在这一层进行开发,使用java语音编写
2、Dalvik VM和传统JVM的区别:
传统的JVM:编写.java文件 ( 编译为.class文件 ( 打包成.jar文件
Dalvik VM: 编写.java文件 ( 编译为.class文件 ( 打包成.dex文件 ( 打包成.apk文件(通过dx工具)
将所有的类整合到一个文件中,提高了效率。更适合在手机上运行
1、Linux内核层[LINUX KERNEL]:
包含Linux内核和驱动模块(比如USB、Camera、蓝牙等)。
Android2.2(代号Froyo)基于Linux内核2.6版本。
2、Libraries层[LIBRARIES]:
这一层提供动态库(也叫共享库)、android运行时库、Dalvik虚拟机等。
编程语言主要为C或C++,所以可以简单的看成Native层。
3、FrameWork层[APPLICATION FRAMEWORK]:
这一层大部分用java语言编写,它是android平台上Java世界的基石。
4、Applications层[APPLICATION]:应用层
如图所示:
系统分层的图整体简化为下面的一张图,对应如下:
FrameWork层 --------( Java世界
Libraries层 --------( Native世界
Linux内核层 --------( Linux OS
Java世界和Native世界间的通信是通过JNI层
JNI层和Native世界都可以直接调用系统底层
}}}}}}----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
二)、系统编译:
1、主要步骤:系统环境的准备,下载源码、编译源码、输出结果:
目前系统的编译环境只支持Ubuntu 以及 Mac OS 两种操作系统,磁盘的控件要足够大
在下载源码的时候,由于Android源码使用Git进行管理,需要下载一些工具,如apt-get install git-core curl
源码下载好后,进行编译:首先搭建环境,部署JDK(不同的源码编译时需要的JDK版本不同,如2.2需要JDK5,2.3需要1.6),
然后设置编译环境:使用. build/envsetup.sh脚本;选择编译目标(可以根据自己需要的版本进行不同的搭配)
最后通过make –j4的命令进行编译。(make是编译的函数即命令,j4指的是cpu处理器的核数:单核的是j4 x i;双核的是j8)
最后将编译好的结果进行输出:所有的编译产物都位于 /out 目录下
2、编译流程图
系统的启动:
{{{{{{----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
通过Linux内核将Linux系统中用户空间的第一个进程init启动起来,这是安卓世界第一个被启动的进程;
然后在init中会加载init.rc的配置文件,并开启系统的守护进程(守
您可能关注的文档
- 安1安全生产管理1.doc
- 安仁中学2014级高二上期第三学月考试地理试题.docx
- 安保系统 ppt.ppt
- 安健环管理体系培训(作业任务观察).ppt
- 安全、文明施工、消防及度汛保证措施.doc
- 安全、消防、文明管理.doc
- 安全与隐私(毛飞、汤丽娟).pptx
- 安全判断试题卷.doc
- 安全卫生运行控制程序.doc
- 安全台账 第一本.doc
- 山东省济宁市嘉祥县2025-2026学年九年级上学期期中数学试题 .pdf
- 山东省济宁市嘉祥县2025-2026学年九年级上学期期末化学试题 .pdf
- 中国家电电商行业市场发展现状及投资规划建议报告.docx
- 山东省济宁市嘉祥县2025-2026学年二年级下学期期末语文试卷(含解析精品.pdf
- 中国儿童学习桌椅行业市场全景分析及投资策略研究报告.docx
- 中国干簧式继电器行业市场发展现状及投资规划建议报告.docx
- 2025年中国组合音响行业市场调研及未来发展趋势预测报告.docx
- 中国建筑能源管理行业市场发展现状及投资方向研究报告.docx
- 2025年中国鱼剪行业市场发展现状及投资战略咨询报告.docx
- 中国滤清器制造行业市场发展现状及未来发展趋势预测报告.docx
最近下载
- 信号与系统(第三版)上下册郑君里课后习题答案详解.pdf
- 江西农业大学2021-2022学年第1学期《高等数学(上)》期末考试试卷(B卷)及标准答案.pdf
- 施工组织设计-江城水泥混凝土土.doc VIP
- 山西农业大学2021-2022学年第1学期《高等数学(上)》期末考试试卷(A卷)及标准答案.pdf
- 八年级上语文 《红星照耀中国》纪实作品人教PPT课件优质课比赛公开课获奖.ppt
- B2C电子商务信任实证研究的现状与思考.doc
- 有理数乘方练习题.doc VIP
- 经典电动力学-北京大学物理学院.PDF
- 幂的乘方与积的乘方-练习题(含答案) .doc VIP
- 政府采购非招标方式概述 .ppt VIP
文档评论(0)