【技术实现步骤摘要】
—种CFQ调度方法
本专利技术涉及Iinux内核I/O调度领域,尤其涉及一种CFQ调度方法。
技术介绍
随着Iinux操作系统的发展,应用程序对高性能1的要求越来越高。自2.6内核以后,Iinux内核的1调度算法增加至4种,其中CFQ (completely fair queueing)调度算法应用最为广泛。该算法在多进程环境下能够保证各个进程有公平的调度机会,以及1设备的QoS。但是在I/O密集型请求到来时,该算法的I/O性能会下降。首先,由于CFQ算法将设备分为不同的组,组间调度采用基于权重---时间片的方式,而对于I/O密集型请求,往往是针对单一设备,这时CFQ算法仍然有可能发生组间调度,导致对于某一设备的I/O密集型请求等待。其次,由于CFQ算法对于同组的I/O请求按照进程号分为不同的队列,而对于密集型I/O请求,不同的进程访问的I/O地址有一定的连续性,导致CFQ算法为了保证电梯调度的顺序而在不同队列中切换。最后,由于CFQ算法对于同一队列的I/O请求按照电梯调度,而电梯调度算法对于上下两个边界附近的I/O效率较高,中间的效率较低 ...
【技术保护点】
一种CFQ调度方法,其特征在于,包括如下步骤:(1)首先进行组间调度:对于进程提出的I/O请求按照所操作的设备类型分组,各组选择对应设备类型的I/O操作,各组有对应的权重;每组设置特殊操作标志Intense,若该标志置1,则该组权重升为最高直至I/O操作结束;(2)然后进行组内调度:对于组内的I/O请求,根据特殊操作标志Continue按照两种不同的方式操作;若Continue=0,那么组内I/O请求按照进程号分为不同的队列;若Continue=1,那么组内I/O请求按照I/O访问的地址区域分为不同的队列;当Continue=0时,head = tail =0;各队列有对应 ...
【技术特征摘要】
1.一种调度方法,其特征在于,包括如下步骤: (1)首先进行组间调度:对于进程提出的1/0请求按照所操作的设备类型分组,各组选择对应设备类型的1/0操作,各组有对应的权重;每组设置特殊操作标志1111:61186,若该标志置1,则该组权重升为最高直至1/0操作结束; (2)然后进行组内调度:对于组内的1/0请求,根据特殊操作标志皿6按照两种不同的方式操作;若0)1^1皿6=0,那么组内1/0请求按照进程号分为不同的队列;若00111:111116=1,那么组内1/0请求按照1/0访问的地址区域分为不同的队列;当00111:111116=0时,1168(1 = 1:811 =0 ;各队列有对应的优先级; (3)最后进行队列内调度:对于同一队列中的1/0请求,采用电梯调度算法;当特殊操作标志0)111:111116为1时,电梯调度算法的边界修改为11651(1和仏11:11651(1到仏11为电梯算法的一个方向,剩下的区域组成另一个方向。2.根据权利要求1所述的方法,其特征在于,被调度的1/0请求处于内核态,为了能够适应密集型1/0操作,对于组间调度和组内调度都设置特殊操作标志,应用程序需要进行密集型1/0操作时,向内核提出请求,内核修改相关标志,切换组间调度和组内调度方...
【专利技术属性】
技术研发人员:邓宇羽,
申请(专利权)人:浪潮电子信息产业股份有限公司,
类型:发明
国别省市:山东;37
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。