发明名称 |
一种Java卡调试信息的处理方法 |
摘要 |
本发明公开一种Java卡调试信息的处理方法,包括:获取指令并检测指令类型,如是未处理过的设置指令,如调节器是位置调节器则用特殊字节码替换在虚拟机上运行的Java卡程序中的与位置信息相符的原字节码,将原字节码写到事件列表中生成事件序列号;如是单步调节器,则设置单步调试信息,将事件写到事件列表中生成事件序列号;如是调试指令,则获取虚拟机上当前运行的Java卡程序的字节码并判断其是否为特殊字节码,是则从事件列表中查找对应的原字节码并用原字节码替换特殊字节码,获取返回数据,否则当判断事件列表中的单步调试标志置位时,根据获取的字节码获取返回数据。本发明使用方便、可实时监控和查看虚拟机调试过程。<!--1--> |
申请公布号 |
CN102855186B |
申请公布日期 |
2014.10.29 |
申请号 |
CN201210258652.6 |
申请日期 |
2012.07.24 |
申请人 |
飞天诚信科技股份有限公司 |
发明人 |
陆舟;于华章 |
分类号 |
G06F11/36(2006.01)I |
主分类号 |
G06F11/36(2006.01)I |
代理机构 |
|
代理人 |
|
主权项 |
一种JAVA卡调试信息的处理方法,其特征在于,包括:步骤A:获取指令并检测指令类型,如是设置指令,则执行步骤B,如是调试指令,则执行步骤E,如是其他,则根据指令进行操作;步骤B:按照预设规定对所述设置指令进行解析得到包头和数据部分,对所述包头进行解析,从所述设置指令包头的解析结果中获取请求ID和请求标记,判断所述请求标记是否为预设值,是则执行步骤C,否则给发送装置返回提示信息;步骤C:从所述设置指令包头的解析结果中获取命令集和命令,如所述命令集为事件请求命令集且所述命令对应的事件类型为设置事件,从所述解析结果中获取调节器,如是位置调节器则根据位置信息在虚拟机上运行的Java卡程序中查找原字节码,并用特殊字节码替换所述原字节码,将所述原字节码写到事件列表中生成事件序列号,顺序执行步骤D;如是单步调节器,则设置单步调试信息,将事件写到事件列表中生成事件序列号,顺序执行步骤D;如所述命令对应的事件类型为其他事件则根据设置指令进行操作;如所述命令集为其他命令集则根据设置指令进行操作;步骤D:根据预设规则设置第一返回数据,并将所述第一返回数据返回给发送装置;步骤E:获取虚拟机上当前运行的Java卡程序的字节码,判断所述获取的字节码是否为特殊字节码,是则执行步骤F,否则执行步骤G;步骤F:根据所述获取的字节码从事件列表中查找对应的原字节码并用所述原字节码替换所述获取的字节码,从所述虚拟机中的调试数据中获取返回数据,顺序执行步骤I;步骤G:判断事件列表中的单步调试标志是否置位,是则步骤H,否则返回步骤E;步骤H:根据所述获取的字节码从所述虚拟机中的调试数据中获取返回数据,顺序执行步骤I;步骤I:根据所述预设规则设置第二返回数据,并将所述第二返回数据返回给发送装置。 |
地址 |
100085 北京市海淀区学清路9号汇智大厦B座17层 |