调度方法、调度装置和多处理器系统制造方法及图纸

技术编号:2836871 阅读:216 留言:0更新日期:2012-04-11 18:40
线程状态管理部分(32)将多个线程分成组,管理线程组的状态。执行等待队列(30)按照优先级顺序,并且在同一优先级内按照FIFO(First  In  FirstOut)顺序将处于执行等待以及正在执行状态的线程组进行排队。分配列表生成部分(12)从执行等待队列(30)的前端起,依次取出线程组,仅在将属于该线程组的线程同时分配给其中一个处理器的情况下,将该线程组追加到线程分配列表(18)中。线程分配部分(14)将属于存储在线程分配列表(18)中的线程组的所有线程分配给处理器。

【技术实现步骤摘要】
【国外来华专利技术】
本专利技术涉及多处理器系统中的并行处理的执行单位的调度方法和调度装置以及多处理器系统。
技术介绍
最近的支持多任务的操作系统实现能够同时执行多个处理的多处理环境,同时还搭载了这些处理在处理内部能够生成多个线程(thread)来进行并行处理的多线程技术。处理在执行时被分配固有的资源或地址空间,不能访问其它的处理区域。而线程是在处理内部生成的执行单位,各线程能够互相自由地访问处理内的区域。线程是操作系统分配CPU的执行时间的基本单位。作为对CPU分配线程的线程调度方式,有每隔一定时间顺序选择进入等待行列的线程来执行的单纯的轮转(round-robin)方式,和按照线程的优先级的顺序执行的优先方式等。在轮转方式中,等待行列中的线程每隔一定时间被公平地分配给CPU来执行。在优先方式中,各优先级的线程在按每个优先级设置的等待行列中排队,从优先级高的等待行列起依次选择线程并分配给CPU来执行。
技术实现思路
在一个系统内搭载了多个处理器的多处理器系统中,能够并行执行处理来实现处理整体的高速化。在多处理器系统中,在实现多线程环境的情况下,将线程分配给其中一个处理器来执行,处理的执行速度或存储器消耗本文档来自技高网...

【技术保护点】
一种调度方法,在多处理器系统中,对将并行处理的调度对象的执行单位分配给多个处理器的顺序进行调度,其特征在于,将一个以上的所述调度对象的执行单位进行分组,将资源映射到各执行单位所参照的地址空间中,以使能够互相参照属于同一组的所述执行单位的每一个所占有的处理器内的所述资源,在属于同一组的所有所述执行单位同时被分配给其中一个处理器的制约之下,控制对处理器分配组。

