温馨提示:文本由机器自动转译,部分词句存在误差,以视频为准
00:00
来我们来看第二个虚拟机,第二个虚拟机呢,叫exact vm啊,叫准确式的虚拟机啊,如果直接翻译的话呢,是这样的,哎,号称呢叫exact memory management啊,这个memory啊,内存别看着money了啊,准确是内存的管理,呃,怎么讲呢,这个虚拟机呢,它可以知道内存中某一个位置的数据具体是什么类型啊,这呢是相较于咱们说的第一个叫classic虚拟机,它不同的地方,呃,举个例子啊,比如说我们现在在内存空间中有一个数值叫123456,那到底这个123456是一个整数,就是纯粹的是一个数据啊,数值叫123456,还是表示一个对象的引用啊,它的引用的地址叫123456呢?啊,那在我们这个exact vm当中是能够进行区分的了,那也就意味着我们像之前的classic vm它是不能够区分的,那不能区分的话呢,就会有一些麻烦哈,嗯,什么麻烦呢?就是我们在内存中,比如说呃,这是占,这是堆哈,我们这儿呢,有一个具体的对象,它的地址呢,现在是123456,我们现在不能够判断它是不是是一个这个对象的地址啊,那我们知道这个对象的话呢,呃,后边咱们会讲垃圾回收啊,垃圾回收完以后,如果这个对象它不是一个垃圾啊,那它要被重用啊,那重用的话呢,但是它的地址有可能会变化。
01:25
啊,因为咱们后边会讲这个叫,呃这个。呃,叫什么?呃,标记整理算法是吧?标记整理算法标包括这个叫复制算法,它会把这个没有死的这些对象啊,非垃圾的这些对象呢,给他转移位置啊,那一旦要转移位置的话呢,我们就得判断说你这个到底是一个是一个对象的引用呢,还是一个数据呢?你要对象引用的话呢,我们的地址呢就要变了是吧?呃,那在classic vm当中就没法做这样的区分,嗯,那那要是需要移动位置怎么办呢?呃,它得需要用一个叫呃handle的一个对象查找方式啊,这就涉及到我们怎么去找对象了啊叫聚柄是吧,通过句柄这样的方式呢,去这个就额外的记录一下这个地址啊,这其实无形当中就增加了我们对象的一个查找的一个开销啊,那那这个exact vm呢,就解决这个问题,那另外的话呢,就还解决了classic vm当中,这个我们说编译器跟解释器呢,呃,不能够混合工作啊,而我们在这个EXZVM当中就可以了,同时的话呢,这个呃,Git编译器在工作的时候呢,还可以实现叫。
02:30
热点探测,探测出来具体哪些代码属于高频的执行代码,我们称为热点代码,只针对热点代码呢,进行一个这个及时编译啊,是这样的,所以说呢,就解决了我们classic当中提到的这些弊端了,哈,呃,非常好,但是的话呢,这个ex exact vm呢,只在我们这个RI,就是呃,S公司自己的salloris这个服务器当中呢进行使用,其他的平台还是用的这个classic vm,然后还没等他在其他平台去使用的时候呢,就会被呃,就已经被这个house包呢所替换了,所以呢,这个虚拟机呢,它的这个整个生命周期呢,就比较短啊,呃,用一个词来形容呢,就是诶开始了吗?啊,已经结束了啊,后来又被替换成houseport了。
03:13
好,这呢,就是我们说的叫exer vm。
我来说两句