资源管理方法和嵌入设备的制作方法

xiaoxiao2020-7-22  7

专利名称:资源管理方法和嵌入设备的制作方法
技术领域
本发明涉及计算机系统中的资源的管理方法和嵌入设备,尤其涉及面向称为嵌入设备的资源少的计算机系统的资源管理方法。
背景技术
近年来,信息家电或便携电话等所谓的称为嵌入设备的信息处理设备的功能加速增大。用户要求的高度化,厂商间的竞争。针对网络的对应等因素成为促进功能增多的原因。为了应对这些功能增多,装载在嵌入设备中的软件也变得复杂化,用于软件的动作的资源的管理也一并变得复杂。例如,在组合多个实现各功能要素的软件模块(以下称为模块)来实现全部功能的嵌入设备中,产生模块相互争夺资源,资源枯竭,动作停止等故障的情形。这样的资源故障能够通过慎重地推行开发作业来避免,但关系到开发所需要的时间和经费的增加则成为较大的问题。此外通过嵌入设备的网络连接的进展,嵌入设备接收模块,执行接收到的模块的系统事件增加。例如,以经由网络等来交换软件产品,从而容易变更各种设备的功能为目标的平台技术的OSGi (注册商标)规定了用于对在各家庭中设置的家庭网关分发模块的规格。一般,通过这样的系统来分发的模块多种多样,模块的资源使用量也多种多样。因此, 分发并执行大量地使用资源的模块时,存在嵌入设备使用的资源枯竭的可能性。作为应对上述的问题的方法,已知多个监视以及控制模块单位的使用资源量的方法。作为代表性的方法,设置模块单位的资源量限制值、不允许使用规定量以上的资源的方法。例如,在专利文献1中示出了通过限制整个系统以及模块使用的资源量来避免因资源枯竭而引起的动作停止等故障的资源管理方法。此外,在非专利文献1中表示了分割存储器区域,将分割区域和模块对应起来,由此限制各模块使用的存储器量的方法。详细地说,示出了设置一个共享的存储器专用的分割区域,限制共享的存储器的量的方法在先技术文献专利文献专利文献1 日本特开2006-209735号公报非专利文献非专利文献 1 Godmar Back, Wilson C. Hsiegh, Jay Lepreau. Processes in KaffeOS isolation, Resource Management, and Sharing in Java. USENIX Symposium OSDI 2000, Oct. 23-25,2000.

发明内容
但是,并不限于模块一定要消耗资源到限制值为止。由于根据用户的利用方法或在系统中正在执行的模块的结构,模块实际使用的资源量变化,所以需要使设定在各模块中的限制值具有某种程度的余量。因此,当以小于各个模块的限制值的总和且小于整个系统的资源绝对量的方式来进行限制并执行模块时,存在与整个系统的资源量中的余量无关地能执行的模块数受限制的问题。例如,在非专利文献1中所示的现有技术中,存在随着模块数的增加,不得不细分存储空间,所以在各分割区域中产生空闲区域,从而存储器的使用效率下降的问题。本发明的目的在于为了解决上述问题,提供在组合多个模块使其动作的嵌入系统中,降低因资源枯萎而引起的故障发生的概率,并提高资源使用效率的资源管理方法以及嵌入设备。本发明的最主要的特征在于,关于在重新安装或执行模块时,能够根据已安装完毕或执行中的软件模块组的执行履历,来判断为模块正在稳定动作,并不是根据在各模块中设定的资源使用量限制值,而是根据执行履历,将实际使用的资源的最大值包含在总和中,判断可否安装或执行。S卩、本发明是个别地限制软件模块使用的资源量、使各软件模块的最大资源使用量的总和小于整个系统资源量的系统中的资源管理方法,该资源管理方法具有在重新安装或执行软件模块时,根据已安装完毕或执行中的软件模块组的执行履历,判断为软件模块正在稳定动作的步骤;以及根据执行履历,将实际资源使用最大值包含在总和中,判断可否安装或执行的步骤。此外,本发明是一种嵌入设备,其个别地限制软件模块使用的资源量、使各软件模块的最大资源使用量的总和小于系统整体资源量,所述嵌入设备具有在重新地安装或执行软件模块时,根据已安装完毕或执行中的软件模块组的执行履历,判断为软件模块正在稳定动作的单元;以及根据执行履历,将实际资源使用最大值包含在总和中,判断可否安装或执行的单元。根据本发明,特别在限制资源的嵌入系统中,具有在各模块的资源使用量被限制的环境下,降低因资源枯竭而引起的故障产生的概率,并且使资源使用效率化的效果。


