虚拟机
文章平均质量分 89
shenxiaolinil
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
AOSP 8.0 系统启动之五systemserver启动(二)
上一篇文章已经将systemserver进程创建出来,接下去重点分析下在核心服务创建前的一些初始化主要内容,包括设置线程异常处理以及和binder驱动建立连接,创建binder线程, 还有通过反射找到SystemServer类原创 2023-02-07 09:54:20 · 752 阅读 · 0 评论 -
AOSP 8.0 系统启动之四ART虚拟机启动(一)
Dalvik虚拟机和ART虚拟机Dalvik虚拟机,基于apache的JVM 改进而来,为Android 第一代虚拟机。在Android 4.4之前使用。ART 虚拟机,也叫ART 模式,是第二代虚拟机,Android 4.4推出,并从5.0开始默认使用执行程序。两者区别:Dalvik每次都要将apk代码编译成机器码再运行,Art只会首次启动编译,而不必每次运行都要先编译一次。Art占用空间比Dalvik大,首次安装Apk的时间比Dalvk模式长。原创 2023-02-05 22:38:32 · 1407 阅读 · 0 评论 -
AOSP 8.0 系统启动之四ART虚拟机启动(二)
上一章节已经梳理了通过加载libart.so, JNI_CreateJavaVM成功返回,虚拟机就处于就绪状态了,可以接受jni调用了。虚拟机分为java和native两个层面,这两层间的通信就是jni,通常虚拟机的创建和管理都是在native层,然后通过jni来与java层互访,会有一个JNIEnv类型的指针变量,就是pEnv,他是以指向指针的指针做为参数的。这个JNIEnv指针是访问JVM的关键,真正的实现是JNIEnvExt。涉及源码。原创 2023-02-06 15:58:39 · 994 阅读 · 0 评论
分享