[发明专利]等待时间敏感的软件中断和线程调度有效
申请号: | 201380054204.7 | 申请日: | 2013-08-13 |
公开(公告)号: | CN104838359B | 公开(公告)日: | 2018-08-03 |
发明(设计)人: | B.M.沃特斯;D.朱 | 申请(专利权)人: | 微软技术许可有限责任公司 |
主分类号: | G06F9/50 | 分类号: | G06F9/50 |
代理公司: | 北京市金杜律师事务所 11256 | 代理人: | 王茂华 |
地址: | 美国华*** | 国省代码: | 美国;US |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 等待时间 敏感 软件 中断 线程 调度 | ||
各种不同的实施例提供了至少部分基于一个或多个处理器核使用率度量来调度等待时间敏感的任务的能力。一些实施例搜集与一个或多个处理器核是否处于重负载状态相关联的信息。可替换地或附加地,一些实施例搜集识别等待时间敏感任务的信息。当已经确定被原始指派的处理器核已经超过使用率阈值时,(多个)任务可以被(重新)指派给不同的(多个)处理器核以供执行。
背景技术
本发明涉及计算机技术领域,尤其涉及调用软件中断和/或软件线程的方法。
现今,计算设备具有在许多级别上进行多任务的能力。例如,在从多个输入设备(键盘、触摸屏、鼠标等)键入输入时,计算设备的用户可以拥有同时运行的多个应用。随后,这些应用、输入设备等中的每一个竞争处理器时间。相关联的计算设备和/或处理器可以通过若干方式来管理多任务,比如通过在请求到该处理器的访问的那些任务之间按优先级排序(prioritize)和/或划分(split)时间。例如,计算设备可以对应用和/线程指派优先级(priority)等级,以及根据该优先级等级来分配到该处理器的访问。这确保了请求到该处理器的访问的那些任务将最终接收在处理器上的时间分配。但有时,请求的任务具有更紧急或时间敏感的需要。在这些情况下,请求的应用和/或线程可以被设置为具有比当前运行的线程更高的优先级,这样导致当前运行的线程被先占。可替换地,设备通过诸如物理硬件中断或软件中断之类的中断机制来请求处理器时间。
当处理器接收到中断时,当前正被处理器所执行的任务通常被挂起(suspend)以便服务该中断。考虑一个简化的情况,其中应用有处理器的临时所有权来用图像更新显示,并且用户决定在该显示更新期间键入鼠标点击或触摸屏输入来作为优先放大该图像的手段。一般来说,鼠标点击生成到处理器的中断作为点击活动的通知。在接收到该中断时,该处理器临时挂起与该应用相关联的活动以便服务该中断,并且在完成中断服务例程后继续执行(resume)该被挂起的活动。时常,这种处理以对用户而言很少以至无法感知的区别而发生。但是,一些应用和/或任务对被挂起是更加时间敏感的。在这些情况下,如果该应用和/或任务未能以及时的方式继续执行,该用户可以注意到执行中的迟延,并且随后感知到该计算设备表现不佳或者发生故障。
发明内容
本发明内容被提供来以简化的方式引入概念的选择,这些概念将在下文在具体实施方式中被进一步描述。本发明内容不是旨在识别所要求保护的主题的关键特征或必要特征。
各种不同的实施例提供了至少部分基于一个或多个处理器核使用率度量(metric)来调度等待时间敏感的任务的能力。一些实施例搜集(gather)与一个或多个处理器核是否处在重负载状态相关联的信息。可替换地或附加地,一些实施例搜集识别等待时间敏感的任务的信息。在某些情况下,当已经确定被原始指派的处理器已经超过使用率阈值时,(多个)任务和/或中断可以被(重新)指派到不同的(多个)处理器核以供执行。
附图说明
具体实施方式是参考附图来进行描述的。在这些图中,附图标记最左边的(多个)数字识别该附图标记首次在其中出现的图。在说明书和图中的不同实例中使用相同的附图标记可以指示相似或相同的项目。
图1是根据一个或多个实施例的示例实现方式的图示。
图2a-d是根据一个或多个实施例的时序图的图示。
图3是根据一个或多个实施例的示例实现方式的图示。
图4是根据一个或多个实施例的时序图的图示。
图5图示了根据一个或多个实施例的流程图。
图6图示了根据一个或多个实施例的流程图。
图7图示了可以被使用来实现本文所描述的各种不同的实施例的示例计算设备。
具体实施方式
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于微软技术许可有限责任公司,未经微软技术许可有限责任公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201380054204.7/2.html,转载请声明来源钻瓜专利网。
- 上一篇:分散HADOOP集群
- 下一篇:运行代理以在云系统中执行自动化任务