【技术特征摘要】
【国外来华专利技术】JP 2004-12-1 348479/20041.一种调度方法,在多处理器系统中,对将并行处理的调度对象的执行单位分配给多个处理器的顺序进行调度,其特征在于,将一个以上的所述调度对象的执行单位进行分组,将资源映射到各执行单位所参照的地址空间中,以使能够互相参照属于同一组的所述执行单位的每一个所占有的处理器内的所述资源,在属于同一组的所有所述执行单位同时被分配给其中一个处理器的制约之下,控制对处理器分配组。2.一种调度方法,在多处理器系统中,对将并行处理的调度对象的执行单位分配给多个处理器的顺序进行调度,其特征在于,将一个以上的所述调度对象的执行单位进行分组,以组为单位管理对处理器的分配,按照对每个所述组设定的优先级顺序,并且按照同一优先级内所述组到达等待行列的顺序,决定所述组的优先顺序,在属于同一组的所有所述执行单位同时被分配给其中一个处理器的制约之下,按照所述优先顺序对处理器分配处于执行等待以及正在执行的状态的组。3.一种调度方法,在多处理器系统中,对将并行处理的调度对象的执行单位分配给多个处理器的顺序进行调度,其特征在于,从执行等待队列的前端起,依次取出组,仅在能够将属于取出的组的所有执行单位同时分配给其中一个处理器的情况下,将属于该组的所有执行单位分配给处理器,否则使此后从所述执行等待队列中取出的组的分配优先,所述执行等待队列将包含一个以上的所述调度对象的执行单位的所述组内、处于执行等待以及正在执行状态的组,按照对每个所述组设定的优先级顺序,并且在同一优先级内按到达顺序存储。4.如权利要求3所述的调度方法,其特征在于,重复对处理器分配从所述执行等待队列中依次取出的组,直到对处理器分配的所述执行单位的数达到处理器总数,或者从所述执行等待队列的末尾取出所述组为止。5.如权利要求3或4所述的调度方法,其特征在于,在属于从所述执行等待队列的前端依次取出的组的各执行单位已经被分配给其中一个处理器并且正在执行的情况下,确保该正在执行的执行单位对该处理器的分配,以使该正在执行的执行单位的分配目的地不会被变更而再配置为其它处理器。6.一种调度装置,在多处理器系统中,对将并行处理的调度对象的执行单位分配给多个处理器的顺序进行调度,其特征在于,包含存储器控制部分,将一个以上的所述调度对象的执行单位进行分组,将资源映射到各执行单位所参照的地址空间中来进行管理,以使能够互相参照属于同一组的所述执行单位的每一个所占有的处理器内的所述资源;执行等待队列,存储处于执行等待以及正在执行的状态的组;以及分配部分,从所述执行等待队列的前端起依次取出组,仅在能够将属于取出的组的所有执行单位同时分配给其中一个处理器的情况下,将属于该组的所有执行单位分配给多个处理器。7.如权利要求6所述的调度装置,其特征在于,该装置在将执行单位进行分组化的初始设定时,决定属于同一组的各执行单位所占有的所述资源映射到所述地址空间的目的地的区域,并保持与该资源的映射目的地的区域有关的设定信息,直到该组被删除为止。8.如权利要求6或7所述的调度装置,其特征在于,对于属于由所述分配部分同时分配给其中一个处理器的同一组的第一以及第二执行单位,通过所述第一执行单位在映射到所述地址空间的同一组内的所述第二执行单位的资源区域中进行写入数据的操作,从而从同一组内的所述第一执行单位将数据传送给所述第二执行单位。9.如权利要求6或7所述的调度装置,其特征在于,对于属于由所述分配部分同时分配给其中一个处理器的同一组的第一以及第二执行单位,通过所述第一执行单位在映射到所述地址空间的同一组内的所述第二执行单位的资源区域中进行写入数据的操作,并且所述第二执行单位等待对于该资源的数据的写入完成,从而在同一组内的所述第一执行单位和所述第二执行单位之间取得同步。10.一种调度装置,在多处理器系统中,对将并行处理的调度对象的执行单位分配给多个处理器的顺序进行调度,其特征在于,包含执行等待队列,将包含一个以上的所述调度对象的执行单位的组内、处于执行等待以及正在执行状态的组,按照对每个所述组设定的优先级顺序,并且在同一优先级内按到达顺序存储;分配列表生成部分,从所述执行等待队列的前端依次取出组,仅在能够将属于取出的组的所有执行单位同时分配给其中一个处理器的情况下,将该组追加到存储了成为对处理器的分配候选的组的分配列表中;以及分配部分,将属于存储在由所述分配列表生成部分生成的所述分配列表中的组的所有执行单位,分配给多个处理器。11.如权利要求10所述的调度装置,其特征在于,所述分配列表生成部分重复进行所述分配列表的生成处理,直到对处理器分配的执行单位的个数达到处理器总数,或者从所述执行等待队列的末尾取出所述组为止。12.如权利要求10或11所述的调度装置,其特征在于,还包含调度表,其保持处于正在执行的状态的执行单位和该执行单位被分配的处理器的对应关系,在属于从所述执行等待队列依次取出的组的各执行单位在所述调度表中的情况下,所述分配列表生成部分在该执行单位被分配的处理器中设定标记,在属于从所述执行等待队列依次取出的组的各执行单位不在所述调度表中,而且能够将属于该组的所有执行单位同时分配给其中一个处理器的情况下,将该组追加到所述分配列表中,所述分配部分将属于在所述分配列表中存储的组的所有执行单位,分配给在所述调度表中未设定所述标记的处理器。13.如权利要求10至12的任何一项所述的调度装置,其特征在于,资源被映射到各执行单位所参照的地址空间中,以使能够互相参照属于同一组的...

【专利技术属性】
技术研发人员:西川尚宏
申请(专利权)人:索尼计算机娱乐公司
类型:发明
国别省市:JP[日本]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1