找回密码
 注册
搜索
查看: 1753|回复: 2

[讨论] Android虚拟机

[复制链接]
发表于 2013-2-21 13:41:05 | 显示全部楼层 |阅读模式
  关键词:

  android,虚拟化,android2高级编程,androidweb应用,深入理解android,android多媒体开发,android4.0网络编程详解,android开发完全讲义,安卓机顶盒测试用例,Android应用开发,Android手机开发

  文档简介:

  第四章Android虚拟机4.1Dalvik虚拟机简介Java语言的一个非常重要的特点就是与平台的无关性。而使用Java虚拟机是实现这一特点的关键。一般的高级语言如果要在不同的平台上运行,至少需要编译成不同的目标代码。而引入Java语言虚拟机后,Java语言在不同平台上运行时不需要重新编译。Java虚拟机屏蔽了与具体平台相关的信息,使得Java语言编译程序只需生成在Java虚拟机上运行的目标代码(字节码),就可以在多种平台上不加修改地运行。Java虚拟机在执行字节码时,把字节码解释成具体平台上的机器指令执行。Dalvik的出现是为了躲避Sun公司JavaME的版权以及授权问题,由Google公司自己设计用于Android平台的Java虚拟机.4.2Dalvik虚拟机的主要特征专有的DEX文件格式一个应用中会定义很多类,编译完成后即会有很多相应的CLASS文件,CLASS文件间会有不少冗余的信息;而DEX文件格式会把所有的CLASS文件内容整合到一个文件中。这样,除了减少整体的文件尺寸,I/O操作,也提高了类的查找速度。原来每个类文件中的常量池,在DEX文件中由一个常量池来管理。一个应用,一个虚拟机实例,一个进程每一个Android应用都运行在一个Dalvik虚拟机实例里,而每一个虚拟机实例都是一个独立的进程空间。虚拟机的线程机制,内存分配和管理,Mutex等等都是依赖底层操作系统实现的。所有Android应用的线程都对应一个Linux线程,虚拟机因而可以更多的依赖操作系统的线程调度和管理机制。不同的应用在不同的进程空间里运行,加之对不同来源的应用都使用不同的Linux用户来运行,可以最大程度的保护应用的安全和独立运行。Zygote是一个虚拟机进程,同时也是一个虚拟机实例的孵化器,每当系统要求执行一个Android应用程序,Zygote就会FORK出一个子进程来执行该应用程序。这样做的好处显而易见:Zygote进程是在系统启动时产生的,它会完成虚拟机的初......。

  【文件名】:13221@52RD_Android虚拟机_1345772040625.pdf

  【格式】:pdf

  【大小】:468K

  【简介】:

  【目录】:

  

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
发表于 2013-2-25 09:10:45 | 显示全部楼层
谢谢!
期望有更详细的介绍与使用案列。
点评回复

使用道具 举报

发表于 2013-2-22 08:48:13 | 显示全部楼层
顶一个!, 顶一个!
点评回复

使用道具 举报

高级模式
B Color Image Link Quote Code Smilies

本版积分规则

Archiver|手机版|小黑屋|52RD我爱研发网 ( 沪ICP备2022007804号-2 )

GMT+8, 2024-11-26 20:18 , Processed in 0.046428 second(s), 18 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表