[发明专利]计算系统以及在该计算系统中操作锁的方法无效
申请号: | 201410520410.9 | 申请日: | 2014-09-30 |
公开(公告)号: | CN104267929A | 公开(公告)日: | 2015-01-07 |
发明(设计)人: | 艾义;徐林;吕建超;张绍华 | 申请(专利权)人: | 香港应用科技研究院有限公司 |
主分类号: | G06F9/38 | 分类号: | G06F9/38 |
代理公司: | 北京安信方达知识产权代理有限公司 11262 | 代理人: | 张春媛;阎娬斌 |
地址: | 中国香港*** | 国省代码: | 中国香港;81 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 计算 系统 以及 操作 方法 | ||
技术领域
本发明通常涉及计算系统中共享资源的可访问性控制。尤其是,本发明涉及用于部署多个处理单元,并在多个运行时环境中运行的计算系统的可访问性控制技术。
发明背景
多核处理器是具有两个或更多个独立处理单元的单个计算元件,其中独立的处理单元也惯称为“核”。多核计算系统通常用于与其他资源(例如,存储器块)并行地运行多个线程,其他资源在在不同核上运行的不同线程之间共享。尤其重要的是,多核计算系统在实现很多工业应用的嵌入式系统时是有利的。例如,多核计算系统在构造移动通信系统的高性能接入网关时是有用的。有利地,可以通过将某些核专门用于处理操作系统(OS)环境之外的大多数数据包(即,旁路OS)来实现高性能接入网关,以实现高系统吞吐和低延时,而剩余的需要复杂处理的包被转发至OS网络堆栈,并由执行必要的信令和控制功能的其他核来处理。所以,在特定于一个线程的运行时环境下执行一个线程而在另一优化的运行时环境上运行另一线程是有利的。运行时环境的特征在于,例如,线程在其上执行的OS,存储器地址的空间映射,线程可以使用的输入-输出(IO)资源,线程是否和一个特定的执行核捆绑在一起等。
由于存在多个运行时环境,线程可被分为可中止的线程和不可中止的线程。可中止的线程可由OS分派器调度,而不可中止的线程不可由OS分派器调度并且其执行不能中止。锁通常用在计算系统中以对不同线程访问一个或多个共享资源进行同步。理想的是具有一种技术,以在多核计算系统存在可中止的和不可中止的线程的情况下对锁进行操作。但是,大多数现有技术,例如US2007101333和WO2013078962中公开的技术,主要设计用于可中止的线程,而没有考虑在多个运行时环境中出现不可中止的线程的情况。
本领域需要一种技术,以在多个运行时环境中出现可中止的和不可中止的线程的情况下对锁进行操作。
发明内容
本发明提供了一种在具有多个处理单元的计算系统中操作锁的方法,其中锁可由计算系统中产生的多个线程获取和释放,并且每个线程是可中止的或不可中止的。下面描述该方法。
当锁被多个线程中的持有者线程持有时,响应于多个线程中的请求者线程做出的锁获取尝试,通过被分配用于执行请求者线程的第一处理单元确定持有者线程是可中止的或是不可中止的。如果确定持有者线程是不可中止的,不管请求者线程是可中止的还是不可中止的,都通过第一处理单元将请求者线程配置为处于自旋状态,其中自旋状态的特征在于:请求者线程持续做出锁获取尝试,并且第一处理单元检查尝试是否成功。如果持有者线程经确定是可中止的,优选的是,第一处理单元确定请求者线程是可中止的还是不可中止的,除非请求者线程放弃获取锁。如果请求者线程经确定是不可中止的,那么第一处理单元安排请求者线程再次做出锁获取尝试。否则,第一处理单元将请求者线程增加至等待队列,作为增加的中止的线程。等待队列经配置以存储多个中止的线程,这些中止的线程可以被多个处理单元中的一个恢复。
当持有者线程释放锁时,由多个处理单元中的一个执行锁释放程序。优选地,锁释放程序包括:如果等待队列具有一个或多个中止的线程,则从等待队列中选择一个中止的线程,并恢复该选择的中止的线程,使得该恢复的线程重新被安排获取锁。
本文以下的实施例的说明公开了本发明的其他方面。
附图说明
图1描述了显示有具有多个运行时环境的典型的多核计算系统的示意图,说明了访问共享资源时可中止和不可中止线程的出现。
图2是显示了根据本发明的示例性实施方式的操作锁的方法的流程图。
图3描述了根据本发明实施方式所公开的适应性锁配置的一种实现方式,适应性锁配置包括锁、调度器和等待队列。
图4描述了图3的锁和等待队列的一种实现方式。
图5是说明了根据本发明实施方式的锁获取程序的流程图。
图6是说明了根据本发明一个实施方式的锁释放程序的流程图。
具体实施方式
发明人做出了形成本发明的以下观察。图1是典型情景的示例,该典型情景描述了存在多个运行时环境和多个处理单元时,出现了可中止和不可中止的线程。图1中描述的情景类似于高性能接入网关的一个情景。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于香港应用科技研究院有限公司,未经香港应用科技研究院有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410520410.9/2.html,转载请声明来源钻瓜专利网。
- 上一篇:通用芯片外观检测机
- 下一篇:一种旋振筛的防堵结构