资源管理方法以及设备技术

技术编号:2851609 阅读:138 留言:0更新日期:2012-04-11 18:40
本发明专利技术涉及一种资源管理设备和方法,并且尤其适合于实时系统的资源管理。特别是,本发明专利技术牵涉到在主存储器量受限的低成本系统上运行的应用程序的存储器管理。本发明专利技术提供了一种调度数据处理系统中多个任务的方法,每一任务具有挂起数据,所述数据用于基于与之关联的存储器用量来规定任务的挂起,所述方法包括:处理多个任务之一;监控表示与挂起数据匹配的任务的存储器用量的输入,所述挂起数据与所述任务相关联;根据所监控的输入来挂起所述任务的处理;并且处理多个任务的不同的一个。因此在本发明专利技术中,将在这种系统上执行的任务被依照挂起数据来预先配置,也称为基于存储器的抢占点,其表示在任务执行过程中各点处(即,在抢占点处和它们之间)所需的存储器量。所述数据处理系统具备相应的处理装置,被设置为根据将处理的任务和可用的存储器来评估所述任务的调度是否应该被限制。本发明专利技术因此提供了一种基于存储器限制来抢占任务处理的装置,并且由此提供了新的存储器管理方法和新的抢占标准。

【技术实现步骤摘要】
【国外来华专利技术】
本专利技术涉及一种资源管理方法及其设备,并且特别是、但非排它性地适合于实时系统的资源管理。存储器的管理是资源管理的关键方面,并且已经开发了各种方法来优化其使用。一种方法就是所谓的“虚拟存储器”,其中计算机看起来具有比它实际上拥有的更多的主(或者一级)存储器,这是通过把未用资源换出主存储器并将其置于第二存储器(例如,硬盘驱动器)并且利用执行当前操作所需的那些来代替它们来实现的。虚拟存储器是当应用程序的存储器需求超出可用的主存储器时、或者当应用程序需要访问没有驻留在一级存储器中的资源时被使用。在后一情况中,虚拟存储器管理器定位未使用的存储页面(例如是最近没有被访问的那些),并且把未使用的页面写出盘的保留区,将其称为交换文件。虚拟存储器管理器然后令CPU把所请求的页面从盘上的文件或者交换文件读入一级存储器。当这样做时,所述虚拟存储器管理器映射第一和第二存储器页面并且执行某些内部内务操作。为了获取更多的信息,读者可以参阅“H.M.Deitel,Anintroduction to Operating Systems,Addison Wesley PublishingCompany,Inc.,ISBN0-201-14502-2,1984”的第3部分(第7章)。具有足够的主存储器,会很少使用虚拟存储器。如果存储器不足,那么计算机会花费其大多数时间来在存储器和交换文件之间移动页面,由于硬盘驱动器访问比存储器访问要慢1000倍,所以这是非常慢的。另外,数据的必需的移动增加了不确定性,并且减少了系统的可预测性。虚拟存储器由此以每一位较低的成本来增加存储容量,但是从时间的角度看,最坏情况的访问时间和不确定的行为也随之增加。存储器管理的另一方法涉及根据可用存储器来选择和处理文件。这种方法尤其适合于某些类型的文件,诸如图像文件,这些文件是极其资源密集的。处理这种文件涉及根据其处理要求以及存储器可用性来从所述文件的多个不同版本(每个对应于不同分辩率,或者服务质量(QoS))中选择一个版本。在图像文件的情况中,可以把不同分辩率的版本存储在图像文件的不同视频轨道中;此方法是AppleTM在他们的QuickTime VRTM应用程序中目前采用的方法。采用此方法的问题是需要图像的多个版本可加以利用,这是极为不便并且是耗费成本的。应用程序和数据的处理看起来密切牵涉资源的增加量,这意味着计算机不断地需要升级。对于硅上的系统或者芯片设备上的系统来说,在任何给定的情况下,存储器都在变为一个主要的限制因素,由此,从所需要的硅面积量的观点看,添加另一处理核心(诸如MIPS或者VLIW)不再是问题。因此,存储器、而非CPU周期很可能变为新一代系统的瓶颈。如果存在一种不需要辅助存储器并且处理器不密集并且因此比现有方法更加便宜的存储器管理方法,是合乎需要的。根据本专利技术的第一方面,提供了一种调度数据处理系统中多个任务的方法,每一任务具有挂起数据,所述挂起数据用于基于与之关联的存储器用量来规定任务的挂起,所述方法包括处理多个任务之一;监控表示与挂起数据匹配的任务的存储器用量的输入,其中所述挂起数据与所述任务相关联;根据所监控的输入来挂起所述任务的处理;并且处理多个任务的不同的一个。在随后的描述中,任务的挂起称为任务抢占,或者任务的抢占,并且术语“任务”用来表示可以根据其自身竞争诸如存储器、CPU、输入/输出设备等等的系统资源的执行单位。在一个实施例中,可以把任务看作一系列连续执行的作业,每个作业包括一个或多个子作业。例如,任务可以包括“去复用视频流”,并且涉及读入输入流、处理所述流并且输出与之相关的数据。这些步骤将针对每一输入数据流来执行,以便单个流的读取、处理和输出对应于执行一个作业;由此当存在多个将要读入并处理的多个数据分组时,作业将被执行相应数目的次数。子作业可以被认为涉及作业的功能部件。在本专利技术的实施例中,由数据处理系统使用的存储器量是通过所谓的抢占点由挂起数据间接控制的,所述抢占点用于规定在任务执行过程中各点处所需的存储器量。这些抢占点被用来防止数据处理系统因没有存储器而崩溃。当实时任务具有包括多个子作业的特征时,抢占点优选地与任务的子作业边界一致。在随后的描述中,把挂起数据称为抢占存储器数据或者仅仅称为存储器数据。在一种结构中,从请求解调度(descheduling)事件的任务处接收输入(表示与所述任务相关联的挂起数据相匹配的任务的存储器用量);抢占点例如可以通过一行代码被嵌入到任务中,所述行代码用于请求解调度事件,指明抢占点已经存在。在可替代的结构中,所述输入可以是正由任务使用的存储器量,由此,监控步骤于是将涉及监控相对于与此任务相关联的挂起数据的实际存储器用量。便利的是,所述方法包括接收用于识别与多个任务的每一个相关联的最大存储器用量的第一数据;接收用于识别对于处理多个任务可用的存储器的第二数据;并且根据第一和第二数据来识别是否存在足够的存储器可以用来处理所述任务。所述监控和挂起步骤然后只响应于识别出存储器不足才被应用。在此结构中,如果数据处理系统不具有足够存储器来同时处理所有任务,那么所述数据处理系统只利用挂起点、或者抢占点。便利的是,所述方法包括监控任务的终止,并且响应于任务终止重复识别存储器可用性的所述步骤。在一种结构中,在任务已经终止之后,如果存在足够的存储器来同时执行剩余的任务,那么就认为监控步骤是不必要的,并且允许任务前进,而无需监控任何涉及存储器用量的输入。在第二种结构中,所述方法可以包括处理非实时的任务,同时监控涉及其他任务的存储器用量的输入。依照本专利技术的第二方面,提供了一种用于数据处理系统中的调度器,所述数据处理系统被设置为执行多个任务并且有权访问用于执行所述任务的规定量的存储器,所述调度器包括数据接收器,被设置为接收用于识别与任务相关联的最大存储器用量的数据;评估器,被设置为根据所接收的数据来识别是否存在足够的存储器来执行所述任务;选择器,被设置为选择至少一个任务以便在执行任务期间挂起,所述挂起与所述任务被规定的存储器用量一致;其中,响应于评估器识别出不存在足够存储器来执行多个任务,所述选择器根据任务被规定的存储器用量以及所述数据处理系统可用的规定量的存储器来选择一个或多个任务以便挂起,并且所述调度器响应于使用规定存储器的任务来挂起所选择的任务或者每一所选任务的执行。有益的是,所述调度器可以依照硬件或者软件来实现,并且所述数据处理系统可以是高容量消耗电子设备,诸如是数字电视系统。根据本专利技术的第三方面,提供了一种向数据处理系统传输数据的方法,所述方法包括如下步骤在处理任务的过程中传输供数据处理系统使用的数据;并且传输挂起数据,所述挂起数据用于在任务处理期间根据存储器用量来规定任务的挂起,其中所述数据处理系统被设置为执行包括如下步骤的过程监控表示与挂起数据相匹配的任务的存储器用量的输入,所述挂起数据与所述任务相关联;并且挂起所述任务的处理。此第三方面因此涉及与待处理的任务相对应的挂起或者抢占数据的分派。所述挂起数据可以作为定期广播信号(例如,具有伴随其它资源的挂起数据的额外任务)的一部分来分送,或者作为数据处理系统的通用升级部分由服务供应商来分派。此外,数据处理系统可以通过独立的链路或设备(例如,软盘或者光本文档来自技高网...

【技术保护点】
一种调度数据处理系统(100)中多个任务(τ↓[i])的方法,每一任务具有挂起数据(303),所述挂起数据用于基于与之关联的存储器用量来规定任务的挂起,所述方法包括:处理多个任务之一;监控表示与挂起数据匹配的任务的存储器用量 的输入,其中所述挂起数据与所述任务相关联;根据所监控的输入来挂起所述任务的处理;并且处理多个任务的不同的一个。

【技术特征摘要】
【国外来华专利技术】EP 2003-4-14 03100996.21.一种调度数据处理系统(100)中多个任务(τi)的方法,每一任务具有挂起数据(303),所述挂起数据用于基于与之关联的存储器用量来规定任务的挂起,所述方法包括处理多个任务之一;监控表示与挂起数据匹配的任务的存储器用量的输入,其中所述挂起数据与所述任务相关联;根据所监控的输入来挂起所述任务的处理;并且处理多个任务的不同的一个。2.如权利要求1所述的方法,包括接收(501)用于识别与多个任务相关联的最大存储器用量的第一数据(303d);接收用于识别对于处理多个任务可用的存储器的第二数据;并且根据第一和第二数据来识别(504)是否存在足够的存储器可用来处理所述任务;其中所述监控和挂起步骤只响应于识别出存储器不足才被应用(509)。3.如权利要求1所述的方法,其中所述输入包括表示挂起请求的数据。4.如权利要求1所述的方法,其中所述输入包括表示任务的存储器用量的数据,并且所述方法包括识别存储器用量与挂起数据何时匹配,其中所述挂起数据与所述任务相关联。5.如权利要求1所述的方法,包括监控(601)任务的终止并且响应于任务终止来重复(603)识别存储器可用性的所述步骤。6.如权利要求5所述的方法,其中,响应于识别出有足够存储器来执行剩余的任务,那么认为所述监控步骤是不必要的(605)。7.一种用于数据处理系统(100)的调度器(401),所述数据处理系统被设置为执行多个任务(τi)并且有权访问用于执行所述任务的规定量的存储器,所述调度器包括数据接收器(203),被设置为接收用于识别与任务相关联的最大存储器用量的数据;评估器(403),被设置为根据所接收的数据来识别是否存在足够的存储器来执行所述任务;选择器(τi,401,403),被设置为选择至少一个任务以便在执行任务期间挂起,所述挂起与由任务规定的存储器用量一致;其中,响应于评估器识别出不存在足够存储器来执行多个任务,所述选择器根据任务被规定的存储器用量以及所述数据处理系统可用的规定量的存储器来选择一个或多个任务以便挂起,并且所述调度器响应于使用规定存储器的任务来挂起所选择的任务或者每一所选任务的执行。8.如权利要求7所述的调度器,其中所述评估器(403)被设置为监控任务的终止,并且响应于任务终止来识别是否存在足够的存储器来执行剩余的任务。9.如权利要求7所述的调度器,其中所述数据识别与所述任务相关联的执行最后期限。10.如权利要求9所述的调度器,其中,响应于评估器(403)识别出有...

【专利技术属性】
技术研发人员:RJ布里DJC洛维特
申请(专利权)人:皇家飞利浦电子股份有限公司
类型:发明
国别省市:NL[荷兰]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1