发明名称 多执行緖处理环境中对经修改之切尼扫瞄的执行
摘要 在一实施例中,一记忆体管理方法使用作为一第三指向(finger)的提取指标执行绪,该提取指标执行绪对被分布在一扫描指标执行绪与一分配指标执行绪间之一第二记忆体空间中之各记忆体物件进行作业,以便在该第一记忆体空间中之各物件被扫描之前,先提取该等物件。当被扫描的记忆体槽并未存放有指向一第一记忆体空间中之一物件的一指标时,将该提取执行绪移到该第二记忆体空间中之一次一记忆体槽。当被扫描的记忆体槽存放有指向该第一空间中之一物件的一指标时,将该记忆体物件预先提取到与一分配指标执行绪共用的一快取记忆体中。
申请公布号 TWI249669 申请公布日期 2006.02.21
申请号 TW092131865 申请日期 2003.11.13
申请人 英特尔股份有限公司 发明人 理查 哈德森;王航;韦顿 瓦西伯恩;沈约翰
分类号 G06F12/00 主分类号 G06F12/00
代理机构 代理人 林志刚 台北市中山区南京东路2段125号7楼
主权项 1.一种记忆体管理方法,包含下列步骤: 使一提取指标对被分布在一扫描指标与一分配指 标间之一第二记忆体空间中之各记忆体物件进行 作业,扫描该等记忆体物件,以便找出存放有指向 一第一记忆体空间中之物件的指标的槽; 当被扫描的记忆体槽并未存放有指向该第一记忆 体空间中之一物件的一指标时,将该提取指标移到 该第二记忆体空间中之一次一记忆体槽;以及 当被扫描的记忆体槽存放有指向该第一空间中之 一物件的一指标时,将该第一空间中之该记忆体物 件预先提取到与支援该分配指标的执行緖共用的 一快取记忆体中。 2.如申请专利范围第1项之记忆体管理方法,其中于 扫描到一空指标时,该提取指标被移到次一记忆体 槽。 3.如申请专利范围第1项之记忆体管理方法,其中当 遇到指向并不是被收集的一区域中之一物件的一 指标时,该提取指标被移到次一记忆体槽。 4.如申请专利范围第1项之记忆体管理方法,进一步 包含下列步骤:当遇到存放有指向该第二空间中之 一物件的一指标的一槽时,将该提取指标更新成等 于该扫描指标。 5.如申请专利范围第1项之记忆体管理方法,其中在 复制记忆体物件之前,支援该分配指标的该执行緖 先清除刚刚通过边界指标的一虚拟函数表(vtable), 以便使该提取执行緖看到一个空的虚拟函数表。 6.一种资源回收方法,包含下列步骤: 将被收集的记忆体分成第一及第二记忆体空间; 以一提取指标、一扫描指标、及一分配指标扫描 该第二记忆体空间,以便决定要将哪些记忆体物件 移到该第二记忆体空间; 当被扫描的记忆体槽并未存放有指向该第一记忆 体空间中之一物件的一指标时,将该提取指标移到 该第二记忆体空间中之一次一记忆体槽;以及 当被扫描的记忆体槽存放有指向该第一空间中之 一物件的一指标时,将该记忆体物件预先提取到与 支援该分配指标的执行緖共用的一快取记忆体中 。 7.如申请专利范围第6项之资源回收方法,其中于扫 描到一空指标时,该提取指标被移到次一记忆体槽 。 8.如申请专利范围第6项之资源回收方法,其中当遇 到指向并不是被收集的一区域中之一物件的一指 标时,该提取指标被移到次一记忆体槽。 9.如申请专利范围第6项之资源回收方法,进一步包 含下列步骤:当该提取指标落后于复制指标执行緖 时,使该指标参照到该第二记忆体空间中之一物件 。 10.如申请专利范围第6项之资源回收方法,其中在 复制记忆体物件之前,支援该分配指标的该执行緖 先清除刚刚通过边界指标的一虚拟函数表(vtable), 以便使该提取执行緖看到一个空的虚拟函数表。 11.一种包含一储存有指令的储存媒体之储存媒体, 当该等指令被一机器执行时,将导致记忆体管理, 而该记忆体管理包含下列步骤: 使一提取指标对被分布在一扫描指标与一分配指 标间之一第二记忆体空间中之各记忆体物件进行 作业,扫描该等记忆体物件,以便找出存放有指向 一第一记忆体空间中之物件的指标的槽; 当被扫描的记忆体槽并未存放有指向该第一记忆 体空间中之一物件的一指标时,将该提取指标移到 该第二记忆体空间中之一次一记忆体槽;以及 当被扫描的记忆体槽存放有指向该第一空间中之 一物件的一指标时,将该第一空间中之该记忆体物 件预先提取到与支援该分配指标的执行緖共用的 一快取记忆体中。 12.如申请专利范围第11项的包含一储存有指令的 储存媒体之储存媒体,其中于扫描到一空指标时, 该提取指标被移到次一记忆体槽。 13.如申请专利范围第11项的包含一储存有指令的 储存媒体之储存媒体,其中当遇到指向并不是被收 集的一区域中之一物件的一指标时,该提取指标被 移到次一记忆体槽。 14.如申请专利范围第11项的包含一储存有指令的 储存媒体之储存媒体,该记忆体管理进一步包含下 列步骤:当遇到存放有指向该第二空间中之一物件 的一指标的一槽时,将该提取指标更新成等于该扫 描指标。 15.如申请专利范围第11项的包含一储存有指令的 储存媒体之储存媒体,其中在复制记忆体物件之前 ,支援该分配指标的该执行緖先清除刚刚通过边界 指标的一虚拟函数表(vtable),以便使该提取执行緖 看到一个空的虚拟函数表。 16.一种包含一储存有指令的储存媒体之储存媒体, 当该等指令被一机器执行时,将导致资源回收,而 该资源回收包含下列步骤: 将被收集的记忆体分成第一及第二记忆体空间; 以一提取指标、一扫描指标、及一分配指标扫描 该第二记忆体空间,以便决定要将哪些记忆体物件 移到该第二记忆体空间; 当被扫描的记忆体槽并未存放有指向该第一记忆 体空间中之一物件的一指标时,将该提取指标移到 该第二记忆体空间中之一次一记忆体槽;以及 当被扫描的记忆体槽存放有指向该第一空间中之 一物件的一指标时,将该记忆体物件预先提取到与 支援该分配指标的执行緖共用的一快取记忆体中 。 17.如申请专利范围第16项的包含一储存有指令的 储存媒体之储存媒体,其中于扫描到一空指标时, 该提取指标被移到次一记忆体槽。 18.如申请专利范围第16项的包含一储存有指令的 储存媒体之储存媒体,其中当遇到指向并不是被收 集的一区域中之一物件的一指标时,该提取指标被 移到次一记忆体槽。 19.如申请专利范围第16项的包含一储存有指令的 储存媒体之储存媒体,该资源回收进一步包含下列 步骤:当该提取指标落后于复制指标执行緖时,使 该指标参照到该第二记忆体空间中之一物件。 20.如申请专利范围第16项的包含一储存有指令的 储存媒体之储存媒体,其中在复制记忆体物件之前 ,支援该分配指标的该执行緖先清除刚刚通过边界 指标的一虚拟函数表(vtable),以便使该提取执行緖 看到一个空的虚拟函数表。 21.一种记忆体管理系统,包含: 具有一被连接的记忆体之一处理器,可执行该处理 器而对该被连接的记忆体中之各记忆体物件进行 作业,该等记忆体物件被分布在一扫描指标与一分 配指标间之一第二记忆体空间,该系统操作而扫描 该等记忆体物件,以便找出存放有指向一第一记忆 体空间中之物件的指标的槽; 当被扫描的记忆体槽并未存放有指向该第一记忆 体空间中之一物件的一指标时,将一提取指标移到 该第二记忆体空间中之一次一记忆体槽;以及 当被扫描的记忆体槽存放有指向该第一空间中之 一物件的一指标时,将该第一空间中之该记忆体物 件预先提取到与支援该分配指标的执行緖共用的 一快取记忆体中。 22.如申请专利范围第21项之记忆体管理系统,其中 于扫描到一空指标时,该提取指标被移到次一记忆 体槽。 23.如申请专利范围第21项之记忆体管理系统,其中 当遇到指向并不是被收集的一区域中之一物件的 一指标时,该提取指标被移到次一记忆体槽。 24.如申请专利范围第21项之记忆体管理系统,进一 步包含:当遇到存放有指向该第二空间中之一物件 的一指标的一槽时,将该提取指标更新成等于该扫 描指标。 25.如申请专利范围第21项之记忆体管理系统,其中 在复制记忆体物件之前,支援该分配指标的该执行 緖先清除刚刚通过边界指标的一虚拟函数表(vtable ),以便使该提取执行緖看到一个空的虚拟函数表 。 26.一种资源回收系统,包含: 具有一被连接的记忆体之一处理器,可执行该处理 器而对该被连接的记忆体中之各记忆体物件进行 作业,且 将被收集的记忆体分成第一及第二记忆体空间; 以一提取指标、一扫描指标、及一分配指标扫描 该第二记忆体空间,以便决定要将哪些记忆体物件 移到该第二记忆体空间; 当被扫描的记忆体槽并未存放有指向该第一记忆 体空间中之一物件的一指标时,将该提取指标移到 该第二记忆体空间中之一次一记忆体槽;以及 当被扫描的记忆体槽存放有指向该第一空间中之 一物件的一指标时,将该记忆体物件预先提取到与 支援该分配指标的执行緖共用的一快取记忆体中 。 27.如申请专利范围第26项之资源回收系统,其中于 扫描到一空指标时,该提取指标被移到次一记忆体 槽。 28.如申请专利范围第26项之资源回收系统,其中当 扫描到指向并不是被收集的一区域中之一物件的 一指标时,该提取指标被移到次一记忆体槽。 29.如申请专利范围第26项之资源回收系统,进一步 包含:当该提取指标落后于复制指标执行緖时,使 该指标参照到该第二记忆体空间中之一物件。 30.如申请专利范围第26项之资源回收系统,其中在 复制记忆体物件之前,支援该分配指标的该执行緖 先清除刚刚通过边界指标的一虚拟函数表(vtable), 以便使该提取执行緖看到一个空的虚拟函数表。 图式简单说明: 图1是支援多执行緖处理的一运算系统之示意图; 图2示出一先前技术的切尼扫描之作业; 图3示出使用多个执行緖的一经修改的切尼扫描之 程式逻辑;以及 图4示出使用一“第三指向"指标的一经修改的切 尼扫描之作业。
地址 美国