CN101103335B - 应用管理装置和存放其软件的存储媒体 - Google Patents
应用管理装置和存放其软件的存储媒体 Download PDFInfo
- Publication number
- CN101103335B CN101103335B CN2005800466833A CN200580046683A CN101103335B CN 101103335 B CN101103335 B CN 101103335B CN 2005800466833 A CN2005800466833 A CN 2005800466833A CN 200580046683 A CN200580046683 A CN 200580046683A CN 101103335 B CN101103335 B CN 101103335B
- Authority
- CN
- China
- Prior art keywords
- application
- expansion
- resource
- management device
- execution unit
- 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.)
- Expired - Fee Related
Links
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/485—Task life-cycle, e.g. stopping, restarting, resuming execution
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0706—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
- G06F11/0736—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in functional embedded systems, i.e. in a data processing system designed as a combination of hardware and software dedicated to performing a certain function
- G06F11/0739—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in functional embedded systems, i.e. in a data processing system designed as a combination of hardware and software dedicated to performing a certain function in a data processing system embedded in automotive or aircraft systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0751—Error or fault detection not based on redundancy
- G06F11/0754—Error or fault detection not based on redundancy by exceeding limits
- G06F11/0757—Error or fault detection not based on redundancy by exceeding limits by exceeding a time limit, i.e. time-out, e.g. watchdogs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1415—Saving, restoring, recovering or retrying at system level
- G06F11/1438—Restarting or rejuvenating
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3604—Software analysis for verifying properties of programs
- G06F11/3612—Software analysis for verifying properties of programs by runtime analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/48—Indexing scheme relating to G06F9/48
- G06F2209/482—Application
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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)
- Quality & Reliability (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Stored Programmes (AREA)
- Debugging And Monitoring (AREA)
Abstract
具有存储实现基本功能用的基本应用(31~3n)的基本应用存储单元(1);从基本应用存储单元读出、并执行基本应用的基本应用执行单元(2);获取并存储实现附加功能用的扩充应用(71~7m)的扩充应用获取存储单元;从扩充应用获取存储单元读出、并执行扩充应用的扩充应用执行单元(6);以及监视因执行扩充应用而耗费的资源且在该资源的使用量超过规定值时,使基本应用照旧工作并使规定的扩充应用停止的资源监视单元(8)。
Description
技术领域
本发明涉及应用管理装置和存放其软件的存储媒体,尤其涉及使应用陷入不能控制时恢复控制的技术。
背景技术
以往,已熟知编入例如汽车导航装置的设备中管理并适当执行各种应用(后文简称为“应用”)的应用管理装置。此应用管理装置管理的应用包含:实现有关设备的基本功能用的基本应用、以及实现不是该设备的基本功能但使该设备的方便性提高用的附加功能用的扩充应用。
作为这种应用管理装置,专利文献1揭示一种应用管理装置,其中扩充应用(记载为追加应用)即使意外停机,也强制不使管理它的管理程序结束,可恢复到管理基本应用(记载为既存应用)的应用管理程序的管理画面。
此专利文献1揭示的应用管理装置中,构成基本应用受第1应用管理程序管理,扩充应用受第2应用管理程序管理,并由可独立于第2应用管理程序地工作的画面控制部进行第2应用管理程序至第1应用管理程序的切换。因而,即使扩充应用或第2应用管理程序意外停机,也能切换到第1应用管理程序的画面。
专利文献1:特开2003-271397号公报
上述专利文献1揭示的应用管理装置在扩充应用意外停机时,强制不使管理它的管理程序结束,可恢复到管理基本应用的应用管理程序的管理画面。然而,扩充应用失控,使整个***的存储器枯竭,或进入无限循环并连续占用CPU(Central Processing Unit:中央处理装置),从而陷入不能控制,存在即使发生影响基本应用的事态,也不能采取适当对策的问题。
本发明是为消除上述问题而完成的,其目的在于提供一种即便使扩充应用陷入不能控制,也能采取适当对策的应用管理装置和存放其程序的存储媒体。
发明内容
为了达到上述目的,本发明的应用管理装置,具有:存储实现基本功能用的基本应用的基本应用存储单元;从基本应用存储单元读出、并执行基本应用的基本应用执行单元;获取并存储实现附加功能用的扩充应用的扩充应用获取存储单元;从扩充应用获取存储单元读出、并执行扩充应用的扩充应用执行单元;以及监视因执行扩充应用而耗费的资源且在该资源的使用量超过规定值时,使基本应用照旧工作并使规定的扩充应用停止的资源监视单元。
本发明的存储媒体存放计算机可执行的软件,该软件从存储实现基本功能用的基本应用的基本应用存储单元读出、并执行基本应用,从获取并存储实现附加功能用的扩充应用的扩充应用获取存储单元读出、并执行扩充应用,监视因执行所述扩充应用而耗费的资源,在该资源的使用量超过规定值时,使基本应用照旧工作,并使规定的扩充应用停止。
根据本发明,构成用资源监视单元监视资源使用量,根据资源使用量判断由于扩充应用失控或进入无限循环而陷入不能控制,并使扩充应用停止,因此即便使扩充应用陷入不能控制,也不影响重要性高的基本应用的工作。
而且,通过将本发明的存储媒体存放的软件应用于应用管理装置,取得与上述第1方面的应用管理装置相同的效果。
附图说明
图1是示出本发明实施方式1的应用管理装置的组成的框图。
图2是说明本发明实施方式1的应用管理装置的资源监视单元的工作用的流程图。
图3是示出本发明实施方式2的应用管理装置的组成的框图。
图4是示出本发明实施方式3的应用管理装置的组成的框图。
具体实施方式
为了更加详细地说明本发明,下面参照附图说明实施本发明的最佳实施方式。
再有,下面按照附图说明将本发明实施方式的应用管理装置用于车载设备的情况。
实施方式1
图1是示出本发明实施方式1的应用管理装置的组成的框图。此应用管理装置的组成部分包含:基本应用存储单元1、基本应用执行单元2、基本应用31~3n、资源4、扩充应用获取存储单元5、扩充应用执行单元6、扩充应用71~7m、资源监视单元8、监视定时器9、以及通信装置10。基本应用执行单元2包含资源管理单元2a。扩充应用执行单元6包含资源管理单元6a。
基本应用存储单元1由例如硬盘或快速擦写存储器组成。车载设备如果是汽车导航装置,此基本应用存储单元1存储实现作为其基本功能的例如导航功能、路线查找功能用的基本应用31~3n。由基本应用执行单元2读出此基本应用存储单元1存储的基本应用31~3n。
基本应用执行单元2具有从基本应用存储单元1读出基本应用31~3n,并使用资源4使其得以执行的功能。基本应用执行单元2可由操作***(后文简称为“OS(Operating System)”)组成;这时,基本应用31~3n是在OS上工作的程序。基本应用执行单元2中包含的资源管理单元2a,管理供给基本应用31~3n的资源。
资源4的部分包含例如CPU、外部存储装置,是需要用于执行基本应用31~3n和扩充应用71~7m(后面详细阐述)的资源。将此资源4经基本应用执行单元2包含的资源管理单元2a供给基本应用31~3n,同时还经扩充应用执行单元6包含的资源管理单元6a供给扩充应用71~7m。
扩充应用获取存储单元5由例如硬盘或快速擦写存储器组成。如果车载设备是导航装置,此扩充应用获取存储单元5经由连接外部网络的通信装置10,或者从安装CD-ROM(Compact Disk Read Only Memory:光盘只读存储器)或DVD-ROM (Digital Versatile Disk Read Only Memory:数字多用途光盘只读存储器)这些存储媒体的外部存储装置获取并存储实现其附加功能的例如音乐再现功能、动画再现功能用的扩充应用71~7m。由扩充应用执行单元6读出此扩充应用获取存储单元5存储的扩充应用71~7m。
扩充应用执行单元6具有从扩充应用获取存储单元5读出扩充应用71~7m,并使用资源4使其得以执行的功能。将资源4经扩充应用执行单元6包含的资源管理单元6a供给各扩充应用71~7m。扩充应用执行单元6可由例如Java(注册商标)虚拟机组成。这时,扩充应用71~7m是Java(注册商标)虚拟机上工作的Java(注册商标)程序。再者,安装扩充应用执行单元6,作为1个基本应用31~3n(例如OS上的Java(注册商标)虚拟机)。扩充应用执行单元6包含的资源管理单元6a管理供给扩充应用71~7m的资源。
资源监视单元8监视扩充应用71~7m的资源4的使用状况,在资源4的使用量超过规定值时,使基本应用31~3n照旧工作,并使部分或全部71~7m停止。后面阐述此资源监视单元8的详细。
将监视定时器9用于监视扩充应用71~7m的执行时间。扩充应用71~7m构成按规定时间间隔将监视定时器9复原。因此,监视定时器9在扩充应用31~3n由于某些原因(例如本程序内循环)而该监视定时器9在规定时间内不能复原时,产生告警。
通信装置10包含例如便携电话或无线LAN控制装置,与外部装置之间经外部网络进行通信。如上文所述,此通信装置10用于从外部装置获取扩充应用71~7m。
接着,说明资源监视单元8的详细。应用管理装置中,通过添加上述扩充应用71~7m,能方便地添加基本应用31~3n不具备的功能,而且通过用扩充应用执行单元6吸收CPU或OS的差异,能实现例如Java(注册商标)那样不依赖CPU或OS的希望的功能。
然而,执行附加功能的扩充应用71~7m由于故障而失控,并大量耗费资源时,可能妨碍执行重要功能的基本应用31~3n工作。现考虑汽车导航装置中,一面由基本应用31~3n实现导航功能一面以扩充应用71~7m的方式经互联网下载Java(注册商标)记述的游戏程序的情况,则游戏程序频繁更新画面时,可能导致导航功能产生故障(在交叉点附近不能以适当的定时进行引导并产生迟后等)。为了防止发生这种事态,设置资源监视单元8。
图2是示出资源监视单元8中进行的资源监视处理的流程图。资源监视单元8首先检查资源4的使用量(步骤ST10)。于是,调查资源4的使用量是否超过规定值(步骤ST11)。这里判断为不超过规定值,则等待规定的时间(步骤ST12)后,程序返回步骤ST10。上述步骤ST11中判断为超过规定值,则仅停止扩充应用71~7m(步骤ST13)。利用上述处理,实现一种功能:按规定间隔检查正在使用的资源4的量,如果该量超过规定值,使基本应用31~3n照旧进行工作,仅使扩充应用71~7m停止。
如上文所说明,根据本发明实施方式1的应用管理装置,由于构成应用失控或进入无限循环时,CPU或存储器这些执行应用中需要的资源4的量减少,但监视正在使用的资源4的量,如果该量超过规定值,则仅使一般比基本应用31~3n重要性低的扩充应用71~7m停止,所以能采取不对重要性高的基本应用31~3n的工作产生不良影响的适当对策。
再者,上述实施方式1的应用管理装置中,如图2的流程图所示,构成按规定间隔进行资源4的使用量检查,使检查处理方便,但也能构成在扩充应用71~7m作资源请求时,进行资源4的使用量检查。根据此结构,将资源4的使用量增多考虑为资源请求处理定时事件多,所以能有效检查资源4的使用量。
资源监视单元8可构成在上述步骤ST11中判断为扩充应用71~7m的资源4的使用量超过规定值时,对其后来自扩充应用71~7m的资源4的请求送回“差错”,以代替使扩充应用71~7m停止。根据此结构,不仅能使基本应用31~3n继续工作,而且如果扩充应用71~7m不请求资源4,也能使该扩充应用71~7m继续工作。
资源监视单元8还可构成在上述步骤ST11中判断为扩充应用71~7m的资源4的使用量超过规定值时,对其后来自扩充应用71~7m的资源4的请求送回“差错”,因而抑制启动新的扩充应用71~7m,以代替使扩充应用71~7m停止。根据此结构,不仅能使基本应用31~3n继续工作,而且能使已工作的扩充应用71~7m还继续工作。
又,资源监视单元8可构成将CPU使用率、存储器使用量、外部存储装置使用量、扩充应用71~7m的执行数量、画面显示对象数量、画面显示对象的总计面积或其它执行扩充应用71~7m所需的硬件资源作为执行扩充应用71~7m耗费的资源4进行监视。这时,可构成根据扩充应用71~7m的用途或目的,组合它们中的1项或多项,进行监视。利用此结构,也能适应因扩充应用71~7m的用途或目的而重要的资源4不同的情况。
资源监视单元8还能构成不仅监视扩充应用71~7m的资源4的使用量,而且监视基本应用31~3n的资源4的使用量。根据此结构,如果基本应用31~3n的资源4的使用量少,可将较多的资源分配给扩充应用71~7m,所以基本应用71~7m不使用许多资源4时,扩充应用71~7m能利用许多资源4。
资源监视单元8又能构成在扩充应用71~7m的使用量超过规定值时,使扩充应用执行单元6停止,以代替使扩充应用71~7m各自停止,从而使全部扩充应用71~7m一次停止。利用此结构,也能适应由于某些原因而不能使扩充应用71~7m各自停止的情况。
上述构成扩充应用71~7m的资源4的使用量超过规定值时使扩充应用执行单元6停止的情况下,也能构成资源监视单元8使扩充应用执行单元6停止后,从初始状态重新启动该扩充应用执行单元6,又从初始状态重新启动全部或部分使扩充应用执行单元6停止时工作的扩充应用71~7m。根据此结构,能恢复到使扩充应用执行单元6停止前的状态或接近该状态的状态。
资源监视单元8可构成使扩充应用执行单元6停止后,如果资源4的使用量恢复到小于等于规定值,就从初始状态重新启动扩充应用执行单元6。根据此结构,能使用的资源4的量恢复,则能恢复到使扩充应用执行单元6停止前的状态或接近该状态的状态。
同样,资源监视单元8可构成使全部或部分扩充应用71~7m停止后,如果资源4的使用量恢复到小于等于规定值,就从初始状态重新启动部分或全部扩充应用71~7m。根据此结构,能使用的资源4的量恢复,则能恢复到使扩充应用71~7m停止前的状态或接近该状态的状态。
资源监视单元8还可构成利用下列任一方法决定从初始状态重新启动的扩充应用71~7m。
(1-1)按扩充应用71~7m各自预先设定的优先度高的顺序进行重新启动。
(1-2)按停止时使用的资源4的量少的顺序进行重新启动。
(1-3)按扩充应用71~7m各自预先设定的最大使用资源量少的顺序进行重新启动。
可构成用(1-1)~(1-3)的任一方法依次进行重新启动时,资源4的使用量超过规定值时,不再重新启动扩充应用71~7m。根据此结构,能有效使用资源4。
资源监视单元8可构成在使扩充应用执行单元6停止时利用通信装置10与外部网络连接的情况下,切断该连接,然后将该扩充应用执行单元6从初始状态重新启动,还在将使扩充应用执行单元6停止时工作的扩充应用从初始状态重新启动时,利用通信装置10重新连接外部网络。因而,网络连接也能恢复。
同样,资源监视单元8可构成在使扩充应用71~7m停止时利用通信装置10与外部网络连接的情况下,切断该连接后,如果资源4的使用量恢复到小于等于规定值,就在将停止的扩充应用71~7m从初始状态重新启动时,利用通信装置10重新连接外部网络。因而,网络连接也能恢复。
资源监视单元8构成使扩充应用执行单元6停止时用监视定时器9定期检查该扩充应用执行单元6是否正常工作,则可构成使扩充应用执行单元6停止时,对监视定时器9通知该情况,使监视定时器9的监视停止,而且在重新启动扩充应用执行单元6时,对监视定时器9通知该情况,使监视定时器9的监视重新启动。利用此结构,能防止发生因监视定时器9误动而例如错判为***异常并使整个***复原等事态。
同样,资源监视单元8构成使扩充应用71~7m停止时用监视定时器9定期检查该扩充应用71~7m是否正常工作,则可构成使扩充应用71~7m停止时,对监视定时器9通知该情况,使监视定时器9的监视停止,而且在重新启动扩充应用71~7m时,对监视定时器9通知该情况,使监视定时器9的监视重新启动。利用此结构,能防止发生因监视定时器9误动而例如错判为***异常并使整个***复原等事态。
可利用下列任一项实现资源监视单元8。
(2-1)作为1个扩充应用71~7m实现。
(2-2)作为扩充应用执行单元6的部分功能实现。
(2-3)作为1个基本应用31~3n实现。
(2-4)作为基本应用执行单元2的部分功能实现。
(2-5)作为在未图示的外部硬件上工作的监视程序实现。
资源监视单元8能将下列的值用作使扩充应用71~7m停止的资源4的使用量规定值。
(3-1)预先设定的值。
(3-2)适应基本应用31~3n使用的资源4的量的可变值。这时,基本应用31~3n使用的资源4的量多的情况下,使用值小的可变值。
(3-3)每一扩充应用71~7m设定的既定值或用户设定的值。
(3-4)适应扩充应用71~7m的类别的既定值。例如,做成对从可信方下载的扩充应用71~7m容许资源较多。
(3-5)每一启动扩充应用的用户设定的既定值。例如,对司机启动的扩充应用容许资源较多。
实施方式2
本发明实施方式2的应用管理装置,能选择扩充应用71~7m的资源4的使用量超过规定值时停止执行的扩充应用71~7m。
图3是示出本发明实施方式2的应用管理装置的组成的框图。此应用管理装置构成在实施方式1的应用管理装置中添加用户接口11和停止应用选择单元12。
用户接口11包含例如显示装置和输入装置。显示装置用于对用户提示工作中的扩充应用71~7m一览表。输入装置用于用户选择显示装置提示的扩充应用71~7m中的1个。
停止应用选择单元12在资源4的使用量超过规定值时,选择停止执行的扩充应用71~7m。此情况下,停止应用选择单元12可构成进行工作如下。
(4-1)使工作中的扩充应用71~7m全部停止。
(4-2)调查扩充应用71~7m的资源4的使用量,按使用量多的顺序选择扩充应用71~7m中规定数量的应用。利用这点,能大量减少资源4的使用量。
(4-3)扩充应用71~7m启动时,依次在扩充应用执行单元6管理扩充应用71~7m停的表(未图示)中标注编号,并按启动时的顺序使规定数量的扩充应用71~7m停止。可认为先启动的扩充应用71~7m比后启动的扩充应用71~7m今后少利用。因此,能减小使扩充应用71~7m停止时的影响。
(4-4)扩充应用71~7m启动时,依次在扩充应用执行单元6管理扩充应用71~7m停的表(未图示)中标注编号,并按与启动时的顺序相反的顺序使规定数量的扩充应用71~7m停止。与上述(4-3)相反,考虑仅短时间利用的扩充应用71~7m比有长时间利用实绩的扩充应用71~7m今后少利用的情况。因此,能减小使扩充应用71~7m停止时的影响。
(4-5)获取并存储扩充应用71~7m时,除获取扩充应用71~7m本身外,还同时获取优先度作为扩充应用71~7m的附加信息,分别对各扩充应用71~7m设定优先度,并按优先度低的顺序使规定数量的扩充应用71~7m停止。因而,能仅使优先度低的扩充应用71~7m(即,即使停止对车载设备的影响也不大的扩充应用71~7m)停止。
(4-6)使工作中的扩充应用71~7m一览表显示在用户接口11的显示装置上,对用户进行提示,使用户仅选择规定数量的扩充应用71~7m,让其停止。因而,能使对用户而言不希望停止的扩充应用71~7m不误停。
(4-7)根据资源4的使用量或优先度决定给用户提示的扩充应用71~7m。因而,能实现一种功能:对用户仅提示资源4的使用量和优先度为中等程度的扩充应用71~7m并寻求选择,使资源4的使用量大或优先度低的扩充应用71~7m无条件停止,资源4的使用量小或优先度高的扩充应用71~7m无条件照旧工作。
(4-8)上述(4-2)~(4-7)中,使扩充应用71~7m依次停止,直到资源4的使用量为小于等于规定值,而非停止规定数量。因而,可以不使不需要的扩充应用71~7m停止。
(4-9)获取并存储扩充应用71~7m时,除获取扩充应用71~7m本身外,还提示获取是否可停止的标记作为扩充应用附加信息,分别对各扩充应用71~7m设定是否可停止,仅使可停止的扩充应用71~7m停止。因而,可以不使一停止就有问题的扩充应用71~7m停止。
(4-10)使资源4的使用量大于等于规定值的扩充应用71~7m停止。因而,能大量减少资源4的使用量。
如上文所说明,根据本发明实施方式2的应用管理装置,能在各种条件下使扩充应用71~7m停止,所以能根据用途或目的建立较佳***。
实施方式3
本发明实施方式3的应用管理装置,在将该应用管理装置用于车载设备时,利用车辆信息控制扩充应用71~7m的停止等。在车辆上,根据安全性的观点,行驶中不使例如导航功能等这些基本应用71~7m异常结束的事件比停车中的情况下的该事件重要。因此,此应用管理装置判断车辆是行驶中还是停车中,进行较细致的处理。
图4是示出本发明实施方式3的应用管理装置的组成的框图。此应用管理装置构成对实施方式1的应用管理装置添加车辆状态获取单元13。车辆状态获取单元13从未图示的车辆状态检测单元(例如车速传感器)获取表示车辆状态的信息(例如示出是停止中还是行驶中的信息)。
上述实施方式1的应用管理装置按规定间隔或在扩充应用71~7m作资源请求时,进行资源4的使用量的检查,但本实施方式3的应用管理装置中,资源监视单元8一面根据车辆状态获取单元13取得的车辆状态,改变检查间隔,一面检查资源4的使用量。例如,停车中按长间隔检查资源4的使用量,行驶中按短间隔检查资源4的使用量。
根据此结构,通过使行驶中的资源监视单元8的资源4的使用量检查间隔短于停车中的该间隔,即使资源4的使用量急剧增加的情况下,行驶中也能立即将其检测出,使扩充应用71~7m停止。因此,能细致地进行不使基本应用31~3n停止为重要的行驶中的资源4的使用量检查。
又,上述实施方式1的应用管理装置中,构成资源监视单元8使用预先设定的固定值、适应基本应用31~3n使用的资源4的量的可变值、每一扩充应用71~7m设定的既定值或用户设定的值、适应扩充应用71~7m的类别的既定值、或者启动扩充应用71~7m的每一用户设定的既定值,作为使扩充应用71~7m停止的资源4的使用量规定值,但本实施方式的应用管理装置中,构成资源监视单元8使用适应车辆状态获取单元13取得的车辆状态的可变值,作为使扩充应用71~7m停止的资源4的使用量规定值。具体而言,使行驶中比停车中的情况下资源4的使用量容许值小。利用此结构,在扩充应用71~7m的资源4的使用量较小的状态下,使扩充应用71~7m停止,因此能减小对基本应用31~3n的影响。
再者,能构成由计算机可执行的软件组成构成上述实施方式1~实施方式3的应用管理装置的基本应用执行单元2、资源管理单元2a、扩充应用执行单元6、资源管理单元6a、资源监视单元8、停止应用选择单元12、以及车辆状态获取单元13,并通过将存放此软件的存储媒体安装到信息处理装置,使其得以执行。这时,取得与上述实施方式1~实施方式3的应用管理装置相同的作用和效果。
工业上的实用性
综上所述,本发明的应用管理装置和存放其软件的存储媒体,即便使扩充应用陷入不能控制,也能采取适当对策,适合使用在例如汽车导航装置的设备中。
Claims (36)
1.一种应用管理装置,其特征在于,具有
存储实现基本功能用的基本应用的基本应用存储单元;
从所述基本应用存储单元读出、并执行基本应用的基本应用执行单元;
获取并存储实现附加功能用的扩充应用的扩充应用获取存储单元;
从所述扩充应用获取存储单元读出、并执行扩充应用的扩充应用执行单元;
监视因执行所述扩充应用而耗费的资源且在该资源的使用量超过规定值时,使基本应用照旧工作并使规定的扩充应用停止的资源监视单元;以及
获取车辆状态的车辆状态获取单元,
资源监视单元根据所述车辆状态获取单元取得的车辆状态,改变检查资源使用量是否超过规定值的间隔。
2.如权利要求1中所述的应用管理装置,其特征在于,
资源监视单元在扩充应用的资源使用量超过规定值后,对来自所述扩充应用的资源请求送回差错。
3.如权利要求1中所述的应用管理装置,其特征在于,
资源监视单元在扩充应用的资源使用量超过规定值后,抑制新扩充应用的启动。
4.如权利要求1中所述的应用管理装置,其特征在于,
具有扩充应用的资源使用量超过规定值时,选择应停止执行的扩充应用的停止应用选择单元,
资源监视单元在扩充应用的资源使用量超过规定值时,使所述停止应用选择单元选择的扩充应用停止。
5.如权利要求1中所述的应用管理装置,其特征在于,
资源监视单元将CPU使用率、存储器使用量、外部存储装置使用量、扩充应用执行数量、画面显示对象的数量或画面显示对象的总计面积中的至少1个,作为因执行扩充应用而耗费的资源进行监视。
6.如权利要求1中所述的应用管理装置,其特征在于,
资源监视单元除监视扩充应用的资源使用量外,还监视基本应用的资源使用量。
7.如权利要求1中所述的应用管理装置,其特征在于,
资源监视单元在扩充应用的资源使用量超过规定值时,使扩充应用执行单元停止,从而使扩充应用停止。
8.如权利要求7中所述的应用管理装置,其特征在于,
资源监视单元在使扩充应用执行单元停止后,将该扩充应用执行单元从初始状态重新启动,还将在使扩充应用执行单元停止时正在工作的扩充应用从初始状态重新启动。
9.如权利要求8中所述的应用管理装置,其特征在于,
资源监视单元在使扩充应用执行单元停止后,如果资源使用量恢复到小于等于规定值,就将所述扩充应用执行单元从初始状态重新启动。
10.如权利要求1中所述的应用管理装置,其特征在于,
资源监视单元在使扩充应用执行单元停止后,如果资源使用量恢复到小于等于规定值,就将停止的扩充应用从初始状态重新启动。
11.如权利要求10中所述的应用管理装置,其特征在于,
资源监视单元按各扩充应用中预先设定的优先度高的顺序、停止时使用的资源量少的顺序或各扩充应用中预先设定的最大使用资源量少的顺序,将停止的扩充应用从初始状态重新启动,并且在因该重新启动而资源量超过规定值时,抑制重新启动。
12.如权利要求8中所述的应用管理装置,其特征在于,
具有通过外部网络进行通信的通信装置,
资源监视单元在使扩充应用执行单元停止时利用所述通信装置与外部网络连接的情况下,切断该连接,然后将该扩充应用执行单元从初始状态重新启动,还在将使扩充应用执行单元停止时正在工作的扩充应用从初始状态重新启动时,利用所述通信装置重新连接外部网络。
13.如权利要求10中所述的应用管理装置,其特征在于,
具有通过外部网络进行通信的通信装置,
资源监视单元在使扩充应用执行单元停止时利用所述通信装置与外部网络连接的情况下,切断该连接后,如果资源使用量恢复到小于等于规定值,就在将停止的扩充应用从初始状态重新启动时,利用所述通信装置重新连接外部网络。
14.如权利要求8中所述的应用管理装置,其特征在于,
具有通过定期检查扩充应用执行单元是否正常工作,监视该扩充应用执行单元的监视定时器,
资源监视单元在使扩充应用执行单元停止时停止所述监视定时器的监视,然后将该扩充应用执行单元从初始状态重新启动,还在将使扩充应用执行单元停止时正在工作的扩充应用从初始状态重新启动时,重新打开所述监视定时器的监视。
15.如权利要求10中所述的应用管理装置,其特征在于,
具有通过定期检查扩充应用执行单元是否正常工作,监视该扩充应用执行单元的监视定时器,
资源监视单元在使扩充应用执行单元停止时停止所述监视定时器的监视,然后如果资源使用量恢复到小于等于规定值,就在将停止的扩充应用从初始状态重新启动时,重新打开所述监视定时器的监视。
16.如权利要求1中所述的应用管理装置,其特征在于,
资源监视单元每隔规定间隔或在扩充应用进行资源请求时,检查资源使用量是否超过规定值。
17.如权利要求1中所述的应用管理装置,其特征在于,
将资源监视单元构成为1个扩充应用、扩充应用执行单元的部分功能、1个基本应用、基本应用执行单元的部分功能或在外部硬件上工作的监视程序。
18.如权利要求1中所述的应用管理装置,其特征在于,
资源监视单元使用预先设定的固定值、适应基本应用使用的资源使用量的可变值、每一扩充应用设定的既定值或用户设定的值、适应扩充应用的类别的既定值、或者启动扩充应用的每一用户设定的既定值,作为使扩充应用停止的资源使用量的规定值。
19.一种应用管理装置,其特征在于,具有
存储实现基本功能用的基本应用的基本应用存储单元;
从所述基本应用存储单元读出、并执行基本应用的基本应用执行单元;
获取并存储实现附加功能用的扩充应用的扩充应用获取存储单元;
从所述扩充应用获取存储单元读出、并执行扩充应用的扩充应用执行单元;
监视因执行所述扩充应用而耗费的资源且在该资源的使用量超过规定值时,使基本应用照旧工作并使规定的扩充应用停止的资源监视单元;以及
获取车辆状态的车辆状态获取单元,
资源监视单元使用适应所述车辆状态获取单元取得的车辆状态的可变值,作为使扩充应用停止的资源使用量的规定值。
20.如权利要求19中所述的应用管理装置,其特征在于,
资源监视单元在扩充应用的资源使用量超过规定值后,对来自所述扩充应用的资源请求送回差错。
21.如权利要求19中所述的应用管理装置,其特征在于,
资源监视单元在扩充应用的资源使用量超过规定值后,抑制新扩充应用的启动。
22.如权利要求19中所述的应用管理装置,其特征在于,
具有扩充应用的资源使用量超过规定值时,选择应停止执行的扩充应用的停止应用选择单元,
资源监视单元在扩充应用的资源使用量超过规定值时,使所述停止应用选择单元选择的扩充应用停止。
23.如权利要求19中所述的应用管理装置,其特征在于,
资源监视单元将CPU使用率、存储器使用量、外部存储装置使用量、扩充应用执行数量、画面显示对象的数量或画面显示对象的总计面积中的至少1个,作为因执行扩充应用而耗费的资源进行监视。
24.如权利要求19中所述的应用管理装置,其特征在于,
资源监视单元除监视扩充应用的资源使用量外,还监视基本应用的资源使用量。
25.如权利要求19中所述的应用管理装置,其特征在于,
资源监视单元在扩充应用的资源使用量超过规定值时,使扩充应用执行单元停止,从而使扩充应用停止。
26.如权利要求25中所述的应用管理装置,其特征在于,
资源监视单元在使扩充应用执行单元停止后,将该扩充应用执行单元从初始状态重新启动,还将在使扩充应用执行单元停止时正在工作的扩充应用从初始状态重新启动。
27.如权利要求26中所述的应用管理装置,其特征在于,
资源监视单元在使扩充应用执行单元停止后,如果资源使用量恢复到小于等于规定值,就将所述扩充应用执行单元从初始状态重新启动。
28.如权利要求19中所述的应用管理装置,其特征在于,
资源监视单元在使扩充应用执行单元停止后,如果资源使用量恢复到小于等于规定值,就将停止的扩充应用从初始状态重新启动。
29.如权利要求28中所述的应用管理装置,其特征在于,
资源监视单元按各扩充应用中预先设定的优先度高的顺序、停止时使用的资源量少的顺序或各扩充应用中预先设定的最大使用资源量少的顺序,将停止的扩充应用从初始状态重新启动,并且在因该重新启动而资源量超过规定值时,抑制重新启动。
30.如权利要求26中所述的应用管理装置,其特征在于,
具有通过外部网络进行通信的通信装置,
资源监视单元在使扩充应用执行单元停止时利用所述通信装置与外部网络连接的情况下,切断该连接,然后将该扩充应用执行单元从初始状态重新启动,还在将使扩充应用执行单元停止时正在工作的扩充应用从初始状态重新启动时,利用所述通信装置重新连接外部网络。
31.如权利要求28中所述的应用管理装置,其特征在于,
具有通过外部网络进行通信的通信装置,
资源监视单元在使扩充应用执行单元停止时利用所述通信装置与外部网络连接的情况下,切断该连接后,如果资源使用量恢复到小于等于规定值,就在将停止的扩充应用从初始状态重新启动时,利用所述通信装置重新连接外部网络。
32.如权利要求26中所述的应用管理装置,其特征在于,
具有通过定期检查扩充应用执行单元是否正常工作,监视该扩充应用执行单元的监视定时器,
资源监视单元在使扩充应用执行单元停止时停止所述监视定时器的监视,然后将该扩充应用执行单元从初始状态重新启动,还在将使扩充应用执行单元停止时正在工作的扩充应用从初始状态重新启动时,重新打开所述监视定时器的监视。
33.如权利要求28中所述的应用管理装置,其特征在于,
具有通过定期检查扩充应用执行单元是否正常工作,监视该扩充应用执行单元的监视定时器,
资源监视单元在使扩充应用执行单元停止时停止所述监视定时器的监视,然后如果资源使用量恢复到小于等于规定值,就在将停止的扩充应用从初始状态重新启动时,重新打开所述监视定时器的监视。
34.如权利要求19中所述的应用管理装置,其特征在于,
资源监视单元每隔规定间隔或在扩充应用进行资源请求时,检查资源使用量是否超过规定值。
35.如权利要求19中所述的应用管理装置,其特征在于,
将资源监视单元构成为1个扩充应用、扩充应用执行单元的部分功能、1个基本应用、基本应用执行单元的部分功能或在外部硬件上工作的监视程序。
36.如权利要求19中所述的应用管理装置,其特征在于,
资源监视单元使用预先设定的固定值、适应基本应用使用的资源使用量的可变值、每一扩充应用设定的既定值或用户设定的值、适应扩充应用的类别的既定值、或者启动扩充应用的每一用户设定的既定值,作为使扩充应用停止的资源使用量的规定值。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP092198/2005 | 2005-03-28 | ||
JP2005092198A JP4060322B2 (ja) | 2005-03-28 | 2005-03-28 | アプリケーション管理装置およびそのソフトウェアを格納した記憶媒体 |
PCT/JP2005/022871 WO2006103814A1 (ja) | 2005-03-28 | 2005-12-13 | アプリケーション管理装置およびそのソフトウェアを格納した記憶媒体 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101103335A CN101103335A (zh) | 2008-01-09 |
CN101103335B true CN101103335B (zh) | 2010-09-22 |
Family
ID=37053083
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2005800466833A Expired - Fee Related CN101103335B (zh) | 2005-03-28 | 2005-12-13 | 应用管理装置和存放其软件的存储媒体 |
Country Status (5)
Country | Link |
---|---|
US (1) | US8601493B2 (zh) |
JP (1) | JP4060322B2 (zh) |
CN (1) | CN101103335B (zh) |
DE (1) | DE112005003434T5 (zh) |
WO (1) | WO2006103814A1 (zh) |
Families Citing this family (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102197378B (zh) * | 2008-10-27 | 2014-03-26 | 株式会社日立制作所 | 资源管理方法和嵌入设备 |
JP2010146382A (ja) * | 2008-12-19 | 2010-07-01 | Nec Corp | 負荷分散システム、負荷分散方法、および負荷分散プログラム |
JP5187297B2 (ja) * | 2009-03-10 | 2013-04-24 | コニカミノルタビジネステクノロジーズ株式会社 | 画像形成装置、表示画面切替え方法およびプログラム |
JP4957765B2 (ja) * | 2009-08-24 | 2012-06-20 | 日本電気株式会社 | ソフトウェアプログラム実行装置、ソフトウェアプログラム実行方法、及びプログラム |
JP5449044B2 (ja) * | 2010-06-10 | 2014-03-19 | シャープ株式会社 | サーバ装置、端末装置およびアプリケーション制御システム |
US8751100B2 (en) | 2010-08-13 | 2014-06-10 | Deere & Company | Method for performing diagnostics or software maintenance for a vehicle |
US8635630B2 (en) | 2010-10-25 | 2014-01-21 | Microsoft Corporation | Application lifetime management |
JP5652198B2 (ja) * | 2010-12-27 | 2015-01-14 | トヨタ自動車株式会社 | 電子制御装置、起動制御方法 |
US8516506B2 (en) * | 2011-03-29 | 2013-08-20 | Denso International America, Inc. | Method and system for restoring an application in a dynamically linked environment |
WO2013048381A1 (en) * | 2011-09-28 | 2013-04-04 | Hewlett-Packard Development Company, L.P. | Managing data usage of a computing device |
US20140007106A1 (en) * | 2012-07-02 | 2014-01-02 | Arnold S. Weksler | Display and Terminate Running Applications |
CN103914322A (zh) * | 2013-01-05 | 2014-07-09 | 腾讯科技(深圳)有限公司 | 终端加速方法及终端 |
CN103645955A (zh) * | 2013-12-16 | 2014-03-19 | 百度在线网络技术(北京)有限公司 | 应用程序的运行管理方法和装置 |
JP6378066B2 (ja) * | 2014-11-27 | 2018-08-22 | クラリオン株式会社 | 情報処理装置および実行管理プログラム |
CN106294059A (zh) * | 2015-06-26 | 2017-01-04 | 中兴通讯股份有限公司 | 网管***中进程的恢复方法及装置 |
CN106326137B (zh) * | 2015-07-02 | 2020-09-22 | 腾讯科技(深圳)有限公司 | 一种内存优化方法、装置及用户设备 |
CN107912063B (zh) * | 2016-04-27 | 2021-05-18 | 华为技术有限公司 | 一种内存回收方法及装置 |
US20180088959A1 (en) * | 2016-09-28 | 2018-03-29 | Delphi Technologies, Inc. | Automated-vehicle resource management system |
CN107390670A (zh) * | 2017-06-27 | 2017-11-24 | 深圳市爱培科技术股份有限公司 | Android***资源控制方法、存储介质及智能终端 |
JP6926768B2 (ja) * | 2017-07-20 | 2021-08-25 | 富士フイルムビジネスイノベーション株式会社 | 情報処理装置および情報処理システム |
JP7124660B2 (ja) * | 2018-11-15 | 2022-08-24 | 株式会社デンソー | 車載システム |
JP7243459B2 (ja) | 2019-05-31 | 2023-03-22 | 株式会社デンソー | 車両用装置 |
CN110609598A (zh) * | 2019-09-02 | 2019-12-24 | Oppo广东移动通信有限公司 | 数据扫描方法、移动终端和非易失性计算机可读存储介质 |
US11249800B2 (en) * | 2019-10-28 | 2022-02-15 | EMC IP Holding Company, LLC | System and method for dynamic CPU multitasking |
JP7518464B2 (ja) | 2020-03-04 | 2024-07-18 | 京セラドキュメントソリューションズ株式会社 | 画像形成装置およびプログラム |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0489504B1 (en) * | 1990-11-30 | 1997-03-05 | International Business Machines Corporation | Bidirectional FIFO buffer for interfacing between two buses |
JPH08328880A (ja) | 1995-05-31 | 1996-12-13 | Mitsubishi Electric Corp | 複数のアプリケーションプログラムを同時に実行できるオペレーティングシステムにおける計算機運転管理システム |
US5931954A (en) * | 1996-01-31 | 1999-08-03 | Kabushiki Kaisha Toshiba | I/O control apparatus having check recovery function |
DE19624140A1 (de) * | 1996-06-17 | 1997-12-18 | Philips Patentverwaltung | System zum Übertragen von Daten |
JP3280322B2 (ja) | 1998-05-15 | 2002-05-13 | インターナショナル・ビジネス・マシーンズ・コーポレーション | コンパイル方法、フレーム検出方法及び装置、コード破棄方法、並びにコンピュータ |
JP2000222227A (ja) | 1999-02-03 | 2000-08-11 | Hitachi Ltd | プロセスの管理方式 |
US6460082B1 (en) | 1999-06-17 | 2002-10-01 | International Business Machines Corporation | Management of service-oriented resources across heterogeneous media servers using homogenous service units and service signatures to configure the media servers |
JP2001056772A (ja) * | 1999-08-18 | 2001-02-27 | Oki Electric Ind Co Ltd | 障害監視システム |
US6793625B2 (en) | 2000-11-13 | 2004-09-21 | Draeger Medical Systems, Inc. | Method and apparatus for concurrently displaying respective images representing real-time data and non real-time data |
US7191446B2 (en) * | 2001-06-01 | 2007-03-13 | Texas Instruments Incorporated | Method for resource management in a real-time embedded system |
JP2003006176A (ja) | 2001-06-21 | 2003-01-10 | Nec Software Chubu Ltd | データ処理装置,方法およびプログラム |
US6772202B2 (en) * | 2001-11-28 | 2004-08-03 | Gamespy Industries, Inc. | Queuing system, method and computer program product for network data transfer |
JP2003271397A (ja) | 2002-03-12 | 2003-09-26 | Canon Inc | アプリケーション管理装置その方法及び記憶媒体 |
JP3879635B2 (ja) * | 2002-09-06 | 2007-02-14 | 日産自動車株式会社 | 移動体用燃料電池パワープラントシステム |
US7376732B2 (en) * | 2002-11-08 | 2008-05-20 | Federal Network Systems, Llc | Systems and methods for preventing intrusion at a web host |
-
2005
- 2005-03-28 JP JP2005092198A patent/JP4060322B2/ja not_active Expired - Fee Related
- 2005-12-13 DE DE112005003434T patent/DE112005003434T5/de not_active Ceased
- 2005-12-13 WO PCT/JP2005/022871 patent/WO2006103814A1/ja not_active Application Discontinuation
- 2005-12-13 US US11/792,865 patent/US8601493B2/en not_active Expired - Fee Related
- 2005-12-13 CN CN2005800466833A patent/CN101103335B/zh not_active Expired - Fee Related
Non-Patent Citations (4)
Title |
---|
JP特开2000-222227A 2000.08.11 |
JP特开平8-328880A 1996.12.13 |
Tetsuo KAMIKAWA et al..Shasai Joho Tanmatsu Framework.Mitsubishi Denki Giho77 7.2003,77(7),35-38. |
Tetsuo KAMIKAWA et al..Shasai Joho Tanmatsu Framework.Mitsubishi Denki Giho77 7.2003,77(7),35-38. * |
Also Published As
Publication number | Publication date |
---|---|
US20080141283A1 (en) | 2008-06-12 |
CN101103335A (zh) | 2008-01-09 |
WO2006103814A1 (ja) | 2006-10-05 |
DE112005003434T5 (de) | 2008-02-14 |
US8601493B2 (en) | 2013-12-03 |
JP4060322B2 (ja) | 2008-03-12 |
JP2006277062A (ja) | 2006-10-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101103335B (zh) | 应用管理装置和存放其软件的存储媒体 | |
CN101788936B (zh) | 移动终端运行时快照备份、恢复方法及装置 | |
CN104636375A (zh) | 一种自动备份应用数据且按需恢复的方法及装置 | |
CN107656705B (zh) | 一种计算机存储介质和一种数据迁移方法、装置及*** | |
CN110737453A (zh) | 安全芯片的升级方法、装置及安全芯片 | |
CN104598335A (zh) | Nv参数的备份恢复方法和装置 | |
EP2979182A1 (en) | On-demand scalable timer wheel | |
JP2007080012A (ja) | 再起動方法、システム及びプログラム | |
CN101320389B (zh) | 文件管理方法和装置 | |
CN110287159B (zh) | 一种文件处理方法及装置 | |
KR102274668B1 (ko) | 차량용 avn 시스템의 소프트웨어 업데이트 제어 장치 및 방법 | |
CN103678018A (zh) | 一种进行数据恢复的方法及装置 | |
CN115391106A (zh) | 一种备端资源池化的方法、***及装置 | |
CN101158920B (zh) | 一种检测操作***故障的方法和装置 | |
CN112291346B (zh) | 面向异构节点集群的拟态应用部署管理***、方法及介质 | |
TWI461905B (zh) | 可遠端當機復原的運算裝置、用於運算裝置之遠端當機復原之方法及電腦可讀取媒體 | |
CN101866311A (zh) | 一种利用外设的计算机***监控与恢复方法 | |
CN111427721A (zh) | 异常恢复方法及装置 | |
JP3122371B2 (ja) | 計算機システム | |
CN117459401B (zh) | 网络靶场环境快照的生成方法、装置、设备和存储介质 | |
CN110955556B (zh) | 数据库恢复方法及装置、存储介质、数据库*** | |
CN101464818B (zh) | 文件的即时备份方法、即时恢复方法及其*** | |
JP5791524B2 (ja) | Os動作装置及びos動作プログラム | |
JP5276456B2 (ja) | データ処理システム | |
JPS63284617A (ja) | コンピュ−タの自動再スタ−ト方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20100922 Termination date: 20131213 |