[发明专利]线程通信和同步技术有效
申请号: | 201210089433.X | 申请日: | 2006-10-19 |
公开(公告)号: | CN102736956A | 公开(公告)日: | 2012-10-17 |
发明(设计)人: | Q·雅各布森;H·王;J·沈;P·哈默隆德 | 申请(专利权)人: | 英特尔公司 |
主分类号: | G06F9/54 | 分类号: | G06F9/54;G06F9/38 |
代理公司: | 中国专利代理(香港)有限公司 72001 | 代理人: | 朱海煜 |
地址: | 美国加利*** | 国省代码: | 美国;US |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 线程 通信 同步 技术 | ||
本申请是申请日为2006年10月19日、申请号为200680038567.1、发明名称为“线程通信和同步技术”的专利申请的分案申请。
技术领域
本发明的实施例涉及微处理器架构。更具体地说,本发明的实施例涉及对在一个或多个微处理器或微处理器核心内执行的两个或两个以上线程间的通信和同步的管理。
背景技术
可以组织现代计算机程序内的指令以便根据各种指令串或“线程”来执行。通常,在处理资源内执行的指令的线程利用和/或生成一组对于特定线程唯一或至少与特定线程关联的状态信息。但是,各线程也可以共享状态信息或其它信息、例如将由一个或多个线程操作的数据,在此情况下,可能需要将信息从一个线程传递给另一个线程。
在典型的共享存储器的微处理器或处理系统中,各线程通过一个用于将信息存储在存储单元中的线程(发送线程)交换信息,该信息可以由另一个线程(接收线程)读取。通常,接收线程可以在各个时间轮询存储单元,以便检测发送线程何时更新了数据。在某些现有技术的实现中,检测机制可以检测何时写入共享信息,并且可以对此做出响应而向接收线程报警。
在后一情形中,检测机制检测共享信息何时写入到存储单元并向接收线程报警,在此情况下,一些现有技术利用监视或“探听”微处理器之间或微处理器与诸如DRAM的存储器之间的互连的特殊硬件检测逻辑。该检测逻辑可以配置成用于监视将在互连之间传送的到特定地址的命令,这可能需要用于每个将受监视的存储单元的检测逻辑。
诸如上述的现有技术在管芯面积和功率方面会很费成本。此外,这些现有技术在监视多个存储单元的更新时可能不易调整,从而导致软件开发的难题。
有这样一种现有技术,它涵盖了向在微处理器上运行的用户级线程直接报告事件而不需要操作系统的传统干预来通知中断或异常情况的机制。这些用户级中断或用户级异常基于具有这样一种机制,该机制保存关于线程的当前状态的足够信息并将线程重定向到执行“处理程序”代码的预定块以便响应事件。作为处理程序代码的一部分,线程可以执行它想要做的任何工作,然后可以返回到它在事件之前所处的执行路径。也可以选择不返回到该执行路径,而是继续执行完全不同的任务组。
发明内容
根据第一实施例,本申请提供了一种用于线程通信和同步的设备,包括:
高速缓存存储器,所述高速缓存存储器包括一致性状态字段以及一个或多个监视位字段,所述一致性状态字段用于存储与对应的高速缓存行有关的一致性信息,所述一个或多个监视位字段指示是否要为状态转换监视所述高速缓存行;
检测逻辑,用于在设置了所述一个或多个监视位字段中的监视位时,检测是否已经在一致性状态字段中发生对一致性信息的状态转换。
根据第二实施例,本申请提供了一种用于线程通信和同步的系统,包括:
高速缓存存储器,所述高速缓存存储器包括一致性状态字段以及多个监视位字段,所述一致性状态字段用于存储与高速缓存行有关的一致性信息,所述多个监视位字段用于指示是否要为对应的高速缓存行的状态改变监视所述高速缓存行;
第一存储器,所述第一存储器用于存储第一指令和第三指令,所述第一指令用于设置所述多个监视位字段内的位,所述第三指令用于启用检测逻辑以检测对所述一致性状态字段中的一致性信息的状态转换是否已经发生。
根据第三实施例,本申请提供了一种用于线程通信和同步的方法,包括:
使高速缓存行能被监视,看是否有通过发送线程内的指令写入到所述高速缓存行的数据;
对于所述高速缓存行检测对一致性信息的状态转换,以指示对与所述高速缓存行相对应的数据的修改;
响应于检测到状态转换而将所述数据递送给接收线程。
附图说明
附图的各图中举例而不是限制性地示出本发明的实施例,附图中,类似的附图标记表示类似的元件,并且其中:
图1示出可以结合本发明的至少一个实施例使用的处理系统的一部分。
图2示出可以根据本发明的一个实施例使用的高速缓存项及对应的一致性(coherency)和监视项。
图3是示出根据一个实施例在检测可以指示通过线程执行到高速缓存行的写入的一致性状态转换中涉及的操作的流程图。
图4示出可以在其中使用本发明的一个实施例的前端总线(FSB)计算机系统。
图5示出按照点对点(PtP)配置布置的计算机系统。
具体实施方式
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于英特尔公司,未经英特尔公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210089433.X/2.html,转载请声明来源钻瓜专利网。