[发明专利]程序变换方法和程序变换系统无效
申请号: | 99100822.7 | 申请日: | 1999-02-23 |
公开(公告)号: | CN1228558A | 公开(公告)日: | 1999-09-15 |
发明(设计)人: | 磯崎博子 | 申请(专利权)人: | 日本电气株式会社 |
主分类号: | G06F9/44 | 分类号: | G06F9/44;G06F9/45 |
代理公司: | 中原信达知识产权代理有限责任公司 | 代理人: | 穆德骏,余朦 |
地址: | 日本*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 程序 变换 方法 系统 | ||
1.程序变换方法,用于把由编程语言描述的源程序变换为数据处理系统可执行语言所描述的目标程序,该程序变换方法包括:
第一处理,将所述源程序中使用的至少一部分过程、函数或子程序变换为一种使得所述目标程序可以被存储在所述数据处理系统的主存储器的任意存储区内的形式;
第二处理,根据在所述源程序变换为所述目标程序的处理过程中获得的有关于所述过程、函数或子程序的信息,在所述主存储器的存储区中对应于一高速缓冲存储器的高速缓存行的所述存储区内排列所述第一处理中变换的或未变换的过程、函数或子程序,而不造成高速缓存冲突;和
第三处理,根据排列的结果产生所述目标程序。
2.如权利要求1所述的程序变换方法,其中所述过程、函数或子程序至少是使用者在所述源程序中定义的、使用者定义并检验的、以所述编程语言在一处理系统中预先准备的、和以指令代码形式预先准备的过程、函数或子程序中的一种。
3.如权利要求1所述的程序变换方法,其中所述信息是通过执行从所述源程序变换的一个临时目标程序得到的,并且是由指示所述过程、函数或子程序实际被调用的次数的信息和指示过程、函数或子程序之间的调用关系的信息组成的。
4.如权利要求1所述的程序变换方法,其中所述信息是通过执行从所述源程序变换的一个临时目标程序得到的,并且是由指示所述过程、函数或子程序实际被调用的次数的信息和指示过程、函数或子程序之间的调用关系的信息组成的,
在所述第二处理中,
所述过程、函数或子程序根据调用频率被划分为多个组,和
将所述过程、函数或子程序排列在所述主存储器的存储区中对应于一个高速缓冲存储器的高速缓存行的所述存储区内。
5.程序变换方法,用于把由编程语言描述的源程序变换为数据处理系统可执行语言描述的目标程序,该程序变换方法包括:
第一处理,当在所述数据处理系统中使用所述目标程序时,将所述源程序中使用的过程、函数或子程序的至少一部分变换为一种在所述数据处理系统的一个主存储器的任意存储区中存储的形式;
第二处理,将所述源程序变换为所述目标程序,和与之结合,关于所述目标程序,把所述源程序中使用者定义的过程、函数或子程序变换为可在所述主存储器的任意区中存储的形式;
第三处理,链接所述第一处理中变换的过程、函数或子程序和所述第二处理中获得的目标程序;
第四处理,利用执行通过所述第三处理得到的目标程序,收集由指示过程、函数或子程序实际被调用的次数的信息和指示所述过程、函数或子程序之间的调用关系的信息构成的动态信息;
第五处理,根据所述动态信息,在所述主存储器的存储区中对应于高速缓冲存储器的高速缓存行的所述存储区中排列所述过程、函数或子程序,同时避免高速缓存冲突;和
第六处理,根据所述排列信息,通过链接所述第一处理中变换的所述过程、函数或子程序和在所述第二处理中获得的目标程序产生最终目标程序。
6.如权利要求5所述的程序变换方法,其中所述过程、函数或子程序至少是使用者在所述源程序中定义的、使用者定义并检验的、以所述编程语言在一处理系统中预先准备的,和以指令代码形式预先准备的过程、函数或子程序中的一种。
7.如权利要求5所述的程序变换方法,其中在所述第二处理中,
所述过程、函数或子程序根据调用频率被划分为多个组,和
将所述过程、函数或子程序排列在所述主存储器的存储区中对应于一个高速缓冲存储器的高速缓存行的所述存储区内。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于日本电气株式会社,未经日本电气株式会社许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/99100822.7/1.html,转载请声明来源钻瓜专利网。