下载此文档

函数调用关系确定方法、热补丁升级方法及装置的制作方法.docx


文档分类:办公文档 | 页数:约16页 举报非法文档有奖
1/16
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/16 下载此文档
文档列表 文档介绍
函数调用关系确定方法、热补丁升级方法及装置的制作方法
专利名称:函数调用关系确定方法、热补丁升级方法及装置的制作方法
技术领域:
本发明实施例涉及通信技术,尤其涉及一种函数调用关系确定方法、热补丁升级方法及装置。
背景技术:
系统名清空;若所述第一记录表中没有记录所述被调用的函数的函数名,且所述第二记录表中记录有所述被调用的函数的函数名,则将所述第二记录表中记录的函数调用关系中的所述被调用的函数的函数名、所述被调用的函数的子函数的函数名、所述被调用的函数的子函数的子函数的函数名,以此类推,直至最后一个子函数的函数名以及所述返回
地址对应的函数的函数名记录在所述第一记录表中,并将所述第二记录表中记录的函数名清空;其中所述返回地址对应的函数的函数名为所述被调用的该函数的父函数的函数名;其中,所述对所述栈中的至少一个返回地址依次进行查找,包括若所述第二记录表中没有记录所述被调用的函数的函数名,则查找所述栈中的下一个返回地址。
结合第一方面的第一种或第二种可能的实现方式,在第一方面的第三种可能的实现方式中,所述确定当前查找到的所述返回地址对应的函数,根据所述返回地址对应的函数对记录表中记录的函数调用关系进行修正,还包括若所述操作码的寻址类型为直接寻址,则将所述返回地址对应的函数的函数名作为上一个返回地址对应的函数的父函数的函数名记录在所述第二记录表中。结合第一方面的第一种、第二种或第三种可能的实现方式,在第一方面的第四种可能的实现方式中,所述方法还包括若查找完所述栈,且所述第二记录表不为空,则将所述第二记录表中记录的函数名添加到所述第一记录表中,并将所述第二记录表中记录的函数名清空。结合第一方面的第一种、第二种或第三种可能的实现方式,在第一方面的第五种可能的实现方式中,所述对所述栈中的至少一个返回地址依次进行查找之前,所述方法还包括确定所述系统调用的最后一个函数的函数名,将所述被调用的最后一个函数的函数名记录在初始状态为空的第一记录表中。结合第一方面的第一种、第二种、第三种、第四种或第五种可能的实现方式,在第一方面的第六种可能的实现方式中,所述根据当前查找到的返回地址确定引起所述当前查找到的返回地址入栈的、表示函数调用的操作码,包括将所述当前查找到的返回地址减去预设字节数,得到查找地址,从所述查找地址开始读取所述预设字节数的数据,根据所述数据确定引起所述当前查找到的返回地址入栈的、表示函数调用的操作码。结合第一方面的第一种、第二种、第三种、第四种、第五种或第六种可能的实现方式,在第一方面的第七种可能的实现方式中,所述方法还包括若判断出所述系统在调用函数时,向所述栈中压入被调用的所述函数的父函数的栈帧起始地址,则根据所述栈中的父函数的栈帧起始地址确定所述函数调用关系。第二方面,提供一种热补丁升级方法,包括若判断出系统在调用函数时,未向栈中压入被调用的所述函数的父函数的栈帧起始地址,则对所述栈中的至少一个返回地址依次进行查找,所述栈中包括所述至少一个返回地址;每次查找到所述至少一个返回地址中的一个返回地址时,确定当前查找到的所述返回地址对应的函数,根据所述返回地址对应的函数对记录表中记录的函数调用关系进行修正,使得修正后的函数调用关系中的所述被调用的该函数的父函数为所述返回地址对应的函数。对比修正后的记录表中记录的函数调用关系中的函数名与获取到的补丁升级所要修改的函数列表中的函数名,若不存在相同项,则进行补丁升级。在第二方面的第一种可能的实现方式中,所述记录表包括第一记录表和第二记录表,其中第一记录表和第二记录表均包括一个或多个函数名,其中一个函数名表示所述函数名的前一个函数名对应的函数的父函数,也表示所述函数名的后一个函数名对应的函数的子函数;所述确定当前查找到的所述返回地址对应的函数,根据所述返回地址对应的函数对记录表中记录的函数调用关系进行修正,包括根据当前查找到的返回地址确定引起所述当前查找到的返回地址入栈的、表示函数调用的操作码,若所述操作码的寻址类型为间接寻址,则根据所述操作码确定所述被调用的函数;若所述第一记录表中记录有所述被调用的函数的函数名,则将所述第一记录表中记录的处于所述被调用的函数之后的所有函数名删除,将所述返回地址对应函数的函数名作为所述被调用的该函数的父函数的函数名记录在第一记录表中所述被调用的函数的函数名之后的位置上,并将所述第二记录表中记录的函数名清空;若所述第一记录表中没有记录所述被调用的函数的函数名,且所述第二记录表中记录有所述被调用的函数的函数名,则将所述第二记录表中记录的所述被调用的函数的函数名以及处于所述被调用的函数的函数名之前的所有函数名以及所述返回地址对应的函数的函数名记录在所述第一记录表中,并将所述第二记录表中记录的函数名清空;其中所述返回地址对应的函数的函数名作为所述被调用的

函数调用关系确定方法、热补丁升级方法及装置的制作方法 来自淘豆网m.daumloan.com转载请标明出处.

非法内容举报中心
文档信息
  • 页数16
  • 收藏数0 收藏
  • 顶次数0
  • 上传人421989820
  • 文件大小30 KB
  • 时间2022-06-27