【技术实现步骤摘要】
IO请求的调度方法、装置、存储介质及电子设备
本申请涉及电子设备
,具体涉及一种IO请求的调度方法、装置、存储介质及电子设备。
技术介绍
随着电子设备的发展,电子设备如智能手机、平板电脑等,其系统中的存储器件大多可以支持多个物理通道。对于这种多通道存储器来说,常规的IO请求派发机制为:建立一个调度派发队列,按照先后顺序将IO请求加入该调度派发队列,并按照该队列中的顺序依次派发。
技术实现思路
本申请实施例提供一种IO请求的调度方法、装置、存储介质及电子设备,能够提高存储器通道分配效率,减少用户交互场景下的卡顿现象。第一方面,本申请实施例提供一种IO请求的调度方法,包括:检测是否有空闲的第一类通道,其中,根据线程类型的不同将存储器的通道分为至少两种类型的通道;若有空闲的第一类通道,则检测第一队列中是否有待分配的IO请求,其中,所述第一队列中的IO请求为第一类线程发送的IO请求,第一类线程为执行用户交互事件中相关任务的线程;当所述第一队列中有待分配的IO请求时,将所述第一队列中的IO请求分配至空闲的第一类通道;当没有空闲的第一类通道或所述第一队列中没有待分配的IO请求时,将第二队列中的IO请求分配至空闲的第二类通道,其中,所述第二队列中的IO请求为第二类线程发送的IO请求,所述第一类通道的数量大于所述第二类通道的数量。第二方面,本申请实施例还提供一种IO请求的调度装置,包括:第一检测模块,用于检测是否有空闲的第一类通道,其中,根据线程类型的 ...
【技术保护点】
1.一种IO请求的调度方法,其特征在于,包括:/n检测是否有空闲的第一类通道,其中,根据线程类型的不同将存储器的通道分为至少两种类型的通道;/n若有空闲的第一类通道,则检测第一队列中是否有待分配的IO请求,其中,所述第一队列中的IO请求为第一类线程发送的IO请求,所述第一类线程为执行用户交互事件中相关任务的线程;/n当所述第一队列中有待分配的IO请求时,将所述第一队列中的IO请求分配至空闲的第一类通道;/n当没有空闲的第一类通道或所述第一队列中没有待分配的IO请求时,将第二队列中的IO请求分配至空闲的第二类通道,其中,所述第二队列中的IO请求为第二类线程发送的IO请求,所述第一类通道的数量大于所述第二类通道的数量。/n
【技术特征摘要】
1.一种IO请求的调度方法,其特征在于,包括:
检测是否有空闲的第一类通道,其中,根据线程类型的不同将存储器的通道分为至少两种类型的通道;
若有空闲的第一类通道,则检测第一队列中是否有待分配的IO请求,其中,所述第一队列中的IO请求为第一类线程发送的IO请求,所述第一类线程为执行用户交互事件中相关任务的线程;
当所述第一队列中有待分配的IO请求时,将所述第一队列中的IO请求分配至空闲的第一类通道;
当没有空闲的第一类通道或所述第一队列中没有待分配的IO请求时,将第二队列中的IO请求分配至空闲的第二类通道,其中,所述第二队列中的IO请求为第二类线程发送的IO请求,所述第一类通道的数量大于所述第二类通道的数量。
2.如权利要求1所述的IO请求的调度方法,其特征在于,所述存储器还包括第三类通道;所述将第二队列中的IO请求分配至空闲的第二类通道之前,还包括:
当没有空闲的第一类通道或所述第一队列中没有待分配的IO请求时,检测是否有空闲的第二类通道;
若有空闲的第二类通道,则检测第二队列中是否有待分配的IO请求;
当所述第二队列中有待分配的IO请求时,执行所述将第二队列中的IO请求分配至空闲的第二类通道;
当没有空闲的第二类通道或所述第二队列中没有待分配的IO请求时,检测是否有空闲的第三类通道,所述第二类通道的数量大于所述第三类通道的数量;
若有空闲的第三类通道,则将第三队列中的IO请求分配至空闲的第三类通道,其中,所述第三队列中的IO请求为第三类线程发送的IO请求。
3.如权利要求1或2所述的IO请求的调度方法,其特征在于,所述将所述第一队列中的IO请求分配至空闲的第一类通道,包括:
将所述第一队列中创建时间最早的IO请求分配至空闲的第一类通道,并返回执行检测是否有空闲的第一类通道。
4.如权利要求1或2所述的IO请求的调度方法,其特征在于,所述将所述第一队列中的IO请求分配至空闲的第一类通道,包括:
确定空闲的第一类通道的数量;
将所述第一队列中创建时间最早的所述数量的IO请求依次分配至空闲的第一类通道。
5.如权利要求2所述的IO请求的调度方法,其特征在于,还包括:
当接收到线程发送的IO请求时,获取所述IO请求携带的标签,并根据所述标签确定所述线程的目标类型;
将所述IO请求添加至与所述目标类型对应的请...
【专利技术属性】
技术研发人员:周华材,张诗明,郭健,
申请(专利权)人:OPPO广东移动通信有限公司,
类型:发明
国别省市:广东;44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。