[发明专利]用于在多线程系统中设置事件的技术有效
申请号: | 200680020091.9 | 申请日: | 2006-04-12 |
公开(公告)号: | CN101194231A | 公开(公告)日: | 2008-06-04 |
发明(设计)人: | 戴维·布拉克曼 | 申请(专利权)人: | 高通股份有限公司 |
主分类号: | G06F9/46 | 分类号: | G06F9/46 |
代理公司: | 北京律盟知识产权代理有限责任公司 | 代理人: | 刘国伟 |
地址: | 美国加利*** | 国省代码: | 美国;US |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 用于 多线程 系统 设置 事件 技术 | ||
技术领域
一般来说,本发明涉及计算机处理,且更具体来说,涉及在多线程系统中设置事件的技术。
背景技术
操作系统是一种常见类型的多线程系统。操作系统管理各种系统资源(例如,硬件单元、存储装置、接口等等)且提供允许在所述操作系统上运行的应用程序存取所述系统资源的服务。所述操作系统通常通过适当地调用、调度及处理线程而提供所述服务。线程可视为将要实施的任务。
实时操作系统是一种类型的操作系统,且通常用于许多电子装置,例如,无线装置(例如,蜂窝式电话)、个人数字助理(PDA)等等。实施操作系统的关键特征是基于优先权的抢先调度。这种类型的调度力图调度各个线程以便首先处理在所有已准备好供执行的线程中具有最高优先权的线程。在每一线程能够被处理之前,所述线程与特定优先权相关联且可能与需要设置的事件相关联。每当设置事件时,所述操作系统确定哪些线程已准备好供执行(也就是,不等待任何事件,或在等待已设置的事件)且调度已准备好的最高优先权线程。当前正在处理的线程可被具有更高优先权且已准备好供执行的另一个线程抢先。
实时操作系统可允许活动线程每次设置单个事件。然而,如下文所述,所述活动线程可具有多个将要设置的事件,且所述活动线程设置所述事件的次序可影响线程被调度的次序。如果由于设置所述事件的次序导致以不需要的次序调度线程,则可能降级系统性能。
因此,在此项技术中需要用以在多线程系统中设置事件的技术。
发明内容
本文阐述用于在多线程系统(例如,实时操作系统)中在调度器不中间调度的情况下设置事件的技术。为在多线程系统中设置一个或多个事件,首先使所述调度器变得实质上无效。然后,例如,通过重复地调用功能以设置单个事件来设置各事件。可针对每一个将要设置的事件调用一次所述功能。然后,将所述调度器恢复到其正常有效性。
在实施例中,通过人为地将正在处理的当前线程的优先权设置为高优先级(例如,所述系统中可能的最高优先级)而使所述调度器变得无效。这防止在正在设置所述事件的时间期间另一线程被调入及所述当前线程被另一线程抢先。在已设置所有事件之后,将当前线程的优先权恢复到原始优先级。然后,此将所述调度器恢复到其正常有效性,这是因为当前线程现在可被另一具有更高优先权的线程抢先。
本文所述的事件设置技术可用于软件系统、硬件系统或具有硬件及软件两者的系统。举例来说,用以在无中间调度的情况下设置事件的代码可实施为可由各个线程调用的软件功能。这种功能又可调用另一个软件功能(例如,由操作系统所提供)来每次设置单个事件。
下文中将进一步详细说明本发明的各个方面及实施例。
附图说明
结合各个图式阅读下文所述的详细说明,人们将更易明了本发明的特征及性质,在所有图式中相同的参考字符对应地进行识别。
图1显示实例性多线程系统。
图2A及2B显示调度两个等待两个事件的线程,在图2A及2B中所述事件被以不同次序设置。
图2C显示调度两个等待两个事件的线程,所述事件被在无中间调度的情况下设置。
图3显示用于在无中间调度的情况下设置事件的过程。
图4显示用于通过操纵优先权而在无中间调度的情况下设置事件的过程。
图5显示图4中的过程的实施方案。
图6显示另一个多线程系统。
图7显示无线装置的框图。
图8显示存储系统的框图。
具体实施方式
本文使用“实例性”一词来表示“用作一个实例、示例或例证”。在本文中,任何称为“实例性”的实施例或设计均未必应视为为较其他实施例或设计为优选或有利。
图1显示实例性多线程系统100的图示,其中可采用本文所述的事件设置技术。线程110x、110y及110z可被应用程序(图1中未显示)调用且将要被调度及执行。线程是将要被实体(其也可是线程)实施的任务。线程可以与以下相关联:(1)将针对任务而执行的软件代码;及(2)用于所述任务的状态信息,例如寄存器、堆栈、变量等等。在任一既定时刻,线程可处于多种可能状态(例如,“未决”、“就绪”及“活动”)中的任一者中。如本文所使用,“未决”线程是在可被调度之前等待事件的线程,“就绪”线程是已准备好供执行(例如,不等待任何事件)且可被调度的线程,且“活动”线程是已被调度且当前正在运行的线程。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于高通股份有限公司,未经高通股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200680020091.9/2.html,转载请声明来源钻瓜专利网。
- 上一篇:预录制三维存储模块及其播放系统
- 下一篇:陈皮川贝茶