学习JVM的References

标签: 书评 | 发表时间:2010-11-15 16:17 | 作者:bluedavy LightingMan
出处:http://rdc.taobao.com/team/jm

本blog中列举了我学习JVM的references,会不断的更新,为了避免版权问题,就不在blog上提供references的下载了,感兴趣的同学可自行下载或购买,:)

References
  |— Towards a Renaissance VM
  |— Oracle JRockit The Definitive Guide
  |— JVM Magic
  |— JAVA虚拟机中文第二版
  |— Java Lang Spec 3.0
  |— Inside Out A Modern Virtual Machine Revealed
  |— Hotspot Overview
  |— Azul’s JVM experiences
  |— A Crash Course in Modern Hardware
  |— [ adaptive ]
        |— Understanding Adaptive Runtimes
        |— Adaptive Optimization of Java Real-time
        |— Adaptive Optimization in the Jalapeno JVM
  |— [ compiler ]
        |— The Java HotSpotTM Server Compiler
        |— Tailoring Graph-coloring Register Allocation For Runtime Compilation
        |— Linear Scan Register Allocation
        |— Design of the Java HotSpotTM Client Compiler for Java 6
  |— [ concurrent ]
        |— The.Art.of.Multiprocessor.Programming.Mar.2008
        |— The Concurrency Revolution The Hardware Story
        |— Multithreaded Programming Guide
        |— JVM Continuations
        |— java.util.concurrent Synchronizer Framework
        |— Java Concurrency Gotchas
        |— Groovy and Concurrency
        |— concurrent programming without locks
        |— Concurrency Grab Bag
        |— Alternative Concurrency Paradigms For the JVM
        |— Accelerating Java Workloads via GPUs
        |— A Scalable Lockfree Stack Algorithm
        |— A Concurrent Dynamic Analysis Framework
  |— [ io ]
        |— Asynchronous IO Tricks and Tips
  |— [ memory management ]
        |— Tuning Java Memory Manager
        |— The Ghost in the Virtual Machine A Reference to References
        |— The Garbage Collection Mythbusters
        |— SuperSizingJava
        |— Step by Step GC Tuning in the HotSpot Java Virtual Machine
        |— parallel gc ppt
        |— Oracle JDBC Memory Management
        |— NUMA-Aware-Java-Heaps-for-Server-Applications
        |— memorymanagement_whitepaper
        |— markcompact_gc ppt
        |— Leak Pruning
        |— GC Vs Explicit MM
        |— GC Tuning in the hotspot
        |— Garbage Collection and Memory Architecture
        |— Garbage Collection Algorithms For Automatic Dynamic Memory Management – Richard Jones
        |— [ Hotspot GC论文 ]
              |— Parallel Garbage Collection for Shared Memory Multiprocessors
              |— Garbage First Garbage Collector
              |— A Generational Mostly-concurrent Garbage Collector
        |— [ 其他JVM GC ]
              |— The pauseless gc
              |— Immix A Mark-Region Garbage Collector
              |— How to write a distributed gc
              |— GC Nirvana High Throughput And Low Latency Together
  |— [ monitoring and profiling ]
        |— Where Does All the Native Memory Go
        |— What’s Happening with My Application JVM Monitoring Tool
        |— Practical Lessons in Memory Analysis
        |— MonitoringGuide
        |— Microarchitectural Characterization of Production JVMs and JavaWorkloads
        |— Going Beyond Memory Leaks Debugging Java from Dumps, Using Memory Analyzer
        |— Diagnosing and Fixing Memory Leaks in Web Applications Tips from the Front Line
  |— [ osrelated ]
        |— poll-epoll_2
        |— poll-epoll_1
        |— memory systems
        |— Linux内核源代码情景分析
        |— linux_cpu_scheduler
        |— Linux 内核中断内幕
        |— Linux System and Performance Monitoring
        |— cpumemory
  |— [ performance ]
        |— Towards Performance Measurements for the Java Virtual Machine’s invokedynamic
        |— Thinking clearly about performance
        |— The Impact of Performance Asymmetry in Emerging Multicore Architectures
        |— the art of benchmarking
        |— Techniques for Obtaining High Performance in Java Programs
        |— Pipelining for Performance
        |— Performance myths and legends
        |— Performance Java Versus C
        |— How to Tune and Write Low-Latency Applications on the Java Virtual Machine
        |— How to Get the Most Performance from Sun JVM on Intel? Multi-Core Servers
        |— Comparing the Performance of Web Server Arch
        |— A Common API for Measuring Performance

相关 [学习 jvm references] 推荐:

学习JVM的References

