logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

Android培训班(82)Dalvik虚拟机的垃圾回收4

通过上面的学习,了解了垃圾回收的原理和过程。那么Dalvik虚拟机是什么时候进行垃圾回收呢?要回答这个问题,那么得继续分析代码,继续进入下面的学习。其实,垃圾回收主要有两种方式,一种是虚拟机线程自动进行的,一种是手动进行的。现在先来学习自动进行的方式,所谓自动方式,就是虚拟机创建一个线程,这个线程定时进行。虚拟机在初始化时,就进行创建这个线程,如下的代码:if(gDvm.zygote){

#虚拟机#android#算法 +1
Android培训班(60)dex文件格式

<!--@page{margin:2cm}td p{margin-bottom:0cm}p{margin-bottom:0.21cm}-->在android系统里,通过复杂的编译过程,会把java源代码生成dex文件,然后在虚拟机

#android#虚拟机#java
开源项目:小语编程语言(以python为基础)

本项目主要开发、学习、讨论小语(milang)编程语言,它是以python语法为基础,然后改进它语法、增加直接生成机器码,混合C++的优点,增加基于寄存器的虚拟机实现。有意者,可加入QQ群:126707482qq: 9073204

Android培训班(65)dex文件打开

我们知道,要读取一个类代码,或读取类里的方法代码,都需要打开Dex文件,然后按前面介绍的格式去分析,并且读取出相应的内容,才可以给虚拟机进行解释执行。现在,我们就来学习和分析Dex文件的读取相关的代码。如下:/* *Open the specified file read-onl

#android#虚拟机
Android培训班(78)Dalvik虚拟机的寄存器操作

在前面已经说到Dalvik虚拟机是基于寄存器运行的虚拟机,这是与JAVA虚拟机有本质上的区别,因为它是基于栈运行的虚拟机,因而Dalvik虚拟机运行的速度更快,更高效。下面就来分析一段代码片段,看看是怎么样基于寄存器操作的,以便有更深入的了解。代码如下:#defineHANDLE_OP_SHX_INT(_opcode, _opname, _cast, _op)

#虚拟机#android
Android培训班(81)Dalvik虚拟机的垃圾回收3

下面就来先看看Dalvik虚拟机整个标记和清除中使用到那些函数,在文件alloc/MarkSweep.h里有函数如下:1)调用函数dvmHeapBeginMarkStep来创建位图,并从对象位图里拷贝一份位图出来,以便后面对这个位图进行标记。2)调用函数dvmHeapMarkRootSet对所有根对象进行标记。3)调用函数dvmHeapScanMarkedObjects根据上一个函数给出的根对象位

#虚拟机#android#算法 +1
Android培训班(79)Dalvik虚拟机的垃圾回收1

垃圾回收技术已经出现很久了,可以追溯到20世纪60年代,在LISP语言中就开始进行应用,而后的Smalltalk,java,c#等语言更是一步一步地将其推向新的高潮。它广受技术专家的推崇,并被高度的评价,被认为是提高软件质量和生产力的一个有效的银弹,是一个具有革命性技术。由于计算机的内存资源总是有限的,为了不同的程序运行,必须把不需要使用的内存回收,以便重新使用。假如那一天计算机的内存足够大,可以

#虚拟机#android#算法 +2
谷歌浏览器的源码分析(1)

随着网络技术的发展,越来越多应用都已经离不开网络,特别像人类大脑一样的知识库的搜索引擎,更加是离不开功能强大的云计算。不过,即便云计算非常强大,但它还不能直接地把结果呈现给用户,这样就需要一个客户端来呈现出来,这个客户端就是浏览器。现在越来越多人上网,他们每一次上网,都离不开浏览的使用,这已经是一个不可缺少的软件了。这里介绍和分析谷歌推出有创新的浏览器,它的速度比其它浏览器快很多,那么它是怎么实现

#网络#chrome#云计算
Android培训班(74)Dalvik虚拟机的FindClass函数

从前面我们知道,在虚拟机初始化后,运行Java代码的方法时,要先查找到类,也就是调用函数FindClass。接着后面分析怎么样从dex文件加载类数据到内存,现在开始对查找函数FindClass进行分析,就很好理解了,因为前面介绍加载类到内存的流程已经很清楚。函数FindClass

#虚拟机#android
学习ARM开发(2)

学习ARM开发(2)今天是星期天,刚好在家里休息。又是学习ARM的大好时机了。早上起得很早,因为都想着怎么样搞好这个ARM开发环境,总是心急的。搞得睡觉,也睡不好。立即把电脑打开,为了更加快点,把家里两台电脑都打开,用一台比较快的电脑装LINUX。目前因为两台电脑都已经安装WINDOWS系统,又装了很多软件。为了没有什么风险,就装了VMWARE软件,就是虚拟机软件,这个软件的虚拟速度确实快很多,它

#linux#windows
    共 60 条
  • 1
  • 2
  • 3
  • 6
  • 请选择