JVM之HotSpot VM对象(二)
对象的创建过程类加载检查当JVM遇到一条字节码new指令时,首先去检查这个指令的参数是否能在常量池中定位到一个类的符号引用,并检查这个符号引用代表的类是否已被加载,解析和初始化过。如果没有,那么先执行相应的类加载过程。 为新生对象分配内存对象所需内存的大小再类加载完成后便可完全确定(对象的字段存储的 ...
阅读更多
JVM之Java内存结构(一)
Java运行时数据区域数据区域主要分为五个部分: 程序计数器 虚拟机栈 本地方法栈 堆 方法区 其中所有线程共享区域有:方法区和堆。 每个线程独享区域有:虚拟机栈,本地方法栈,程序计数器 程序计数器 程序计数器是一块较小的内存空间,它可以看作是当前线程所执行的字节码的行号指示器,如果当前线程执行 ...
阅读更多
编译OpenJDK
前言最近在看《深入理解Java虚拟机》这本书,1.6节是编译openjdk,自己也想尝试一下。 使用操作系统为:Ubuntu 18.04 LTS 正文下载源码 http://hg.openjdk.java.net/jdk/jdk12 书中提供的下载地址由于网络问题下载较慢,所以在Github的仓库 ...
阅读更多
2019和2020
2019总结在2018的总结中,我的2019TodoList都大概实现,在2019年,参加了几个实验室老师的科研项目(搬砖仔),暑假因为实验室项目的原因,并未能出去实习,而是留在学校做项目。 本年个人完成了以下成绩: 大创项目 - 基于微信小程序和SSM框架的宿舍服务平台 基于Spring Boo ...
阅读更多
Docker学习笔记
1.Docker概念模型 虚拟机运行在虚拟的硬件上,应用运行在虚拟机内核上,而Docker是机器上的一个进程,Docker应用是Docker的一个子进程。 Docker是对Linux容器(LXC)的一种封装,提供简单易用的接口,Docker是目前最流行的Linux容器解决方案。 Docker用途 ...
阅读更多