图解Android运行程序构建原理

  • 电脑网络维修
  • 2024-11-14

Android是Google开发的基于Linux平台的开源手机操作系统,每一个Android运行在底层都会对应一个独立的Dalvik虚构机实例,其代码在虚构机的解释下得以口头,这个系统颁布后大大的繁难了用户的需求。

每一个运行都运转在一个 Dalvik虚构机 实例里,而每一个虚构机实例都是一个独立的进程空间。虚构机的线程机制,内存调配和治理。Mutex等等都是依赖底层操作系统而成功的。一切运行的线程都对应一个Linux线程,虚构机因此可以更多的依赖操作系统的线程调度和治理机制。

不同的运行在不同的进程空间里运转,加之对不同起源的运行都经常使用不同的Linux用户来运转,可以***水平的包全运行的安保和独立运转。Zygote是一个虚构机进程,同时也是一个虚构机实例的孵化器,每当系统要求口头一个 Android运行程序 ,Zygote就会FORK出一个子进程来口头该运行程序。

这样做的好处显而易见:Zygote进程是在系统启动时发生的,它会成功虚构机的初始化,库的加载,预置类库的加载和初始化等等操作,而在系统须要一个新的虚构机实例时。Zygote经过复制自身,最极速的提供个系统。另外,关于一些只读的系统库,一切虚构机实例都和Zygote共享一块内存区域,大小节俭了内存开支。

运行程序包(APK)被颁布到手机上后,运转前会对其中的DEX文件启动提升,提升后的文件被保留到缓存区域(提升后的格局被称为DEY),虚构时机间接口头该文件。假设运行包文件不出现变动,DEY文件不会被重重生成。

Android运行程序 所经常使用的编程言语是Java言语,和JavaSE一样,编译时经常使用SunJDK将Java源程序编程成规范的Java字节码文件(.class文件)。然后经过工具软件DX把一切的字节码文件转成DEX文件(classes.dex)。

***经常使用打包工具(aapt)将DEX文件,资源文件以及Manifest.xml文件(二进制格局)组分解一个运行程序包(APK)。运行程序包可以被颁布到手机上运转。

【编辑介绍】

  • 关注微信

本网站的文章部分内容可能来源于网络和网友发布,仅供大家学习与参考,如有侵权,请联系站长进行删除处理,不代表本网站立场,转载联系作者并注明出处:http://www.duobeib.com/diannaowangluoweixiu/4919.html

猜你喜欢

热门标签

洗手盆如何疏浚梗塞 洗手盆为何梗塞 iPhone提价霸占4G市场等于原价8折 明码箱怎样设置明码锁 苏泊尔电饭锅保修多久 长城画龙G8253YN彩电输入指令画面变暗疑问检修 彩星彩电解除童锁方法大全 三星笔记本培修点上海 液晶显示器花屏培修视频 燃气热水器不热水要素 热水器不上班经常出现3种处置方法 无氟空调跟有氟空调有什么区别 norltz燃气热水器售后电话 大连站和大连北站哪个离周水子机场近 热水器显示屏亮显示温度不加热 铁猫牌保险箱高效开锁技巧 科技助力安保无忧 创维8R80 汽修 a1265和c3182是什么管 为什么电热水器不能即热 标致空调为什么不冷 神舟培修笔记本培修 dell1420内存更新 青岛自来水公司培修热线电话 包头美的洗衣机全国各市售后服务预定热线号码2024年修缮点降级 创维42k08rd更新 空调为什么运转异响 热水器为何会漏水 该如何处置 什么是可以自己处置的 重庆华帝售后电话 波轮洗衣机荡涤价格 鼎新热水器 留意了!不是水平疑问! 马桶产生了这5个现象 方便 极速 邢台空调移机电话上门服务 扬子空调缺点代码e4是什么疑问 宏基4736zG可以装置W11吗 奥克斯空调培修官方 为什么突然空调滴水很多 乐视s40air刷机包 未联络视的提高方向 官网培修 格力空调售后电话 皇明太阳能电话 看尚X55液晶电视进入工厂形式和软件更新方法 燃气热水器缺点代码

热门资讯

关注我们

微信公众号