[发明专利]一种调试时代码动态更新方法有效
| 申请号: | 201410656737.9 | 申请日: | 2014-11-18 |
| 公开(公告)号: | CN104391717B | 公开(公告)日: | 2017-09-12 |
| 发明(设计)人: | 张同宝;顾天晓;马晓星 | 申请(专利权)人: | 南京大学 |
| 主分类号: | G06F9/445 | 分类号: | G06F9/445 |
| 代理公司: | 南京钟山专利代理有限公司32252 | 代理人: | 戴朝荣 |
| 地址: | 210046 江苏*** | 国省代码: | 江苏;32 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | 本发明公开了一种调试时代码动态更新方法,在软件开发者调试程序时能够立即更新自己代码的方法,包括以下步骤步骤一、软件开发者使用调试器调试代码;步骤二、软件开发者在调试时更改代码并保存,触发准备更新过程,激活代码检测模块;编写迁移器模板类,完成迁移器模板类的修改,将更新信息传入虚拟机中;步骤三、调试器请求虚拟机完成代码更新。本发明通过扩展现有的调试器,增加了代码检测模块、编译模块、以及状态迁移器生成模块等部件,在此基础上建立了调试时动态更新代码的系统,并且保证了代码更新过程中的正确性。 | ||
| 搜索关键词: | 一种 调试 时代 动态 更新 方法 | ||
【主权项】:
一种调试时代码动态更新方法,其特征在于,包括以下步骤 :步骤一、软件开发者使用调试器调试代码;步骤二、软件开发者在调试时更改代码并保存,触发准备更新过程,包括代码检测,生成迁移器模板类,完成对迁移器模板类的修改,将更新信息传入虚拟机中;步骤三、调试器请求虚拟机完成代码更新;步骤二中所述准备更新过程的具体步骤是:21)软件开发者使用调试器对程序进行调试,通过设断点进行单步调试;22)调试器监听调试时代码发生改变的事件,当代码发生改变时,响应代码改变的事件,再通过检测获取当前调试代码类文件所在位置,获取更改代码之后的类文件以及更改之前的类文件,将新旧代码类文件存放到临时文夹中;23)编译存放于临时文件夹中的新旧代码类文件,得到对应新旧代码类文件的字节码文件;24)通过比较新旧代码的字节码文件得到更新说明文件,进而得到更新类型信息;25)判断是否需要迁移器来完成代码更新,当不需要时转入步骤26),否则转入27);26)判断代码更新不需要迁移器,完成代码更新过程;27)判断代码更新需要迁移器,生成一个迁移器模板;28)软件开发者修改迁移器模板类中的代码并保存, 编译修改后的迁移器模板类 ;29)通知调试器完成对迁移器模板类的修改,更新根据迁移器模板类生成的迁移器类,将迁移器类传入虚拟机。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京大学,未经南京大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201410656737.9/,转载请声明来源钻瓜专利网。





