[发明专利]一种JAVA字节码编译方法在审

专利信息
申请号: 202110086799.0 申请日: 2021-01-22
公开(公告)号: CN112685049A 公开(公告)日: 2021-04-20
发明(设计)人: 陈仕灼;谢旻腾;李承龙;钱鹏亮 申请(专利权)人: 大连高德瑞信科技有限公司
主分类号: G06F8/41 分类号: G06F8/41
代理公司: 沈阳天赢专利代理有限公司 21251 代理人: 李荣新
地址: 116000 辽宁省大连市高新技*** 国省代码: 辽宁;21
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 java 字节 编译 方法
【权利要求书】:

1.一种JAVA字节码编译方法,其特征在于:包括以下步骤;

步骤一、采用直接生成Runtime对象,并通过Runtime对象生成调用命令的相关进程;

步骤二、通过调用相关方法进行编译操作,编译过程如果发现错误则返回错误信息,如果编译成功则继续调用相关方法进行运行操作,并返回运行结果;

步骤三、创建了两个输入流,一个用于连接运行结果输出,另一个用于连接错误信息输出,程序正确执行时会输出运行结果,程序执行失败时会输出错误信息,并合并到一个字符串对象中一同处理;

步骤四、在Web页面上编辑程序,直接在页面代码中集成CodeMirror的代码编辑器组件;

步骤五、使用Bootstrap前端开发框架,实现响应式布局,使得用户注册、登录,源代码编辑等各个页面都能够有效适配手机、平板等各种移动终端设备和PC等桌面终端设备;

步骤六、以使用同步锁的JAVA字节码文件作为输入,输出使用可重入锁或读写锁的字节码文件;

步骤七、采用Quad作为中间表示形式,分别使用Joeq编译器和javassist作为字节码的分析和转换框架;

步骤八、对程序分析阶段已经遍历过的每一个指令检查其出现的次序,确保与字节码中锁的出现顺序一致,使用javassist字节码转换框架完成字节码重构。

2.根据权利要求1所述的一种JAVA字节码编译方法,其特征在于:步骤一中,所述命令为complie命令或run命令。

3.根据权利要求2所述的一种JAVA字节码编译方法,其特征在于:调用所述complie命令或run命令时,需要判断服务器端操作系统的类型,然后根据类型构建相应的编译命令行和运行命令行。

4.根据权利要求1所述的一种JAVA字节码编译方法,其特征在于:步骤四中,所述CodeMirror实现的通用文本编辑器,能实现高级编辑功能的语言模式和插件,包括代码自动补齐、代码着色、代码折叠、快捷键绑定。

5.根据权利要求1所述的一种JAVA字节码编译方法,其特征在于:步骤六中,中间过程为:

S1、将字节码中间表示形式转换为其它中间表示形式;

S2、采用访问者模式分析,对程序中使用锁的代码进行遍历;

S3、在面向可重入锁重构的基础上,采用负面效应分析实现面向读写锁重构的分析工作,决定使用读锁还是写锁,分析完毕后产生分析输出;

S4、对分析输出进行一致性检验,产生分析结果,分析结果将作为程序转换的依据;

S5、将分析结果和字节码文件作为输入,经过字节码转换,得到输出。

6.根据权利要求1所述的一种JAVA字节码编译方法,其特征在于:步骤七中,所述Quad是Joeq编译器中使用的中间表示形式,使用寄存器作为数据的存储结构,Quad指令使用控制流的方式进行组织。

7.根据权利要求6所述的一种JAVA字节码编译方法,其特征在于:所述Quad可以保留程序中属性访问和虚方法调用的相关信息外,还可以保存程序的本地变量和临时变量信息。

8.根据权利要求1所述的一种JAVA字节码编译方法,其特征在于:步骤八中,使用javassist字节码转换框架完成字节码重构过程为:

S1、向类中增加属性;

S2、将同步锁中的synchronized关键字替换为可重入锁或读写锁的lock和unlock操作。

9.根据权利要求8所述的一种JAVA字节码编译方法,其特征在于:S1中,向类中增加属性的过程为:锁属性名已经表明锁需要在哪个中定义,找到该类在类中对其进行定义即可,该操作是通过继承javsssist中的类javsssist.expr.ExprEditor并重写其edit方法来实现。

10.根据权利要求8所述的一种JAVA字节码编译方法,其特征在于:S2中,由于同步块和同步方法的使用方式不同,因此分别进行重构;

A1、对于同步块,将moni-torenter和monitorexit替换为锁的加锁和解锁操作;

A2、对于同步方法,去掉了synchronized修饰符,并在方法之前和之后加入加锁和解锁操作,并加入异常捕获语句,以确保异常发生时解锁操作会被执行。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于大连高德瑞信科技有限公司,未经大连高德瑞信科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/202110086799.0/1.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top