[发明专利]计算机处理器中线程间数据通信的方法和系统有效
申请号: | 201110351954.3 | 申请日: | 2011-11-09 |
公开(公告)号: | CN102541630A | 公开(公告)日: | 2012-07-04 |
发明(设计)人: | P·J·博雷尔;A·盖特;J·L·彼得森 | 申请(专利权)人: | 国际商业机器公司 |
主分类号: | G06F9/46 | 分类号: | G06F9/46 |
代理公司: | 北京市中咨律师事务所 11247 | 代理人: | 张亚非;于静 |
地址: | 美国*** | 国省代码: | 美国;US |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 计算机 处理器 线程 数据通信 方法 系统 | ||
技术领域
本发明涉及数据处理,或者更具体地说,本发明涉及用于在计算机处理器中进行线程间数据通信的方法、装置和产品。
背景技术
计算机变得日益复杂且功能也日益强大。计算机软件不断地要求计算机硬件提供更大的处理能力并且计算机硬件的复杂程度也相应地增加。当前的计算机处理器,例如,包括其中可执行大量软件线程的大量硬件线程。目前,此类硬件线程之间的通信十分繁重、耗时、耗资源、且效率低下。
发明内容
披露了用于在具有多个硬件执行线程的计算机处理器中进行线程间数据通信的方法、装置和产品。每个硬件线程在操作上连接以便通过线程间通信控制器进行数据通信。所述线程间通信控制器根据本发明的实施例执行线程间数据通信,其方式为:响应于一个或多个RECEIVE(接收)操作码,由所述线程间通信控制器注册一个或多个执行RECEIVE操作码的接收线程;由所述线程间通信控制器从发送线程的SEND(发送)操作码接收要发送到接收线程的派生消息数量和基值的指定(specification);由所述线程间通信控制器产生派生消息,针对每个已注册的接收线程递增一次所述基值,以便每个派生消息包括单个整数作为所述基值的单独增量;由所述线程间通信控制器将派生消息发送到每个已注册的接收线程;以及从所述线程间通信控制器将接收线程接收的实际派生消息数量返回到发送线程。
通过下面对附图中所示的本发明的示例性实施例的更具体的描述,本发明的上述和其他目标、特征和优点将变得显而易见,在所述附图中,相同的标号一般表示本发明的示例性实施例的相同部分。
附图说明
图1示出根据本发明的实施例的用于在计算机处理器中进行线程间数据通信的系统的网络图。
图2示出显示根据本发明的实施例的用于在计算机处理器中进行线程间数据通信的示例性方法的流程图。
图3示出显示根据本发明的实施例的用于在计算机处理器中进行线程间数据通信的示例性方法的流程图。
图4示出显示根据本发明的实施例的用于在计算机处理器中进行线程间数据通信的示例性方法的流程图。
图5示出显示根据本发明的实施例的用于在计算机处理器中进行线程间数据通信的示例性方法的流程图。
图6示出显示根据本发明的实施例的用于在计算机处理器中进行线程间数据通信的示例性方法的流程图。
图7示出显示根据本发明的实施例的用于在计算机处理器中进行线程间数据通信的示例性方法的流程图。
图8示出显示根据本发明的实施例的用于在计算机处理器中进行线程间数据通信的示例性方法的流程图。
图9示出显示根据本发明的实施例的用于在计算机处理器中进行线程间数据通信的示例性方法的流程图。
具体实施方式
将参考从图1开始的附图描述根据本发明在计算机处理器中进行线程间通信的示例性方法、装置和产品。图1示出根据本发明的实施例的用于在计算机处理器中进行线程间数据通信的系统的网络图。图1中的系统包括包含示例性计算机(152)的自动计算机器。图1中的计算机(152)包括至少一个计算机处理器(156)或‘CPU’,以及通过高速存储总线(166)和总线适配器(158)与处理器(156)和计算机(152)的其他组件相连的随机存取存储器(168)(‘RAM’)。
图1的系统中的计算机(152)的示例性处理器(156)包括多个硬件执行线程(120、122、124和126)。硬件线程提供借以执行软件线程的计算机程序指令的物理装置。软件线程是可由操作系统调度以在处理器上执行的最小处理单元。软件线程一般包含在进程内。多个软件线程可以存在于同一进程中并共享诸如存储器之类的资源,而不同的进程不能共享这些资源。具体而言,进程中的各软件线程共享该进程的指令和上下文(变量在执行中的任何给定时刻具有的值)。与之对照,“硬件”线程在计算机处理器的硬件中实现并执行软件线程的指令。也就是说,对硬件线程的支持以用于每个硬件线程的单独的体系结构寄存器组的形式内置于处理器本身中,因此各个硬件线程可以同时执行,无需在硬件线程之间进行上下文切换。每个此类硬件线程可以运行多个软件执行线程,这是通过将软件线程分配给被称为“时间片”或“时隙”的处理器时间部分以及在软件线程不再拥有其分配到的硬件线程期间保存用于该软件线程的体系结构寄存器组的内容的上下文切换来实现的。在图1的示例中,每个硬件线程(120、122、124和126)都具有对应的寄存器组(128、130、132和134)。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于国际商业机器公司,未经国际商业机器公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110351954.3/2.html,转载请声明来源钻瓜专利网。