虚拟机改进之类数据共享(Class Data Sharing)

类数据共享(CDS)是JVM的一项特性,旨在减少应用程序启动时间和内存占用。通过预先加载并存储一组类到共享存档文件,JVM在启动时能快速映射这些类,实现多进程间的元数据共享,尤其适用于小型应用。CDS在J2SE 5.0中引入,仅支持Java HotSpot Client VM和串行垃圾收集器。在特定场景下,如网络安装的J2SE程序包,可能需要手动重建共享档案。
摘要由CSDN通过智能技术生成

在已经安装的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发

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值