CN112799805A - 基于终端设备的调度方法、装置、存储介质及终端设备 - Google Patents
基于终端设备的调度方法、装置、存储介质及终端设备 Download PDFInfo
- Publication number
- CN112799805A CN112799805A CN202110084232.XA CN202110084232A CN112799805A CN 112799805 A CN112799805 A CN 112799805A CN 202110084232 A CN202110084232 A CN 202110084232A CN 112799805 A CN112799805 A CN 112799805A
- Authority
- CN
- China
- Prior art keywords
- task
- scheduling
- memory
- terminal device
- tasks
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 95
- 238000009877 rendering Methods 0.000 claims abstract description 47
- 230000015654 memory Effects 0.000 claims description 64
- 230000008569 process Effects 0.000 claims description 42
- 238000004891 communication Methods 0.000 claims description 16
- 230000008447 perception Effects 0.000 description 7
- 230000004044 response Effects 0.000 description 7
- 238000012360 testing method Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 3
- 238000011161 development Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000002035 prolonged effect Effects 0.000 description 2
- 230000007812 deficiency Effects 0.000 description 1
- 238000011982 device technology Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本申请公开了一种基于终端设备的调度方法、装置、存储介质及终端设备,所述方法包括获取调度任务中的绘制任务;将获取到的绘制任务配置为最高优先级,并按照各调度任务各自对应的优先级调度各调度任务。本申请通过将调度任务中的绘制任务配置有最高优先级,使得终端设备可以优先调度绘制任务以保证绘制任务的执行时间,这样可以避免因终端设备后台的调度任务过多导致绘制任务调度延迟,进而导致的终端设备显示卡顿的问题,从而提高了用户的使用感受。
Description
技术领域
本申请涉及终端设备技术领域,特别涉及一种基于终端设备的调度方法、装置、存储介质及终端设备。
背景技术
随着计算机技术的不断发展,手机、平板电脑、台式电脑等电子设备上安装的软件越来越多,进而软件对电子设备上资源(例如,CPU、存储器Memory、IO等)的争夺越来越激烈。由此,当软件在电子设备上运行时,由于各种任务的抢占导致电子设备经常出现卡顿或运行较慢等现象,给用户使用带来不便。
因而现有技术还有待改进和提高。
发明内容
本申请要解决的技术问题在于,针对现有技术的不足,提供一种基于终端设备的调度方法、装置、存储介质及终端设备。
为了解决上述技术问题,本申请实施例第一方面提供了一种基于终端设备的调度方法,所述方法包括:
获取调度任务中的绘制任务;
将获取到的绘制任务配置为最高优先级,并按照各调度任务各自对应的优先级调度各调度任务。
所述的基于终端设备的调度方法,其中,所述绘制任务包括绘制任务进程以及与绘制任务进程通信的任务进程。
所述的基于终端设备的调度方法,其中,所述将获取到的绘制任务配置为最高优先级具体包括:
将获取到的绘制任务存储于预先配置的绘制任务队列,其中,所述绘制任务队列配置有最高优先级,并且所述绘制任务队列配置有绝对公平调度算法。
所述的基于终端设备的调度方法,其中,所述绘制任务队列中的各绘制任务各自对应的优先级相同。
所述的基于终端设备的调度方法,其中,所述终端设备预先设置有绘制任务内存;所述将获取到的绘制任务配置为最高优先级,并按照各调度任务各自对应的优先级调度各调度任务之后,所述方法还包括:
当检测到绘制任务申请内存时,将所述绘制任务内存分配给所述绘制任务。
所述的基于终端设备的调度方法,其中,所述当检测到绘制任务申请内存时,将所述绘制任务内存分配给所述绘制任务具体包括:
当检测到绘制任务申请内存时,检测终端设备的内核是否处于内核锁状态;
若检测终端设备的内核处于内核锁状态,则将所述绘制任务传递至等待队列头部,并在终端设备的内核唤醒时优先将所述绘制任务内存分配给所述绘制任务。
所述的基于终端设备的调度方法,其中,所述终端设备预先配置有若干专用IO下发通道,所述若干专用IO下发通道中的每个专用IO下发通道均用于下发绘制任务的IO请求。
本申请实施例第二方面提供了一种调度装置,所述调度装置包括:
获取调度任务中的绘制任务;
将获取到的绘制任务配置为最高优先级,并按照各调度任务各自对应的优先级调度各调度任务。
本申请实施例第三方面提供了一种计算机可读存储介质,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现如上任一所述的基于终端设备的调度方法中的步骤。
本申请实施例第四方面提供了一种终端设备,其包括:处理器、存储器及通信总线;所述存储器上存储有可被所述处理器执行的计算机可读程序;
所述通信总线实现处理器和存储器之间的连接通信;
所述处理器执行所述计算机可读程序时实现如上任一所述的基于终端设备的调度方法中的步骤。
有益效果:与现有技术相比,本申请提供了一种基于终端设备的调度方法、装置、存储介质及终端设备,所述方法包括获取调度任务中的绘制任务;将获取到的绘制任务配置为最高优先级,并按照各调度任务各自对应的优先级调度各调度任务。本申请通过将调度任务中的绘制任务配置有最高优先级,使得终端设备可以优先调度绘制任务以保证绘制任务的执行时间,这样可以避免因终端设备后台的调度任务过多导致绘制任务调度延迟,进而导致的终端设备显示卡顿的问题,从而提高了用户的使用感受。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员而言,在不符创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请提供的基于终端设备的调度方法的流程图。
图2为本申请提供的调度装置的结构原理图
图3为本申请提供的终端设备的结构原理图。
具体实施方式
本申请提供一种基于终端设备的调度方法、装置、存储介质及终端设备,为使本申请的目的、技术方案及效果更加清楚、明确,以下参照附图并举实施例对本申请进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本申请,并不用于限定本申请。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本申请的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。
本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语),具有与本申请所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语,应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样被特定定义,否则不会用理想化或过于正式的含义来解释。
具体实现中,本申请实施例中描述的终端设备包括但不限于诸如具有触摸敏感表面(例如,触摸显示屏和/或触摸板)的移动电话,膝上形计算机或平板计算机之类的其他便携式设备。还应该理解的是,在某些实施例中,所述设备并非便携式通讯设备,而是具有触摸敏感表面(例如,触摸显示屏和/或触摸板)的台式计算机。
在接下来的讨论中,描述了包括显示器和触摸敏感表面的终端设备。然而,应当理解的是,终端设备还可以包括诸如物理键盘、鼠标和/或控制杆的一个或多个其他物理用户接口设备。
终端设备支持各种应用程序,例如以下中的一个或多个:绘图应用程序、演示应用程序、文字处理应用程序、视频会议应用程序、盘刻录应用程序、电子表格应用程序、游戏应用程序、电话应用程序、视频会议应用程序、电子邮件由于程序、即时消息收发应用程序、锻炼支持应用程序、照片管理应用程序、数据相机应用程序、数字摄像机应用程序、web浏览应用程序、数字音乐播放器应用程序和/或数字视频播放应用程序等。
可以在终端设备上执行的各种应用程序可以使用诸如触摸敏感表面的至少一个公共物理用户接口设备。可以在应用程序之间和/或相应应用程序内调整和/或改变触摸敏感表面的第一或多个功能以及终端上显示的相应信息。这样,终端的公共物理框架(例如,触摸敏感表面)可以支持具有对用户而言直观且透明的用户界面的各种应用程序。
应理解,本实施例中各步骤的序号和大小并不意味着执行顺序的先后,各过程的执行顺序以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
发明人经过研究发现,随着计算机技术的不断发展,手机、平板电脑、台式电脑等电子设备上安装的软件越来越多,进而软件对电子设备上资源(例如,CPU、存储器Memory、IO等)的争夺越来越激烈。由此,当软件在电子设备上运行时,由于各种任务的抢占导致电子设备经常出现卡顿或运行较慢等现象,给用户使用带来不便。
为了解决上述问题,在本申请实施例中,获取调度任务中的绘制任务;将获取到的绘制任务配置为最高优先级,并按照各调度任务各自对应的优先级调度各调度任务。本申请通过将调度任务中的绘制任务配置有最高优先级,使得终端设备可以优先调度绘制任务以保证绘制任务的执行时间,这样可以避免因终端设备后台的调度任务过多导致绘制任务调度延迟,进而导致的终端设备显示卡顿的问题,从而提高了用户的使用感受。
下面结合附图,通过对实施例的描述,对申请内容作进一步说明。
本实施例提供了一种基于终端设备的调度方法,如图1所示,所述方法包括:
S10、获取调度任务中的绘制任务。
具体地,绘制任务为用于执行绘制内容相关的任务进程,通过执行绘制任务来呈现界面,其中,所述绘制任务可以包括绘制任务进程以及与绘制任务进程通信的任务进程。绘制任务可以是终端设备用于响应用户感知操作所产生的任务线程,例如,用于在界面上绘制图像的任务线程等。所述终端设备设备配置有显示界面,例如,智能手机、平板电脑以及台式电脑等电子设备。此外,调度任务为处于后台的任务进程,并且处于后台的各任务进程的产生时间可以相同,也可以不相同。换句话说,终端设备中处于后台的所有任务进程均为调度任务,并且处于后台的所有任务进程中的部分任务进程的产生时间相同,部分任务进程的产生时间不相同。当然,在实际应用中,处于后台的所有任务进程中的各任务进程的产生时间可以互不相同,也可以全部相同等。
在本实施例的一个实现方式中,绘制任务可以携带有绘制标识,在获取调度任务中的绘制任务时,可以检测各调度任务是否携带绘制标识以得到调度任务中的绘制任务,其中,绘制标识可以在android框架层进行标记。所述标记过程具体可以为:在android框架层对用于执行用户感知操作的绘制进程进行判别,并对识别到的绘制进程进行标记以使得绘制进程携带有绘制标识,其中,标记有绘制标识的绘制进程为绘制任务。此外,在对识别到的绘制进程进行标记后,可以将标记后的绘制进程维护到内核的task_struct中以便于快速确定调度任务中的绘制任务。
在本实施例的一个实现方式中,由于绘制任务在执行过程中可能会与其它线程进行通信,以通过其他进程配合绘制线程实现绘制任务。由此,在将标记后的绘制任务维护到内核的task_struct中,还可以实时监听task_struct中的各绘制任务是否进行跨进程通信;当绘制任务进行跨进程通信时,将绘制任务的绘制标识传递到对方进程,并且将对方进程维护到task_struct内,且将对方进程标记为绘制任务(即标记对方进程以使得对方进程携带绘制标识),这样将与绘制进程通信的服务进程也作为绘制任务,可以提高用户感知操作的响应速度,从而减少用户感知的延迟和卡顿。
S20、将获取到的绘制任务配置为最高优先级,并按照各调度任务各自对应的优先级调度各调度任务。
具体地,优先级用于反映调度任务被优先调度的程度,优先级越高调度任务被优先调度的程度越高,反之,优先级越低调度任务被优先执行的程度越低。例如,调度任务A和调度任务B,调度任务A的优先级高于调度任务B的优先级,那么调度任务A先于调度任务B被调度。基于此,将绘制任务配置为最高优先级,这样绘制任务会被最先调度,从而可以避免因其他任务调度所消耗的时间而造成的绘制任务延迟,进而可以避免通过绘制任务成为的显示界面卡顿的问题。在本实施例的一个实现方式中,获取到的绘制任务可以为若干个绘制任务,若干绘制任务中的各绘制任务各自对应的优先级相同,均配置为最高优先级。例如,若干绘制任务包括绘制任务A、绘制任务B以及绘制任务C,那么绘制任务A的优先级、绘制任务B的优先级以及绘制任务C的优先级相同,均为最高优先级。
在本实施例的一个实现方式中,所述将获取到的绘制任务配置为最高优先级具体包括:
将获取到的绘制任务存储于预先配置的绘制任务队列。
具体地,绘制任务队列为预先建立的,用于存储绘制任务;换句话说,绘制任务队列中仅存储有绘制任务,每个绘制任务均存储于该绘制任务队列中,并且绘制任务队列中的每个任务均为绘制任务。所述绘制任务队列配置有最高优先级,并且存储于该绘制任务队列中的每个绘制任务均配置有最高优先级,这样即可以使得各绘制任务配置有最高优先级,又可以使得各绘制任务各自对应的优先级相同。终端设备的内核在调度任务进程时,会优先检测绘制任务队列中是否存储有绘制任务,若绘制任务队列中存储有绘制任务,内核会优先调度绘制任务队列中的绘制任务;若绘制任务队列中未存储有绘制任务,内核会按照正常调度处于后台的调度任务。换句话说,绘制任务会先于非绘制任务被调度,以使得终端设备可以优先执行绘制任务,进而提高绘制任务的响应时间,从而提高用户感知操作的响应时间,降低用户感受的卡顿和延迟。
所述绘制任务队列配置有绝对公平调度算法,以通过绝对公平调度算法来调度绘制任务队列中的绘制任务。可以理解的是,当内核调度绘制任务队中的绘制任务时,会采用该绝对公平调度算法从绘制任务队列中选取绘制任务,以实现多个绘制任务的调度。这样通过采用绝对公平调度算法优先调度绘制任务队列中选取绘制任务,可以使得同时活跃的前台绘制任务数量相对固定,从而可以降低用户感知操作对应的绘制任务的调度时间,从而可以降低用户感知操作的延迟。例如,绘制任务队列包括绘制任务a、绘制任务b以及绘制任务c,那么终端设备会基于绝对公平调度算法来确定绘制任务a、绘制任务b以及绘制任务c的调度顺序,并按照该调度顺序调度绘制任务a、绘制任务b以及绘制任务c,以及在绘制任务a、绘制任务b以及绘制任务c调度完成后,再调度所有调度任务中的非绘制任务。
在本实施例的一个实现方式中,为了提高绘制任务的响应速度,可以预先为绘制任务预留内存空间,当绘制任务需要调度内存时,可以直接将预留内存空间分配给绘制任务。由此,终端设备可以预先设置绘制任务内存,绘制任务内存用于分配给绘制任务。相应的,所述将获取到的绘制任务配置最高优先级,并按照各调度任务各自对应的优先级调度各调度任务之后,所述方法还包括:
当检测到绘制任务申请内存时,将所述绘制任务内存分配给所述绘制任务。
具体地,在终端设备的内核运行绘制任务时,会实时检测绘制任务是否申请内存,当绘制任务申请内存时,直接将绘制任务内存中的空余内存分配给绘制任务,这样内核在为绘制任务分配内存时,可以跳过内存路径查询过程,避免查询内存路径所花费的时间,从而可以提高绘制任务所需内存的分配速度,从而可以进一步降低用户感知操作的延迟,提高用户的使用感受。在本实施例的一个实现方式中,所述绘制任务内存可以配置有绘制任务标识,当内核需要为绘制任务配置任务时,调用标记有绘制任务标识的绘制任务内存,这样内核可以快速确定绘制任务内存,提高绘制任务内存分配速度。
在本实施例的一个实现方式中,所述当检测到绘制任务申请内存时,将所述绘制任务内存分配给所述绘制任务具体包括:
当检测到绘制任务申请内存时,检测终端设备的内核是否处于内核锁状态;
若检测终端设备的内核处于内核锁状态,则将所述绘制任务传递至等待队列头部,并在终端设备的内核唤醒时优先将所述绘制任务内存分配给所述绘制任务;
若未处于锁等待状态,则将所述绘制任务内存分配给所述绘制任务。
具体地,所述锁等待状态指的是终端设备的内核发生锁等待,并且当内核发生锁等待时,终端设备的内核不进行内存分配。此外,需要申请内存的各任务进程需要排队等待内核唤醒(即,解除锁等待状态)后,当内核唤醒后,内核会按照排队顺序依次为各任务进程分配内存。在本实施例中,在绘制任务需要内存分配且内核发送锁等待时,将将所述绘制任务传递至等待队列头部,以使得在锁等待状态唤醒时优先将所述绘制任务内存分配给所述绘制任务,减少绘制任务等待时间,从而可以保证绘制任务内存分配速度。在本实施例的一个具体实现方式中,在内核发生锁等待时,可以通过android的虚拟机ART,通知到内核(mutex/rwsem/futex)接口传递给内核锁的持有者,将绘制任务添加到等待队列的头部,当内核锁唤醒时,等待队列中具有绘制线程标识的绘制任务会优先唤醒,从而可以保证绘制任务优先获得资源。
在本实施例的一个实现方式中,所述终端设备预先配置有若干专用IO下发通道,所述若干专用IO下发通道中的每个专用IO下发通道均用于下发绘制任务的IO请求。可以理解的是,终端设备预先配置若干绘制任务专用的专用IO下发通道,每个专用IO下发通道仅用于绘制任务的IO下发,这样可以避免绘制任务的IO下发因IO下发通道队列满而阻塞。例如,终端设备包括IO下发通道1、IO下发通道2、IO下发通道3以及IO下发通道4,将IO下发通道1作为绘制任务对应的专用IO下发通道,当接收到绘制任务的IO请求时,通过IO下发通道1下发该绘制任务的IO请求。此外,可以为绘制任务对应的IO请求配置绘制标志,以使得绘制任务对应的IO请求携带有绘制标志,这样可以快速确定绘制任务对应的IO请求,并通过若干专用IO下发通道来下发IO请求,从而可以提高绘制任务的响应速度。
在本实施例的一个实现方式中,在通过若干专用IO下发通道来下发IO请求,可以检测各专用IO下发通道对应的请求队列中的任务数量,以选取任务数量最少的专用IO下发通道来下发绘制任务。此外,在检测各专用IO下发通道对应的请求队列中的任务数量的同时,还可以检测终端装置配置的其它IO下发通道对应的请求队列中的任务数量,若干其它IO下发通道中存在请求队列中的任务数量小于专用IO下发通道对应的请求队列中的任务数量的目标下发通道时,可以通过目标下发通道来下发绘制任务的IO请求。当然,在实际应用中,也可以在各专用IO下发通道对应的请求队列中的任务数量均达到预设阈值时,将绘制任务的IO请求插入其它IO下发通道对应的请求队列的队列最前方,以提高该绘制任务的IO请求的响应速度。
举例说明:终端设备包括IO下发通道1、IO下发通道2、IO下发通道3以及IO下发通道4,将IO下发通道1作为绘制任务对应的专用IO下发通道,IO下发通道1对应的请求队列a包括2个IO请求,IO下发通道2对应的请求队列b包括1个IO请求,IO下发通道3对应的请求队列c包括4个IO请求,IO下发通道4对应的请求队列c包括4个IO请求,那么可以将绘制任务的IO请求添加到IO下发通道2对应的请求队列b,以通过IO下发通道2来下发绘制任务的IO请求。又如,IO下发通道2对应的请求队列b包括3个IO请求,其他请求队列包括的IO请求的数量不变,那么可以通过专用IO下发通道来下发绘制任务的IO请求,也可以将绘制任务的IO请求插入请求队列b、请求队列c或者请求队列d中的一个目标请求队列的队首,以通过目标请求队列对应的IO下发通道来下发绘制任务的IO请求。
为了进一步说明本实施例提供的基于终端设备的调度方法,本实施例对本实施例提供的基于终端设备的调度方法进行测试,具体测试项目以及测试结果如表1所示。
表1测试项目以及测试结果
由表1可以知道,终端设备通过平均每一帧的绘制耗时小于16.6ms的场景下,系统才能够达到60fps的绘制帧率,使用起来会比较流畅,可以看到在1和3两种场景下,终端设备的系统绘制都超过了16.6ms,已经处于30fps的低帧率模式。在当终端设备应用本实施例提供的基于终端设备的调度方法后,系统绘制帧率达到60fps,平均帧绘制时间缩短20%。
综上所述,本实施例提供了一种基于终端设备的调度方法,所述方法包括获取调度任务中的绘制任务;将获取到的绘制任务配置为最高优先级,并按照各调度任务各自对应的优先级调度各调度任务。本申请通过将调度任务中的绘制任务配置有最高优先级,使得终端设备可以优先调度绘制任务以保证绘制任务的执行时间,这样可以避免因终端设备后台的调度任务过多导致绘制任务调度延迟,进而导致的终端设备显示卡顿的问题,从而提高了用户的使用感受。
基于上述基于终端设备的调度方法,本实施例提供了一种调度装置,如图2所示,所述调度装置包括:
获取模块100,用于获取调度任务中的绘制任务;
调度模块200,用于将获取到的绘制任务配置为最高优先级,并按照各调度任务各自对应的优先级调度各调度任务。
在一个实施例中,所述绘制任务包括绘制任务进程以及与绘制任务进程通信的任务进程。
在一个实施例中,所述调度模块具体用于:
将获取到的绘制任务存储于预先配置的绘制任务队列,其中,所述绘制任务队列配置有最高优先级,并且所述绘制任务队列配置有绝对公平调度算法。
在一个实施例中,所述绘制任务队列中的各绘制任务各自对应的优先级相同。
在一个实施例中,所述终端设备预先设置有绘制任务内存;所述调度装置还包括分配模块,所述分配模块用于当检测到绘制任务申请内存时,将所述绘制任务内存分配给所述绘制任务。
在一个实施例中,所述分配模块具体用于:
当检测到绘制任务申请内存时,检测终端设备的内核是否处于内核锁状态;若检测终端设备的内核处于内核锁状态,则将所述绘制任务传递至等待队列头部,并在终端设备的内核唤醒时优先将所述绘制任务内存分配给所述绘制任务。
在一个实施例中,所述终端设备预先配置有若干专用IO下发通道,所述若干专用IO下发通道中的每个专用IO下发通道均用于下发绘制任务的IO请求。
基于上述基于终端设备的调度方法,本实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现如上述实施例所述的基于终端设备的调度方法中的步骤。
基于上述基于终端设备的调度方法,本申请还提供了一种终端设备,如图3所示,其包括至少一个处理器(processor)20;显示屏21;以及存储器(memory)22,还可以包括通信接口(Communications Interface)23和总线24。其中,处理器20、显示屏21、存储器22和通信接口23可以通过总线24完成相互间的通信。显示屏21设置为显示初始设置模式中预设的用户引导界面。通信接口23可以传输信息。处理器20可以调用存储器22中的逻辑指令,以执行上述实施例中的方法。
此外,上述的存储器22中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。
存储器22作为一种计算机可读存储介质,可设置为存储软件程序、计算机可执行程序,如本公开实施例中的方法对应的程序指令或模块。处理器20通过运行存储在存储器22中的软件程序、指令或模块,从而执行功能应用以及数据处理,即实现上述实施例中的方法。
存储器22可包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端设备的使用所创建的数据等。此外,存储器22可以包括高速随机存取存储器,还可以包括非易失性存储器。例如,U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等多种可以存储程序代码的介质,也可以是暂态存储介质。
此外,上述存储介质以及移动终端中的多条指令处理器加载并执行的具体过程在上述方法中已经详细说明,在这里就不再一一陈述。
最后应说明的是:以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。
Claims (10)
1.一种基于终端设备的调度方法,其特征在于,所述方法包括:
获取调度任务中的绘制任务;
将获取到的绘制任务配置为最高优先级,并按照各调度任务各自对应的优先级调度各调度任务。
2.根据权利要求1所述的基于终端设备的调度方法,其特征在于,所述绘制任务包括绘制任务进程以及与绘制任务进程通信的任务进程。
3.根据权利要求1所述的基于终端设备的调度方法,其特征在于,所述将获取到的绘制任务配置为最高优先级具体包括:
将获取到的绘制任务存储于预先配置的绘制任务队列,其中,所述绘制任务队列配置有最高优先级,并且所述绘制任务队列配置有绝对公平调度算法。
4.根据权利要求3所述的基于终端设备的调度方法,其特征在于,所述绘制任务队列中的各绘制任务各自对应的优先级相同。
5.根据权利要求1所述的基于终端设备的调度方法,其特征在于,所述终端设备预先设置有绘制任务内存;所述将获取到的绘制任务配置为最高优先级,并按照各调度任务各自对应的优先级调度各调度任务之后,所述方法还包括:
当检测到绘制任务申请内存时,将所述绘制任务内存分配给所述绘制任务。
6.根据权利要求1所述的基于终端设备的调度方法,其特征在于,所述当检测到绘制任务申请内存时,将所述绘制任务内存分配给所述绘制任务具体包括:
当检测到绘制任务申请内存时,检测终端设备的内核是否处于内核锁状态;
若检测终端设备的内核处于内核锁状态,则将所述绘制任务传递至等待队列头部,并在终端设备的内核唤醒时优先将所述绘制任务内存分配给所述绘制任务。
7.根据权利要求1所述的基于终端设备的调度方法,其特征在于,所述终端设备预先配置有若干专用IO下发通道,所述若干专用IO下发通道中的每个专用IO下发通道均用于下发绘制任务的IO请求。
8.一种调度装置,其特征在于,所述调度装置包括:
获取调度任务中的绘制任务;
将获取到的绘制任务配置为最高优先级,并按照各调度任务各自对应的优先级调度各调度任务。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现如权利要求1-7任意一项所述的基于终端设备的调度方法中的步骤。
10.一种终端设备,其特征在于,包括:处理器、存储器及通信总线;所述存储器上存储有可被所述处理器执行的计算机可读程序;
所述通信总线实现处理器和存储器之间的连接通信;
所述处理器执行所述计算机可读程序时实现如权利要求1-7任意一项所述的基于终端设备的调度方法中的步骤。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110084232.XA CN112799805B (zh) | 2021-01-21 | 2021-01-21 | 基于终端设备的调度方法、装置、存储介质及终端设备 |
PCT/CN2022/072220 WO2022156612A1 (zh) | 2021-01-21 | 2022-01-17 | 基于终端设备的调度方法、装置、存储介质及终端设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110084232.XA CN112799805B (zh) | 2021-01-21 | 2021-01-21 | 基于终端设备的调度方法、装置、存储介质及终端设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112799805A true CN112799805A (zh) | 2021-05-14 |
CN112799805B CN112799805B (zh) | 2024-09-06 |
Family
ID=75811115
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110084232.XA Active CN112799805B (zh) | 2021-01-21 | 2021-01-21 | 基于终端设备的调度方法、装置、存储介质及终端设备 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN112799805B (zh) |
WO (1) | WO2022156612A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022156612A1 (zh) * | 2021-01-21 | 2022-07-28 | 惠州Tcl移动通信有限公司 | 基于终端设备的调度方法、装置、存储介质及终端设备 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060294522A1 (en) * | 2005-06-27 | 2006-12-28 | Microsoft Corporation | Class scheduler |
JP2007080020A (ja) * | 2005-09-15 | 2007-03-29 | Matsushita Electric Ind Co Ltd | ステンシルによるウィンドウ処理装置及び方法 |
US9250953B2 (en) * | 2013-11-12 | 2016-02-02 | Oxide Interactive Llc | Organizing tasks by a hierarchical task scheduler for execution in a multi-threaded processing system |
CN107273130A (zh) * | 2017-06-20 | 2017-10-20 | 深圳市万普拉斯科技有限公司 | 加速界面绘制的方法、装置和终端 |
US20170329729A1 (en) * | 2016-05-13 | 2017-11-16 | Intel Corporation | Callback interrupt handling for multi-threaded applications in computing environments |
CN109284179A (zh) * | 2018-08-07 | 2019-01-29 | 北京达佳互联信息技术有限公司 | 解决应用程序卡顿的方法、装置、电子设备及存储介质 |
CN109840144A (zh) * | 2018-12-28 | 2019-06-04 | 航天信息股份有限公司 | 一种针对跨机构批量服务请求的信息服务调度方法及系统 |
CN110162418A (zh) * | 2019-05-30 | 2019-08-23 | 努比亚技术有限公司 | 应用冷启动方法、移动终端及计算机可读存储介质 |
CN111813536A (zh) * | 2019-04-11 | 2020-10-23 | 华为技术有限公司 | 任务处理方法、装置、终端以及计算机可读存储介质 |
CN111831410A (zh) * | 2020-07-01 | 2020-10-27 | Oppo广东移动通信有限公司 | 任务处理方法、装置、存储介质及电子设备 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9582326B2 (en) * | 2014-05-30 | 2017-02-28 | Apple Inc. | Quality of service classes |
CN106990946A (zh) * | 2016-01-21 | 2017-07-28 | 阿里巴巴集团控股有限公司 | 一种界面处理方法、装置和智能终端 |
CN112799805B (zh) * | 2021-01-21 | 2024-09-06 | 惠州Tcl移动通信有限公司 | 基于终端设备的调度方法、装置、存储介质及终端设备 |
-
2021
- 2021-01-21 CN CN202110084232.XA patent/CN112799805B/zh active Active
-
2022
- 2022-01-17 WO PCT/CN2022/072220 patent/WO2022156612A1/zh active Application Filing
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060294522A1 (en) * | 2005-06-27 | 2006-12-28 | Microsoft Corporation | Class scheduler |
JP2007080020A (ja) * | 2005-09-15 | 2007-03-29 | Matsushita Electric Ind Co Ltd | ステンシルによるウィンドウ処理装置及び方法 |
US9250953B2 (en) * | 2013-11-12 | 2016-02-02 | Oxide Interactive Llc | Organizing tasks by a hierarchical task scheduler for execution in a multi-threaded processing system |
US20170329729A1 (en) * | 2016-05-13 | 2017-11-16 | Intel Corporation | Callback interrupt handling for multi-threaded applications in computing environments |
CN107273130A (zh) * | 2017-06-20 | 2017-10-20 | 深圳市万普拉斯科技有限公司 | 加速界面绘制的方法、装置和终端 |
CN109284179A (zh) * | 2018-08-07 | 2019-01-29 | 北京达佳互联信息技术有限公司 | 解决应用程序卡顿的方法、装置、电子设备及存储介质 |
CN109840144A (zh) * | 2018-12-28 | 2019-06-04 | 航天信息股份有限公司 | 一种针对跨机构批量服务请求的信息服务调度方法及系统 |
CN111813536A (zh) * | 2019-04-11 | 2020-10-23 | 华为技术有限公司 | 任务处理方法、装置、终端以及计算机可读存储介质 |
CN110162418A (zh) * | 2019-05-30 | 2019-08-23 | 努比亚技术有限公司 | 应用冷启动方法、移动终端及计算机可读存储介质 |
CN111831410A (zh) * | 2020-07-01 | 2020-10-27 | Oppo广东移动通信有限公司 | 任务处理方法、装置、存储介质及电子设备 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022156612A1 (zh) * | 2021-01-21 | 2022-07-28 | 惠州Tcl移动通信有限公司 | 基于终端设备的调度方法、装置、存储介质及终端设备 |
Also Published As
Publication number | Publication date |
---|---|
WO2022156612A1 (zh) | 2022-07-28 |
CN112799805B (zh) | 2024-09-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10628216B2 (en) | I/O request scheduling method and apparatus by adjusting queue depth associated with storage device based on hige or low priority status | |
CN110489213B (zh) | 一种任务处理方法及处理装置、计算机系统 | |
US20190155656A1 (en) | Method and system for scheduling threads for execution | |
US9135059B2 (en) | Opportunistic multitasking | |
WO2021098182A1 (zh) | 资源管理方法和装置、电子设备及存储介质 | |
US11100604B2 (en) | Multiple application cooperative frame-based GPU scheduling | |
US20190188030A1 (en) | Terminal background application management method and apparatus | |
CN110532100B (zh) | 调度资源的方法、装置、终端及存储介质 | |
CN111831410A (zh) | 任务处理方法、装置、存储介质及电子设备 | |
CN109656691A (zh) | 计算资源的处理方法、装置以及电子设备 | |
CN111124668A (zh) | 内存释放方法、装置、存储介质及终端 | |
CN101625650B (zh) | 具有包括多个内核的处理器的计算机系统及其控制方法 | |
JP6372262B2 (ja) | 印刷装置、およびプログラム | |
CN112799805B (zh) | 基于终端设备的调度方法、装置、存储介质及终端设备 | |
CN115756866A (zh) | 负载均衡方法、装置及存储介质 | |
CN111767138A (zh) | 资源分配方法、存储介质和电子设备 | |
CN110955644A (zh) | 一种存储系统的io控制方法、装置、设备及存储介质 | |
CN117742953A (zh) | Io调度方法及设备 | |
CN105474175B (zh) | 分配和调度用于多个队列的计算机、制造品和方法 | |
CN115599554A (zh) | 一种gpgpu资源分配方法、装置、设备及存储介质 | |
CN113076138A (zh) | 一种NVMe命令处理方法、设备及介质 | |
AU2013205570A1 (en) | Opportunistic multitasking |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |