当前位置:网站首页>ZGC concurrent identity and multi view address mapping in concurrent transition phase
ZGC concurrent identity and multi view address mapping in concurrent transition phase
2022-06-12 21:22:00 【lixia0417mul2】
M0,M1,Remapped The three multi view address mappings are zgc The key premise to realize concurrency identification and concurrency transfer , These three addresses actually correspond to the same physical address , Corresponding to the same underlying object , Broadly zgc The address mapping transformation relationship in the process is as follows :
The first round zgc:
1. Initial identification stage
The address views of objects in the initial identification phase are Remapped
2. Concurrency identification phase
The address of the surviving object is from Remapped Address becomes M0 Address , The address of the non surviving object remains Remapped Mapping phase , The address view of the newly allocated object in this phase is M0
3. Concurrent transition phase
The living object ( The address view is M0) Is moved to a new address space and re identified as Remapped Address view , Non living objects ( The address view is Remapped) Will be garbage collected , The address view of the newly allocated object in this phase is Remapped
The second round zgc:
1. Initial identification stage
The address views of objects in the initial identification phase are Remapped, perhaps M0,M0 The reason for the address view is that some objects have not been transferred or accessed in the previous round of concurrent transfer , Therefore, the status after the last round of concurrent identification is still maintained M0 View .– Here comes another meaning , In a round of zgc in , Although it marks the whole heap space , But not all tagged live objects are transferred , Not all garbage objects are recycled , For those pages with a small proportion of garbage , In a round of zgc The surviving objects in these pages will not be transferred , Garbage objects are not recycled .
2. Concurrency identification phase
The address of the surviving object is from Remapped/M0 Address becomes M1 Address , The address of the non surviving object remains Remapped/M0 Mapping phase , The address view of the newly allocated object in this phase is M1
3. Concurrent transition phase
The living object ( The address view is M1) Is moved to a new address space and re identified as Remapped Address view , Non living objects ( The address view is Remapped perhaps M0) Will be garbage collected , The address view of the newly allocated object in this phase is Remapped
Rear multi wheel zgc in , The object view of the concurrency identifier will be displayed in M0 and M1 Alternate between
Besides zgc Fast multi view mapping in , Each time from Remapped Mark it as M0 perhaps M1 You only need to change the number in the object address 42 Position to the first 45 Bit can complete the address mapping operation , and cms perhaps g1 To mark an object in, you need to access the object header of the specific object pointed to by the object address , And mark the flag bit in the object header , This process involves accessing object memory , and zgc No need to access object memory , This is also zgc The reason why it is faster .
边栏推荐
猜你喜欢

Image processing 12- image linear blending

新品发布丨竣达智能综合环境监测终端

中小型机房动力环境综合监控解决方案

Solution of multi machine room dynamic loop status network touch screen monitoring

Access control system based on RFID

#113 Path Sum II

测试基础之:单元测试

一款高颜值的MySQL管理工具

What are the disadvantages of bone conduction earphones? Analysis of advantages and disadvantages of bone conduction earphones

Is it really possible to find a testing job with a monthly income of more than 10000 without a degree and self-study software testing?
随机推荐
It has been engaged in the functional test of 10K to the test development of 40W annual salary for 5 years, and spent 7 days sorting out the super comprehensive learning route
结构体知识点all in
#113 Path Sum II
Preliminary understanding of regular expressions (regex)
How do testers plan for their future? To achieve 25K in 2 years?
递归调用知识点-包含例题求解二分查找、青蛙跳台阶、逆序输出、阶乘、斐波那契、汉诺塔。
指针与数组&指针与const&结构体与const
Data visualization - broken line area chart
Pytorch how to set random number seed to make the result repeatable
Yanghui triangle code implementation
新品发布丨竣达智能综合环境监测终端
Risk control modeling X: Discussion on problems existing in traditional modeling methods and Exploration on improvement methods
JSON file handles object Tags
#141 Linked List Cycle
初步了解认识正则表达式(Regex)
竣达技术丨适用于“科士达”智能精密空调网络监控
Before job hopping, Jin San made up the interview questions. Jin San successfully landed at Tencent and got a 30K test offer
Do we media video, and share the necessary app for friendly new media operation
GPU giant NVIDIA suffered a "devastating" network attack, and the number one malware shut down its botnet infrastructure | global network security hotspot on February 28
Pointer and array & pointer and const & struct and Const