[发明专利]调度无用单元回收的方法无效
| 申请号: | 00800918.X | 申请日: | 2000-03-09 |
| 公开(公告)号: | CN1306644A | 公开(公告)日: | 2001-08-01 |
| 发明(设计)人: | R·J·霍尔德斯沃斯 | 申请(专利权)人: | 皇家菲利浦电子有限公司 |
| 主分类号: | G06F12/02 | 分类号: | G06F12/02;G06F9/45 |
| 代理公司: | 中国专利代理(香港)有限公司 | 代理人: | 栾本生,王忠忠 |
| 地址: | 荷兰艾*** | 国省代码: | 暂无信息 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 调度 无用 单元 回收 方法 | ||
本发明涉及调度无用单元回收指令以便供其它进程的指令执行的方法和设备,具体地说,本发明涉及对用于有指令级并行性的处理器的无用单元回收指令进行调度。
当今一代可用的计算机处理器体系结构具有指令级并行性的能力,也就是说,可在单个的时钟周期内执行多个并发指令。用于这种处理器的指令发出寄存器一般被分成多个槽。在一个单个时钟周期内,处理器可以处理各槽中的一条指令。能提供这种特征的处理器结构的实例是超标量体系结构和超长指令字(VLIW)体系结构。
就能执行多条并发指令的处理器而言,每条指令及其效果必须与要在同一时钟周期内执行的其它指令无关。例如,使数值变量的值加倍的指令在同一个时钟周期内不能被处理成将同一变量的值拷贝至另一个变量的指令。业已按多种不同的方式解决了判断哪些指令是彼此独立的从而能同时加以处理的需求。在该超标量体系结构中,用专用的硬件来判断到达指令发出寄存器的独立指令。在VLIW体系结构中,用程序编译器来生成超长指令字,该超长指令字由多个连在一起的独立指示构成,在每个时钟周期中,都由处理器执行一个单个的VLIW。
但是,两种方法有同样的局限性。很少的在VLIW、超标量或类似体系结构处理器上运行的程序有足够数量的独立指令以便在所有的时侯都占据处理器的所有的槽。一般地说,只有其中需要对大量独立元素进行大量处理的诸如声音或图像处理之类的多媒体应用程序才几乎能占据处理器的所有的槽。尽管有上述处理器的计算机的用户不会注意到源于处理器的未用槽的负面效果,但是,希望能最充分地使用上述处理器及其并发处理能力。
在Sun Microsystem的Java及诸如Modular-3和Cedar之类的某些其它语言和编程环境中,以与程序进程相并行的方式运行无用单元回收进程。
无用单元回收是自动回收最后被程序使用以后的系统存储器空间。John Wiley & Son于1996年出版的Jones等人著的《无用单元回收——用于自动动态存储器管理的算法》(ISBN0-471-94148-4)一书中1至18页以及载于1992年国际存储器管理工作组会议录(St.Malo,France,1992年8月)的P.R.Wilson的“单处理器无用单元回收技术”一文均说明了无用单元回收技术的多个实例。尽管许多计算机程序的存储要求是简单的并且是可预测的,但是,在存储器分配和恢复由程序设计人员或编译器来处理的情况下,有趋于带更为复杂的执行模式的功能语言的倾向,因此,特定数据结构的寿命在运行时之前不再是确定的,因此,在程序运行时自动回收存储器是很关键的。
如上述Wilson的参考文献所述的多种无用单元回收技术的一个共同特征是递增地遍历由独立存储的数据对象携带的参照指针所形成的数据结构。这种技术包括用连接数据对象的指针通过跟踪路径首先标记出所存储的其它对象可达到的或来自外部存储单元的所有存储对象。
然后是扫描或压缩存储器,也就是说,检查存储在存储器中的每一个对象,以确定未被标记的对象,然后回收这些对象的空间。
通常,无用单元回收和回收进程以与程序进程相并行的方式在计算机上运行,无用单元回收器和回收进程对程序进程的数据对象所占据的堆栈(存储区)进行操作,因此,能尽快地检测到来自程序进程的无用单元,可回收适当的资源。
除程序进程以外为了还实现无用单元回收进程,每个进程通常都作为对共享堆栈进行操作的独立线程来加以执行。按独立的线程来执行所述进程会在两个进程必须共享同样的处理器资源时降低两个进程的效率。在处理一个线程时,可将另一个线程挂起,反之亦然。
在VLIW处理器中,可以独立地编译和执行各个线程,在两个线程之间交替地交换处理器资源。
依照本发明,提供了调度要由处理器并发执行的指令的方法,所述处理器能同时执行预定数量的指令,所述方法包括下列步骤:
按预定的规则使来自第一进程和第二进程的指令相交错,以给出第三进程;以及
调度来自上述第三进程的指令,以便在第一时间点由处理器加以执行;
其中,第一进程的指令生成这样的数据结构,这些数据结构包括用存储器堆栈中的标识指针连接起来的数据对象,并且,所述第二进程包括无用单元回收进程,该进程用于遍历存储器堆栈并回收分配给第一进程未使用的数据结构的存储器。
本发明的一个优点是,在不对正在执行的进程产生影响的情况下,将处理器的未用的并发执行资源用于无用单元回收。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于皇家菲利浦电子有限公司,未经皇家菲利浦电子有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/00800918.X/2.html,转载请声明来源钻瓜专利网。
- 上一篇:可动家俱部分的关闭和/或抽拉装置
- 下一篇:电子机器和电子机器的控制方法





