- 博客(4)
- 资源 (5)
- 收藏
- 关注
原创 JVM源码研读:java 原子操作在x86下的实现
JVM 6里面可以看到很多的CAS的操作,而我们来看看JVM里面是怎么实现CAS的操作,至于原子操作的语义在这里我们就不介绍了核心java源码是unsafe.javacompareAndSwapObjectcompareAndSwapIntcompareAndSwapLong。。。。 具体我们主要来看看 如何实现compareAndSwapObject的方法 u...
2011-06-26 23:29:00
2470
原创 x86 下的 Ptrace 的 PTRACE_GETREGS 取寄存器的值
在java里的jstack -F/-m 在打线程的堆栈的信息在linux下的实现是用ptrace 来取被跟踪的进程的寄存器的信息,而这个取的request 的类型 是用PTRACE_GETREGS。 在linux 内核里2.6.35调用的ptrace系统函数是在kernel/ptrace.c里实现的.SYSCALL_DEFINE4(ptrace, long, request, long
2011-06-23 16:36:00
7667
原创 JVM源码研读:JVM Thread stop 的源码分析
在JVM, Thread.stop 是被阻止的方法,看原语义“该方法具有固有的不安全性。用 Thread.stop 来终止线程将释放它已经锁定的所有监视器(作为沿堆栈向上传播的未检查 ThreadDeath 异常的一个自然后果)。如果以前受这些监视器保护的任何对象都处于一种不一致的状态,则损坏的对象将对其他线程可见,这有可能导致任意的行为。stop 的许多使用都应由只修改某些变量以指示目标线程...
2011-06-18 13:11:00
4086
原创 JVM源码研读:java 中的 wait 和 notify 实现的源码分析
在oracle JVM 1.6 里面实现的object的wait 和notify方法是在synchronizer.cpp里实现。 先介绍2个对象:1. ObjectMonitor 对象 主要用来监视创立的Object 在synchronizer.cpp 里定义了,ObjectMonitor 的对象,我们来看ObjectMonitor的对象的结构体ObjectMonitor::Ob...
2011-06-08 22:30:00
9714
jdk1.6.23 libsaproc.so linux 下amd64架构
2012-02-15
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人