- 博客(14)
- 收藏
- 关注
原创 jmap/jstack/jstat等等从何而来
一、引言 我们会发现$JAVA_HOME/bin/目录下的java,jmap,jstack,jstat,jinfo等等都是二进制的文件,而我们又很容易发现,java是与一个源文件java.c对应的,却看不到jmap,jstack,jstat等对应的源文件,那么这些工具又是怎么生成的呢,下面介绍下我是如何发现这些工具是怎样生成的,以jmap为例。二、以jmap为例,介绍这些工具如何生成...
2012-11-24 12:37:07 346
原创 常用的一些shell笔记
一、语法方面注意if /while /for格式 1. if语句 注意if与[]之间的空格;条件表达式前后都有空格实例 if [ $# -lt 3 ];then echo usage: `basename $0` arg1 arg2 arg2 exit...
2012-11-24 11:42:51 123
原创 Linux free命令 ------笔记
参数用法说明man free 可以得到详细的信息,这里贴个中文的,读起来快。 语 法: free [-bkmotV][-s <间隔秒数>]补充说明:free指令会显示内存的使用情况,包括实体内存,虚拟的交换文件内存,共享内存区段,以及系统核心使用的缓冲区等。参 数: -b 以B...
2012-10-13 15:41:11 164
理清字符集和字符编码关系
什么是字符集 字符(Character)是文字与符号的总称,包括文字、图形符号、数学符号等。一组抽象字符的集合就是字符 集(Charset)。 字符集常常和一种具体的语言文字对应起来,该文字中的所有字符或者大部分常用字符就构成了该文字的字符集,比如英文字符集。 常见的字符集包括ASCII字符集(由控制字符和图形字符组成)、GB2312...
2012-09-15 15:40:04 149
使用perf 分析优化java应用。
Perf 是用来进行软件性能分析的工具。它随Linux 内核代码一同发布和维护,由内核社区维护和发展。这里推荐两篇介绍perf的文章 英文原版的介绍 https://perf.wiki.kernel.org/index.php/Tutorial 中文的使用介绍 http://www.ib...
2012-08-21 19:33:45 2290
原创 google-perf-tools使用笔记
1.Perftools介绍 项目地址http://code.google.com/p/gperftools/ 引用原文里的一段英文介绍 Perftools is a collection of ahigh-performance multi-threaded malloc() implementation, plus some pr...
2012-06-20 19:34:20 564
原创 了解Exception,优化应用性能
1.从Exception往上介绍相关结构、代码 class Exception里面没有什么新鲜东西,它继承自class Throwable,接下来我们看一下Throwable的结构,在它的构造函数中调用了fillInStackTrace这个函数。接下来我们看看这个函数干了些什么。 fillInStackTrace函数的声明为...
2012-06-01 19:21:07 296
原创 readelf,objcopy,objdump使用笔记
前些天做了两件事,1.strip符号表;2.查看so文件的代码是否inline。操作步骤如下 1. readelf -sW libjvm.so | grep 'OBJECT *LOCAL *HIDDEN' | awk '{print $8}' | egrep '[.][0-9]+$' > strip_sym.lst objcopy --strip-symbols=...
2012-04-27 19:21:41 520
原创 使用vtune分析hadoop
1. 使用vtune分析tasktracker,jobtracker,datanode1.1在conf/hadoop-env.sh中添加如下修改,这样在vtune的结果中能看到jit信息。export AMPLXE_EXPERIMENTAL=11.2在bin/hadoop中,将如下语句...
2012-03-27 18:40:16 190
原创 Hotspot中Java Heap的构成与创建
1.JavaHeap的构成Java Heap 包含三个部分YoungGen,OldGen,PermGen三个部分,亦叫作年轻代,年老代,永久代。DefNewGeneration是YoungGen的一个实现,包含_eden_space,_from_space, _to_space三个部分。在YoungGen中分配对象的时...
2012-03-20 16:39:13 240
原创 vtune使用笔记
1.介绍Vtune是intel的一款性能分析工具,其既可以分析某种应用的特性,也可以检测整个系统的特性,能够找出热点瓶颈的所在,给开发者提供良好的优化思路。2.Vtune下载,安装Vtune有windows版本和linux版本,有收费的,试用的,免费的。本人使用的是一款试用版本,vtune地址http://...
2012-03-20 15:08:53 617
原创 oprofile使用笔记
1.Oprofile安装下载地址http://oprofile.sourceforge.net/download/,安装过程略2.使用2.1启动oprofile ,opcontrol--vmlinux=/usr/lib/debug/lib/modules/2.6.18-164.el5debug/vmlinux –start...
2012-03-20 14:59:57 171
原创 Hotspot VM的Parallel GC 中 GC线程是如何创建与工作的
1.源码中WorkGang, GangWorker结构关系SharedHeap的结构如下,在结构中含有成员FlexibleWorkGang* _workers;class SharedHeap : public CollectedHeap { friend class VMStructs; friend class VM_GC_Operation; f...
2012-03-05 20:30:08 799
原创 为方便调试,加-g选项Build整个openjdk6
1.openjdk源码下载http://download.java.net/openjdk/jdk6/2.将打包文件解压,在解压目录内运行下面shell命令,添加-g选项for file in `grep "\-O3" * -r | awk -F: '{print $1}' `; do sed -i 's/\-O3/\-g/g' $file; done...
2012-03-04 11:33:19 144
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人