CN117950846A - 资源调度方法及相关装置 - Google Patents
资源调度方法及相关装置 Download PDFInfo
- Publication number
- CN117950846A CN117950846A CN202211340725.6A CN202211340725A CN117950846A CN 117950846 A CN117950846 A CN 117950846A CN 202211340725 A CN202211340725 A CN 202211340725A CN 117950846 A CN117950846 A CN 117950846A
- Authority
- CN
- China
- Prior art keywords
- foreground application
- foreground
- application program
- electronic device
- user interface
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 47
- 230000008859 change Effects 0.000 claims abstract description 42
- 239000013598 vector Substances 0.000 claims description 29
- 238000004590 computer program Methods 0.000 claims description 6
- 238000004891 communication Methods 0.000 description 30
- 230000006854 communication Effects 0.000 description 30
- 239000010410 layer Substances 0.000 description 18
- 230000006870 function Effects 0.000 description 17
- 238000007726 management method Methods 0.000 description 17
- 238000012545 processing Methods 0.000 description 17
- 238000010586 diagram Methods 0.000 description 14
- 238000010295 mobile communication Methods 0.000 description 12
- 230000009286 beneficial effect Effects 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 6
- 238000012544 monitoring process Methods 0.000 description 6
- 230000005236 sound signal Effects 0.000 description 6
- 238000001514 detection method Methods 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 4
- 238000013468 resource allocation Methods 0.000 description 4
- 230000000007 visual effect Effects 0.000 description 4
- 238000013528 artificial neural network Methods 0.000 description 3
- 230000002349 favourable effect Effects 0.000 description 3
- 238000007667 floating Methods 0.000 description 3
- 229920001621 AMOLED Polymers 0.000 description 2
- 230000003416 augmentation Effects 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000007774 longterm Effects 0.000 description 2
- 238000009877 rendering Methods 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000007175 bidirectional communication Effects 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 238000013529 biological neural network Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 210000000988 bone and bone Anatomy 0.000 description 1
- 210000004556 brain Anatomy 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 210000004027 cell Anatomy 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 239000012792 core layer Substances 0.000 description 1
- 239000013078 crystal Substances 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000004069 differentiation Effects 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 230000036541 health Effects 0.000 description 1
- 230000001939 inductive effect Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000004807 localization Effects 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 229910044991 metal oxide Inorganic materials 0.000 description 1
- 150000004706 metal oxides Chemical class 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 210000002569 neuron Anatomy 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 239000002096 quantum dot Substances 0.000 description 1
- 230000005855 radiation Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 238000012384 transportation and delivery Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 1
Landscapes
- User Interface Of Digital Computer (AREA)
Abstract
本申请实施例提供了一种资源调度方法及相关装置,该方法中,电子设备可根据多个前台应用程序中每个前台应用程序的关注度,确定每个前台应用程序的资源调度优先级;根据每个前台应用程序的资源调度优先级,为多个前台应用程序调度资源。其中,前台应用程序的关注度是根据以下一项或多项确定的:前台应用程序的用户界面在电子设备的屏幕中的显示区域与第一区域的重叠范围、前台应用程序的用户界面中显示画面的信息量、显示画面的变动幅度、显示画面的亮度变化幅度、显示画面的播放热度,第一区域是用户眼睛在屏幕中聚焦的区域,从而电子设备能够确定或预测用户关注的前台应用程序,进而优先满足该前台应用程序的资源调度,提高用户体验。
Description
技术领域
本申请涉及电子技术领域,尤其涉及一种资源调度方法及相关装置。
背景技术
随着系统、硬件升级以及应用技术的发展,电子设备可以同时显示多个应用程序的用户画面,这些应用程序可称为前台应用程序。也就是说,存在多个前台应用程序叠加的场景,例如,电子设备的屏幕可以被划分为多个分屏区域,每个分屏区域中显示多个前台应用程序中一个前台应用程序的用户界面。又例如,电子设备针对多个前台应用程序中部分前台应用程序的用户界面进行悬浮窗显示。
电子设备可对应用程序进行分组,按照各组的资源调度优先级为组内的应用程序调度资源。分组包括:顶级应用程序(top application,top-app)、前景(foreground)和背景(background);其中,top-app的资源调度优先级≥foreground的资源调度优先级≥background的资源调度优先级。电子设备可将前台应用程序划分至top-app这一组,以优先为前台应用程序调度资源。
在多个前台应用程序叠加的场景下,所有前台应用程序均会被划分至top-app这一组。但是在资源有限的情况下,采用这一方式,所有前台应用程序的资源调度优先级相同,电子设备为每个前台应用程序调度的资源基本相同,可能会使得部分需要较多资源的前台应用程序实际被调度的资源不足而影响该前台应用程序的用户界面,导致用户体验差。
发明内容
本申请实施例提供了一种资源调度方法及相关装置,能够优先满足用户关注的前台应用程序的资源调度,提高用户体验。
第一方面,本申请实施例提供一种资源调度方法,该方法中,电子设备根据多个前台应用程序中每个前台应用程序的关注度,确定每个前台应用程序的资源调度优先级;多个前台应用程序的用户界面均显示于电子设备的屏幕中。前台应用程序的关注度是根据以下一项或多项确定的:前台应用程序的用户界面在电子设备的屏幕中的显示区域与第一区域的重叠范围、前台应用程序的用户界面中显示画面的信息量、显示画面的变动幅度、显示画面的亮度变化幅度、显示画面的播放热度;第一区域是用户眼睛在屏幕中聚焦的区域。电子设备根据多个前台应用程序中每个前台应用程序的资源调度优先级,为多个前台应用程序调度资源。
一般来说,显示画面的信息量、变动幅度、亮度变化幅度和播放热度中的一项或多项较大时,吸引到用户对该显示画面产生兴趣而进行关注的可能性较大;电子设备基于前台应用程序的用户界面中显示画面的信息量、显示画面的变动幅度、显示画面的亮度变化幅度、显示画面的播放热度中的一项或多项确定前台应用程序的关注度的方式,能够预测用户是否可能会关注该前台应用程序的用户界面,有利于在预测到用户可能关注该前台应用程序的用户界面时提高该前台应用程序能的资源调度优先级,进而优先满足该前台应用程序的资源调度,以保证该前台应用程序的用户界面中显示画面能够流畅显示,提高用户体验。
另外,屏幕中用户眼睛聚焦的区域可以反映屏幕中用户实际关注的区域,电子设备基于用户眼睛聚焦的区域和前台应用程序的用户界面在屏幕上的显示区域来确定前台应用程序的关注度时该方法有利于电子设备确定用户关注的前台应用程序,进而电子设备能够优先满足用户关注的前台应用程序的资源调度,以保证用户关注的前台应用程序的用户界面中显示画面能够流畅显示,提高用户体验。
在一种可选的实施方式中,多个前台应用程序包括用户界面中显示画面变动的第一应用程序。
在一种可选的实施方式中,前台应用程序的用户界面中显示画面是采用动态比特率(variable bit rate,VBR)编码的;前台应用程序的用户界面中显示画面的信息量是根据该显示画面的码率确定的。码率的大小可以反映信息量的大小,前台应用程序的用户界面中显示画面的码率越大说明显示画面的信息量越大,越可能吸引用户的关注,有利于电子设备在预测到用户可能关注某前台应用程序的用户界面时优先满足该前台应用程序的资源调度,提高用户体验。
在一种可选的实施方式中,前台应用程序的用户界面中显示画面是采用VBR编码的;前台应用程序的用户界面中显示画面的变动幅度是根据该显示画面的码率变化率确定的。码率变化率的大小可以反映显示画面的变动幅度的大小,前台应用程序的用户界面中显示画面的码率变化率越大说明显示画面的变动幅度越大,越可能吸引用户的关注,有利于电子设备在预测到用户可能关注某前台应用程序的用户界面时优先满足该前台应用程序的资源调度,提高用户体验。
在一种可选的实施方式中,前台应用程序的用户界面中显示画面的变动幅度是根据该显示画面中点位的运动向量确定的。显示画面中点位的运动向量的大小可以反映显示画面的变动幅度的大小,前台应用程序的用户界面中显示画面中点位的运动向量的向量值越大说明显示画面的变动幅度越大,越可能吸引用户的关注,有利于电子设备在预测到用户可能关注某前台应用程序的用户界面时优先满足该前台应用程序的资源调度,提高用户体验。
在一种可选的实施方式中,前台应用程序的用户界面中的显示画面是电子设备基于接收的来自服务器的数据流显示的;前台应用程序的用户界面中显示画面的播放热度是根据该显示画面的播放频次确定的。在前台应用程序的用户界面中显示画面是在线播放的情况下,显示画面的播放频次能够反映历史上用户实际关注了该显示画面的频率和次数,有利于电子设备能够预测某前台应用程序的用户界面中用户可能关注到的显示画面,进而在此时优先满足该前台应用程序的资源调度,提高用户体验。
在一种可选的实施方式中,多个前台应用程序包括第二应用程序和第三应用程序,第二应用程序的关注度高于第三应用程序的关注度;第二应用程序的资源调度优先级高于第三应用程序的源调度优先级。
第二方面,本申请实施例提供了一种电子设备,该电子设备包括:一个或多个处理器和存储器;该存储器与该一个或多个处理器耦合,该存储器用于存储计算机程序代码,该计算机程序代码包括计算机指令,该一个或多个处理器调用该计算机指令以使得该电子设备执行:
根据多个前台应用程序中每个前台应用程序的关注度,确定每个前台应用程序的资源调度优先级;多个前台应用程序的用户界面均显示于电子设备的屏幕中。前台应用程序的关注度是根据以下一项或多项确定的:前台应用程序的用户界面在电子设备的屏幕中的显示区域与第一区域的重叠范围、前台应用程序的用户界面中显示画面的信息量、显示画面的变动幅度、显示画面的亮度变化幅度、显示画面的播放热度;第一区域是用户眼睛在屏幕中聚焦的区域。根据多个前台应用程序中每个前台应用程序的资源调度优先级,为多个前台应用程序调度资源。
在一种可选的实施方式中,多个前台应用程序包括用户界面中显示画面变动的第一应用程序。
在一种可选的实施方式中,前台应用程序的用户界面中显示画面是采用VBR编码的;前台应用程序的用户界面中显示画面的信息量是根据该显示画面的码率确定的。
在一种可选的实施方式中,前台应用程序的用户界面中显示画面是采用VBR编码的;前台应用程序的用户界面中显示画面的变动幅度是根据该显示画面的码率变化率确定的。
在一种可选的实施方式中,前台应用程序的用户界面中显示画面的变动幅度是根据该显示画面中点位的运动向量确定的。
在一种可选的实施方式中,前台应用程序的用户界面中的显示画面是电子设备基于接收的来自服务器的数据流显示的;前台应用程序的用户界面中显示画面的播放热度是根据该显示画面的播放频次确定的。
在一种可选的实施方式中,多个前台应用程序包括第二应用程序和第三应用程序,第二应用程序的关注度高于第三应用程序的关注度;第二应用程序的资源调度优先级高于第三应用程序的源调度优先级。
第三方面,本申请实施例提供了一种芯片系统,该芯片系统应用于电子设备,该芯片系统包括一个或多个处理器,该处理器用于调用计算机指令以使得该电子设备执行如第一方面以及第一方面中任一可能的实现方式描述的方法。
第四方面,本申请实施例提供一种包含指令的计算机程序产品,当上述计算机程序产品在电子设备上运行时,使得上述电子设备执行如第一方面以及第一方面中任一可能的实现方式描述的方法。
第五方面,本申请实施例提供一种计算机可读存储介质,包括指令,当上述指令在电子设备上运行时,使得上述电子设备执行如第一方面以及第一方面中任一可能的实现方式描述的方法。
可以理解地,上述第二方面提供的电子设备、第三方面提供的芯片系统、第四方面提供的计算机程序产品和第五方面提供的计算机存储介质均用于执行本申请实施例所提供的方法。因此,其所能达到的有益效果可参考对应方法中的有益效果,此处不再赘述。
附图说明
图1为本申请实施例提供的一种电子设备100的结构示意图;
图2为本申请实施例提供的一种软件架构示意图;
图3为本申请实施例提供的一种通信系统的系统架构图;
图4为本申请实施例提供的一种界面示意图;
图5为本申请实施例提供的另一种界面示意图;
图6为本申请实施例提供的另一种界面示意图;
图7为本申请实施例提供的另一种界面示意图;
图8为本申请实施例提供的一种资源调度方法的流程示意图;
图9为本申请实施例提供的一种显示画面中点位的运动向量的示意图;
图10为本申请实施例提供的一种显示画面中点位的示意图;
图11为本申请实施例提供的另一种界面示意图;
图12为本申请实施例提供的另一种界面示意图;
图13为本申请实施例提供的一种电子设备200的结构示意图。
具体实施方式
本申请以下实施例中所使用的术语只是为了描述特定实施例的目的,而并非旨在作为对本申请的限制。如在本申请的说明书和所附权利要求书中所使用的那样,单数表达形式“一个”、“一种”、“所述”、“上述”、“该”和“这一”旨在也包括复数表达形式,除非其上下文中明确地有相反指示。还应当理解,本申请中使用的术语“和/或”是指并包含一个或多个所列出项目的任何或所有可能组合。
以下介绍了电子设备、用于这样的电子设备的用户界面、和用于使用这样的电子设备的实施例。在一些实施例中,电子设备可以是还包含其它功能诸如个人数字助理和/或音乐播放器功能的便携式电子设备,诸如手机、平板电脑、具备无线通讯功能的可穿戴电子设备(如智能手表)等。便携式电子设备的示例性实施例包括但不限于搭载 或者其它操作系统的便携式电子设备。上述便携式电子设备也可以是其它便携式电子设备,诸如具有触敏表面或触控面板的膝上型计算机(Laptop)等。还应当理解的是,在其他一些实施例中,上述电子设备也可以不是便携式电子设备,而是具有触敏表面或触控面板的台式计算机。
本申请的说明书和权利要求书及附图中的术语“用户界面(user interface,UI)”,是应用程序(application,APP)或操作系统与用户之间进行交互和信息交换的介质接口,它实现信息的内部形式与用户可以接受形式之间的转换。应用程序的用户界面是通过java、可扩展标记语言(extensible markup language,XML)等特定计算机语言编写的源代码,界面源代码在终端设备上经过解析,渲染,最终呈现为用户可以识别的内容,比如图片、文字、按钮等控件。控件(control)也称为部件(widget),是用户界面的基本元素,典型的控件有工具栏(toolbar)、菜单栏(menu bar)、文本框(text box)、按钮(button)、滚动条(scrollbar)、图片和文本。界面中的控件的属性和内容是通过标签或者节点来定义的,比如XML通过<Textview>、<ImgView>、<VideoView>等节点来规定界面所包含的控件。一个节点对应界面中一个控件或属性,节点经过解析和渲染之后呈现为用户可视的内容。此外,很多应用程序,比如混合应用(hybrid application)的界面中通常还包含有网页。网页,也称为页面,可以理解为内嵌在应用程序界面中的一个特殊的控件,网页是通过特定计算机语言编写的源代码,例如超文本标记语言(hyper text markup language,GTML),层叠样式表(cascading style sheets,CSS),java脚本(JavaScript,JS)等,网页源代码可以由浏览器或与浏览器功能类似的网页显示组件加载和显示为用户可识别的内容。网页所包含的具体内容也是通过网页源代码中的标签或者节点来定义的,比如GTML通过<p>、<img>、<video>、<canvas>来定义网页的元素和属性。
用户界面常用的表现形式是图形用户界面(graphic user interface,GUI),是指采用图形方式显示的与计算机操作相关的用户界面。它可以是在电子设备的显示屏中显示的一个图标、窗口、控件等界面元素,其中控件可以包括图标、按钮、菜单、选项卡、文本框、对话框、状态栏、导航栏、Widget等可视的界面元素。
首先介绍本申请以下实施例中提供的示例性电子设备100。
图1示出了电子设备100的结构示意图。
下面以电子设备100为例对实施例进行具体说明。应该理解的是,电子设备100可以具有比图中所示的更多的或者更少的部件,可以组合两个或多个的部件,或者可以具有不同的部件配置。图中所示出的各种部件可以在包括一个或多个信号处理和/或专用集成电路在内的硬件、软件、或硬件和软件的组合中实现。
电子设备100可以包括:处理器110,外部存储器接口120,内部存储器121,通用串行总线(universal serial bus,USB)接口130,充电管理模块140,电源管理模块141,电池142,天线1,天线2,移动通信模块150,无线通信模块160,音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,传感器模块180,按键190,马达191,指示器192,摄像头193,显示屏194,以及用户标识模块(subscriber identification module,SIM)卡接口195等。其中传感器模块180可以包括压力传感器180A,陀螺仪传感器180B,气压传感器180C,磁传感器180D,加速度传感器180E,距离传感器180F,接近光传感器180G,指纹传感器180H,温度传感器180J,触摸传感器180K,环境光传感器180L,骨传导传感器180M等。
可以理解的是,本发明实施例示意的结构并不构成对电子设备100的具体限定。在本申请另一些实施例中,电子设备100可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
处理器110可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processingunit,GPU),图像信号处理器(image signal processor,ISP),控制器,存储器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
其中,控制器可以是电子设备100的神经中枢和指挥中心。控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
处理器110中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器110中的存储器为高速缓冲存储器。该存储器可以保存处理器110刚用过或循环使用的指令或数据。如果处理器110需要再次使用该指令或数据,可从所述存储器中直接调用。避免了重复存取,减少了处理器110的等待时间,因而提高了系统的效率。
在一些实施例中,处理器110可以包括一个或多个接口。接口可以包括集成电路(inter-integrated circuit,I2C)接口,集成电路内置音频(inter-integrated circuitsound,I2S)接口,脉冲编码调制(pulse code modulation,PCM)接口,通用异步收发传输器(universal asynchronous receiver/transmitter,UART)接口,移动产业处理器接口(mobile industry processor interface,MIPI),通用输入输出(general-purposeinput/output,GPIO)接口,用户标识模块(subscriber identity module,SIM)接口,和/或通用串行总线(universal serial bus,USB)接口等。
其中,I2C接口是一种双向同步串行总线,包括一根串行数据线(serial dataline,SDA)和一根串行时钟线(derail clock line,SCL)。在一些实施例中,处理器110可以包含多组I2C总线。处理器110可以通过不同的I2C总线接口分别耦合触摸传感器180K,充电器,闪光灯,摄像头193等。例如:处理器110可以通过I2C接口耦合触摸传感器180K,使处理器110与触摸传感器180K通过I2C总线接口通信,实现电子设备的触摸功能。
I2S接口可以用于音频通信。PCM接口也可以用于音频通信,将模拟信号抽样,量化和编码。UART接口是一种通用串行数据总线,用于异步通信。该总线可以为双向通信总线。它将要传输的数据在串行通信与并行通信之间转换。MIPI接口可以被用于连接处理器110与显示屏194,摄像头193等外围器件。MIPI接口包括摄像头串行接口(camera serialinterface,CSI),显示屏串行接口(display serial interface,DSI)等。
GPIO接口可以通过软件配置。GPIO接口可以被配置为控制信号,也可被配置为数据信号。GPIO接口还可以被配置为I2C接口,I2S接口,UART接口,MIPI接口等。
USB接口130是符合USB标准规范的接口,具体可以是Mini USB接口,Micro USB接口,USB Type C接口等。
可以理解的是,本发明实施例示意的各模块间的接口连接关系,只是示意性说明,并不构成对电子设备100的结构限定。在本申请另一些实施例中,电子设备100也可以采用上述实施例中不同的接口连接方式,或多种接口连接方式的组合。
充电管理模块140用于从充电器接收充电输入。其中,充电器可以是无线充电器,也可以是有线充电器。
电源管理模块141用于连接电池142,充电管理模块140与处理器110。电源管理模块141接收电池142和/或充电管理模块140的输入,为处理器110,内部存储器121,外部存储器,显示屏194,摄像头193,和无线通信模块160等供电。电源管理模块141还可以用于监测电池容量,电池循环次数,电池健康状态(漏电,阻抗)等参数。在其他一些实施例中,电源管理模块141也可以设置于处理器110中。在另一些实施例中,电源管理模块141和充电管理模块140也可以设置于同一个器件中。
电子设备100的无线通信功能可以通过天线1,天线2,移动通信模块150,无线通信模块160,调制解调处理器以及基带处理器等实现。
天线1和天线2用于发射和接收电磁波信号。电子设备中的每个天线可用于覆盖单个或多个通信频带。不同的天线还可以复用,以提高天线的利用率。例如:可以将天线1复用为无线局域网的分集天线。在另外一些实施例中,天线可以和调谐开关结合使用。
移动通信模块150可以提供应用在电子设备上的包括2G/3G/4G/5G等无线通信的解决方案。移动通信模块150可以包括至少一个滤波器,开关,功率放大器,低噪声放大器(low noise amplifier,LNA)等。移动通信模块150可以由天线1接收电磁波,并对接收的电磁波进行滤波,放大等处理,传送至调制解调处理器进行解调。移动通信模块150还可以对经调制解调处理器调制后的信号放大,经天线1转为电磁波辐射出去。在一些实施例中,移动通信模块150的至少部分功能模块可以被设置于处理器110中。在一些实施例中,移动通信模块150的至少部分功能模块可以与处理器110的至少部分模块被设置在同一个器件中。
调制解调处理器可以包括调制器和解调器。其中,调制器用于将待发送的低频基带信号调制成中高频信号。解调器用于将接收的电磁波信号解调为低频基带信号。随后解调器将解调得到的低频基带信号传送至基带处理器处理。低频基带信号经基带处理器处理后,被传递给应用处理器。应用处理器通过音频设备(不限于扬声器170A,受话器170B等)输出声音信号,或通过显示屏194显示图像或视频。在一些实施例中,调制解调处理器可以是独立的器件。在另一些实施例中,调制解调处理器可以独立于处理器110,与移动通信模块150或其他功能模块设置在同一个器件中。
无线通信模块160可以提供应用在电子设备上的包括无线局域网(wirelesslocal area networks,WLAN)(如无线保真(wireless fidelity,Wi-Fi)网络),蓝牙(bluetooth,BT),全球导航卫星系统(global navigation satellite system,GNSS),调频(frequency modulation,FM),近距离无线通信技术(near field communication,NFC),红外技术(infrared,IR)等无线通信的解决方案。无线通信模块160可以是集成至少一个通信处理模块的一个或多个器件。无线通信模块160经由天线2接收电磁波,将电磁波信号调频以及滤波处理,将处理后的信号发送到处理器110。无线通信模块160还可以从处理器110接收待发送的信号,对其进行调频,放大,经天线2转为电磁波辐射出去。
在一些实施例中,电子设备的天线1和移动通信模块150耦合,天线2和无线通信模块160耦合,使得电子设备可以通过无线通信技术与网络以及其他设备通信。所述无线通信技术可以包括全球移动通讯系统(global system for mobile communications,GSM),通用分组无线服务(general packet radio service,GPRS),码分多址接入(code divisionmultiple access,CDMA),宽带码分多址(wideband code division multiple access,WCDMA),时分码分多址(time-division code division multiple access,TD-SCDMA),长期演进(long term evolution,LTE),BT,GNSS,WLAN,NFC,FM,和/或IR技术等。所述GNSS可以包括全球卫星定位系统(global positioning system,GPS),全球导航卫星系统(globalnavigation satellite system,GLONASS),北斗卫星导航系统(beidou navigationsatellite system,BDS),准天顶卫星系统(quasi-zenith satellite system,QZSS)和/或星基增强系统(satellite based augmentation systems,SBAS)。
电子设备100通过GPU,显示屏194,以及应用处理器等实现显示功能。GPU为图像处理的微处理器,连接显示屏194和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器110可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。
显示屏194用于显示图像,视频等。显示屏194包括显示面板。显示面板可以采用液晶显示屏(liquid crystal display,LCD),有机发光二极管(organic light-emittingdiode,OLED),有源矩阵有机发光二极体或主动矩阵有机发光二极体(active-matrixorganic light emitting diode的,AMOLED),柔性发光二极管(flex light-emittingdiode,FLED),Miniled,MicroLed,Micro-oLed,量子点发光二极管(quantum dot lightemitting diodes,QLED)等。在一些实施例中,电子设备100可以包括1个或N个显示屏194,N为大于1的正整数。
电子设备100可以通过ISP,摄像头193,视频编解码器,GPU,显示屏194以及应用处理器等实现拍摄功能。
ISP用于处理摄像头193反馈的数据。例如,拍照时,打开快门,光线通过镜头被传递到摄像头感光元件上,光信号转换为电信号,摄像头感光元件将所述电信号传递给ISP处理,转化为肉眼可见的图像。ISP还可以对图像的噪点,亮度,颜色进行算法优化。ISP还可以对拍摄场景的曝光,色温等参数优化。在一些实施例中,ISP可以设置在摄像头193中。
摄像头193用于捕获静态图像或视频。物体通过镜头生成光学图像投射到感光元件。感光元件可以是电荷耦合器件(charge coupled device,CCD)或互补金属氧化物半导体(complementary metal-oxide-semiconductor,CMOS)光电晶体管。感光元件把光信号转换成电信号,之后将电信号传递给ISP转换成数字图像信号。ISP将数字图像信号输出到DSP加工处理。DSP将数字图像信号转换成标准的RGB,YUV等格式的图像信号。本发明实施例中,摄像头193包括采集人脸识别所需图像的摄像头,如红外摄像头或其他摄像头。该采集人脸识别所需图像的摄像头一般位于电子设备的正面,例如触控屏的上方,也可以位于其他位置,本发明实施例对此不做限制。在一些实施例中,电子设备100可以包括其他摄像头。电子设备还可以包括点阵发射器(图中未示出),用于发射光线。摄像头采集人脸反射的光线,得到人脸图像,处理器对人脸图像进行处理和分析,通过与存储的人脸图像的信息进行比较以进行验证。
数字信号处理器用于处理数字信号,除了可以处理数字图像信号,还可以处理其他数字信号。例如,当电子设备100在频点选择时,数字信号处理器用于对频点能量进行傅里叶变换等。
视频编解码器用于对数字视频压缩或解压缩。电子设备100可以支持一种或多种视频编解码器。这样,电子设备100可以播放或录制多种编码格式的视频,例如:动态图像专家组(moving picture experts group,MPEG)1,MPEG2,MPEG3,MPEG4等。
NPU为神经网络(neural-network,NN)计算处理器,通过借鉴生物神经网络结构,例如借鉴人脑神经元之间传递模式,对输入信息快速处理,还可以不断的自学习。通过NPU可以实现电子设备100的智能认知等应用,例如:图像识别,人脸识别,语音识别,文本理解等。
外部存储器接口120可以用于连接外部存储卡,例如Micro SD卡,实现扩展电子设备100的存储能力。外部存储卡通过外部存储器接口120与处理器110通信,实现数据存储功能。例如将音乐,视频等文件保存在外部存储卡中。
内部存储器121可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。处理器110通过运行存储在内部存储器121的指令,从而执行电子设备100的各种功能应用以及数据处理。内部存储器121可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统,至少一个功能所需的应用(比如人脸识别功能,指纹识别功能、移动支付功能等)等。存储数据区可存储电子设备100使用过程中所创建的数据(比如人脸信息模板数据,指纹信息模板等)等。此外,内部存储器121可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(universalflash storage,UFS)等。
电子设备100可以通过音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,以及应用处理器等实现音频功能。例如音乐播放,录音等。
音频模块170用于将数字音频信息转换成模拟音频信号输出,也用于将模拟音频输入转换为数字音频信号。
扬声器170A,也称“喇叭”,用于将音频电信号转换为声音信号。
受话器170B,也称“听筒”,用于将音频电信号转换成声音信号。
麦克风170C,也称“话筒”,“传声器”,用于将声音信号转换为电信号。
耳机接口170D用于连接有线耳机。耳机接口170D可以是USB接口130,也可以是3.5mm的开放移动电子设备平台(open mobile terminal platform,OMTP)标准接口,美国蜂窝电信工业协会(cellular telecommunications industry association of the USA,CTIA)标准接口。
压力传感器180A用于感受压力信号,可以将压力信号转换成电信号。在一些实施例中,压力传感器180A可以设置于显示屏194。压力传感器180A的种类很多,如电阻式压力传感器,电感式压力传感器,电容式压力传感器等。
陀螺仪传感器180B可以用于确定电子设备100的运动姿态。在一些实施例中,可以通过陀螺仪传感器180B确定电子设备100围绕三个轴(即,x,y和z轴)的角速度。
接近光传感器180G可以包括例如发光二极管(LED)和光检测器,例如光电二极管。发光二极管可以是红外发光二极管。
环境光传感器180L用于感知环境光亮度。电子设备100可以根据感知的环境光亮度自适应调节显示屏194亮度。环境光传感器180L也可用于拍照时自动调节白平衡。
指纹传感器180H用于采集指纹。电子设备100可以利用采集的指纹特性实现指纹解锁,访问应用锁,指纹拍照,指纹接听来电等。其中,该指纹传感器180H可以设置在触控屏下方,电子设备100可以接收用户在触控屏上该指纹传感器对应的区域的触摸操作,电子设备100可以响应于该触摸操作,采集用户手指的指纹信息,实现本申请实施例中所涉及的指纹识别通过后打开隐藏相册,指纹识别通过后打开隐藏应用,指纹识别通过后登录账号,指纹识别通过后完成付款等。
温度传感器180J用于检测温度。在一些实施例中,电子设备100利用温度传感器180J检测的温度,执行温度处理策略。
触摸传感器180K,也称“触控面板”。触摸传感器180K可以设置于显示屏194,由触摸传感器180K与显示屏194组成触摸屏,也称“触控屏”。触摸传感器180K用于检测作用于其上或附近的触摸操作。触摸传感器可以将检测到的触摸操作传递给应用处理器,以确定触摸事件类型。可以通过显示屏194提供与触摸操作相关的视觉输出。在另一些实施例中,触摸传感器180K也可以设置于电子设备100的表面,与显示屏194所处的位置不同。
按键190包括开机键,音量键等。按键190可以是机械按键。也可以是触摸式按键。电子设备100可以接收按键输入,产生与电子设备100的用户设置以及功能控制有关的键信号输入。
指示器192可以是指示灯,可以用于指示充电状态,电量变化,也可以用于指示消息,未接来电,通知等。
SIM卡接口195用于连接SIM卡。SIM卡可以通过插入SIM卡接口195,或从SIM卡接口195拔出,实现和电子设备100的接触和分离。在一些实施例中,电子设备100采用eSIM,即:嵌入式SIM卡。eSIM卡可以嵌在电子设备100中,不能和电子设备100分离。
电子设备100的软件系统可以采用分层架构,事件驱动架构,微核架构,微服务架构,或云架构。本发明实施例以分层架构的Android系统为例,示例性说明电子设备100的软件结构。
电子设备的软件系统可以采用分层架构,事件驱动架构,微核架构,微服务架构,或云架构。本发明实施例以分层架构的Android系统为例,示例性说明电子设备的软件结构。
图2是本发明实施例的电子设备100的软件结构框图。
分层架构将软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在一些实施例中,将Android系统分为四层,从上至下分别为应用程序层,应用程序框架层,安卓运行时(Android runtime)和系统库,以及内核层。
应用程序层可以包括一系列应用程序包。
如图2所示,应用程序包可以包括相机,图库,日历,通话,地图,导航,WLAN,蓝牙,音乐,视频,短信息等应用程序(也可以称为应用)。
应用程序框架层为应用程序层的应用程序提供应用编程接口(applicationprogramming interface,API)和编程框架。应用程序框架层包括一些预先定义的函数。
如图2所示,应用程序框架层可以包括窗口管理器,内容提供器,视图系统,电话管理器,资源管理器,通知管理器等。
窗口管理器用于管理窗口程序。窗口管理器可以获取显示屏大小,判断是否有状态栏,锁定屏幕,截取屏幕等。
内容提供器用来存放和获取数据,并使这些数据可以被应用程序访问。所述数据可以包括视频,图像,音频,拨打和接听的电话,浏览历史和书签,电话簿等。
视图系统包括可视控件,例如显示文字的控件,显示图片的控件等。视图系统可用于构建应用程序。显示界面可以由一个或多个视图组成的。例如,包括短信通知图标的显示界面,可以包括显示文字的视图以及显示图片的视图。
电话管理器用于提供电子设备100的通信功能。例如通话状态的管理(包括接通,挂断等)。
资源管理器为应用程序提供各种资源,比如本地化字符串,图标,图片,布局文件,视频文件等等。
通知管理器使应用程序可以在状态栏中显示通知信息,可以用于传达告知类型的消息,可以短暂停留后自动消失,无需用户交互。比如通知管理器被用于告知下载完成,消息提醒等。通知管理器还可以是以图表或者滚动条文本形式出现在系统顶部状态栏的通知,例如后台运行的应用程序的通知,还可以是以对话界面形式出现在屏幕上的通知。例如在状态栏提示文本信息,发出提示音,电子设备振动,指示灯闪烁等。
Android Runtime包括核心库和虚拟机。Android runtime负责安卓系统的调度和管理。
核心库包含两部分:一部分是java语言需要调用的功能函数,另一部分是安卓的核心库。
应用程序层和应用程序框架层运行在虚拟机中。虚拟机将应用程序层和应用程序框架层的java文件执行为二进制文件。虚拟机用于执行对象生命周期的管理,堆栈管理,线程管理,安全和异常的管理,以及垃圾回收等功能。
系统库可以包括多个功能模块。例如:表面管理器(surface manager),媒体库(Media Libraries),三维图形处理库(例如:OpenGL ES),2D图形引擎(例如:SGL)等。
表面管理器用于对显示子系统进行管理,并且为多个应用程序提供了2D和3D图层的融合。
媒体库支持多种常用的音频,视频格式回放和录制,以及静态图像文件等。媒体库可以支持多种音视频编码格式,例如:MPEG4,H.264,MP3,AAC,AMR,JPG,PNG等。
三维图形处理库用于实现三维图形绘图,图像渲染,合成,和图层处理等。
2D图形引擎是2D绘图的绘图引擎。
内核层是硬件和软件之间的层。内核层至少包含显示驱动,摄像头驱动,音频驱动,传感器驱动。
图3示例性地示出了本申请实施例提供的一种通信系统的系统架构图,该通信系统可包括至少一个电子设备、至少一个服务器,电子设备可以通过无线通信技术与服务器进行通信。其中,服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(content delivery network,CDN)、以及大数据和人工智能平台等基础云计算服务的云服务器,等等。关于无线通信技术的具体阐述可参见前述的相关阐述,不再赘述。另外,电子设备和服务器可以部署在陆地上,包括室内、室外、手持或车载,也可以部署在水面上,还可以部署在空中的飞机和人造卫星上,本申请实施例对此不做限定。
在电子设备显示单个前台应用程序的用户界面的场景下,前台应用程序会被划分至顶级应用程序(top application,top-app)这一组,非前台应用程序根据重要性会分别被划分至前景(foreground)这一组或背景(background)这一组。通常top-app的资源调度优先级≥foreground的资源调度优先级≥background的资源调度优先级。电子设备会根据应用程序所属分组的资源调度优先级为应用程序调度资源。
随着系统、硬件升级以及应用技术的发展,在平板、手机、虚拟现实(virtualreality,VR)设备、电视等电子设备上存在多个前台应用程序叠加的场景。例如,结合图4,电子设备的屏幕被划分为分屏区域#1和分屏区域#2,其中,分屏区域#1中显示了前台应用程序#1的用户界面,分屏区域#2中显示了前台应用程序#2的用户界面。又例如,结合图5,前台应用程序#1和前台应用程序#2的用户界面是在前台应用程序#3的用户界面之上进行悬浮窗显示的;电子设备的屏幕被划分为区域#1、区域#2和区域#3,区域#1中显示了前台应用程序#1的用户界面;区域#3中显示了前台应用程序#3的用户界面;区域#3中显示了前台应用程序#2的用户界面,前台应用程序#2的用户界面中部分画面进行了显示,其余部分画面被前台应用程序#1和前台应用程序#3的用户界面遮挡。
在多个前台应用程序叠加的场景下,如果电子设备将所有前台应用程序均划分至top-app这一组,每个前台应用程序调度的资源基本相同。在资源有限的情况下,这一方式可能会使得部分需要较多资源的前台应用程序实际被调度的资源不足,而影响该前台应用程序的用户界面中的显示画面,导致用户体验差。
目前,一种方式是基于用户对前台应用程序的操作顺序来确定多个前台应用程序中各前台应用程序的资源调度优先级。具体地,在多个前台应用程序中,用户针对某前台应用程序的最近一次操作时间越接近于用户在电子设备的屏幕上进行的最近一次操作时间,该前台应用程序的资源调度优先级越高。以图5所示的悬浮窗形式为例,结合图6和图7,图6和图7中采用带数字的圆形图案来表示对应的前台应用程序的操作顺序,具体地,如果某前台应用程序对应的圆形图案中数字越小,说明用户针对该前台应用程序进行的最近一次操作时间越接近于用户在电子设备的屏幕上进行的最近一次操作时间。例如,按照时间从早至晚的顺序,用户依次在前台应用程序#3、前台应用程序#2、前台应用程序#1的用户界面进行了操作,那么前台应用程序#1、前台应用程序#2、前台应用程序#3的操作顺序如图6中所示,用户针对前台应用程序#1进行的最近一次操作时间最接近于用户在电子设备的屏幕上进行的最近一次操作时间,前台应用程序#2其次,前台应用程序#3最远,即前台应用程序#1对应的圆形图案中数字<前台应用程序#2对应的圆形图案中数字<前台应用程序#3对应的圆形图案中数字。电子设备可确定前台应用程序#1的资源调度优先级≥前台应用程序#2的资源调度优先级≥前台应用程序#3的资源调度优先级。
在图6所示的操作顺序之后,如果用户还针对前台应用程序#2进行了一次操作,这3个前台应用程序的操作顺序更新为如图7所示。图7中,用户针对前台应用程序#2进行的最近一次操作时间最接近于用户在电子设备的屏幕上进行的最近一次操作时间,前台应用程序#1其次,前台应用程序#3最远。那么,电子设备可确定前台应用程序#2的资源调度优先级≥前台应用程序#1的资源调度优先级≥前台应用程序#3的资源调度优先级。
但是,在多个前台应用程序中可能存在前台应用程序的用户界面中显示画面在用户并未操作的情况下依然存在变动,用户针对这类前台应用程序可以不进行操作或可操作性低,基于用户对前台应用程序的操作顺序来确定各前台应用程序的资源调度优先级的方式可能无法保证这类前台应用程序的用户界面中显示画面能够流畅显示,影响用户体验。下面以图5为例阐述存在前台应用程序的用户界面中显示画面在用户并未操作的情况下存在变动的场景:图5中的前台应用程序#1的用户界面中显示画面在用户并未操作的情况下存在变动,前台应用程序#1例如是悬浮窗形式的视频通话、视频播放、多图片播放、演示文稿(或幻灯片)放映等应用程序;前台应用程序#2和前台应用程序#3的用户界面中显示画面在用户未操作的情况下不变,前台应用程序#2或前台应用程序#3例如是网页浏览器等应用程序。
本申请实施例提供了一种资源调度方法,该方法中,电子设备可根据多个前台应用程序中每个前台应用程序的关注度,确定每个前台应用程序的资源调度优先级。前台应用程序的关注度是根据以下一项或多项确定的:前台应用程序的用户界面在电子设备的屏幕中的显示区域与第一区域的重叠范围、前台应用程序的用户界面中显示画面的信息量、显示画面的变动幅度、显示画面的亮度变化幅度、显示画面的播放热度;第一区域是用户眼睛在屏幕中聚焦的区域。电子设备可根据多个前台应用程序中每个前台应用程序的资源调度优先级,为多个前台应用程序调度资源。该方法可确定或预测用户关注的前台应用程序,有利于优先满足用户关注的前台应用程序的资源调度,以保证用户关注的前台应用程序的用户界面中显示画面能够流畅显示,提高用户体验。
下面结合附图对本申请实施例提供的资源调度方法进行阐述。
请参阅图8,图8是本申请实施例提供的一种资源调度方法的示意图,该资源调度方法可由电子设备执行。该资源调度方法包括以下步骤:
S101、电子设备根据多个前台应用程序中每个前台应用程序的关注度,确定每个前台应用程序的资源调度优先级。
其中,多个前台应用程序的用户界面均显示于电子设备的屏幕中。前台应用程序的关注度是根据以下一项或多项确定的:前台应用程序的用户界面在电子设备的屏幕中的显示区域与第一区域的重叠范围、前台应用程序的用户界面中显示画面的信息量、显示画面的变动幅度、显示画面的亮度变化幅度、显示画面的播放热度;第一区域是用户眼睛在屏幕中聚焦的区域。
在一种可选的实施方式中,多个前台应用程序包括用户界面中显示画面变动的第一应用程序。第一应用程序的用户界面中显示画面变动是指第一应用程序的用户界面中显示画面在用户不对其进行操作的情况下依然存在变动,例如,第一应用程序可以是用于视频通话、视频播放、多图片播放、演示文稿(或幻灯片)放映等应用程序,不作限制。
另外,由于第一应用程序的用户界面中的显示画面变动,也就是说,在不同时间或不同时间段,第一应用程序的用户界面中的显示画面可能不同,那么在不同时间或不同时间段,第一应用程序的用户界面中显示画面的信息量,和/或,显示画面的变动幅度,和/或,显示画面的亮度变化幅度,和/或,显示画面的播放热度可能会不同,从而使得第一应用程序的关注度在不同时间或不同时间段可能不同,进而第一应用程序的资源调度优先级在不同时间或不同时间段可能不同。电子设备基于第一应用程序的用户界面中显示画面的信息量、显示画面的变动幅度、显示画面的亮度变化幅度、显示画面的播放热度中的一项或多项来确定第一应用程序的关注度的方式,能够预测用户可能关注第一应用程序的用户界面的时间或时间段,从而提高该第一应用程序在这一时间或时间段的资源调度优先级,有利于在这一时间或时间段能够优先满足该第一应用程序的资源调度,以保证该第一应用程序的用户界面中显示画面能够流畅显示,提升用户体验。
在一种可选的实施方式中,前台应用程序的用户界面中显示画面是采用动态比特率(variable bit rate,VBR)编码的。这一情况下,前台应用程序的用户界面中显示画面的信息量可以是根据该显示画面的码率确定的。码率的大小可以反映信息量的大小,显示画面的码率越大,显示画面的信息量就越大。
在一种可选的实施方式中,前台应用程序的用户界面中显示画面采用的是VBR编码的情况下,前台应用程序的用户界面中显示画面的变动幅度可以是根据该显示画面的码率变化率确定的。码率变化率的大小可以反映显示画面的变动幅度的大小,显示画面的码率变化率越大,显示画面的变动幅度就越大。例如,在时间t0,前台应用程序的用户界面中显示画面的码率为V0;在时间t1(t1晚于t0),前台应用程序的用户界面中显示画面的码率为V1;那么,t0至t1这一时间段,前台应用程序的用户界面中显示画面的码率变化率为
在一种可选的实施方式中,前台应用程序的用户界面中显示画面的变动幅度是根据该显示画面中点位的运动向量确定的。显示画面中点位的运动向量的大小可以反映显示画面的变动幅度的大小,显示画面中点位的运动向量越大,显示画面的变动幅度就越大。可选的,用于确定显示画面的变动幅度的点位可以是多个,显示画面的变动幅度可以表示为多个点位的运动向量的向量值求和得到的值;用于确定显示画面的变动幅度的点位个数越多,显示画面的变动幅度越精确,进而前台应用程序的关注度越精确。另外,前台应用程序的用户界面中的显示画面可以是视频画面,某点位的运动向量可以是该点位在视频中前后帧的运动向量。视频画面中点位的运动向量可以是通过视频解码器获取的。
例如,结合图9和图10,图9展示了前台应用程序的用户界面中的显示画面,并采用灰色线表示显示画面中各个点位的运动向量;从图9所示的显示画面中选择了小方框所框选的多个点位,并将该多个点位的运动向量的向量值求和,电子设备可基于求和得到的值确定前台应用程序的用户界面中显示画面的变动幅度;另外,小方框所框选的点位的分布如图10的方框中黑色圆形所示。
在一种可选的实施方式中,前台应用程序的用户界面中显示画面采用的是VBR编码的情况下,前台应用程序的用户界面中显示画面的变动幅度可以是根据该显示画面的码率变化率和该显示画面中点位的运动向量确定的。前台应用程序的用户界面中显示画面的码率变化率和显示画面中点位的运动向量可以分别对应一个权重因子,电子设备可基于显示画面的码率变化率、点位的运动向量以及各自对应的权重因子确定显示画面的变动幅度。关于码率变化率和点位的运动向量的具体阐述可参见前述的相关阐述,不再赘述。
在一种可选的实施方式中,前台应用程序的用户界面中显示画面的亮度变化幅度等于该显示画面中一个点位的亮度变化幅度,或者,等于该显示画面中多个点位的亮度变化幅度之和。用于确定显示画面的亮度变化幅度的点位个数越多,显示画面的亮度变化幅度越精确,进而前台应用程序的关注度越精确。另外,前台应用程序的用户界面中的显示画面可以是视频画面,某点位的亮度变化幅度可以是该点位在视频中前后帧的亮度变化幅度。视频画面中点位的亮度可以是通过视频解码器获取的。例如,结合图9,显示画面的亮度变化幅度表示为将选择的多个点位(即图9的小方框所框选的多个点位)的亮度变化幅度进行求和得到的值。
在一种可选的实施方式中,前台应用程序的用户界面中的显示画面是电子设备基于接收的来自服务器的数据流得到的;也就是说,前台应用程序的用户界面中的显示画面是在线播放的。前台应用程序的用户界面中显示画面的播放热度是根据该显示画面的播放频次确定的。其中,前台应用程序的用户界面中显示画面的播放频次可以是时间段内的显示画面的播放频次,还可以是一个时刻的显示画面的播放频次。
例如,前台应用程序的用户界面中的显示画面是视频画面,将该视频按照多个时间段进行划分,其中播放频次最高的时间段内视频画面的播放频次为H。该视频中某时间段内视频画面的播放频次为P,那么,该时间段内视频画面的播放热度即该时间段内前台应用程序的用户界面中显示画面的播放热度的值为
另外,前台应用程序的用户界面中显示画面是在线播放的情况下,电子设备可以从服务器获取前台应用程序的用户界面中显示画面的播放频次,再基于获取的显示画面的播放频次确定显示画面的播放热度。或者,电子设备直接从服务器中获取前台应用程序的用户界面中显示画面的播放热度,该显示画面的播放热度是由服务器基于显示画面的播放频次确定并发送给电子设备的。可选的,前台应用程序的用户界面中显示画面是在线播放的情况下,显示画面的播放频次可以是服务器采集大数据打点上报得到的。
在一种可选的实施方式中,多个前台应用程序包括第二应用程序和第三应用程序,第二应用程序的关注度大于第三应用程序的关注度;第二应用程序的资源调度优先级高于第三应用程序的源调度优先级。也就是说,多个前台应用程序中关注度越大的前台应用程序的资源调度优先级越高,有利于优先保证用户关注的前台应用程序的资源调度,进而提升用户体验。
在一种可选的实施方式中,前台应用程序的关注度可以被划分为多类,相应的,前台应用程序可以被划分为多类,同一类的前台应用程序的资源调度优先级相同,不同类的前台应用程序的资源调度优先级不同。示例性地,前台应用程序的关注度可以被划分为关注和非关注这两类,相应的,前台应用程序划分为关注应用程序和非关注应用程序这两类。其中,关注应用程序的关注度均为关注,非关注应用程序的关注度均为非关注,关注应用程序的关注度大于非关注应用程序的关注度。关注应用程序的资源调度优先级均相同,非关注应用程序的资源调度优先级均相同,关注应用程序的资源调度优先级高于或等于非关注应用程序的资源调度优先级。另外,除了“关注”和“非关注”、“关注应用程序”和“非关注应用程序”的命名方式,还可以采用其他的命名方式,如“第一关注度”和“第二关注度”、“第四应用程序”和“第五应用程序”,等等,不作限制。
可选的,在电子设备根据前台应用程序的用户界面中显示画面的信息量确定前台应用程序的关注度的情况下,如果显示画面的信息量大于第一值,前台应用程序的关注度为关注,前台应用程序为关注应用程序;否则,前台应用程序的关注度为非关注,前台应用程序为非关注应用程序。例如,前台应用程序的用户界面中显示画面的信息量是根据该显示画面的码率确定的,第一值为Vhigh,如果前台应用程序的用户界面中显示画面的码率大于Vhigh,电子设备可确定前台应用程序为关注应用程序。
可选的,在电子设备根据前台应用程序的用户界面中显示画面的变动幅度确定前台应用程序的关注度的情况下,如果显示画面的变动幅度大于第二值,前台应用程序的关注度为关注,前台应用程序为关注应用程序;否则,前台应用程序的关注度为非关注,前台应用程序为非关注应用程序。例如,前台应用程序的用户界面中显示画面的变动幅度是根据该显示画面的码率变化率确定的,第二值为K,前台应用程序的用户界面中显示画面在时间t0的码率为V0,在时间t1(t1晚于t0)的码率为V1;如果在t0至t1这一时间段,前台应用程序的用户界面中显示画面的码率变化率大于K,说明显示画面的变动幅度大即显示画面的信息量快速膨胀,电子设备可确定前台应用程序当前为关注应用程序。
另外,根据前台应用程序的用户界面中显示画面的码率变化率确定该显示画面的变动幅度、根据前台应用程序的用户界面中显示画面中点位的运动向量确定该显示画面的变动幅度、根据前台应用程序的用户界面中显示画面的码率变化率和显示画面中点位的运动向量确定该显示画面的变动幅度这三种情况下,第二值的具体数值可能不相同。
可选的,在电子设备根据前台应用程序的用户界面中显示画面的亮度变化幅度确定前台应用程序的关注度的情况下,如果显示画面的亮度变化幅度大于第三值,前台应用程序的关注度为关注,前台应用程序为关注应用程序;否则,前台应用程序的关注度为非关注,前台应用程序为非关注应用程序。
可选的,在电子设备根据前台应用程序的用户界面中显示画面的播放热度确定前台应用程序的关注度的情况下,如果显示画面的播放热度大于第四值,前台应用程序的关注度为关注,前台应用程序为关注应用程序;否则,前台应用程序的关注度为非关注,前台应用程序为非关注应用程序。
可选的,在电子设备根据前台应用程序的用户界面在电子设备的屏幕中的显示区域与第一区域的重叠范围来确定前台应用程序的关注度的情况下,电子设备可将多个前台应用程序中显示区域与第一区域的重叠范围最大的前台应用程序确定为关注应用程序,其关注度为关注;其余的前台应用程序均确定为非关注应用程序,其关注度为非关注。
例如,结合图11,存在3个前台应用程序,前台应用程序#1、前台应用程序#2和前台应用程序#3的用户界面在屏幕中的显示区域依次为区域#1、区域#2和区域#3;电子设备确定用户眼睛聚焦的第一区域为图11中虚线椭圆所示的第一区域#1;可见,前台应用程序#1为关注应用程序,前台应用程序#2和前台应用程序#3均为非关注应用程序。随着用户眼睛转动,用户眼睛聚焦的第一区域从第一区域#1更新为第一区域#2,如图12所示;可见,前台应用程序#3从非关注应用程序更新为关注应用程序,前台应用程序#1从关注应用程序更新为非关注应用程序,前台应用程序#2保持为非关注应用程序。
可选的,在电子设备根据前台应用程序的用户界面在电子设备的屏幕中的显示区域与第一区域的重叠范围、前台应用程序的用户界面中显示画面的信息量、显示画面的变动幅度、显示画面的亮度变化幅度、显示画面的播放热度这5项参数中至少两项参数确定前台应用程序的关注度的情况下,可以为该至少两项参数中每项参数设置对应的权重因子,如果基于该至少两项参数和对应的权重因子得到的值大于第五值,前台应用程序的关注度为关注,前台应用程序为关注应用程序;否则,前台应用程序的关注度为非关注,前台应用程序为非关注应用程序。可选的,前述5项参数分别对应的权要因子可以是根据对应的重要性确定的,相对来说,重要性越高的参数所对应的权重因子可以设置得越大,从而可以通过各参数对应的权重因子来调整前台应用程序的关注度的侧重点。
例如,前台应用程序的关注度是电子设备根据前台应用程序的用户界面中显示画面的变动幅度、显示画面的亮度变化幅度确定的,其中,显示画面的变动幅度对应的权重因子为b1、显示画面的亮度变化幅度对应的权重因子为b2,如果显示画面的变动幅度×b1+显示画面的亮度变化幅度×b2得到的值大于第五值,前台应用程序的关注度为“关注”,前台应用程序为“关注应用程序”。另外,如果对前台应用程序的关注度的影响更侧重于显示画面的变动幅度,可以设置b1大于b2;如果对前台应用程序的关注度的影响更侧重于显示画面的亮度变化幅度,可以设置b2大于b1。
另外,前述的第一值、第二值、第三值、第四值和/或第五值可以是预定义的,还可以是人为设定的,此处不再赘述。
可选的,在多个前台应用程序中存在第一应用程序,且多个前台应用程序不均为第一应用程序的情况下,多个前台应用程序中每个前台应用程序的关注度均可以基于用户界面在电子设备的屏幕中的显示区域与第一区域的重叠范围来确定;或者,多个前台应用程序中第一应用程序的关注度基于用户界面中显示画面的信息量、显示画面的变动幅度、显示画面的亮度变化幅度、显示画面的播放热度中的一项或多项确定,除了第一应用程序之外的其他前台应用程序的关注度均默认为非关注,这些其他前台应用程序均默认为非关注应用程序。
另一种可选的实施方式中,如果前台应用程序的关注度是电子设备根据其用户界面在电子设备的屏幕中的显示区域与第一区域的重叠范围、用户界面中显示画面的信息量、显示画面的变动幅度、显示画面的亮度变化幅度、显示画面的播放热度这5项参数中的一项确定的,前台应用程序的用户界面在电子设备的屏幕中的显示区域与第一区域的重叠范围越大、或者用户界面中显示画面的信息量越大,或者显示画面的变动幅度越大,或者显示画面的亮度变化幅度越大,或者显示画面的播放热度越大,前台应用程序的关注度越大,前台应用程序的资源调度优先级越高。
例如,前台应用程序的关注度是基于显示画面的码率变化率确定的,也就是前台应用程序的关注度采用显示画面的码率变化率表示;多个前台应用程序中包括前台应用程序#1、前台应用程序#2和前台应用程序#3,这3个前台应用程序按照显示画面的码率变化率从大至小的顺序依次为:前台应用程序#2、前台应用程序#1、前台应用程序#3,也就是按照关注度从大至小的顺序依次为:前台应用程序#2、前台应用程序#1、前台应用程序#3,那么,这3个前台应用程序按照资源调度优先级从高至低的顺序依次为:前台应用程序#2、前台应用程序#1、前台应用程序#3。
如果前台应用程序的关注度是电子设备根据前述5项参数中的至少两项参数确定的,可以为该至少两项参数中每项参数设置对应的权重因子,基于该至少两项参数和对应的权重因子得到的值越大,前台应用程序的关注度就越大,前台应用程序的资源调度优先级越高。关于参数信息对应的权重因子的具体阐述可参见前述的相关阐述,不再赘述。
S102、电子设备根据多个前台应用程序中每个前台应用程序的资源调度优先级,为多个前台应用程序调度资源。
另外,对于非前台应用程序(还可称为后台应用程序)来说,后台应用程序的资源调度优先级低于或等于前台应用程序的资源调度优先级,这样,前台应用程序和非前台应用程序相对来说,电子设备可优先满足前台应用程序的资源调度,以保证较好的用户体验。示例性地,在前台应用程序被划分为关注应用程序和非关注应用程序的情况下,关注应用程序的资源调度优先级≥非关注应用程序的资源调度优先级≥非前台应用程序的资源调度优先级。
在一种可选的实施方式中,电子设备可以根据多个应用程序(包括前台应用程序和非前台应用程序)中每个应用程序的资源调度优先级,确定每个应用程序的相关线程的调度优先级,以及按照每个应用程序的相关线程的调度优先级,调度每个应用程序的相关线程。电子设备还可根据多个应用程序中每个应用程序的资源调度优先级,确定为每个应用程序分配的中央处理器(central processing unit,CPU)、内存、输入输出(Input/Output,I/O或IO)等。该方法可以针对资源调度优先级不同的应用程序实现差异化的资源调度,有利于优先满足资源调度优先级较高的前台应用程序的资源调度,提高用户体验。
在一种可选的实施方式中,电子设备可以根据应用程序(包括前台应用程序和非前台应用程序)的资源调度优先级对各应用程序进行多个控制组(control group,cgroup)(即cgroups)分组,针对不同组的应用程序可以设置不同的调度策略,进而针对资源调度优先级不同的应用程序实现差异化调度资源,包括CPU、内存、IO等维度的差异化措施。例如,针对不同组中的应用程序设置的调度器的参数可以不同,如在针对不同组均采用公平调度策略的前提下,资源调度优先级较高的分组的调度系数可以设置得较高。
综上所述,该资源调度方法中,电子设备根据多个前台应用程序中每个前台应用程序的关注度,确定每个前台应用程序的资源调度优先级。前台应用程序的关注度是根据以下一项或多项确定的:前台应用程序的用户界面在电子设备的屏幕中的显示区域与第一区域的重叠范围、前台应用程序的用户界面中显示画面的信息量、显示画面的变动幅度、显示画面的亮度变化幅度、显示画面的播放热度;第一区域是用户眼睛在屏幕中聚焦的区域。电子设备根据多个前台应用程序中每个前台应用程序的资源调度优先级,为多个前台应用程序调度资源。
该方法中,在各前台应用程序的关注度是电子设备基于前台应用程序的用户界面在电子设备的屏幕中的显示区域与第一区域的重叠范围确定的情况下,该方法通过用户聚焦的区域来确定用户关注的前台应用程序,进而电子设备能够优先满足用户关注的前台应用程序的资源调度,以保证用户关注的前台应用程序的用户界面中显示画面能够流畅显示,提高用户体验。
在各前台应用程序的关注度是电子设备基于前台应用程序的用户界面中显示画面的信息量、显示画面的变动幅度、显示画面的亮度变化幅度、显示画面的播放热度中的一项或多项确定的情况下,电子设备可以预测用户是否可能会关注前台应用程序的用户界面,有利于在用户可能关注某前台应用程序时提高该前台应用程序的资源调度优先级,进而优先满足该前台应用程序的资源调度以保证该前台应用程序的用户界面中显示画面能够流畅显示,提高用户体验。
另外,该方法通过各前台应用程序的关注度来确定各前台应用程序的资源调度优先级,针对资源调度优先级高的应用程序,在进行资源分配时给予更多的倾斜,从而实现在多前台应用程序的场景下能够合理分配系统资源。
图13示例性地示出了本申请实施例提供的一种电子设备200的结构示意图,该电子设备可应用于前台应用程序的用户界面中显示画面为视频画面的场景中,该视频可以是电子设备存储的本地视频,也可以是基于来自服务器的数据流进行在线播放的视频。电子设备200包括关注度预测模块210和系统资源分配模块220;其中,关注度预测模块210包括码率检测模块211、视频画面监测模块212和播放热度模块213,系统资源分配模块220包括CPU设置(CPUSET)221、调度优先级222和调度策略223。下面以前台应用程序被划分为关注应用程序和非关注应用程序这两类为例对电子设备200中各模块进行阐述。
码率检测模块211可针对VBR编码的视频开放,其可用于检测视频的码率和/或码率变化率。码率检测模块211还可用于将前台应用程序的用户界面中视频画面的码率与第一值进行比较,和/或,将视频画面的码率变化率与第二值进行比较,以确定前台应用程序是关注应用程序还是非关注应用程序。
视频画面监测模块212包括视频解码器,视频画面监测模块212可用于通过视频解码器获取视频画面中点位的亮度、运动向量等数据。视频画面监测模块212还可用于将前台应用程序的用户界面中视频画面中点位的运动向量与第二值进行比较,和/或,将点位的亮度变化幅度与第三值进行比较,以确定前台应用程序是关注应用程序还是非关注应用程序。
播放热度模块213可针对在线播放的视频开放,其可用于从服务器获取视频中各时间段的播放热度,或者,用于从服务器获取各时间段的视频画面的播放频次以确定播放热度。播放热度模块213还可用于将前台应用程序的用户界面中视频画面的播放热度与第四值进行比较,以确定前台应用程序是关注应用程序还是非关注应用程序。
关注度预测模块210可用于确定多个前台应用程序中各前台应用程序是关注应用程序还是非关注应用程序,并将关注应用程序列表和非关注应用程序列表发送给系统资源分配模块220。可选的,关注度预测模块210还可用于对码率检测模块211、视频画面监测模块212和播放热度模块213的输出结果进行汇总,以及基于这3个模块的输出结果和每个模块对应的权重因子确定前台应用程序是关注应用程序还是非关注应用程序。其中,码率检测模块211的输出结果可以是视频画面的码率和/或码率变化率,视频画面监测模块212的输出结果可以是视频画面中点位的运动向量和/或点位的亮度变化幅度,播放热度模块213的输出结果可以是视频画面的播放热度。
系统资源分配模块220可用于接收来自关注度预测模块210的关注应用程序列表和非关注应用程序列表,以及按照关注应用程序的资源调度优先级≥非关注应用程序的资源调度优先级≥非前台应用程序的资源调度优先级这一资源调度优先级的顺序为各应用程序调度资源。
其中,CPUSET221可用于基于各应用程序的资源调度优先级设置各应用程序对应的cpuset值。调度优先级222可用于基于各应用程序的资源调度优先级确定各应用程序的相关线程的调度优先级,进而按照各应用程序的相关线程的调度优先级为各应用程序进行线程调度。调度策略223可用于基于各应用程序的资源调度优先级确定各应用程序的任务调度策略。
以上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。
Claims (11)
1.一种资源调度方法,其特征在于,所述方法包括:
电子设备根据多个前台应用程序中每个前台应用程序的关注度,确定所述每个前台应用程序的资源调度优先级;所述多个前台应用程序的用户界面均显示于所述电子设备的屏幕中;
所述前台应用程序的关注度是根据以下一项或多项确定的:所述前台应用程序的用户界面在所述电子设备的屏幕中的显示区域与第一区域的重叠范围、所述前台应用程序的用户界面中显示画面的信息量、显示画面的变动幅度、显示画面的亮度变化幅度、显示画面的播放热度;所述第一区域是用户眼睛在所述屏幕中聚焦的区域;
所述电子设备根据所述多个前台应用程序中每个前台应用程序的资源调度优先级,为所述多个前台应用程序调度资源。
2.根据权利要求1所述的方法,其特征在于,所述多个前台应用程序包括用户界面中显示画面变动的第一应用程序。
3.根据权利要求1或2所述的方法,其特征在于,所述前台应用程序的用户界面中显示画面是采用动态比特率VBR编码的;
所述前台应用程序的用户界面中显示画面的信息量是根据该显示画面的码率确定的。
4.根据权利要求1至3任一项所述的方法,其特征在于,所述前台应用程序的用户界面中显示画面是采用VBR编码的;
所述前台应用程序的用户界面中显示画面的变动幅度是根据该显示画面的码率变化率确定的。
5.根据权利要求1至3任一项所述的方法,其特征在于,
所述前台应用程序的用户界面中显示画面的变动幅度是根据该显示画面中点位的运动向量确定的。
6.根据权利要求1至5任一项所述的方法,其特征在于,所述前台应用程序的用户界面中的显示画面是所述电子设备基于接收的来自服务器的数据流显示的;
所述前台应用程序的用户界面中显示画面的播放热度是根据该显示画面的播放频次确定的。
7.根据权利要求1至6任一项所述的方法,其特征在于,
所述多个前台应用程序包括第二应用程序和第三应用程序,所述第二应用程序的关注度高于所述第三应用程序的关注度;
所述第二应用程序的资源调度优先级高于所述第三应用程序的源调度优先级。
8.一种电子设备,其特征在于,所述电子设备包括:一个或多个处理器和存储器;
所述存储器与所述一个或多个处理器耦合,所述存储器用于存储计算机程序代码,所述计算机程序代码包括计算机指令,所述一个或多个处理器调用所述计算机指令以使得所述电子设备执行如权利要求1至7中任一项所述的方法。
9.一种芯片系统,其特征在于,所述芯片系统应用于电子设备,所述芯片系统包括一个或多个处理器,所述处理器用于调用计算机指令以使得所述电子设备执行如权利要求1至7中任一项所述的方法。
10.一种计算机可读存储介质,包括指令,其特征在于,当所述指令在电子设备上运行时,使得述电子设备执行如权利要求1至7中任一项所述的方法。
11.一种包含指令的计算机程序产品,其特征在于,当所述计算机程序产品在电子设备上运行时,使得所述电子设备执行如权利要求1至7中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211340725.6A CN117950846A (zh) | 2022-10-29 | 2022-10-29 | 资源调度方法及相关装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211340725.6A CN117950846A (zh) | 2022-10-29 | 2022-10-29 | 资源调度方法及相关装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117950846A true CN117950846A (zh) | 2024-04-30 |
Family
ID=90802180
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211340725.6A Pending CN117950846A (zh) | 2022-10-29 | 2022-10-29 | 资源调度方法及相关装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117950846A (zh) |
-
2022
- 2022-10-29 CN CN202211340725.6A patent/CN117950846A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114397979B (zh) | 一种应用显示方法及电子设备 | |
CN115473957B (zh) | 一种图像处理方法和电子设备 | |
WO2021213164A1 (zh) | 应用界面交互方法、电子设备和计算机可读存储介质 | |
WO2021000881A1 (zh) | 一种分屏方法及电子设备 | |
WO2021036770A1 (zh) | 一种分屏处理方法及终端设备 | |
CN114816209A (zh) | 一种移动终端的全屏显示方法及设备 | |
WO2021249087A1 (zh) | 卡片分享方法、电子设备及通信系统 | |
CN112527476B (zh) | 资源调度方法及电子设备 | |
WO2021258814A1 (zh) | 视频合成方法、装置、电子设备及存储介质 | |
CN109857401B (zh) | 电子设备的显示方法、图形用户界面及电子设备 | |
CN115333941B (zh) | 获取应用运行情况的方法及相关设备 | |
CN114205457B (zh) | 一种移动用户界面元素的方法、电子设备及存储介质 | |
CN117234398A (zh) | 一种屏幕亮度调节方法及电子设备 | |
CN116048831B (zh) | 一种目标信号处理方法和电子设备 | |
CN115964231A (zh) | 基于负载模型的评估方法和装置 | |
CN117950846A (zh) | 资源调度方法及相关装置 | |
CN114527903A (zh) | 一种按键映射方法、电子设备及系统 | |
CN116185245B (zh) | 一种页面显示方法及电子设备 | |
CN116089057B (zh) | 资源调度方法、设备、存储介质和程序产品 | |
CN115460343B (zh) | 图像处理方法、设备及存储介质 | |
CN114513575B (zh) | 一种收藏处理的方法及相关装置 | |
CN117762281A (zh) | 管理服务卡片的方法和电子设备 | |
CN116414493A (zh) | 图像处理方法、电子设备及存储介质 | |
CN116700568A (zh) | 删除对象的方法及电子设备 | |
CN117666861A (zh) | 服务卡片分发方法、系统和电子设备 |
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 |