在已经安装的SUN JRE Client目录中有一个classes.jsa文件,这个文件只在client模式中存在,server中是不存在。
http://openjdk.java.net/groups/hotspot/docs/HotSpotGlossary.html
类数据共享特性的目标是为了减少应用程序的启动时间和内存占用。安装进程从系统 jar
文件中把一组类加载到私有的内部表示,然后把那个表示转储到“共享存档”文件。在后续的 JVM
调用期间,那个共享存档映射在内存中,从而减少了加载那些类的开销,并允许在多个 JVM 进程间共享这些类的许多 JVM 元数据。有关更多信息,
概述
类数据共享(CDS)是为了减少Java应用程序启动时间而在J2SE5.0增加的新特性,尤其对于较小的应用程序。当使用Sun提供的安装程序安装
JRE在32位平台上的时候,安装程序从系统jar文件中加载一套类到一个私有的内部表示,并且把该表示存放在一个叫做“shared
archive”的文件中。类数据共享在Microsoft Windows 95/98/ME中不被支持。如果没有使用Sun
JRE安装程序,可以按照以下的说明进行手动设置。在JVM的并发调用中,上述共享文档是内存映射的,节省了那些类文件的加载成本,并且允许在多个JVM
进程之间共享这些类的许多JVM元数据。
在J2SE5.0中,类数据共享仅仅对Java HotSpot Client VM进行支持,并且仅仅只对串行垃圾收集器。
在5.0发