当前位置:网站首页>JVM family - overview, program counter day1-1
JVM family - overview, program counter day1-1
2022-07-03 13:51:00 【Concise programming】
JVM series —— summary , Program counter day1-1
JVM(Java virtual machine )
Java The running environment of binary bytecode
advantage ( characteristic )
- Write once , Run everywhere , Realize cross end
- Memory management mechanism ( Automatic garbage collection )
- Array subscript out of bounds check
- polymorphic
JVM,JRE,JDK
JVM: Running environment
JRE:JVM+Java Base class library
JDK:JVM+Java Base class library + Compiler tools
JVM Usefulness
- It is helpful to understand the underlying implementation principle
- Trend frame , The optimizer , solve the problem
common JVM
JVM Just a set of specifications 
JVM Three core parts
- ClassLoader: Class loader
- JVM Memory structure ( Method area , Pile up , Stack , Program counter , Native Method Stack )
- Execution engine ( Interpreter , Just in time compiler , Garbage collection )
Program counter
Program Counter Register Program counter (( register )
yes Java Shielding and abstraction of program hardware
Basic process of program execution
take Java The source code is compiled into binary bytecode (JVM Instructions ), After the binary bytecode passes through the interpreter, the machine code is formed , Finally let CPU perform
effect
Remember the next one JVM The execution address of the instruction , Execute in order according to the address information
If there is no program counter , Then I don't know which command to execute next
Program counters are physically dependent on registers
The register is CPU The fastest reading unit in

characteristic
- Thread private ( Each thread has its own program counter )
- There is no memory overflow
边栏推荐
- 【BW16 应用篇】安信可BW16模组与开发板更新固件烧录说明
- GoLand 2021.1.1: configure the multi line display of the tab of the open file
- pytorch 载入历史模型时更换gpu卡号,map_location设置
- Static linked list (subscript of array instead of pointer)
- MySQL installation, uninstallation, initial password setting and general commands of Linux
- MySQL 数据增删改查综合案例
- 实现CNN图像的识别和训练通过tensorflow框架对cifar10数据集等方法的处理
- Swiftui development experience: the five most powerful principles that a programmer needs to master
- Using registered classes to realize specific type matching function template
- 如何使用lxml判断网站公告是否更新
猜你喜欢

使用tensorflow进行完整的DNN深度神经网络CNN训练完成图片识别案例

MySQL 数据处理值增删改

MySQL installation, uninstallation, initial password setting and general commands of Linux

Using registered classes to realize specific type matching function template

Kivy教程之 盒子布局 BoxLayout将子项排列在垂直或水平框中(教程含源码)
![[技術發展-24]:現有物聯網通信技術特點](/img/f3/a219fe8e7438b8974d2226b4c3d4a4.png)
[技術發展-24]:現有物聯網通信技術特點

GoLand 2021.2 configure go (go1.17.6)

Go language web development series 30: gin: grouping by version for routing

SQL Injection (AJAX/JSON/jQuery)

Box layout of Kivy tutorial BoxLayout arranges sub items in vertical or horizontal boxes (tutorial includes source code)
随机推荐
栈应用(平衡符)
Go language web development series 29: Gin framework uses gin contrib / sessions library to manage sessions (based on cookies)
Software testing is so hard to find, only outsourcing offers, should I go?
双向链表(我们只需要关注插入和删除函数)
Comprehensively develop the main channel of digital economy and digital group, and actively promote the utonmos digital Tibet market
Qt学习24 布局管理器(三)
HALCON联合C#检测表面缺陷——HALCON例程autobahn
使用tensorflow进行完整的DNN深度神经网络CNN训练完成图片识别案例
Another industry has been broken by Chinese chips. No wonder the leading analog chip companies in the United States have cut prices and sold off
Several common optimization methods matlab principle and depth analysis
MySQL functions and related cases and exercises
常见的几种最优化方法Matlab原理和深度分析
Kivy教程之 如何自动载入kv文件
Realize the recognition and training of CNN images, and process the cifar10 data set and other methods through the tensorflow framework
Can newly graduated European college students get an offer from a major Internet company in the United States?
如何使用lxml判断网站公告是否更新
JVM系列——概述,程序计数器day1-1
pytorch 载入历史模型时更换gpu卡号,map_location设置
挡不住了,国产芯片再度突进,部分环节已进到4nm
Flutter dynamic | fair 2.5.0 new version features