[发明专利]仿真OS隔离定序器上的用户级多线程处理的机制有效
| 申请号: | 200580045750.X | 申请日: | 2005-12-28 |
| 公开(公告)号: | CN101095112A | 公开(公告)日: | 2007-12-26 |
| 发明(设计)人: | G·钦亚;H·王;X·邹;S·考施克;B·比比;J·沈;T·迪普;A·阿加瓦尔;B·V·帕特尔;J·P·赫尔德;P·塞蒂;R·A·汉金斯;J·L·赖德 | 申请(专利权)人: | 英特尔公司 |
| 主分类号: | G06F9/50 | 分类号: | G06F9/50 |
| 代理公司: | 中国专利代理(香港)有限公司 | 代理人: | 曾祥夌;王小衡 |
| 地址: | 美国加利*** | 国省代码: | 美国;US |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 仿真 os 隔离 定序器上 用户 多线程 处理 机制 | ||
背景
技术领域
本公开内容一般涉及信息处理系统,并且更具体地,涉及在其中一个或多个定序器可与操作系统隔离的多定序器系统上的多线程处理。
背景技术
为提高信息处理系统、诸如包括微处理器的那些信息处理系统的性能,采用了硬件和软件技术。在硬件方面,提高微处理器性能的微处理器设计方案包括了更快的时钟速度、流水线技术、分支预测、超标量执行、无序执行和高速缓存。许多此类方案使得晶体管数量增加,并且在一些情况下,甚至导致晶体管数量增加率大于性能提高率。
其他性能增强涉及软件技术,而不是寻求完全通过增加晶体管来提高性能。一种已用于提高处理器性能的软件方案称为“多线程处理”。在软件多线程处理中,指令流可分成可以并行执行的多个指令流。或者,多个独立的软件流可并行执行。
在一个称为时间片多线程处理或时间复用(“TMUX”)多线程处理的方案中,单个处理器在固定时间段后在线程之间切换。在还有的另一方案中,在发生例如长等待时间高速缓存缺失的触发事件时,单个处理器在线程之间切换。在称为基于事件切换的多线程处理(“SoEMT”)的此后一方案中,在给定时间最多只有一个线程是活动的。
在硬件方面,越来越支持多线程处理。例如,在一个方案中,在诸如芯片多处理器(“CMP”)系统(单个芯片封装上多个处理器)和对称多线程处理(“SMP”)系统(多个芯片上多个处理器)等多处理器系统中的处理器各自可并发对多个软件线程之一起作用。在称为同时多线程处理(“SMT”)的另一方案中,单个物理处理器变得对操作系统和用户程序好像是多个逻辑处理器。对于SMT,多个软件线程可以是活动的,并同时在单个处理器上执行而无需切换。也就是说,每个逻辑处理器维护一套完整的架构状态,但共享诸如高速缓存、执行单元、分支预测器、控制逻辑和总线等物理处理器的许多其他资源。对于SMT,来自多个软件线程的指令因而在每个逻辑处理器上并发执行。
对于支持软件线程并发执行的系统,如SMT、SMP和/或CMP系统,操作系统(“OS”)应用可控制软件线程的调度和执行。然而,一般情况下,操作系统控制不能良好地扩展;操作系统应用调度线程而对性能没有负面影响的能力通常只限于较少量的线程。
附图简述
可参照下面的附图理解本发明的实施例,其中,类似的要素用类似的标号表示。这些图形无意于限制,而是用于说明在多定序器系统上执行用户级多线程处理的设备、系统和方法的选定实施例,其中,经OS透明的抽象层提供在OS隔离定序器上的用户级纤程(shred)控制。
图1是方框图,示出多定序器系统的一般并行编程方案的图形表示。
图2是方框图,示出在用户级多线程处理的至少一个实施例的线程和纤程之间的共享存储器和状态。
图3是方框图,示出多定序器系统的各个实施例。
图4是方框图,示出多定序器多线程处理系统的软件机制的至少一个实施例。
图5是方框图,示出包括作为虚拟机监视器一部分的纤程处理仿真层的多定序器处理系统。
图6是方框图,示出一个或多个定序器隔离的至少一个实施例。
图7是流程图,示出用于启动包括纤程处理仿真层的软件层的方法的至少一个实施例。
图8是方框图,示出在操作系统和虚拟机监视器启动后的示范多定序器系统的隔离定序器和OS可见定序器的状态。
图9是控制流程图,示出用于定序器重定向的方法的至少一个实施例的方法和控制流。
图10是控制流程图,示出用于纤程创建的方法的至少一个实施例的方法和控制流。
图11是控制流程图,示出由于环过渡原因纤程暂停的至少一个实施例。
图12是控制流程图,示出在处理环过渡后纤程恢复的至少一个实施例。
图13是控制流程图,示出代理执行机制的至少一个实施例。
图14是流程图,示出代理执行方法的至少一个实施例。
图15是方框图,示出能够执行公开技术的系统的至少一个实施例。
详细说明
下面的论述描述了允许用户级应用程序在多定序器多线程处理系统中创建和控制与OS无关的执行线程(称为“纤程”)的方法、系统和机制的选定实施例。以完全的操作系统透明度创建、调度和执行用户级纤程。执行公开技术的多定序器系统的硬件不必支持架构纤程控制指令。相反,可通过OS透明的软件或固件仿真层提供此类功能。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于英特尔公司,未经英特尔公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200580045750.X/2.html,转载请声明来源钻瓜专利网。
- 上一篇:多处理器环境中基于事务的共享数据操作
- 下一篇:高速暂存区块





