理论知识
文章平均质量分 85
贾国鹏
这个作者很懒,什么都没留下…
展开
-
1001.3.jvm基础3JavaAgent_AboutObject
使用JavaAgent测试Object的大小作者:马士兵 http://www.mashibing.com对象大小(64位机)观察虚拟机配置java -XX:+PrintCommandLineFlags -version普通对象对象头:markword 8ClassPointer指针:-XX:+UseCompressedClassPointers 为4字节 不开启为8字节实例数据引用类型:-XX:+UseCompressedOops 为4字节 不开启为8字节Oops Ordinar原创 2021-10-18 21:52:09 · 177 阅读 · 0 评论 -
1001.2.jvm基础2-jvm内存模型
JMM硬件层数据一致性协议很多intel 用MESIhttps://www.cnblogs.com/z00377750/p/9180644.html现代CPU的数据一致性实现 = 缓存锁(MESI …) + 总线锁读取缓存以cache line为基本单位,目前64bytes位于同一缓存行的两个不同数据,被两个不同CPU锁定,产生互相影响的伪共享问题伪共享问题:JUC/c_028_FalseSharing使用缓存行的对齐能够提高效率乱序问题CPU为了提高指令执行效率,会在一条指令执行过程原创 2021-10-18 21:51:15 · 116 阅读 · 0 评论 -
1001.1.jvm基础1-class文件的加载
1. jvm是干什么的?初步理解: jvm是运行 java等语言源码编译后的class文件 的一个应用。2. class文件是什么?class文件时字节码文件,宽泛的说也就是由程序员写的代码翻译而成的机器识别的二进制码文件。class文件包含了哪些信息:基本分析:编号源码及编译相关信息推class对应的字节数基本逻辑1class文件的标识魔数cafe babe4jvm需要一眼就知道这是不是我能处理的文件。2编译器版本大小两个版本4jvm需要知道原创 2021-10-18 21:48:40 · 205 阅读 · 0 评论