图1是实施例1的系统结构图。图2是表示软件模块的详细的图。图3是表示资源信息表的数据结构的图。图4是表示判断可否安装或执行软件模块的处理的流程图。图5是表示关于存储器移动的一例的图。
具体实施例方式说明用于实施本发明的最佳方式。对本发明的资源管理方法和嵌入设备的实施例进行说明。图1是本发明的一个实施例的系统结构图。远程维护服务器装置110具有故障信息收集部111以及故障信息数据112,经由因特网收集在信息家电终端装置产生的软件模块的故障信息。软件模块分发服务器装置120具有软件模块登录部121、分发软件模块存储部122以及软件模块分发部123,向信息家电终端装置140分发新的软件模块。信息家电终端装置140具有软件模块接收部141、模块管理部142、模块软件模块143、故障信息发送部 144、资源使用监视部145以及资源信息表146。软件模块接收部141从软件模块分发服务器装置120接收软件模块。模块管理部142根据资源信息表146的数据,判断可否安装或执行模块。存在从软件模块分发服务器装置120接收的软件模块或预先安装在信息家电终端装置140中的软件模块等多个软件模块143。故障信息发送部144将在软件模块143中发生的故障信息发送给远程维护服务器装置110。尤其在不超过设定在软件模块143中的资源限制值的范围内发生了因资源枯竭而引起的障害时,发送其故障信息。故障信息是在日志(log)、信息转储(memory dump)、线程转储(thread dump)、资源使用状况等,在软件模块143中发生的故障的原因确定中利用的信息。远程维护服务器装置110根据该信息进行必要的维护,例如进行在信息家电终端装置140上动作的软件模块143的停止、卸载、更新等。资源使用监视部145监视软件模块143使用的资源,将资源使用量的最大值存储在资源信息表146中。图2表示图1的软件模块143的详细。软件模块143被存储在分发软件模块存储部122中,并在信息家电终端装置140中执行。软件模块143由元数据210和程序代码 220和数据资源230构成。元数据210记述了在软件模块143的安装以及执行中所必要的信息,记述了软件模块143的执行所必需的依存软件模块211的信息或存储器限制值212。 指定了 0个以上的依存软件模块211。程序代码220是在信息家电终端装置140上执行的代码。数据资源230是程序代码220所利用的图像等数据。图3表示图1的资源信息表146的数据结构。模块管理部142参照资源信息表146 决定可否安装或执行软件模块。301是用于唯一地确定软件模块的识别符。执行时间302 是从安装软件模块开始的总执行时间。存储器移动最终时刻303是通过垃圾收集(gartage collection)来进行了软件模块使用的存储器区域的移动的最后的时刻。存储器使用量最大值304是从安装软件模块开始到最大所使用的存储器量。存储器限制值305是在软件模块中设定的能够使用的存储量的限制值。存在预先在信息家电终端装置140出厂时设定存储器限制值305的情形,或者通过远程维护服务器装置110来对存储器限制值305的设定进行更新的情形,或者在接收的软件模块中包含存储器限制值的情形。行要素307有在出库时进行设定的情形、在安装软件模块时进行追加的情形、通过远程维护服务器装置110 进行追加的情形。图4表示关于软件模块接收部141接收的软件模块143,模块管理部142仅根据存储在资源信息表146中的存储器关联的数据,判断模块的安装或执行可否的流程图。以下说明处理流程。处理401 软件模块接收部141接收软件模块143。处理402 模块管理部142从接收的软件模块143的元数据201,取得依存软件模块211和存储器限制值212。处理403 将存储最大存储器使用量总和的变量设定为0。处理404 从资源信息表146取得下一个行要素307。处理405 在从接收软件模块取得的依存软件模块211中含有模块识别符301时, 由于通过新的软件模块的安装以及执行,有存储器使用量最大值增加的可能性,所以前进到步骤408。除此以外前进到处理406。处理406 在执行时间302超过预先设定的阈值时,前进到处理409。除此以外前进到处理407。处理407 根据当前时刻和存储器移动最终时刻303的差分,计算经过时间,并在经过时间超过预先设定的阈值时,前进到处理409。除此以外,前进到处理408。处理408 在存储最大存储器使用量总和的变量上加上限制值305。处理409 在存储最大存储器使用量总和的变数上加算存储器使用量最大值304。处理410 是资源信息表146的最后的行要素307的情况下,前进到处理411,除此以外,前进到处理404。处理411 在存储最大存储器使用量总和的变量上加算软件模块的存储器限制值 212。处理412 比较存储最大存储器使用量总和的变量的值和能在整个系统中使用的存储器的绝对量,在存储最大存储器使用量总和的变量的值小的情况下,前进到步骤413。 除此以外,不进行接收软件模块的安装而前进到处理401。处理413 进行接收软件模块的安装和启动。通过存储器以外的资源的限制值来判断可否对接收软件模块进行安装或执行时, 将上述流程的存储器置换在其他资源上执行。但是,处理407是存储器407特有的处理,所以省略。图5是表示记录图1的资源信息表146的存储器移动最终时刻303的定时的一例的图。作为能够有效率地对于软件模块使用的存储器区域501进行垃圾收集的方法,已知分代垃圾收集方式。在分代垃圾收集方式中,将软件模块使用的存储区域501分成新一代区域510和旧一代区域520。在重新确保软件模块使用的存储器区域时,最初在新时代区域 510中分割区域511。即使执行了规定次数的垃圾收集后,也在软件模块使用在新世代区域 510中分配区域的存储器区域时,将存储器区域移动(复制)到旧世代区域520中。具有如下特征当软件模块的存储器使用量逐渐稳定时,通过执行规定次数内的垃圾收集来释放被分配给新世代区域510的存储器区域512。资源使用监视部145在被分配给软件模块的存储器区域511从新世代区域510移动到旧世代区域520时,在资源信息表146的存储器移动最终时刻303中记录当前时刻。模块管理部142在从存储器移动最终时刻303开始的经过时间较长时,判断为正在稳定动作。以上,如在实施例中说明那样,本发明并不限于嵌入系统,还能适用于任意地安装软件,且在因资源枯竭而引起的故障发生时用户很难直接复原的监视装置或数据中心设备等信息系统。符号说明110远程维护服务器装置111故障信息收集部112故障信息数据120软件模块分发服务器装置121软件模块登录部122分发软件模块存储部
123软件模块分发部130 网络140信息家电终端装置141软件模块接收部142模块管理部143软件模块144故障信息发送部145资源使用监视部146资源信息表210元数据211依存软件模块212存储器限制值220程序代码230数据资源301模块识别符302执行时间303存储器移动最终时刻304存储器使用量最大值305存储器限制值307行要素501软件模块可使用的存储器区域510新世代区域511软件模块的分配存储器区域512软件模块的分配存储器区域520旧世代区域
权利要求
1.一种资源管理方法,其是个别地限制软件模块使用的资源量、使各软件模块的最大资源使用量的总和小于整个系统资源量的系统的资源管理方法,该资源管理方法的特征在于,具有在重新地安装或执行软件模块时,根据已安装完毕或执行中的软件模块组的执行履历,判断为软件模块正在稳定动作的步骤;以及根据执行履历,将实际资源使用最大值包含在总和中,判断可否安装或执行的步骤。
2.根据权利要求1所述的资源管理方法,其特征在于,具有根据软件模块的安装期间或执行期间比规定时间长的情况,判断为软件模块正在稳定动作的步骤。
3.根据权利要求1所述的资源管理方法,其特征在于,具有即使是当安装的软件模块和安装完毕的软件模块有依存关系时能够判断为稳定工作的软件模块,也将资源使用量限制值包含在总和中的步骤。
4.根据权利要求1所述的资源管理方法,其特征在于,所述资源是存储器、CPU、文件打开、套接字生成、文件容量、网络带宽、显示画面以及其他在计算机上上限值决定的资源中的任意一个以上。
5.根据权利要求1所述的资源管理方法,其特征在于,在对象资源是存储器、且由软件模块动态确保的存储器区域通过存储器压缩或垃圾收集进行移动的系统的情况下,根据存储器区域的移动变少的情况,判断为软件模块正在稳定工作。
6.一种嵌入设备,其个别地限制软件模块使用的资源量、使各软件模块的最大资源使用量的总和小于整个系统资源量,所述嵌入设备的特征在于,具有在重新地安装或执行软件模块时,根据已安装完毕或执行中的软件模块组的执行履历,判断为软件模块正在稳定动作的单元;以及根据执行履历,将实际资源使用最大值包含在总和中,判断可否安装或执行的单元。
7.根据权利要求6所述的嵌入设备,其特征在于,具有根据软件模块的安装期间或执行期间比规定时间长的情况,判断为软件模块正在稳定动作的单元。
8.根据权利要求6所述的嵌入设备,其特征在于,具有即使是当安装的软件模块和安装完毕的软件模块有依存关系时能够判断为正在稳定工作的软件模块,也将资源使用量限制值包含在总和中的单元
9.根据权利要求6所述的嵌入设备,其特征在于,所述资源是存储器、CPU、文件打开、套接字生成、文件容量、网络带宽、显示画面以及其他在计算机上上限值决定的资源中的任意一个以上。
10.根据权利要求6所述的嵌入设备,其特征在于,在对象资源是存储器、且由软件模块动态确保的存储器区域通过存储器压缩或垃圾收集进行移动的系统的情况下,根据存储器区域的移动变少的情况,判断软件模块正在稳定工作。
全文摘要
个别地限制软件模块(143)使用的资源量、使各软件模块的最大资源使用量的总和小于整个系统资源量的系统中的资源管理方法,该资源管理方法具有在重新地安装或执行软件模块时,根据已安装完毕或执行中的软件模块组的执行履历,判断为软件模块正在稳定动作的步骤(406);以及根据执行履历,将实际资源使用最大值包含在总和中,判断可否安装或执行的步骤(407)。
文档编号G06F9/50GK102197378SQ200980142710
公开日2011年9月21日 申请日期2009年10月2日 优先权日2008年10月27日
发明者中野正树, 川崎进一郎 申请人:株式会社日立制作所

最新回复(0)