CN114201304A - 应用程序的运行方法、装置、设备及存储介质 - Google Patents
应用程序的运行方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN114201304A CN114201304A CN202111539712.7A CN202111539712A CN114201304A CN 114201304 A CN114201304 A CN 114201304A CN 202111539712 A CN202111539712 A CN 202111539712A CN 114201304 A CN114201304 A CN 114201304A
- Authority
- CN
- China
- Prior art keywords
- mobile terminal
- target
- running
- resource
- network performance
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
- G06F9/505—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/3006—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is distributed, e.g. networked systems, clusters, multiprocessor systems
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3058—Monitoring arrangements for monitoring environmental properties or parameters of the computing system or of the computing system component, e.g. monitoring of power, currents, temperature, humidity, position, vibrations
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5011—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
- G06F9/5016—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/5018—Thread allocation
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/508—Monitor
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- Quality & Reliability (AREA)
- Mathematical Physics (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明涉及大数据技术领域,公开了一种应用程序的运行方法、装置、设备及存储介质,用于解决不同硬件条件或网络环境的移动设备中,应用程序的运行效果差异大的技术问题。所述应用程序的运行方法包括:根据时钟脉冲数量信息计算移动终端的中央处理器占用率;计算移动终端的可用物理内存信息;根据采集到的网络性能指标,计算移动终端的网络性能指数;对移动终端的主线程进行运行循环参数计算,得到移动终端的运行流畅度;根据中央处理器占用率、可用物理内存信息、网络性能指数和运行流畅度,确定目标应用程序的目标加载资源,并按照目标加载资源运行目标应用程序。此外,本发明还涉及区块链技术,目标加载资源可存储于区块链节点中。
Description
技术领域
本发明涉及资源分配领域,尤其涉及一种应用程序的运行方法、装置、设备及存储介质。
背景技术
随着移动互联技术的发展,移动设备的制造商不断地推陈出新,使得有各种各样不同硬件配置的移动设备运行在互联网中,设备之间的硬件差距也越来越大,导致应用程序在不同硬件条件设备上的运行效果也存在较大的差异,甚至存在老设备无法运行的问题。
现有技术中,为了使应用程序在不同硬件条件的设备上正常运行,一般会在应用程序安装之前,获取移动设备的硬件参数,如设备型号、内核版本和处理器类型等,再根据获取到的硬件参数下载最终在设备上运行的软件包,对于低版本的设备安装向下兼容的软件包,从而兼顾不同设备的软件运行效果。但是,通过硬件参数设置的兼容软件包只能解决差异跨度较大的硬件设备上的运行问题,不能灵活地解决软件运行过程中出现的性能问题或网络问题,导致不同硬件条件或网络环境的移动设备中应用程序的运行效果仍存在较大差异。
发明内容
本发明提供了一种应用程序的运行方法、装置、设备及存储介质,用于解决不同硬件条件或网络环境的移动设备中,应用程序的运行效果差异大的技术问题。
本发明第一方面提供了一种应用程序的运行方法,包括:
获取移动终端的时钟脉冲数量信息,并根据所述时钟脉冲数量信息计算所述移动终端的中央处理器占用率;
通过对所述移动终端运行中的应用程序进行占用内存计算,得到可用物理内存信息;
采集所述移动终端的网络性能指标,并根据所述网络性能指标,计算所述移动终端的网络性能指数;
对所述移动终端的主线程进行运行循环参数计算,得到运行流畅度;
根据所述中央处理器占用率、所述可用物理内存信息、所述网络性能指数和所述运行流畅度,确定目标应用程序的目标加载资源,并按照所述目标加载资源运行所述目标应用程序。
可选的,在本发明第一方面的第一种实现方式中,所述获取移动终端的时钟脉冲数量信息,并根据所述时钟脉冲数量信息计算所述移动终端的中央处理器占用率,包括:
通过预置的主机统计函数,对移动终端的中央处理器负载信息进行统计,得到中央处理器负载数据;
提取所述中央处理器负载数据中的时钟脉冲数量信息,所述时钟脉冲数量信息包括用户进程模式下的第一时钟脉冲数量、内核进程模式下的第二时钟脉冲数量、空闲模式下的第三时钟脉冲数量和等待模式下的第四时钟脉冲数量;
根据所述第一时钟脉冲数量、所述第二时钟脉冲数量、所述第三时钟脉冲数量和所述第四时钟脉冲数量,计算所述移动终端的中央处理器占用率。
可选的,在本发明第一方面的第二种实现方式中,所述通过对所述移动终端运行中的应用程序进行占用内存计算,得到可用物理内存信息,包括:
读取所述移动终端的固件参数信息,并提取所述固件参数信息中的固有物理内存信息;
通过预置的主机统计函数,获取活动状态的应用程序线程数量和内核线程数量,并根据所述应用程序线程数量和所述内核线程数量,计算所述移动终端的占用物理内存信息;
根据所述固有物理内存信息和所述占用物理内存信息,计算所述移动终端的可用物理内存信息。
可选的,在本发明第一方面的第三种实现方式中,所述采集所述移动终端的网络性能指标,并根据所述网络性能指标,计算所述移动终端的网络性能指数,包括:
通过预置的钩子函数,向目标应用程序注入网络性能监控脚本;
通过所述网络性能监控脚本,采集所述移动终端的网络性能指标,所述网络性能指标包括连接建立时长、上行流量和下行流量;
基于所述连接建立时长、所述上行流量和所述下性流量,计算所述移动终端的网络性能指数。
可选的,在本发明第一方面的第四种实现方式中,所述对所述移动终端的主线程进行运行循环参数计算,得到运行流畅度,包括:
创建卡顿监控子线程,并通过所述卡顿监控子线程对主线程的运行循环参数进行监控,得到所述主线程中各个状态域的进入时刻;
基于所述主线程中各个状态域的进入时刻,计算主线程中任意两个相邻状态域之间的切换耗时,得到状态域切换时长;
根据所述状态域切换时长,计算所述移动终端的运行流畅度。
可选的,在本发明第一方面的第五种实现方式中,所述根据所述中央处理器占用率、所述可用物理内存信息、所述网络性能指数和所述运行流畅度,确定目标应用程序的目标加载资源,并按照所述目标加载资源运行所述目标应用程序,包括:
判断所述中央处理器占用率是否高于预置占有率阈值,判断所述可用物理内存信息是否低于预置内存阈值,判断所述网络性能指数是否低于预置性能指数阈值,以及判断所述运行流畅度是否低于预置流畅度阈值,得到目标判断结果;
基于所述目标判断结果,确定目标应用程序的目标资源加载等级;
通过所述目标资源加载等级,确定所述目标应用程序的目标加载资源,并按照所述目标加载资源运行所述目标应用程序。
可选的,在本发明第一方面的第六种实现方式中,所述通过所述目标资源加载等级,确定所述目标应用程序的目标加载资源,并按照所述目标加载资源运行所述目标应用程序,包括:
判断所述目标资源加载等级是否大于或等于预置优化资源加载等级;
若所述目标资源加载等级大于或等于预置优化资源加载等级,则从预置加载资源中获取优化资源,并将所述优化资源设置为所述目标应用程序的目标加载资源;
若所述目标资源加载等级小于预置优化资源加载等级,则按照所述目标资源加载等级获取目标加载资源;
按照所述目标加载资源加载所述目标应用程序。
本发明第二方面提供了一种应用程序的运行装置,包括:
获取模块,用于获取移动终端的时钟脉冲数量信息,并根据所述时钟脉冲数量信息计算所述移动终端的中央处理器占用率;
计算模块,用于通过对所述移动终端运行中的应用程序进行占用内存计算,得到可用物理内存信息;
采集模块,用于采集所述移动终端的网络性能指标,并根据所述网络性能指标,计算所述移动终端的网络性能指数;
循环模块,用于对所述移动终端的主线程进行运行循环参数计算,得到运行流畅度;
运行模块,用于根据所述中央处理器占用率、所述可用物理内存信息、所述网络性能指数和所述运行流畅度,确定目标应用程序的目标加载资源,并按照所述目标加载资源运行所述目标应用程序。
可选的,在本发明第二方面的第一种实现方式中,所述获取模块具体用于:
通过预置的主机统计函数,对移动终端的中央处理器负载信息进行统计,得到中央处理器负载数据;
提取所述中央处理器负载数据中的时钟脉冲数量信息,所述时钟脉冲数量信息包括用户进程模式下的第一时钟脉冲数量、内核进程模式下的第二时钟脉冲数量、空闲模式下的第三时钟脉冲数量和等待模式下的第四时钟脉冲数量;
根据所述第一时钟脉冲数量、所述第二时钟脉冲数量、所述第三时钟脉冲数量和所述第四时钟脉冲数量,计算所述移动终端的中央处理器占用率。
可选的,在本发明第二方面的第二种实现方式中,所述计算模块具体用于:
读取所述移动终端的固件参数信息,并提取所述固件参数信息中的固有物理内存信息;
通过预置的主机统计函数,获取活动状态的应用程序线程数量和内核线程数量,并根据所述应用程序线程数量和所述内核线程数量,计算所述移动终端的占用物理内存信息;
根据所述固有物理内存信息和所述占用物理内存信息,计算所述移动终端的可用物理内存信息。
可选的,在本发明第二方面的第三种实现方式中,所述采集模块具体用于:
通过预置的钩子函数,向目标应用程序注入网络性能监控脚本;
通过所述网络性能监控脚本,采集所述移动终端的网络性能指标,所述网络性能指标包括连接建立时长、上行流量和下行流量;
基于所述连接建立时长、所述上行流量和所述下性流量,计算所述移动终端的网络性能指数。
可选的,在本发明第二方面的第四种实现方式中,所述循环模块具体用于:
创建卡顿监控子线程,并通过所述卡顿监控子线程对主线程的运行循环参数进行监控,得到所述主线程中各个状态域的进入时刻;
基于所述主线程中各个状态域的进入时刻,计算主线程中任意两个相邻状态域之间的切换耗时,得到状态域切换时长;
根据所述状态域切换时长,计算所述移动终端的运行流畅度。
可选的,在本发明第二方面的第五种实现方式中,所述运行模块包括:
判断单元,用于判断所述中央处理器占用率是否高于预置占有率阈值,判断所述可用物理内存信息是否低于预置内存阈值,判断所述网络性能指数是否低于预置性能指数阈值,以及判断所述运行流畅度是否低于预置流畅度阈值,得到目标判断结果;
确定单元,用于基于所述目标判断结果,确定目标应用程序的目标资源加载等级;
运行单元,用于通过所述目标资源加载等级,确定所述目标应用程序的目标加载资源,并按照所述目标加载资源运行所述目标应用程序。
可选的,在本发明第二方面的第六种实现方式中,所述运行单元具体用于:
判断所述目标资源加载等级是否大于或等于预置优化资源加载等级;
若所述目标资源加载等级大于或等于预置优化资源加载等级,则从预置加载资源中获取优化资源,并将所述优化资源设置为所述目标应用程序的目标加载资源;
若所述目标资源加载等级小于预置优化资源加载等级,则按照所述目标资源加载等级获取目标加载资源;
按照所述目标加载资源加载所述目标应用程序。
本发明第三方面提供了一种应用程序的运行设备,包括:存储器和至少一个处理器,所述存储器中存储有计算机程序;所述至少一个处理器调用所述存储器中的所述计算机程序,以使得所述应用程序的运行设备执行上述的应用程序的运行方法。
本发明的第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,当其在计算机上运行时,使得计算机执行上述的应用程序的运行方法。
本发明提供的技术方案中,获取移动终端的时钟脉冲数量信息,并根据所述时钟脉冲数量信息计算所述移动终端的中央处理器占用率;通过对所述移动终端运行中的应用程序进行占用内存计算,得到可用物理内存信息;采集所述移动终端的网络性能指标,并根据所述网络性能指标,计算所述移动终端的网络性能指数;对所述移动终端的主线程进行运行循环参数计算,得到运行流畅度;根据所述中央处理器占用率、所述可用物理内存信息、所述网络性能指数和所述运行流畅度,确定目标应用程序的目标加载资源,并按照所述目标加载资源运行所述目标应用程序。本发明实施例中,通过移动终端的时钟脉冲数计算中央处理器占用率,中央处理器占用率用于衡量移动终端的中央处理器计算能力,再通过运行中的应用程序占用的内存大小,计算移动终端的可用物理内存信息,可用物理内存信息用于衡量移动终端的数据临时存储能力,接着,通过网络性能指标计算移动终端的网络性能指数,网络性能指数用于衡量移动终端的网络运载能力,再通过主线程的运行循环参数,计算移动终端的运行流畅度,运行流畅度用于衡量移动终端的画面渲染能力,最后,结合中央处理器占用率、所述可用物理内存信息、所述网络性能指数和所述运行流畅度,确定目标应用程序的目标加载资源。本发明可以解决不同硬件条件或网络环境的移动设备中,应用程序的运行效果差异大的技术问题。
附图说明
图1为本发明实施例中应用程序的运行方法的一个实施例示意图;
图2为本发明实施例中应用程序的运行方法的另一个实施例示意图;
图3为本发明实施例中应用程序的运行装置的一个实施例示意图;
图4为本发明实施例中应用程序的运行装置的另一个实施例示意图;
图5为本发明实施例中应用程序的运行设备的一个实施例示意图。
具体实施方式
本发明实施例提供了一种应用程序的运行方法、装置、设备及存储介质,用于解决不同硬件条件或网络环境的移动设备中,应用程序的运行效果差异大的技术问题。
本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”或“具有”及其任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
可以理解的是,本发明的执行主体可以为应用程序的运行装置,还可以是移动终端或者服务器,具体此处不做限定。本发明实施例以移动终端为执行主体为例进行说明。服务器可以是独立的服务器,也可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(Content DeliveryNetwork,CDN)、以及大数据和人工智能平台等基础云计算服务的云服务器。
为便于理解,下面对本发明实施例的具体流程进行描述,请参阅图1,本发明实施例中应用程序的运行方法的一个实施例包括:
101、获取移动终端的时钟脉冲数量信息,并根据时钟脉冲数量信息计算移动终端的中央处理器占用率;
需要说明的是,中央处理器(central processing unit,CPU)占有率是指移动终端运行中的应用程序对CPU资源的使用率,CPU资源是移动设备重要的计算资源,若CPU持续处于高负载状态,一方面会导致系统卡顿,另一方面会导致移动设备发热发烫,电量消耗快速,影响设备寿命和用户体验,因此,为了降低应用程序在移动终端的CPU占有率,提高应用程序的运行速度,服务器通过移动终端的时钟脉冲数计算CPU占有率,以通过CPU占有率确定应用程序的加载资源。
需要说明的是,时钟脉冲数是指CPU运算时的工作频率(1秒内发生的同步时钟脉冲数),是一个按一定电压幅度,一定时间间隔连续发出的脉冲信号,即CPU的时钟频率,简称CPU频率,单位为Hz,CPU频率,在一种实施方式中,移动终端通过预置的主机统计函数获取移动终端的时钟脉冲数量信息,其中,主机统计函数为移动终端操作系统提供的接口函数,用于获取移动终端的硬件资源数据。
在一种实施方式中,由于线程是移动终端操作系统调配和分配资源的基本单位,而当应用程序作为进程运行时,相当于多个不同的线程在运行,因此,移动终端通过读取运行中的应用程序的占用线程数量,计算占用线程数量占总线程数量的比例,得到CPU占有率,本实施方式能够准确地计算CPU占有率,从而提高应用程序加载资源选择的准确率。
102、通过对移动终端运行中的应用程序进行占用内存计算,得到可用物理内存信息;
需要说明的是,物理内存(random access memory,RAM)是指随机存取存储器,是移动终端操作系统与CPU直接交换数据的内部存储器,它可以随时读写,而且速度很快,通常作为操作系统或其它正在运行中的应用程序的临时数据存储介质,物理内存与CPU一样都是移动终端操作系统中稀缺的资源,也是最有可能产生竞争的资源,因此,为了提高应用程序的运行效率,移动终端通过运行中的应用程序所占用的内存大小,计算移动终端的可用物理内存信息,可用物理内存信息用于指示移动终端的可用物理内存大小,本实施方式通过计算移动终端的可用物理内存信息,以确定目标应用程序所要加载的目标资源,从而通过有选择性地加载资源,提高应用程序的运行速度和性能。
在一种实施方式中,移动终端通过预置的主机统计函数读取移动终端的固有物理内存信息,并通过预置的应用运行信息读取接口读取移动终端运行中的应用程序所占用的物理内存大小,得到占用物理内存信息,再将固有物理内存信息减去占用物理内存信息,得到移动终端的可用物理内存信息,本实施方式能够快速地计算移动终端的可用物理内存信息,从而提高应用程序选择加载资源的效率,进而提高应用程序的运行速度和性能。
103、采集移动终端的网络性能指标,并根据网络性能指标,计算移动终端的网络性能指数;
需要说明的是,由于移动终端的网络环境复杂,移动终端的网络可能会在5G/4G/3G/2.5G/2G/WIFI等不同的网络类型之间切换,另外,传统的运营商网络还存在域名解析(domain name resolution,DNS)慢、失败率高、DNS被劫持等问题,国内运营商网络互联、海外访问国内带宽低、传输慢等问题,网络问题将导致移动终端的应用程序无法正常运行,因此,对移动终端的网络性能进行评估与分析,并根据当前网络性能指数选择应用程序所要加载的资源,能够减少应用程序无法正常运行的情况出现,并保证应用程序能够适应不同的网络环境,使得应用程序的运行性能提高,失败率降低,进而提高应用程序的整体运行性能。
需要说明的是,网络性能指标包括但不限于传输控制协议(transmissioncontrol protocol,TCP)建立连接时长、DNS时长、安全套接字协议(secure socketslayer,SSL)时长、首包时长、响应时长、超文本传输协议(hyper text transfer protocol,HTTP)错误率、网络错误率、流量等用于衡量网络性能的参数。在一种实施方式中,移动终端通过预置的埋点代码对移动终端的网络性能指标进行采集,并通过采集到的网络性能指标,对移动终端的网络性能进行定级处理,得到移动终端的网络性能指数。本实施方式能够快速地获得当前网络环境下的网络性能指标,从而快速地确定适用于当前网络环境的应用程序加载资源,进而提高应用程序的运行速度和性能。
104、对移动终端的主线程进行运行循环参数计算,得到运行流畅度;
需要说明的是,移动终端完成屏幕上图形的显示实际上是由图形处理器(graphics processing unit,GPU)、CPU和显示器协同工作的结果,CPU负责计算显示内容,包括视图的创建、布局计算、图片解码、文本绘制等,CPU完成计算后会将计算内容提交给GPU,GPU进行变换、合成、渲染后将渲染结果提交到帧缓冲区,当下一次垂直同步信号(简称V-Sync)到来时,显示到显示器上。如果在图像真正在屏幕显示之前,CPU和GPU为了完成自身的任务,而错过了下一次V-Sync的到来(通常是16.67ms),这样就会出现显示屏还是之前帧的内容,造成界面卡顿。而为了减少界面卡顿,提高应用程序的运行性能,移动终端提高计算移动终端的主现场的运行循环参数(RunLoop),确定移动终端的运行流程度,以通过运行流畅度选择适用于当前运行流程度的应用程序加载资源,进而提高应用程序的运行速度和性能。
在一种实施方式中,每秒传输帧数(frames per second,FPS)是测量用于保存、显示动态视频的信息数量,每秒传输帧数越高,所显示的画面就会越流畅,因此,移动终端通过采集移动终端预置时长(如2秒)内的传输帧数,计算移动终端的丢帧率,并通过丢帧率对移动终端进行运行流畅度定级,得到移动终端的运行流畅度。本实施方式能够准确地确定移动终端的运行流畅度,以通过运行流畅度确定适用于当前画面渲染性能的应用程序加载资源,进而提高应用程序的运行速度和性能。
105、根据中央处理器占用率、可用物理内存信息、网络性能指数和运行流畅度,确定目标应用程序的目标加载资源,并按照目标加载资源运行目标应用程序。
需要说明的是,通过中央处理器占用率、可用物理内存信息、网络性能指数和运行流畅度,能够准确地衡量移动终端的真实硬件设备环境和网络环境,从而准确地选择适应当前硬件设备环境和网络环境的目标加载资源,如在硬件设备环境和网络环境较差的情况下选择对硬件设备性能和网络性能要求较低的目标加载资源,如图片压缩率高的资源或屏蔽高消耗功能的入口,而在硬件设备环境和网络环境佳的情况下选择对硬件设备性能和网络性能要求较高的目标加载资源,如图片压缩率低的资源或提供高消耗功能的入口。本实施方式能够在不同硬件设备环境下和不同网络环境下,通过对加载资源的降级或升级,保证应用程序的正常运行,使得应用程序的运行方式更灵活。
在一种实施方式中,移动终端按照中央处理器占用率、可用物理内存信息、网络性能指数和运行流畅度分别对应的权重系数,对移动终端的运行环境进行定级处理,并根据定级处理结果确定目标应用程序的目标加载资源,以使得移动终端按照目标加载资源运行目标应用程序。
进一步地,服务器将目标加载资源存储于区块链数据库中,具体此处不做限定。
本发明实施例中,通过移动终端的时钟脉冲数计算中央处理器占用率,中央处理器占用率用于衡量移动终端的中央处理器计算能力,再通过运行中的应用程序占用的内存大小,计算移动终端的可用物理内存信息,可用物理内存信息用于衡量移动终端的数据临时存储能力,接着,通过网络性能指标计算移动终端的网络性能指数,网络性能指数用于衡量移动终端的网络运载能力,再通过主线程的运行循环参数,计算移动终端的运行流畅度,运行流畅度用于衡量移动终端的画面渲染能力,最后,结合中央处理器占用率、可用物理内存信息、网络性能指数和运行流畅度,确定目标应用程序的目标加载资源。本发明可以解决不同硬件条件或网络环境的移动设备中,应用程序的运行效果差异大的技术问题。
请参阅图2,本发明实施例中应用程序的运行方法的另一个实施例包括:
201、获取移动终端的时钟脉冲数量信息,并根据时钟脉冲数量信息计算移动终端的中央处理器占用率;
具体的,服务器通过预置的主机统计函数,对移动终端的中央处理器负载信息进行统计,得到中央处理器负载数据;服务器提取中央处理器负载数据中的时钟脉冲数量信息,时钟脉冲数量信息包括用户进程模式下的第一时钟脉冲数量、内核进程模式下的第二时钟脉冲数量、空闲模式下的第三时钟脉冲数量和等待模式下的第四时钟脉冲数量;服务器根据第一时钟脉冲数量、第二时钟脉冲数量、第三时钟脉冲数量和第四时钟脉冲数量,计算移动终端的中央处理器占用率。
需要说明的是,预置的主机统计函数为移动终端操作系统提供的接口函数,用于获取移动终端的硬件资源数据,如iOS操作系统的host_statistics函数,移动终端通过预置的主机统计函数对移动终端的CPU负载信息进行采集和统计,得到CPU负载数据,其中,CPU负载数据包括多种进程模式下的时钟脉冲数量信息,多种进程模式包括用户进程模式、内核进程模式、空闲模式和等待模式,例如,远程服务器访问、数据库操作等属于用户进程模式下的操作,创建子进程、分配内存、IO等属于内核进程模式下的操作,当CPU发起读写操作后,等待磁盘驱动器将数据读入内存时处于等待模式,当CPU无计算任务时处于空闲模式,具体不做限定。
在一种实施方式中,移动终端将第一时钟脉冲数量、第二时钟脉冲数量、第三时钟脉冲数量和第四时钟脉冲数量相加,得到总时钟脉冲数量,再将第一时钟脉冲数量和第一时钟脉冲数量之和除以总时钟脉冲数量,得到进程脉冲占用率,并将进程脉冲占用率设置为移动终端的中央处理器占用率。本实施方式能够基于CPU的运行原理,准确地计算CPU占用率,从而准确地选择应用程序的加载资源,进而提高应用程序在不同硬件条件下的运行速度和性能。
202、通过对移动终端运行中的应用程序进行占用内存计算,得到可用物理内存信息;
具体的,服务器读取移动终端的固件参数信息,并提取固件参数信息中的固有物理内存信息;服务器通过预置的主机统计函数,获取活动状态的应用程序线程数量和内核线程数量,并根据应用程序线程数量和内核线程数量,计算移动终端的占用物理内存信息;服务器根据固有物理内存信息和占用物理内存信息,计算移动终端的可用物理内存信息。
在一种实施方式中,移动终端通过预置的主机统计函数读取移动终端的固件参数信息,其中固件参数信息用于指示移动终端的固件参数,如设备型号、设备名称、物理内存大小和系统版本等,移动终端提取固件参数信息中的固有物理内存信息,固有物理内存信息用于指示移动设备内存固件的物理内存大小。为了准确地计算移动终端的可用物理内存信息,移动终端通过预置的主机统计函数读取处于运行状态的应用程序线程数量核内核线程数量,并计算处于运行状态的应用程序线程数量核内核线程数量占用物理内存的大小,得到占用物理内存信息,再将固有物理内存信息减去占用物理内存信息,得到移动终端的可用物理内存信息。
203、采集移动终端的网络性能指标,并根据网络性能指标,计算移动终端的网络性能指数;
具体的,服务器通过预置的钩子函数,向目标应用程序注入网络性能监控脚本;服务器通过网络性能监控脚本,采集移动终端的网络性能指标,网络性能指标包括连接建立时长、上行流量和下行流量;服务器基于连接建立时长、上行流量和下性流量,计算移动终端的网络性能指数。
本实施方式中,为了准确地获取移动终端的真实网络环境参数,移动终端将预置的网络性能监控脚本注入目标应用程序预置的钩子函数中,其中,预置的钩子函数用于指示底层网络库的生命周期函数,能够在底层网络库的不同生命周期执行网络性能监控脚本,使得网络性能监控脚本无需侵入到目标应用程序的业务代码中即能对移动终端的真实网络环境进行监控,提高了网络监控性能。本实施方式中,通过网络性能监控脚本采集移动终端的网络性能指标,其中,网络性能指标包括连接(TCP)建立时长、上行流量和下行流量,移动终端通过计算网络性能指标占基准性能指标的比例,对移动终端的网络性能进行定级处理,得到网络性能指数。
204、创建卡顿监控子线程,并通过卡顿监控子线程对主线程的运行循环参数进行监控,得到主线程中各个状态域的进入时刻;
本实施方式中,为了计算移动终端的运行流畅度,移动终端创建卡顿监控子线程对主线程的运行循环参数(RunLoop)进行监控,其中,运行循环参数用于指示主线程中不同状态域的切换时刻,移动终端从运行循环参数中提取主线程中各个状态域的进入时刻,用于后续的运行流畅度计算。
205、基于主线程中各个状态域的进入时刻,计算主线程中任意两个相邻状态域之间的切换耗时,得到状态域切换时长;
本实施方式中,移动终端基于主线程中各个状态域的进入时刻,实时计算任意两个相邻状态域之间的切换时长,得到状态域切换时长,如信号发送前的状态域和信号发送后的状态域。本实施方式能够准确地计算状态域切换时长,进而准确地计算移动终端的运行流畅度。
206、根据状态域切换时长,计算移动终端的运行流畅度;
在一种实施方式中,移动终端计算状态域切换时长占基准切换时长的比率,得到状态域的切换流畅度,并将状态域的切换流畅度设置为移动终端的运行流畅度。本实施方式能够准确地计算移动终端的运行流畅度,从而准确地选择应用程序的加载资源,进而提高应用程序在不同硬件条件下的运行速度和性能。
207、根据中央处理器占用率、可用物理内存信息、网络性能指数和运行流畅度,确定目标应用程序的目标加载资源,并按照目标加载资源运行目标应用程序。
具体的,判断中央处理器占用率是否高于预置占有率阈值,判断可用物理内存信息是否低于预置内存阈值,判断网络性能指数是否低于预置性能指数阈值,以及判断运行流畅度是否低于预置流畅度阈值,得到目标判断结果;
基于目标判断结果,确定目标应用程序的目标资源加载等级;
通过目标资源加载等级,确定目标应用程序的目标加载资源,并按照目标加载资源运行目标应用程序。
需要说明的是,移动终端判断中央处理器占用率是否高于预置占有率阈值,得到第一判断结果,判断可用物理内存信息是否低于预置内存阈值,得到第二判断结果,判断网络性能指数是否低于预置性能指数阈值,得到第三判断结果,以及判断运行流畅度是否低于预置流畅度阈值,得到第四判断结果,再将第一判断结果、第二判断结果、第三判断结果和第四判断结果合并,得到目标判断结果。移动终端根据目标判断结果中各判断结果对应的资源加载权重,确定目标应用程序的目标资源加载资源,如第一判断结果为0、第二判断结果为1、第三判断结果为1和第四判断结果为0,而第一判断结果对应的资源加载权重为5、第二判断结果对应的资源加载权重为3、第三判断结果对应的资源加载权重为2以及第四判断结果对应的资源加载权重为1,那么,目标应用程序的目标资源加载等级为0*5+1*3+1*2+0*1=5,具体不做限定。
进一步的,服务器通过目标资源加载等级,确定目标应用程序的目标加载资源,并按照目标加载资源运行目标应用程序,包括:服务器判断目标资源加载等级是否大于或等于预置优化资源加载等级;若目标资源加载等级大于或等于预置优化资源加载等级,则服务器从预置加载资源中获取优化资源,并将优化资源设置为目标应用程序的目标加载资源;若目标资源加载等级小于预置优化资源加载等级,则服务器按照目标资源加载等级获取目标加载资源;服务器按照目标加载资源加载目标应用程序。
需要说明的是,为了对不同硬件设备条件和网络环境条件的移动终端进行适配资源加载,使硬件设备条件和网络环境条件佳的移动终端能够体验对性能要求高的功能,而硬件设备条件或网络环境条件较差的移动终端能够保证应用程序的正常且顺畅地运行,移动终端通过判断目标资源加载等级是否大于或等于预置优化资源加载等级,确定是否加载优化资源,其中,优化资源用于指示对移动终端设备硬件和网络要求高的功能包,如实时增强现实(augmented reality,AR)功能。若目标资源加载等级大于或等于预置优化资源加载等级,则将优化资源设置为目标加载资源,并通过目标加载资源运行目标应用程序,若目标资源加载等级小于预置优化资源加载等级,则不加载优化资源,仅按照目标资源加载等级对应的目标加载资源运行目标应用程序,避免硬件设备条件或网络环境条件较差的移动终端出现卡顿或无法正常使用的情况出现。
本发明实施例中,通过移动终端的时钟脉冲数计算中央处理器占用率,中央处理器占用率用于衡量移动终端的中央处理器计算能力,再通过运行中的应用程序占用的内存大小,计算移动终端的可用物理内存信息,可用物理内存信息用于衡量移动终端的数据临时存储能力,接着,通过网络性能指标计算移动终端的网络性能指数,网络性能指数用于衡量移动终端的网络运载能力,再通过主线程中各个状态域的切换时长,计算移动终端的运行流畅度,运行流畅度用于衡量移动终端的画面渲染能力,最后,结合中央处理器占用率、可用物理内存信息、网络性能指数和运行流畅度,确定目标应用程序的目标加载资源。本发明可以解决不同硬件条件或网络环境的移动设备中,应用程序的运行效果差异大的技术问题。
上面对本发明实施例中应用程序的运行方法进行了描述,下面对本发明实施例中应用程序的运行装置进行描述,请参阅图3,本发明实施例中应用程序的运行装置一个实施例包括:
获取模块301,用于获取移动终端的时钟脉冲数量信息,并根据所述时钟脉冲数量信息计算所述移动终端的中央处理器占用率;
计算模块302,用于通过对所述移动终端运行中的应用程序进行占用内存计算,得到可用物理内存信息;
采集模块303,用于采集所述移动终端的网络性能指标,并根据所述网络性能指标,计算所述移动终端的网络性能指数;
循环模块304,用于对所述移动终端的主线程进行运行循环参数计算,得到运行流畅度;
运行模块305,用于根据所述中央处理器占用率、所述可用物理内存信息、所述网络性能指数和所述运行流畅度,确定目标应用程序的目标加载资源,并按照所述目标加载资源运行所述目标应用程序。
进一步地,将目标加载资源存储于区块链数据库中,具体此处不做限定。
本发明实施例中,通过移动终端的时钟脉冲数计算中央处理器占用率,中央处理器占用率用于衡量移动终端的中央处理器计算能力,再通过运行中的应用程序占用的内存大小,计算移动终端的可用物理内存信息,可用物理内存信息用于衡量移动终端的数据临时存储能力,接着,通过网络性能指标计算移动终端的网络性能指数,网络性能指数用于衡量移动终端的网络运载能力,再通过主线程的运行循环参数,计算移动终端的运行流畅度,运行流畅度用于衡量移动终端的画面渲染能力,最后,结合中央处理器占用率、所述可用物理内存信息、所述网络性能指数和所述运行流畅度,确定目标应用程序的目标加载资源。本发明可以解决不同硬件条件或网络环境的移动设备中,应用程序的运行效果差异大的技术问题。
请参阅图4,本发明实施例中应用程序的运行装置的另一个实施例包括:
获取模块301,用于获取移动终端的时钟脉冲数量信息,并根据所述时钟脉冲数量信息计算所述移动终端的中央处理器占用率;
计算模块302,用于通过对所述移动终端运行中的应用程序进行占用内存计算,得到可用物理内存信息;
采集模块303,用于采集所述移动终端的网络性能指标,并根据所述网络性能指标,计算所述移动终端的网络性能指数;
循环模块304,用于对所述移动终端的主线程进行运行循环参数计算,得到运行流畅度;
运行模块305,用于根据所述中央处理器占用率、所述可用物理内存信息、所述网络性能指数和所述运行流畅度,确定目标应用程序的目标加载资源,并按照所述目标加载资源运行所述目标应用程序。
可选的,所述获取模块301具体用于:
通过预置的主机统计函数,对移动终端的中央处理器负载信息进行统计,得到中央处理器负载数据;
提取所述中央处理器负载数据中的时钟脉冲数量信息,所述时钟脉冲数量信息包括用户进程模式下的第一时钟脉冲数量、内核进程模式下的第二时钟脉冲数量、空闲模式下的第三时钟脉冲数量和等待模式下的第四时钟脉冲数量;
根据所述第一时钟脉冲数量、所述第二时钟脉冲数量、所述第三时钟脉冲数量和所述第四时钟脉冲数量,计算所述移动终端的中央处理器占用率。
可选的,所述计算模块302具体用于:
读取所述移动终端的固件参数信息,并提取所述固件参数信息中的固有物理内存信息;
通过预置的主机统计函数,获取活动状态的应用程序线程数量和内核线程数量,并根据所述应用程序线程数量和所述内核线程数量,计算所述移动终端的占用物理内存信息;
根据所述固有物理内存信息和所述占用物理内存信息,计算所述移动终端的可用物理内存信息。
可选的,所述采集模块303具体用于:
通过预置的钩子函数,向目标应用程序注入网络性能监控脚本;
通过所述网络性能监控脚本,采集所述移动终端的网络性能指标,所述网络性能指标包括连接建立时长、上行流量和下行流量;
基于所述连接建立时长、所述上行流量和所述下性流量,计算所述移动终端的网络性能指数。
可选的,所述循环模块304具体用于:
创建卡顿监控子线程,并通过所述卡顿监控子线程对主线程的运行循环参数进行监控,得到所述主线程中各个状态域的进入时刻;
基于所述主线程中各个状态域的进入时刻,计算主线程中任意两个相邻状态域之间的切换耗时,得到状态域切换时长;
根据所述状态域切换时长,计算所述移动终端的运行流畅度。
可选的,所述运行模块305包括:
判断单元3051,用于判断所述中央处理器占用率是否高于预置占有率阈值,判断所述可用物理内存信息是否低于预置内存阈值,判断所述网络性能指数是否低于预置性能指数阈值,以及判断所述运行流畅度是否低于预置流畅度阈值,得到目标判断结果;
确定单元3052,用于基于所述目标判断结果,确定目标应用程序的目标资源加载等级;
运行单元3053,用于通过所述目标资源加载等级,确定所述目标应用程序的目标加载资源,并按照所述目标加载资源运行所述目标应用程序。
可选的,所述运行单元3053具体用于:
判断所述目标资源加载等级是否大于或等于预置优化资源加载等级;
若所述目标资源加载等级大于或等于预置优化资源加载等级,则从预置加载资源中获取优化资源,并将所述优化资源设置为所述目标应用程序的目标加载资源;
若所述目标资源加载等级小于预置优化资源加载等级,则按照所述目标资源加载等级获取目标加载资源;
按照所述目标加载资源加载所述目标应用程序。
本发明实施例中,通过移动终端的时钟脉冲数计算中央处理器占用率,中央处理器占用率用于衡量移动终端的中央处理器计算能力,再通过运行中的应用程序占用的内存大小,计算移动终端的可用物理内存信息,可用物理内存信息用于衡量移动终端的数据临时存储能力,接着,通过网络性能指标计算移动终端的网络性能指数,网络性能指数用于衡量移动终端的网络运载能力,再通过主线程中各个状态域的切换时长,计算移动终端的运行流畅度,运行流畅度用于衡量移动终端的画面渲染能力,最后,结合中央处理器占用率、所述可用物理内存信息、所述网络性能指数和所述运行流畅度,确定目标应用程序的目标加载资源。本发明可以解决不同硬件条件或网络环境的移动设备中,应用程序的运行效果差异大的技术问题。
上面图3和图4从模块化功能实体的角度对本发明实施例中的应用程序的运行装置进行详细描述,下面从硬件处理的角度对本发明实施例中应用程序的运行设备进行详细描述。
图5是本发明实施例提供的一种应用程序的运行设备的结构示意图,该应用程序的运行设备500可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(central processing units,CPU)510(例如,一个或一个以上处理器)和存储器520,一个或一个以上存储应用程序533或数据532的存储介质530(例如一个或一个以上海量存储设备)。其中,存储器520和存储介质530可以是短暂存储或持久存储。存储在存储介质530的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对应用程序的运行设备500中的一系列计算机程序操作。更进一步地,处理器510可以设置为与存储介质530通信,在应用程序的运行设备500上执行存储介质530中的一系列计算机程序操作。
应用程序的运行设备500还可以包括一个或一个以上电源540,一个或一个以上有线或无线网络接口550,一个或一个以上输入输出接口560,和/或,一个或一个以上操作系统531,例如Windows Serve,Mac OS X,Unix,Linux,FreeBSD等等。本领域技术人员可以理解,图5示出的应用程序的运行设备结构并不构成对应用程序的运行设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
本发明还提供一种计算机设备,所述计算机设备包括存储器和处理器,存储器中存储有计算机可读计算机程序,计算机可读计算机程序被处理器执行时,使得处理器执行上述各实施例中的所述应用程序的运行方法的步骤。
本发明还提供一种计算机可读存储介质,该计算机可读存储介质可以为非易失性计算机可读存储介质,该计算机可读存储介质也可以为易失性计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,当所述计算机程序在计算机上运行时,使得计算机执行所述应用程序的运行方法的步骤。
进一步地,所述计算机可读存储介质可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序等;存储数据区可存储根据区块链节点的使用所创建的数据等。
本发明所指区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层等。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干计算机程序用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read-onlymemory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (10)
1.一种应用程序的运行方法,其特征在于,所述应用程序的运行方法包括:
获取移动终端的时钟脉冲数量信息,并根据所述时钟脉冲数量信息计算所述移动终端的中央处理器占用率;
通过对所述移动终端运行中的应用程序进行占用内存计算,得到可用物理内存信息;
采集所述移动终端的网络性能指标,并根据所述网络性能指标,计算所述移动终端的网络性能指数;
对所述移动终端的主线程进行运行循环参数计算,得到运行流畅度;
根据所述中央处理器占用率、所述可用物理内存信息、所述网络性能指数和所述运行流畅度,确定目标应用程序的目标加载资源,并按照所述目标加载资源运行所述目标应用程序。
2.根据权利要求1所述的应用程序的运行方法,其特征在于,所述获取移动终端的时钟脉冲数量信息,并根据所述时钟脉冲数量信息计算所述移动终端的中央处理器占用率,包括:
通过预置的主机统计函数,对移动终端的中央处理器负载信息进行统计,得到中央处理器负载数据;
提取所述中央处理器负载数据中的时钟脉冲数量信息,所述时钟脉冲数量信息包括用户进程模式下的第一时钟脉冲数量、内核进程模式下的第二时钟脉冲数量、空闲模式下的第三时钟脉冲数量和等待模式下的第四时钟脉冲数量;
根据所述第一时钟脉冲数量、所述第二时钟脉冲数量、所述第三时钟脉冲数量和所述第四时钟脉冲数量,计算所述移动终端的中央处理器占用率。
3.根据权利要求1所述的应用程序的运行方法,其特征在于,所述通过对所述移动终端运行中的应用程序进行占用内存计算,得到可用物理内存信息,包括:
读取所述移动终端的固件参数信息,并提取所述固件参数信息中的固有物理内存信息;
通过预置的主机统计函数,获取活动状态的应用程序线程数量和内核线程数量,并根据所述应用程序线程数量和所述内核线程数量,计算所述移动终端的占用物理内存信息;
根据所述固有物理内存信息和所述占用物理内存信息,计算所述移动终端的可用物理内存信息。
4.根据权利要求1所述的应用程序的运行方法,其特征在于,所述采集所述移动终端的网络性能指标,并根据所述网络性能指标,计算所述移动终端的网络性能指数,包括:
通过预置的钩子函数,向目标应用程序注入网络性能监控脚本;
通过所述网络性能监控脚本,采集所述移动终端的网络性能指标,所述网络性能指标包括连接建立时长、上行流量和下行流量;
基于所述连接建立时长、所述上行流量和所述下性流量,计算所述移动终端的网络性能指数。
5.根据权利要求1所述的应用程序的运行方法,其特征在于,所述对所述移动终端的主线程进行运行循环参数计算,得到运行流畅度,包括:
创建卡顿监控子线程,并通过所述卡顿监控子线程对主线程的运行循环参数进行监控,得到所述主线程中各个状态域的进入时刻;
基于所述主线程中各个状态域的进入时刻,计算主线程中任意两个相邻状态域之间的切换耗时,得到状态域切换时长;
根据所述状态域切换时长,计算所述移动终端的运行流畅度。
6.根据权利要求1所述的应用程序的运行方法,其特征在于,所述根据所述中央处理器占用率、所述可用物理内存信息、所述网络性能指数和所述运行流畅度,确定目标应用程序的目标加载资源,并按照所述目标加载资源运行所述目标应用程序,包括:
判断所述中央处理器占用率是否高于预置占有率阈值,判断所述可用物理内存信息是否低于预置内存阈值,判断所述网络性能指数是否低于预置性能指数阈值,以及判断所述运行流畅度是否低于预置流畅度阈值,得到目标判断结果;
基于所述目标判断结果,确定目标应用程序的目标资源加载等级;
通过所述目标资源加载等级,确定所述目标应用程序的目标加载资源,并按照所述目标加载资源运行所述目标应用程序。
7.根据权利要求6所述的应用程序的运行方法,其特征在于,所述通过所述目标资源加载等级,确定所述目标应用程序的目标加载资源,并按照所述目标加载资源运行所述目标应用程序,包括:
判断所述目标资源加载等级是否大于或等于预置优化资源加载等级;
若所述目标资源加载等级大于或等于预置优化资源加载等级,则从预置加载资源中获取优化资源,并将所述优化资源设置为所述目标应用程序的目标加载资源;
若所述目标资源加载等级小于预置优化资源加载等级,则按照所述目标资源加载等级获取目标加载资源;
按照所述目标加载资源加载所述目标应用程序。
8.一种应用程序的运行装置,其特征在于,所述应用程序的运行装置包括:
获取模块,用于获取移动终端的时钟脉冲数量信息,并根据所述时钟脉冲数量信息计算所述移动终端的中央处理器占用率;
计算模块,用于通过对所述移动终端运行中的应用程序进行占用内存计算,得到可用物理内存信息;
采集模块,用于采集所述移动终端的网络性能指标,并根据所述网络性能指标,计算所述移动终端的网络性能指数;
循环模块,用于对所述移动终端的主线程进行运行循环参数计算,得到运行流畅度;
运行模块,用于根据所述中央处理器占用率、所述可用物理内存信息、所述网络性能指数和所述运行流畅度,确定目标应用程序的目标加载资源,并按照所述目标加载资源运行所述目标应用程序。
9.一种应用程序的运行设备,其特征在于,所述应用程序的运行设备包括:存储器和至少一个处理器,所述存储器中存储有计算机程序;
所述至少一个处理器调用所述存储器中的所述计算机程序,以使得所述应用程序的运行设备执行如权利要求1-7中任意一项所述的应用程序的运行方法。
10.一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-7中任一项所述应用程序的运行方法。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202111539712.7A CN114201304B (zh) | 2021-12-15 | 2021-12-15 | 应用程序的运行方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202111539712.7A CN114201304B (zh) | 2021-12-15 | 2021-12-15 | 应用程序的运行方法、装置、设备及存储介质 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| CN114201304A true CN114201304A (zh) | 2022-03-18 |
| CN114201304B CN114201304B (zh) | 2024-11-12 |
Family
ID=80654304
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN202111539712.7A Active CN114201304B (zh) | 2021-12-15 | 2021-12-15 | 应用程序的运行方法、装置、设备及存储介质 |
Country Status (1)
| Country | Link |
|---|---|
| CN (1) | CN114201304B (zh) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN117971385A (zh) * | 2023-12-28 | 2024-05-03 | 国网冀北电力有限公司信息通信分公司 | 一种系统资源虚拟环境使用控制方法及装置 |
Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN107729089A (zh) * | 2017-10-31 | 2018-02-23 | 努比亚技术有限公司 | Cpu参数的调整方法、装置、移动终端及存储介质 |
| WO2020168756A1 (zh) * | 2019-02-19 | 2020-08-27 | 平安科技(深圳)有限公司 | 集群日志特征提取方法、装置、设备及存储介质 |
-
2021
- 2021-12-15 CN CN202111539712.7A patent/CN114201304B/zh active Active
Patent Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN107729089A (zh) * | 2017-10-31 | 2018-02-23 | 努比亚技术有限公司 | Cpu参数的调整方法、装置、移动终端及存储介质 |
| WO2020168756A1 (zh) * | 2019-02-19 | 2020-08-27 | 平安科技(深圳)有限公司 | 集群日志特征提取方法、装置、设备及存储介质 |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN117971385A (zh) * | 2023-12-28 | 2024-05-03 | 国网冀北电力有限公司信息通信分公司 | 一种系统资源虚拟环境使用控制方法及装置 |
Also Published As
| Publication number | Publication date |
|---|---|
| CN114201304B (zh) | 2024-11-12 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US20250175400A1 (en) | Automatic capture of detailed analysis information based on remote server analysis | |
| EP3019971B1 (en) | Methods and systems for performance monitoring for mobile applications | |
| CN108721898B (zh) | 帧率的确定方法和装置、存储介质、电子装置 | |
| US9584364B2 (en) | Reporting performance capabilities of a computer resource service | |
| US8200812B2 (en) | Reducing workload on a backend system using client side request throttling | |
| US10282246B2 (en) | Application error detection method for cloud streaming service, and apparatus and system therefor | |
| CN102081679B (zh) | 一种计算机性能数据的采集方法及采集装置 | |
| US8910228B2 (en) | Measurement of remote display performance with image-embedded markers | |
| US20160255400A1 (en) | Remote Display Performance Measurement Triggered by Application Display Upgrade | |
| Berryman et al. | Vdbench: A benchmarking toolkit for thin-client based virtual desktop environments | |
| CN108763012A (zh) | 卡顿信息获取方法、装置及终端 | |
| CN104822047B (zh) | 一种基于网络自适应医学图像传输显示方法 | |
| CN110209978B (zh) | 一种数据处理方法和相关装置 | |
| CN106557400A (zh) | 设备中动态数据收集的方法以及相应的设备 | |
| US20160226728A1 (en) | Automatic capture of detailed analysis information for web application outliers with very low overhead | |
| US10963984B2 (en) | Interaction monitoring for virtualized graphics processing | |
| CN111708642B (zh) | Vr系统中处理器性能优化方法、装置及vr设备 | |
| CN111984896A (zh) | 埋点数据采集方法、装置、计算机设备及可读存储介质 | |
| WO2017202175A1 (zh) | 一种视频压缩方法、装置及电子设备 | |
| CN114201304A (zh) | 应用程序的运行方法、装置、设备及存储介质 | |
| CN114995914B (zh) | 图片数据的处理方法、装置、计算机设备及存储介质 | |
| CN112579257A (zh) | 一种虚拟中央处理器核心的调度方法、装置及相关设备 | |
| CN119760267A (zh) | 前端数据处理方法、系统、终端及存储介质 | |
| CN111131611A (zh) | 一种用于解决手机游戏卡顿的提示方法、装置和移动终端 | |
| CN119025770A (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 | ||
| GR01 | Patent grant | ||
| GR01 | Patent grant |