- LightingMan - 淘宝JAVA中间件团队博客
本blog中列举了我学习JVM的references,会不断的更新,为了避免版权问题,就不在blog上提供references的下载了,感兴趣的同学可自行下载或购买,:). |— [ Hotspot GC论文 ]. |— [ 其他JVM GC ]. |— Linux内核源代码情景分析. |— Linux 内核中断内幕.

JVM学习 - 体系结构

- - CSDN博客推荐文章
一:Java技术体系模块图. 二:JVM运行时内存区域模型. 也称"永久代” 、“非堆”,  它用于存储虚拟机加载的类信息、常量、静态变量、是各个线程共享的内存区域. 可以通过-XX:PermSize 和 -XX:MaxPermSize 参数限制方法区的大小. 运行时常量池:是方法区的一部分,Class文件中除了有类的版本、字段、方法、接口等描述信息外,还有一项信息是常量池,用于存放编译器生成的各种符号引用,这部分内容将在类加载后放到方法区的运行时常量池中.

JVM学习之:浅谈方法调用

- - CSDN博客推荐文章
前面提到了几种方法的调用,虚拟机也提供了对应的字节码指令,分别是:. invokestatic:调用静态方法. invokespecial:调用构造器方法,私有方法以及父类方法. invokevirtual:调用虚方法以及final方法(虽然用invokevirtual调用,可是因为final方法的不可覆盖性,因此也是非虚方法).

JVM内存管理学习总结(一)

- - CSDN博客互联网推荐文章
I.JVM进程的生命周期. JVM实例的生命周期和java程序的生命周期保持一致,即一个新的程序启动则产生一个新的JVM进程实例,程序结束则JVM进程实例伴随着消失. 那么程序启动和程序终止就是JVM实例生命周期的两个边界,两个边界点可以这么理解:一个拥有程序入口(main函数)的class在执行main方法时,相应的JVM就被创建了(即JVM生命周期的起点),当由此main函数启动的所有非守护线程都终止时,JVM即退出(JVM实例生命周期的终点).

JVM学习笔记(六):类加载的时机

- - ITeye博客
本文根据《深入理解java虚拟机》第7章部分内容整理.     Java虚拟机把描述类的数据从Class文件加载到内存,并对数据进行校验、转换解析和初始化,最终形成可以被虚拟机直接使用的Java类型,这就是虚拟机的加载机制.    类从被加载到虚拟机内存中开始,到卸载出内存为止,它的整个生命周期包括了:加载(Loading)、验证(Verification)、准备(Preparation)、解析(Resolution)、初始化(Initialization)、使用(using)、和卸载(Unloading)七个阶段.

JVM研究

- - 开源软件 - ITeye博客
每天接客户的电话都是战战兢兢的,生怕再出什么幺蛾子了. 我想Java做的久一点的都有这样的经历,那这些问题的最终根结是在哪呢. JVM全称是Java Virtual Machine,Java虚拟机,也就是在计算机上再虚拟一个计算机,这和我们使用 VMWare不一样,那个虚拟的东西你是可以看到的,这个JVM你是看不到的,它存在内存中.

jvm调优

- - 互联网 - ITeye博客
printf "%x\n" 21742  找到耗时最长的进程. jstack pid | grep 54ee  定位某个类的方法. jstack 10535|grep -A 10 2a1d (最后十行). jmap 查询pid 内存线程. 附:TOP命令中需要关注的值:. (1)load average:此值反映了任务队列的平均长度;如果此值超过了CPU数量,则表示当前CPU数量不足以处理任务,负载过高.

深入理解JVM

- 小伟 - ITeye论坛最新讨论
1   Java技术与Java虚拟机. 说起Java,人们首先想到的是Java编程语言,然而事实上,Java是一种技术,它由四方面组成: Java编程语言、Java类文件格式、Java虚拟机和Java应用程序接口(Java API). 图1   Java四个方面的关系. 运行期环境代表着Java平台,开发人员编写Java代码(.java文件),然后将之编译成字节码(.class文件).

jvm垃圾回收

- Cano - 淘宝共享数据平台 tbdata.org
在jvm中堆空间划分为三个代:年轻代(Young Generation)、年老代(Old Generation)和永久代(Permanent Generation). 年轻代和年老代是存储动态产生的对象. 永久带主要是存储的是java的类信息,包括解析得到的方法、属性、字段等等. 我们这里讨论的垃圾回收主要是针对年轻代和年老代.

JVM内存分配

- - 移动开发 - ITeye博客
计算机内存,它算是CPU与计算机打交道最频繁的区域,所有数据都是先经过硬盘至内存,然后由CPU再从内存中获取数据进行处理,又将数据保存到内存,通过分页或分片技术将内存中的数据再flush至硬盘. 那JVM的内存结构到底是如何呢. JVM做为一个运行在操作系统上,但又独立于os运行的平台,它的内存至少应该包括象寄存器、堆栈等区域.