[发明专利]一种字节码指令集精简方法和系统在审
申请号: | 202011550106.0 | 申请日: | 2020-12-24 |
公开(公告)号: | CN112631722A | 公开(公告)日: | 2021-04-09 |
发明(设计)人: | 石玉平;郑江东;王幼君 | 申请(专利权)人: | 北京握奇数据股份有限公司 |
主分类号: | G06F9/455 | 分类号: | G06F9/455 |
代理公司: | 北京天悦专利代理事务所(普通合伙) 11311 | 代理人: | 任晓航;杨方 |
地址: | 100102 北京市朝阳区*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 字节 指令 精简 方法 系统 | ||
1.一种字节码指令集精简方法,其特征在于,适用于基于操作数栈和基于寄存器的指令集,所述精简方法包括以下步骤:
S100、基于不同的引用类型,将常量池划分为对应的多个子常量池;
S200、基于每种引用类型的引用的个数,统计每种引用类型对应的指令出现的次数,按照从高到低的顺序放入对应的子常量池中,其中,每种引用类型对应的指令的常量池索引为每种引用类型对应的子常量池的索引;
S300、基于每种引用类型对应的指令的生成条件,生成对应的单字节常量池索引的指令。
2.根据权利要求1所述的精简方法,其特征在于,所述引用类型包括类的引用、静态方法的引用、虚方法的引用、super方法的引用、静态域的引用、实例域的引用,所述多个子常量池包括:所述类的子常量池、所述静态方法的子常量池、所述虚方法的子常量池、所述super方法的子常量池、所述静态域的子常量池、所述实例域的子常量池。
3.根据权利要求2所述的精简方法,其特征在于,S200包括:
若所述实例域的引用的个数超过256,则统计每个引用类型的实例域访问指令出现的次数,按照次数从高到低的顺序放入所述实例域的子常量池中,否则直接放入所述实例域的子常量池中;
若所述静态域的引用的个数超过256,则统计包内定义的引用类型的静态域访问指令出现的次数,按照次数从高到低的顺序放入所述静态域的子常量池中,否则直接放入所述静态域的子常量池中;
若所述虚方法的引用的个数超过256,则统计每个虚方法调用指令出现的次数,按照次数从高到低的顺序放入所述虚方法的子常量池中,否则直接放入所述虚方法的子常量池中;
若所述静态方法的引用的个数超过256,则先统计调用库包中的静态方法指令出现的次数,按照次数从高到低的顺序优先放入所述静态方法的子常量池中,然后再统计每个调用包内静态方法指令出现的次数,按照次数从高到低的顺序放入所述静态方法的子常量池中,否则直接放入所述静态方法的子常量池中。
4.根据权利要求3所述的精简方法,其特征在于,所述统计包内引用类型的静态域访问指令出现的次数,按照次数从高到低的顺序放入所述静态域的子常量池中,包括:
统计包内引用类型的静态域访问指令出现的次数,按照次数从高到低的顺序优先放置在所述静态域的子常量池的前端。
5.根据权利要求3所述的精简方法,其特征在于,S300包括:
若一实例域访问指令的常量池索引在一个字节范围内,则生成对应的单字节常量池索引的实例域访问指令;
若一静态域访问指令的常量池索引在一个字节范围内且属于包内引用类型的静态域访问指令,则生成对应的单字节常量池索引的静态域访问指令;
若一虚方法调用指令的常量池索引在一个字节范围内,则生成对应的单字节常量池索引的虚方法调用指令。
6.根据权利要求3所述的精简方法,其特征在于,S300还包括:
基于统计每个库包静态方法在大量应用中被调用的统计次数,生成常用库包静态方法列表放入一个配置文件中,其中,所述常用库包静态方法列表中的库包静态方法的个数在256以内且具有完整Java方法名称;
若一库包静态方法调用指令的常量池索引在一个字节范围内,则查询所述配置文件,确认该库包静态方法调用指令对应的库包静态方法是否存在所述常用库包静态方法列表中;
若确认该库包静态方法存在所述常用库包静态方法列表中,则生成对应的单字节常量池索引的库包静态方法调用指令。
7.根据权利要求6所述的精简方法,其特征在于,所述基于每个库包静态方法在大量应用中被调用的统计次数,生成常用库包静态方法列表放入一个配置文件中,包括:
将每个库包静态方法在大量应用中被调用的统计次数按照从高到低进行排序,若所有库包静态方法的个数超过256则将前256个库包静态方法放入所述常用库包静态方法列表,若个数在256以内则直接将所有库包静态方法放入所述常用库包静态方法列表。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京握奇数据股份有限公司,未经北京握奇数据股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011550106.0/1.html,转载请声明来源钻瓜专利网。
- 上一篇:环境适配的定位方法及系统
- 下一篇:一种动态生成SDR信息的方法和设备