[发明专利]动态二进制翻译中代码Cache管理方法有效
申请号: | 201310048645.8 | 申请日: | 2013-02-07 |
公开(公告)号: | CN103150196A | 公开(公告)日: | 2013-06-12 |
发明(设计)人: | 李莹;罗艳;尹建伟;吴健;邓水光;吴朝晖 | 申请(专利权)人: | 浙江大学 |
主分类号: | G06F9/45 | 分类号: | G06F9/45;G06F12/08 |
代理公司: | 杭州裕阳专利事务所(普通合伙) 33221 | 代理人: | 应圣义 |
地址: | 310027 浙江省杭州市浙*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明涉及计算机应用领域中的动态二进制翻译技术,公开了一种动态二进制翻译中代码Cache管理方法,所述代码Cache包括非跳转目标Cache和跳转目标Cache,所述代码Cache采用FIFO策略,包括以下具体步骤:确定带翻译基本块的类型,所述基本块为非跳转目标基本块时,执行非跳转目标基本块处理流程,所述基本块为跳转目标基本块时,执行跳转目标基本块处理流程。本发明的优点在于,可以高效地缓存已经翻译过的代码,减少重复翻译。 | ||
搜索关键词: | 动态 二进制 翻译 代码 cache 管理 方法 | ||
【主权项】:
一种动态二进制翻译中代码Cache管理方法,其特征在于,所述代码Cache包括非跳转目标Cache和跳转目标Cache,所述代码Cache采用FIFO策略,包括以下具体步骤:1)确定带翻译基本块的类型,所述类型包括跳转目标基本块、非跳转目标基本块,所述跳转目标基本块存储在跳转目标Cache中,所述非跳转目标基本块存储在非跳转目标Cache中,其中,所述跳转目标基本块为由跳转指令跳转执行的基本块,所述非跳转目标基本块为由非跳转指令顺序执行的基本块;2)所述基本块为非跳转目标基本块时,执行非跳转目标基本块处理流程:2‑1)根据所述基本块的地址在所述非跳转目标Cache中查找所述基本块,如果找到所述基本块则跳转执行步骤2‑4;2‑2)根据所述基本块的地址在所述跳转目标Cache中查找所述基本块,如果找到所述基本块则跳转执行步骤2‑4;2‑3)翻译所述基本块,并将翻译后所得代码块缓存至所述非跳转目标Cache;2‑4)执行所述基本块;3)所述基本块为跳转目标基本块时,执行跳转目标基本块处理流程:3‑1)根据所述基本块的地址在所述跳转目标Cache中查找所述基本块,如果找到所述基本块则跳转执行步骤3‑5;3‑2)根据所述基本块的地址在所述非跳转目标Cache中查找所述基本块,如果找到所述基本块则跳转执行步骤3‑4;3‑3)翻译所述基本块,并将翻译后所得代码块缓存至所述跳转目标Cache,跳转执行步骤3‑5;3‑4)将所述基本块从所述非跳转目标Cache中转移至所述跳转目标Cache;3‑5)执行所述基本块;4)循环执行所述步骤1至3直至所有基本块执行完毕。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浙江大学,未经浙江大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201310048645.8/,转载请声明来源钻瓜专利网。