CN103257898A - 嵌入式系统中资源分配方法和系统 - Google Patents
嵌入式系统中资源分配方法和系统 Download PDFInfo
- Publication number
- CN103257898A CN103257898A CN2012100342226A CN201210034222A CN103257898A CN 103257898 A CN103257898 A CN 103257898A CN 2012100342226 A CN2012100342226 A CN 2012100342226A CN 201210034222 A CN201210034222 A CN 201210034222A CN 103257898 A CN103257898 A CN 103257898A
- Authority
- CN
- China
- Prior art keywords
- resources
- started
- application
- applications
- resource
- 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 59
- 238000013468 resource allocation Methods 0.000 title abstract description 14
- 230000002093 peripheral effect Effects 0.000 description 6
- 230000006870 function Effects 0.000 description 5
- 238000007726 management method Methods 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 230000000977 initiatory effect Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 238000004064 recycling Methods 0.000 description 1
- 238000007619 statistical method Methods 0.000 description 1
Images
Landscapes
- Stored Programmes (AREA)
Abstract
本发明提供一种嵌入式系统中资源分配方法和系统;所述方法,包括:如果系统在初始化后的运行过程中加载了新的应用,则为系统内的各应用分别分配一个资源占用的优先级;当系统当前不能满足待启动的至少两个应用对同种资源的请求时,按照待启动的至少两个应用的优先级,为所述待启动的至少两个应用分配资源。
Description
技术领域
本发明涉及多媒体应用领域,尤其涉及一种嵌入式系统中资源分配方法和系统。
背景技术
像机顶盒这一类的传统的嵌入式设备,在设备开发时,设备支持的功能、应用和外设都基本确定了。各种应用对及机顶盒的运算、存储等硬件资源的需求,在开发时就能确定下来,所以对于出现资源共享和资源冲突时,可以在设计时考虑各种场景以解决这样的冲突。随着机顶盒运算能力的增加和应用商店模式的被广泛接受,用户要求机顶盒能够随时增加新的应用和外设的支持。这样就要求机顶盒有一个灵活的机制能够在新增应用和设备时,不同的应用对机顶盒现有的硬件资源的需求发生冲突时,协调应用的运行。
发明内容
本发明提供一种嵌入式系统中资源分配方法和系统,要解决的技术问题是如何在系统随时增加新的应用和外设的条件下对资源进行分配。
为解决上述技术问题,本发明提供了如下技术方案:
一种嵌入式系统中资源分配方法,包括:
如果系统在初始化后的运行过程中加载了新的应用,则为系统内的各应用分别分配一个资源占用的优先级;
当系统当前不能满足待启动的至少两个应用对同种资源的请求时,按照待启动的至少两个应用的优先级,为所述待启动的至少两个应用分配资源。
优选的,所述方法还具有如下特点:系统当前是否能满足待启动的至少两个应用对同种资源的请求是通过如下方式来判断的:
向各应用程序发送系统对资源的种类;
接收每个应用按照所述资源的种类所列举中的对各资源的占用信息,并保存每个应用所对应的各资源的占用信息;
当待启动的至少两个应用对同种资源的请求时,根据所述待启动的至少两个应用对该资源的占用信息以及当前系统该系统的剩余量,确定系统当前是否能满足待启动的至少两个应用对同种资源的请求。
优选的,所述方法还具有如下特点:所述为所述待启动的至少两个应用分配资源,包括:
当系统不能够为待启动的应用提供所需的资源时,如果未得到全部所需资源的待启动的应用为一个,则执行如下步骤,包括:
根据所述待启动的应用所需的资源以及系统当前空闲的资源,确定系统不能为所述待启动的应用提供的目标资源;
从系统当前运行的应用中查找满足如下条件的应用,包括:
条件1:所述应用的占用资源的优先级比所述待启动的应用的占用资源的优先级低;
条件2:所述系统在所述应用释放资源后能够为所述待启动的应用提供所述资源;
如果查找到,则释放满足上述条件的应用所使用的资源;
在所述满足上述条件的应用释放资源后,为所述待启动的应用分配资源。
优选的,所述方法还具有如下特点:所述为所述待启动的至少两个应用分配资源,包括:
当系统不能够为待启动的应用提供所需的资源时,如果未得到全部所需资源的待启动的应用为多个且所述多个待启动的应用所缺失的资源的种类不重合,则对于其中一个未得到全部所需资源的待启动的应用来说,获取全部资源的方式有如下两种方式:
方式一:
根据所述待启动的应用所需的资源以及系统当前空闲的资源,确定系统不能为所述待启动的应用提供的目标资源;
从系统当前运行的应用中查找满足如下条件的应用,包括:
条件1:所述应用的占用资源的优先级比所述待启动的应用的占用资源的优先级低;
条件2:所述系统在所述应用释放资源后能够为所述待启动的应用提供所述资源;
如果查找到,则释放满足上述条件的应用所使用的资源;
方式二:
判断其他未能得到全部资源的待启动的应用所分配到资源中是否包括其所缺少的资源;
如果有,则从其他未能得到全部资源的待启动应用中获取资源;
在得到资源后,为所述待启动的应用分配资源。
优选的,所述方法还具有如下特点:所述为所述待启动的至少两个应用分配资源,包括:
当系统不能够为待启动的应用提供所需的资源时,如果未得到全部所需资源的待启动的应用为多个且所述多个待启动的应用所缺失的资源的种类重合,则对于种类有重合的资源的分配,通过释放当前系统中运行的应用获取待启动的应用所缺失的资源;
在通过释放资源得到待启动的应用所缺失的资源后,采用如下任一方式进行资源的分配,包括:
方式一:如果等待该资源多个的待启动的应用中优先级最高的应用只等待该资源,将该资源分配给该优先级最高的应用;
方式二:如果等待该资源多个的待启动的应用中优先级最高的应用还等待除该资源之外的其他资源,将其他未得到全部所需资源的待启动的应用的资源分配给所述优先级最高的应用,并将该资源分配给该优先级最高的应用,该资源分配给该优先级最高的应用;
方式三:如果等待该资源多个的待启动的应用中只等待该资源,将该资源分配给只等待该资源的应用。
一种嵌入式系统中资源分配系统,包括:
第一分配装置,用于如果系统在初始化后的运行过程中加载了新的应用,则为系统内的各应用分别分配一个资源占用的优先级;
第二分配装置,用于当系统当前不能满足待启动的至少两个应用对同种资源的请求时,按照待启动的至少两个应用的优先级,为所述待启动的至少两个应用分配资源。
优选的,所述系统还具有如下特点:所述第二分配装置是通过如下方式来判断系统当前是否能满足待启动的至少两个应用对同种资源的请求的:
向各应用程序发送系统对资源的种类;
接收每个应用按照所述资源的种类所列举中的对各资源的占用信息,并保存每个应用所对应的各资源的占用信息;
当待启动的至少两个应用对同种资源的请求时,根据所述待启动的至少两个应用对该资源的占用信息以及当前系统该系统的剩余量,确定系统当前是否能满足待启动的至少两个应用对同种资源的请求。
优选的,所述系统还具有如下特点:所述第二分配装置包括:
第一获取模块,用于当系统不能够为待启动的应用提供所需的资源时,如果未得到全部所需资源的待启动的应用为一个,则根据所述待启动的应用所需的资源以及系统当前空闲的资源,确定系统不能为所述待启动的应用提供的目标资源;
第一查找模块,用于从系统当前运行的应用中查找满足如下条件的应用,包括:
条件1:所述应用的占用资源的优先级比所述待启动的应用的占用资源的优先级低;
条件2:所述系统在所述应用释放资源后能够为所述待启动的应用提供所述资源;
第一释放模块,用于如果查找到,则释放满足上述条件的应用所使用的资源;
第一分配模块,用于在所述满足上述条件的应用释放资源后,为所述待启动的应用分配资源。
优选的,所述系统还具有如下特点:所述第二配置装置包括:
第二获取模块,用于当系统不能够为待启动的应用提供所需的资源时,如果未得到全部所需资源的待启动的应用为多个且所述多个待启动的应用所缺失的资源的种类不重合,则对于其中一个未得到全部所需资源的待启动的应用来说,获取全部资源的方式有如下两种方式:
方式一:
根据所述待启动的应用所需的资源以及系统当前空闲的资源,确定系统不能为所述待启动的应用提供的目标资源;
从系统当前运行的应用中查找满足如下条件的应用,包括:
条件1:所述应用的占用资源的优先级比所述待启动的应用的占用资源的优先级低;
条件2:所述系统在所述应用释放资源后能够为所述待启动的应用提供所述资源;
如果查找到,则释放满足上述条件的应用所使用的资源;
方式二:
判断其他未能得到全部资源的待启动的应用所分配到资源中是否包括其所缺少的资源;
如果有,则从其他未能得到全部资源的待启动应用中获取资源;
第二分配模块,用于在得到资源后,为所述待启动的应用分配资源。
优选的,所述系统还具有如下特点:所述第二分配模块包括:
第三获取模块,用于当系统不能够为待启动的应用提供所需的资源时,如果未得到全部所需资源的待启动的应用为多个且所述多个待启动的应用所缺失的资源的种类重合,则对于种类有重合的资源的分配,通过释放当前系统中运行的应用获取待启动的应用所缺失的资源;
第四分配装置,用于在通过释放资源得到待启动的应用所缺失的资源后,采用如下任一方式进行资源的分配,包括:
方式一:如果等待该资源多个的待启动的应用中优先级最高的应用只等待该资源,将该资源分配给该优先级最高的应用;
方式二:如果等待该资源多个的待启动的应用中优先级最高的应用还等待除该资源之外的其他资源,将其他未得到全部所需资源的待启动的应用的资源分配给所述优先级最高的应用,并将该资源分配给该优先级最高的应用,该资源分配给该优先级最高的应用;
方式三:如果等待该资源多个的待启动的应用中只等待该资源,将该资源分配给只等待该资源的应用。
与现有技术相比,通过为应用分配占用资源的优先级,并根据该优先级进行资源分配,达到在系统随时增加新的应用和外设的情况下对资源进行分配的目的,保证不同的应用对机顶盒现有的硬件资源的需求不会发生冲突,即使冲突发生也能保证高优先级的应用能够优先正常运行。协调了应用的运行。
附图说明
图1为本发明提供的嵌入式系统中资源分配方法实施例的流程示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图及具体实施例对本发明作进一步的详细描述。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
需要说明的是,本发明所指的资源是能够完成一个特定功能的硬件或者软件模块;例如:全部硬件实现的高清解码器,和完全软件实现的Mp3解码器。
图1为本发明提供的嵌入式系统中资源分配方法实施例的流程示意图。图1所示方法实施例包括:
步骤101、如果系统在初始化后的运行过程中加载了新的应用,则获取所述系统内全部应用在运行时所需的资源信息;
在系统增加了新的应用后,系统中正在使用的资源管理方案将不适用于新应用加入后的系统,为了能够对系统的资源进行管理,就需要提出新的解决管理方案。
步骤102、为系统内的各应用分别分配一个资源占用的优先级;
其中该资源占用的优先级的分配原则是保证系统初始化自带的应用的优先级高于初始化新加载的应用的优先级。
步骤103、根据所述优先级为所述系统内的各应用分配资源。
下面进行详细说明,具体包括:
第一部分对机顶盒内部的进行统计和划分,具体来说:
对于资源的概念,包括硬件平台可以提供给软件的所有能力,包括:
硬件平台自身所有的硬件设备的数量和能力,如:视频解码器,处理器,网络通道等;
软件平台中完全由软件实现的模块,如:软解码器,应用协议栈等;
平台的硬件接口的数目和种类,以及通过这些接口外界的外设的数量和种类;
运算资源(如CPU和协处理器的运算资源);
内存资源;
网络带宽资源;以及其他种类。
举例来说,机顶盒中元件由多个种类,如网卡和过滤器等,且每个硬件在该机顶盒中的个数也不止一个。每个应用运行时所占用的硬件种类以及对每一种类硬件的占用个数也不同。
第二部分机顶盒内部应用程序对资源的注册
对于已加载的应用程序,根据这些应用程序在运行时对资源的占用情况,进行统计分析,得到每个应用程序对资源占用的上下限;
当然,如果机顶盒内部加载了新的应用程序后,则在该新的应用程序运行前,必须向资源管理程序注册其正常运行对资源占用的上下限。
第三部分为机顶盒中每个应用程序分配资源占用的优先级
其中该优先级的占用是基于该应用程序的功能来决定的,如通话功能的应用程序要高于视频播放功能的应用程序。
第四部分在多个应用程序发生资源冲突时,按照应用程序的优先级协调资源的分配;具体包括分配资源和回收资源。下面根据系统是否能够为待启动的应用提供所需的资源可以分为如下两方面来说,包括:
一、系统能够为全部待启动的应用提供所需的资源
1)分配资源:具体来说,如果当前待启动的应用为多个,系统可以按照所有待启动的应用的占用资源的优先级的顺序,为待启动的应用分配资源。具体来说,待启动的应用的占用资源的优先级越高,越优先为其分配资源,以使得优先级高的应用能够更快的启动。
2)回收资源:此处情况可以不进行监控,只待应用释放资源即可。
二、系统不能够为全部待启动的应用提供所需的资源
此处根据系统不能提供所需资源的应用的个数可以进一步细分为未得到全部所需资源的待启动的应用为一个或多个这两种情况。
1、未得到全部所需资源的待启动的应用为一个;
1)分配资源:
系统通过如下步骤为所述待启动的应用分配资源,具体包括:
步骤A1、根据所述待启动的应用所需的资源以及系统当前空闲的资源,确定系统不能为所述待启动的应用提供的目标资源;
具体来说,确定系统当前不能提供的目标资源的种类和当前对该目标资源所缺少的数量。
步骤A2、从系统当前运行的应用中查找满足如下条件的应用,包括:
条件1:所述应用的占用资源的优先级比所述待启动的应用的占用资源的优先级低;
条件2:所述系统在所述应用释放资源后能够为所述待启动的应用提供所述资源。
换句话来说,条件2就是说该应用在运行时使用了与系统当前不能为待启动的应用提供的资源的种类相同的资源,且使用的资源的数量大于或等于当前对该资源所缺少的数量。
针对条件2,举例来说,如果步骤A1确定待启动的应用缺少资源a,且数量为n,其中正在运行的应用正在使用资源a,其使用的数量为m,如果m大于或等于n,则该应用满足条件2。
如果查找到,则执行步骤A3~A4;否则,执行步骤A5。
步骤A3、如果查找到,则释放满足上述条件的应用所使用的资源;
该步骤可以是提示用户关闭应用或者系统自动关闭。
步骤A4、在所述满足上述条件的应用释放资源后,为所述待启动的应用分配资源。
2)分配资源:
步骤A5、监测系统中是否有应用释放所述目标资源;
其中优选的,可以从系统当前运行的应用中,获取使用了所述目标资源的目标应用,监测所述目标应用的运行状态,如果所述目标应用进行了资源释放,则执行步骤A6。
步骤A6、如果有,则发起为所述待启动的应用分配资源的流程;
具体来说,如果步骤A5中目标应用释放的资源的大小大于或等于所述待启动的应用所需的资源,则将该资源分配给该待启动的应用;如果小于,则需继续执行步骤A5。
2、未得到全部所需资源的待启动的应用为多个;
根据所述多个待启动的应用所缺失的资源的种类是否重合来进行说明,包括如下两种情况:
1)所述多个待启动的应用所缺失的资源的种类不重合
举例来说,有两个待启动的应用,应用1缺少资源a,应用2缺少资源b,则认为所述多个待启动的应用所缺失的资源的种类不重合。
对于其中一个未得到全部所需资源的待启动的应用来说,获取全部资源的方式有如下两种方式:
方式一:参见步骤A1~A6;
方式二:
步骤B1、判断其他未能得到全部资源的待启动的应用所分配到资源中是否包括其所缺少的资源;
步骤B2、如果有,则从其他未能得到全部资源的待启动应用中获取资源;
仍以上例进行说明,如果应用1缺少资源a,而缺少资源b的应用2已经被分配了资源a,则将应用2的资源a分配给应用1,使得应用1能够运行。
需要说明的是,步骤B2中所说的其他未能得到全部资源的待启动应用优选的是,能够获取到全部资源可能性最低的待启动应用,即可以为缺少的资源的种类最多的应用,或者,缺少一种或多种资源的数量最多的应用;其中如果从其他待启动的应用中的一个获取的资源的数量不足,可以继续从其他待启动的应用中剩余部分进行获取,直到获取的资源数量足够。
当然,也可以是其他待启动的应用中所分配到的资源大小大于或等于本应用所缺少的资源的应用。
举例来说,待启动应用1至4,如果有应用2至4都有应用1所缺少的资源,那么可以根据应用2至4当前缺少几种资源来确定选择从哪个应用中抢夺资源,如果应用2所缺少的资源种类最多,则从应用2来获取该资源,如果获取后,没有达到所需的数量,则可以继续从应用3和4中选择一个来获取。
当然,也可以先确定对于应用1所缺少的资源,应用2至4哪个应用所分配的资源的大小大于或等于应用1所缺少的数量,根据确定结果,选择一个已分配的资源大小大于或等于应用1所缺少的资源的应用作为获取该资源的目标。
2)所述多个待启动的应用所缺失的资源的种类有重合
举例来说,有两个待启动的应用,应用1缺少资源a,应用2缺少资源a和b,则认为所述多个待启动的应用所缺失的资源的种类有重合。
对于其中一个未得到全部所需资源的待启动的应用来说,对于种类不重合的资源的获取方式,可参见上文,此处不再赘述。对于种类有重合的资源的获取方式,具体参见步骤A1~A6,其中区别在于步骤A6,具体包括:
如果等待该资源多个的待启动的应用中优先级最高的应用只等待该资源,将该资源分配给该优先级最高的应用;或者,
如果等待该资源多个的待启动的应用中优先级最高的应用还等待除该资源之外的其他资源,将其他未得到全部所需资源的待启动的应用的资源分配给所述优先级最高的应用,并将该资源分配给该优先级最高的应用,该资源分配给该优先级最高的应用;或者,
如果等待该资源多个的待启动的应用中只等待该资源,将该资源分配给只等待该资源的应用。
与现有技术相比,通过为应用分配占用资源的优先级,并根据该优先级进行资源分配,达到在系统随时增加新的应用和外设的条件下对资源进行分配的目的,保证不同的应用对机顶盒现有的硬件资源的需求不会发生冲突,协调了应用的运行。
与上述方法对应的,本发明还提供一种嵌入式系统中资源分配系统,包括:
第一分配装置,用于如果系统在初始化后的运行过程中加载了新的应用,则为系统内的各应用分别分配一个资源占用的优先级;
第二分配装置,用于当系统当前不能满足待启动的至少两个应用对同种资源的请求时,按照待启动的至少两个应用的优先级,为所述待启动的至少两个应用分配资源。
其中,所述第二分配装置是通过如下方式来判断系统当前是否能满足待启动的至少两个应用对同种资源的请求的:
向各应用程序发送系统对资源的种类;
接收每个应用按照所述资源的种类所列举中的对各资源的占用信息,并保存每个应用所对应的各资源的占用信息;
当待启动的至少两个应用对同种资源的请求时,根据所述待启动的至少两个应用对该资源的占用信息以及当前系统该系统的剩余量,确定系统当前是否能满足待启动的至少两个应用对同种资源的请求。
可选的,所述第二分配装置包括:
第一获取模块,用于当系统不能够为待启动的应用提供所需的资源时,如果未得到全部所需资源的待启动的应用为一个,则根据所述待启动的应用所需的资源以及系统当前空闲的资源,确定系统不能为所述待启动的应用提供的目标资源;
第一查找模块,用于从系统当前运行的应用中查找满足如下条件的应用,包括:
条件1:所述应用的占用资源的优先级比所述待启动的应用的占用资源的优先级低;
条件2:所述系统在所述应用释放资源后能够为所述待启动的应用提供所述资源;
第一释放模块,用于如果查找到,则释放满足上述条件的应用所使用的资源;
第一分配模块,用于在所述满足上述条件的应用释放资源后,为所述待启动的应用分配资源。
可选的,所述第二配置装置包括:
第二获取模块,用于当系统不能够为待启动的应用提供所需的资源时,如果未得到全部所需资源的待启动的应用为多个且所述多个待启动的应用所缺失的资源的种类不重合,则对于其中一个未得到全部所需资源的待启动的应用来说,获取全部资源的方式有如下两种方式:
方式一:
根据所述待启动的应用所需的资源以及系统当前空闲的资源,确定系统不能为所述待启动的应用提供的目标资源;
从系统当前运行的应用中查找满足如下条件的应用,包括:
条件1:所述应用的占用资源的优先级比所述待启动的应用的占用资源的优先级低;
条件2:所述系统在所述应用释放资源后能够为所述待启动的应用提供所述资源;
如果查找到,则释放满足上述条件的应用所使用的资源;
方式二:
判断其他未能得到全部资源的待启动的应用所分配到资源中是否包括其所缺少的资源;
如果有,则从其他未能得到全部资源的待启动应用中获取资源;
第二分配模块,用于在得到资源后,为所述待启动的应用分配资源。
可选的,所述第二分配模块包括:
第三获取模块,用于当系统不能够为待启动的应用提供所需的资源时,如果未得到全部所需资源的待启动的应用为多个且所述多个待启动的应用所缺失的资源的种类重合,则对于种类有重合的资源的分配,通过释放当前系统中运行的应用获取待启动的应用所缺失的资源;
第四分配装置,用于在通过释放资源得到待启动的应用所缺失的资源后,采用如下任一方式进行资源的分配,包括:
方式一:如果等待该资源多个的待启动的应用中优先级最高的应用只等待该资源,将该资源分配给该优先级最高的应用;
方式二:如果等待该资源多个的待启动的应用中优先级最高的应用还等待除该资源之外的其他资源,将其他未得到全部所需资源的待启动的应用的资源分配给所述优先级最高的应用,并将该资源分配给该优先级最高的应用,该资源分配给该优先级最高的应用;
方式三:如果等待该资源多个的待启动的应用中只等待该资源,将该资源分配给只等待该资源的应用。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求所述的保护范围为准。
Claims (10)
1.一种嵌入式系统中资源分配方法,其特征在于,包括:
如果系统在初始化后的运行过程中加载了新的应用,则为系统内的各应用分别分配一个资源占用的优先级;
当系统当前不能满足待启动的至少两个应用对同种资源的请求时,按照待启动的至少两个应用的优先级,为所述待启动的至少两个应用分配资源。
2.根据权利要求1所述的方法,其特征在于,系统当前是否能满足待启动的至少两个应用对同种资源的请求是通过如下方式来判断的:
向各应用程序发送系统对资源的种类;
接收每个应用按照所述资源的种类所列举中的对各资源的占用信息,并保存每个应用所对应的各资源的占用信息;
当待启动的至少两个应用对同种资源的请求时,根据所述待启动的至少两个应用对该资源的占用信息以及当前系统该系统的剩余量,确定系统当前是否能满足待启动的至少两个应用对同种资源的请求。
3.根据权利要求1所述的方法,其特征在于,所述为所述待启动的至少两个应用分配资源,包括:
当系统不能够为待启动的应用提供所需的资源时,如果未得到全部所需资源的待启动的应用为一个,则执行如下步骤,包括:
根据所述待启动的应用所需的资源以及系统当前空闲的资源,确定系统不能为所述待启动的应用提供的目标资源;
从系统当前运行的应用中查找满足如下条件的应用,包括:
条件1:所述应用的占用资源的优先级比所述待启动的应用的占用资源的优先级低;
条件2:所述系统在所述应用释放资源后能够为所述待启动的应用提供所述资源;
如果查找到,则释放满足上述条件的应用所使用的资源;
在所述满足上述条件的应用释放资源后,为所述待启动的应用分配资源。
4.根据权利要求1所述的方法,其特征在于,所述为所述待启动的至少两个应用分配资源,包括:
当系统不能够为待启动的应用提供所需的资源时,如果未得到全部所需资源的待启动的应用为多个且所述多个待启动的应用所缺失的资源的种类不重合,则对于其中一个未得到全部所需资源的待启动的应用来说,获取全部资源的方式有如下两种方式:
方式一:
根据所述待启动的应用所需的资源以及系统当前空闲的资源,确定系统不能为所述待启动的应用提供的目标资源;
从系统当前运行的应用中查找满足如下条件的应用,包括:
条件1:所述应用的占用资源的优先级比所述待启动的应用的占用资源的优先级低;
条件2:所述系统在所述应用释放资源后能够为所述待启动的应用提供所述资源;
如果查找到,则释放满足上述条件的应用所使用的资源;
方式二:
判断其他未能得到全部资源的待启动的应用所分配到资源中是否包括其所缺少的资源;
如果有,则从其他未能得到全部资源的待启动应用中获取资源;
在得到资源后,为所述待启动的应用分配资源。
5.根据权利要求1所述的方法,其特征在于,所述为所述待启动的至少两个应用分配资源,包括:
当系统不能够为待启动的应用提供所需的资源时,如果未得到全部所需资源的待启动的应用为多个且所述多个待启动的应用所缺失的资源的种类重合,则对于种类有重合的资源的分配,通过释放当前系统中运行的应用获取待启动的应用所缺失的资源;
在通过释放资源得到待启动的应用所缺失的资源后,采用如下任一方式进行资源的分配,包括:
方式一:如果等待该资源多个的待启动的应用中优先级最高的应用只等待该资源,将该资源分配给该优先级最高的应用;
方式二:如果等待该资源多个的待启动的应用中优先级最高的应用还等待除该资源之外的其他资源,将其他未得到全部所需资源的待启动的应用的资源分配给所述优先级最高的应用,并将该资源分配给该优先级最高的应用,该资源分配给该优先级最高的应用;
方式三:如果等待该资源多个的待启动的应用中只等待该资源,将该资源分配给只等待该资源的应用。
6.一种嵌入式系统中资源分配系统,其特征在于,包括:
第一分配装置,用于如果系统在初始化后的运行过程中加载了新的应用,则为系统内的各应用分别分配一个资源占用的优先级;
第二分配装置,用于当系统当前不能满足待启动的至少两个应用对同种资源的请求时,按照待启动的至少两个应用的优先级,为所述待启动的至少两个应用分配资源。
7.根据权利要求6所述的系统,其特征在于,所述第二分配装置是通过如下方式来判断系统当前是否能满足待启动的至少两个应用对同种资源的请求的:
向各应用程序发送系统对资源的种类;
接收每个应用按照所述资源的种类所列举中的对各资源的占用信息,并保存每个应用所对应的各资源的占用信息;
当待启动的至少两个应用对同种资源的请求时,根据所述待启动的至少两个应用对该资源的占用信息以及当前系统该系统的剩余量,确定系统当前是否能满足待启动的至少两个应用对同种资源的请求。
8.根据权利要求6所述的系统,其特征在于,所述第二分配装置包括:
第一获取模块,用于当系统不能够为待启动的应用提供所需的资源时,如果未得到全部所需资源的待启动的应用为一个,则根据所述待启动的应用所需的资源以及系统当前空闲的资源,确定系统不能为所述待启动的应用提供的目标资源;
第一查找模块,用于从系统当前运行的应用中查找满足如下条件的应用,包括:
条件1:所述应用的占用资源的优先级比所述待启动的应用的占用资源的优先级低;
条件2:所述系统在所述应用释放资源后能够为所述待启动的应用提供所述资源;
第一释放模块,用于如果查找到,则释放满足上述条件的应用所使用的资源;
第一分配模块,用于在所述满足上述条件的应用释放资源后,为所述待启动的应用分配资源。
9.根据权利要求6所述的系统,其特征在于,所述第二配置装置包括:
第二获取模块,用于当系统不能够为待启动的应用提供所需的资源时,如果未得到全部所需资源的待启动的应用为多个且所述多个待启动的应用所缺失的资源的种类不重合,则对于其中一个未得到全部所需资源的待启动的应用来说,获取全部资源的方式有如下两种方式:
方式一:
根据所述待启动的应用所需的资源以及系统当前空闲的资源,确定系统不能为所述待启动的应用提供的目标资源;
从系统当前运行的应用中查找满足如下条件的应用,包括:
条件1:所述应用的占用资源的优先级比所述待启动的应用的占用资源的优先级低;
条件2:所述系统在所述应用释放资源后能够为所述待启动的应用提供所述资源;
如果查找到,则释放满足上述条件的应用所使用的资源;
方式二:
判断其他未能得到全部资源的待启动的应用所分配到资源中是否包括其所缺少的资源;
如果有,则从其他未能得到全部资源的待启动应用中获取资源;
第二分配模块,用于在得到资源后,为所述待启动的应用分配资源。
10.根据权利要求6所述的系统,其特征在于,所述第二分配模块包括:
第三获取模块,用于当系统不能够为待启动的应用提供所需的资源时,如果未得到全部所需资源的待启动的应用为多个且所述多个待启动的应用所缺失的资源的种类重合,则对于种类有重合的资源的分配,通过释放当前系统中运行的应用获取待启动的应用所缺失的资源;
第四分配装置,用于在通过释放资源得到待启动的应用所缺失的资源后,采用如下任一方式进行资源的分配,包括:
方式一:如果等待该资源多个的待启动的应用中优先级最高的应用只等待该资源,将该资源分配给该优先级最高的应用;
方式二:如果等待该资源多个的待启动的应用中优先级最高的应用还等待除该资源之外的其他资源,将其他未得到全部所需资源的待启动的应用的资源分配给所述优先级最高的应用,并将该资源分配给该优先级最高的应用,该资源分配给该优先级最高的应用;
方式三:如果等待该资源多个的待启动的应用中只等待该资源,将该资源分配给只等待该资源的应用。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2012100342226A CN103257898A (zh) | 2012-02-15 | 2012-02-15 | 嵌入式系统中资源分配方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2012100342226A CN103257898A (zh) | 2012-02-15 | 2012-02-15 | 嵌入式系统中资源分配方法和系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103257898A true CN103257898A (zh) | 2013-08-21 |
Family
ID=48961833
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2012100342226A Pending CN103257898A (zh) | 2012-02-15 | 2012-02-15 | 嵌入式系统中资源分配方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103257898A (zh) |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105224369A (zh) * | 2015-10-14 | 2016-01-06 | 深圳Tcl数字技术有限公司 | 应用启动方法和系统 |
CN105550037A (zh) * | 2015-12-11 | 2016-05-04 | 北京元心科技有限公司 | 多系统中分配音频资源的方法及装置 |
CN105893142A (zh) * | 2015-12-31 | 2016-08-24 | 乐视移动智能信息技术(北京)有限公司 | 一种资源分配方法及装置 |
CN106126342A (zh) * | 2016-06-23 | 2016-11-16 | 北京光年无限科技有限公司 | 面向智能机器人的多程序运行方法及操作系统 |
CN106445612A (zh) * | 2016-10-10 | 2017-02-22 | 广东欧珀移动通信有限公司 | 一种开启应用的方法、装置及移动终端 |
CN106776036A (zh) * | 2016-12-30 | 2017-05-31 | 广东欧珀移动通信有限公司 | 一种资源分配方法及装置 |
CN107065639A (zh) * | 2016-12-13 | 2017-08-18 | 北京光年无限科技有限公司 | 基于智能机器人的外设行为冲突控制方法和系统 |
CN107291557A (zh) * | 2017-08-02 | 2017-10-24 | 中国银行股份有限公司 | 一种业务处理方法和装置 |
CN107450989A (zh) * | 2017-09-26 | 2017-12-08 | 中国科学院声学研究所 | 一种嵌入式平台及动态调控应用资源的方法 |
CN107748699A (zh) * | 2017-10-27 | 2018-03-02 | 广东欧珀移动通信有限公司 | 资源分配方法及相关产品 |
CN109684069A (zh) * | 2017-10-13 | 2019-04-26 | 华为技术有限公司 | 资源管理的方法及终端设备 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1869922A (zh) * | 2005-05-27 | 2006-11-29 | 青岛大学 | 嵌入式实时操作系统资源管理装置 |
CN101442582A (zh) * | 2007-11-21 | 2009-05-27 | 大唐移动通信设备有限公司 | 一种动态应用的音频资源并发的调度方法及装置 |
CN101561778A (zh) * | 2008-04-15 | 2009-10-21 | 中兴通讯股份有限公司 | 一种检测多任务操作系统任务死循环的方法 |
CN101771983A (zh) * | 2009-12-14 | 2010-07-07 | 中国联合网络通信集团有限公司 | 一种应用于应急通信场景的控制方法及系统 |
CN102016873A (zh) * | 2008-06-24 | 2011-04-13 | 松下电器产业株式会社 | 访问控制装置、访问控制程序及访问控制方法 |
-
2012
- 2012-02-15 CN CN2012100342226A patent/CN103257898A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1869922A (zh) * | 2005-05-27 | 2006-11-29 | 青岛大学 | 嵌入式实时操作系统资源管理装置 |
CN101442582A (zh) * | 2007-11-21 | 2009-05-27 | 大唐移动通信设备有限公司 | 一种动态应用的音频资源并发的调度方法及装置 |
CN101561778A (zh) * | 2008-04-15 | 2009-10-21 | 中兴通讯股份有限公司 | 一种检测多任务操作系统任务死循环的方法 |
CN102016873A (zh) * | 2008-06-24 | 2011-04-13 | 松下电器产业株式会社 | 访问控制装置、访问控制程序及访问控制方法 |
CN101771983A (zh) * | 2009-12-14 | 2010-07-07 | 中国联合网络通信集团有限公司 | 一种应用于应急通信场景的控制方法及系统 |
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105224369A (zh) * | 2015-10-14 | 2016-01-06 | 深圳Tcl数字技术有限公司 | 应用启动方法和系统 |
CN105550037A (zh) * | 2015-12-11 | 2016-05-04 | 北京元心科技有限公司 | 多系统中分配音频资源的方法及装置 |
CN105550037B (zh) * | 2015-12-11 | 2019-07-12 | 北京元心科技有限公司 | 多系统中分配音频资源的方法及装置 |
WO2017113688A1 (zh) * | 2015-12-31 | 2017-07-06 | 乐视控股(北京)有限公司 | 一种资源分配方法及装置 |
CN105893142A (zh) * | 2015-12-31 | 2016-08-24 | 乐视移动智能信息技术(北京)有限公司 | 一种资源分配方法及装置 |
CN106126342A (zh) * | 2016-06-23 | 2016-11-16 | 北京光年无限科技有限公司 | 面向智能机器人的多程序运行方法及操作系统 |
CN106445612A (zh) * | 2016-10-10 | 2017-02-22 | 广东欧珀移动通信有限公司 | 一种开启应用的方法、装置及移动终端 |
CN107065639A (zh) * | 2016-12-13 | 2017-08-18 | 北京光年无限科技有限公司 | 基于智能机器人的外设行为冲突控制方法和系统 |
CN106776036A (zh) * | 2016-12-30 | 2017-05-31 | 广东欧珀移动通信有限公司 | 一种资源分配方法及装置 |
CN107291557A (zh) * | 2017-08-02 | 2017-10-24 | 中国银行股份有限公司 | 一种业务处理方法和装置 |
CN107291557B (zh) * | 2017-08-02 | 2020-10-23 | 中国银行股份有限公司 | 一种业务处理方法和装置 |
CN107450989A (zh) * | 2017-09-26 | 2017-12-08 | 中国科学院声学研究所 | 一种嵌入式平台及动态调控应用资源的方法 |
CN109684069A (zh) * | 2017-10-13 | 2019-04-26 | 华为技术有限公司 | 资源管理的方法及终端设备 |
US11693693B2 (en) | 2017-10-13 | 2023-07-04 | Huawei Technologies Co., Ltd. | Resource management based on ranking of importance of applications |
CN107748699A (zh) * | 2017-10-27 | 2018-03-02 | 广东欧珀移动通信有限公司 | 资源分配方法及相关产品 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103257898A (zh) | 嵌入式系统中资源分配方法和系统 | |
CN110647394B (zh) | 一种资源分配方法、装置及设备 | |
US8954487B2 (en) | Management server and method for providing cloud computing service | |
WO2018120991A1 (zh) | 一种资源调度方法及装置 | |
US20090013157A1 (en) | Management of Software Implemented Services in Processor-Based Devices | |
US20150277944A1 (en) | Method and Apparatus for Allocating a Virtual Machine | |
WO2021227999A1 (zh) | 云计算服务系统和方法 | |
WO2016011953A1 (en) | Scheduling of service resource | |
CN107577523B (zh) | 一种任务执行的方法及装置 | |
CN107301093B (zh) | 一种管理资源的方法和装置 | |
JP2014517434A5 (zh) | ||
CN111158879A (zh) | 一种系统资源的调度方法,装置、机器可读介质和系统 | |
CN107450989B (zh) | 一种嵌入式平台及动态调控应用资源的方法 | |
CN111104219A (zh) | 虚拟核心与物理核心的绑定方法、装置、设备及存储介质 | |
CN109960569B (zh) | 一种虚拟化处理方法及装置 | |
CN112130960A (zh) | 一种轻量化移动边缘计算节点及构建方法 | |
CN113010265A (zh) | Pod的调度方法、调度器、存储插件及系统 | |
CN108241535B (zh) | 资源管理的方法、装置及服务器设备 | |
CN113849260A (zh) | 一种实例的处理核分配方法及装置 | |
CN106775975B (zh) | 进程调度方法及装置 | |
US9324099B2 (en) | Dynamically allocating resources between computer partitions | |
US20130014119A1 (en) | Resource Allocation Prioritization Based on Knowledge of User Intent and Process Independence | |
CN111813541B (zh) | 一种任务调度方法、装置、介质和设备 | |
CN113419839A (zh) | 多类型作业的资源调度方法、装置、电子设备及存储介质 | |
CN111359205B (zh) | 云端游戏的操作方法、装置、计算机设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20130821 |