![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java && JVM
文章平均质量分 74
BDX_Hadoop_Opt
这个作者很懒,什么都没留下…
展开
-
学Java的人都应该知道的那些事儿
第二章 对象与内存控制Static 对于static 关键字而言,从饲义上来看,它是"静态"的意思。但从Java 程序的角度来看,static 的作用就是将实例成员变为类成员。static 只能修饰在类里定义的成员部分 。包括成员变量、方法、内部类、初始化块、内部枚举类。如果没有使用static修饰这些类里的成员,这里成员属于该类的实例;如果使用了static修饰,这些成员就原创 2014-05-06 16:28:17 · 1018 阅读 · 0 评论 -
JVM 常用参数
参数名称含义默认值相关描述内存管理参数-Xms初始堆大小物理内存的1/64(默认(MinHeapFreeRatio参数可以调整)空余堆内存小于40%时,JVM就会增大堆直到-Xmx的最大限制.-Xmx最大堆大小物理内存的1/4(默认(MaxHeapFreeRatio参数可以调整)空余堆内存大于70%时,JVM会减少堆直到原创 2014-05-26 10:16:05 · 1335 阅读 · 0 评论 -
Linux 编译OpenJDK
CentOS 6.5 i386 平台编译 OpenJDK8原创 2014-05-26 10:40:55 · 2116 阅读 · 1 评论 -
JVM如何选择ParallelGCThreads
1、含义 ParallelGCThreads,表示JVM在进行并行GC的时候,用于GC的线程数,-XX:ParallelGCThreads=43,表示配置GC线程数为43。2、JVM相关接口 JVM中,关于ParallelGCThreads的计算代码如下:unsigned int VM_Version::calc_parallel_worker_threads()原创 2014-07-21 17:44:45 · 13524 阅读 · 0 评论 -
Understanding CMS GC Logs
CMS GC with -XX:+PrintGCDetails and -XX:+PrintGCTimeStamps prints a lot of information. Understanding this information can help in fine tuning various parameters of the application and CMS to achieve原创 2014-05-27 17:17:49 · 790 阅读 · 0 评论 -
图解Win7下构建OpenJDK7u40 32bit调试环境
0.说明 在Windows平台编译并调试OpenJDK7相对比较复杂,感兴趣的读者可以先按照本文的步骤在虚拟机环境下进行,然后再转移到物理机上。 或则,将虚拟机环境下构建好了的Cygwin和OpenJDK7工程打包到物理机上,然后配置相应的环境变量即可。 本文是在VMware Workstation的Windows 7 Ultimate en x86环境下编译并调试O原创 2014-05-26 20:25:49 · 4454 阅读 · 6 评论 -
JVM 二进制字节码指令汇总
序号字节码 助记符 指令含义Constants:0x00 ~ 0x14,00~20,与常量操作相关 00 0x00 nop 什么都不做。 01原创 2014-05-28 15:55:45 · 1014 阅读 · 0 评论 -
Win7 X86_64 下构建OpenJDK7u40 64bit调试环境
1.安装DXSDK 本文DXSDK的安装路径为:D:\Program Files (x86)\MSDXSDK\Microsoft DirectX SDK (June 2010) 2.安装Visual Studio 2010 && WindowsSDK 7.1 X64 本文VS2010的安装路径为:D:\Program Files (x86)\MSVisualStu原创 2014-05-27 16:58:44 · 3514 阅读 · 0 评论 -
Class文件格式(3)-Constant && Code
1.ConstantValue ConstantValue属性是定长属性,位于field_info结构项的属性表中,该属性描述了一个常量字段的值。field_info结构项中最多只能够有一个ConstantValue属性。如果field_info结构项所描述的字段是static字段,也即描述该字段的field_info的access_flags被设置了ACC_STATIC标记,则fiel原创 2014-07-03 16:11:25 · 1023 阅读 · 0 评论 -
handles.hpp:Handle && KlassHandle
//------------------------------------------------------------------------------------------------------------------------// Specific Handles for different oop types#define DEF_HANDLE(type, is_a)原创 2014-06-13 12:39:48 · 1010 阅读 · 1 评论 -
Java程序常用工具
Java7的所有工具命令详细描述见:docs.oracle.com/javase/7/docs/technotes/tools/index.htmljavac Java源程序编译命令 描述: javac (Java Programming Language Compiler) java程序编译器,用于将Java源程序编译为JVM原创 2014-06-06 13:28:43 · 1159 阅读 · 0 评论 -
HotSpot 垃圾回收算法简介
HotSpot垃圾回收机制 分代回收垃圾回收算法 复制 将A空间中的可达对象复制到另一块空白空间B中,然后回收A的整个空间。(必须有一块空白空间,空间利用率不是很高,但是回收快)。 标记清除 遍历A空间,标记其中的可达对象,然后在遍历A空间,清除其中的不可达对象。(空间利用率高,但是会产生碎片,而且需要两次遍历空间A)。原创 2014-05-13 17:02:15 · 1004 阅读 · 0 评论 -
bump-the-pointer VS TLABs
Fast Allocation As you will see from the garbage collector descriptions below, in many cases there are large contiguous blocks of memory available from which to allocate objects. Allocations from原创 2014-05-13 17:19:06 · 1177 阅读 · 1 评论 -
ParOldGen && PSOldGen
inline const char* PSOldGen::select_name() { return UseParallelOldGC ? "ParOldGen" : "PSOldGen";}原创 2014-06-24 15:46:13 · 5150 阅读 · 1 评论 -
G1 && PermGen && Metaspace
We received some questions around the G1 garbage collector and the use of Permanent Generation with it. There seems to be some confusion that the Hotspot JVM does not use permanent generation when G原创 2014-05-22 14:23:22 · 1253 阅读 · 0 评论 -
JVM tiered x86_x64 flags
static Flag flagTable[] = { { "bool", "UseCompressedOops", &UseCompressedOops, "Use 32-bit object references in 64-bit VM. " "lp64_product means flag is always constant in 32 bit VM", "{lp64_product原创 2014-06-24 14:16:31 · 2681 阅读 · 0 评论 -
Class文件格式(1)-常量池
1.Class文件格式 根据Java虚拟机描述,Class文件中数据的排列并不需要严格的字节对齐,因此字节与字节之间没有"空隙",各个字节所处的位置以及所表达的含义都是严格限定的,对于多字节数据,严格按照大端模式存储。 能够被JVM识别并执行的Class文件或者网络字节流应该具有如下格式: 1.1、magic magic为JVM所能原创 2014-06-17 16:00:46 · 926 阅读 · 0 评论 -
Class文件格式(2)-深入理解ClassFile
1.access_flags 继常量池之后,紧随着的两个字节代表当前类或者接口的访问控制权限,具体如下: 1.1、ACC_SYNTHETIC 表示当前类的是由编译器自己生成的,而不是由用户编写的程序源代码经过编译器编译生成的。 1.2、ACC_ENUM 当前类或者当前类的父类被声明为枚举类型。 1.3、ACC_IN原创 2014-06-26 14:24:20 · 962 阅读 · 0 评论 -
Understanding G1 GC Logs
Thepurpose of this post is to explain the meaning of GC logsgenerated with some tracing and diagnostic options for G1 GC. We willtake a look at the output generated with PrintGCDetails which is apro原创 2014-05-22 14:34:19 · 2225 阅读 · 0 评论 -
构建OpenJDK 相关错误解决方法
-encoding ascii 在编译OpenJDK的时候,编译文件中调用javac时,为其指定了编码方式为ascii(添加了参数-encoding ascii),在遇到包含非ascii编码的java文件(corba模块的部分文件)的时候,javac会报错,导致编译失败,因此,需要将-encoding编译选项去掉,让javac选择与平台想关联的编码方式。 本文以去除原创 2014-06-07 17:29:39 · 1338 阅读 · 0 评论 -
在Eclipse环境下构建jdk7u40 Windows版调试环境
1、在 http://download.java.net/openjdk/ 现在文件:openjdk-7u40-fcs-src-b43-26_aug_2013.zip,并节约,本文解压到 D:\openjdk2、执行下列脚本,进行文件拷贝:xcopy D:\openjdk\corba\src\share\classes\* D:\jdk7u40src\原创 2014-07-07 18:35:00 · 1925 阅读 · 0 评论