用于收集数据处理系统中的清单信息的方法和系统的制作方法

文档序号:6571128阅读:289来源:国知局
专利名称:用于收集数据处理系统中的清单信息的方法和系统的制作方法
技术领域
本发明涉及信息技术领域。更具体地,本发明涉及收集数据处理系统中的清单(inventory)信息。
背景技术
诸如软件程序和硬件设备的不同类型的(物理或逻辑)资源的管理在数据处理系统(特别是具有分布式体系结构的数据处理系统)中是关键问题。当资源十分复杂并且分散在大量的装置上时,这种问题特别严重;并且,该问题在资源连续改变的动态环境中进一步恶化。
已提出了资源管理应用以在上述任务中帮助系统管理员。特别地,基于自治范例(autonomic paradigm)的资源管理应用提供允许系统自适应希望的配置(由管理员发布的规则限定)的机制;例如,在WO-A-2004/017201中说明了这种类型的资源管理应用。
但是,任何资源管理应用都需要被控制的系统的详细知识。为此,采用清单工具以收集有关系统中的被选择的资源的信息;市售的商业清单工具的例子是包含于诸如“IBM Tivoli Configuration Manager或ITCM”或“IBM Tivoli License Manager或ITLM”的由IBM公司提供的几种解决方案中的“IBM Tivoli Common Inventory Technology或CIT”部件。
现有技术中已知的清单工具一般基于以服务器为中心的方法,其中,整个执行流程由系统的中心服务器控制。首先,必须限定包含要在多个端点上执行的一系列操作的工作流以发现需要的信息。这些发现操作然后被调度,用于在端点上被执行(例如,周期性地)。一旦发现操作被提交,服务器就在所希望的端点上强制执行它。与此响应,端点发现需要的信息并将其返回服务器。服务器然后可根据可能出现的需要处理所接收的信息。
但是,上述解决方案不完全令人满意。特别是,当必须发现复杂的资源时就出现问题。事实上,在这种情况下,服务器必须对相关端点上的一系列的发现操作进行排序;例如,仅在两个不同的资源的发现被完成时才可执行这些资源之间的关系的发现。这涉及服务器上的相应的复杂的工作流的限定;并且,对端点的请求和来自端点的信息的重复传送对系统的效率具有有害的影响。
当要被发现的资源的类型随时间改变时,出现另一缺点;例如,服务器可最初对发现安装的软件产品感兴趣,后来对支持服务感兴趣。这要求实质上重新限定由服务器实现的工作流,从而对其它的发现操作存在潜在的副作用。
另外,服务器上的发现操作的调度常常不令人满意。特别是,一些发现操作即使在不是必需时也可能被执行;例如,这发生在由相关端点上的发现操作涉及的资源自其最后的执行没有改变时。相反,在特定情况下,不同发现操作的执行速率会太低。典型的情景是当软件产品在没有关键性的安全补丁的情况下被安装到端点上时;这导致在与软件产品相关的发现操作的下一个执行之前系统的严重暴露。

发明内容
本发明提供在独立权利要求中阐述的解决方案。在从属权利要求中说明本发明的有利的实施例。
特别地,本发明的一个方面提出在数据处理系统中收集清单信息的方法。为此,提供控制结构(诸如模型和/或发现指令)。控制结构限定系统资源的类别(例如,类)和类别之间的相关性;各个类别与用于发现与该类别的资源有关(例如,其实例)的清单信息的供应器有关。该方法涉及从使用器实体(诸如远程资源管理器)接收对选择的类别的发现请求(或更多)的步骤。与控制结构中的选择的类别相关的类别然后被确定。该方法继续通过与控制结构中的相关类别相关的相关供应器发现相关清单信息(与在系统中可用的相关类别的资源有关)。最后,相关清单信息被传送给使用器实体。
在本发明的实施例中,将数据移动器在公共收集器引擎登记为收听者(对选择的类别)实现该结果。
优选地,一个或更多个供应器具有用于存储被发现的相应的清单信息的内部高速缓存。
在不降低其一般适用性的情况下,供应器的调用根据在发现指令中限定的相应时间策略被调度。
作为另一改进,一些供应器可响应异步事件的出现被调用。
在本发明的优选实施例中,各个供应器仅返回自过程的以前的重复出现的变化。
进一步改进解决方案的方式是限定用于控制发现的信息的传送的策略(在发现指令中)。
例如,能够在发现的信息达到最小大小之前防止传送。
本发明的另一方面提出执行该方法的计算机程序。
本发明的另一方面提出相应的系统。


参照要结合附图阅读的、纯粹作为非限制性的指示给出的以下详细说明,将最好地理解本发明本身及其其它特征和优点,在这些附图中,图1a是可应用根据本发明的实施例的解决方案的数据处理系统的示意性框图;图1b表示系统的示例性计算机的功能块;图2是表示实现根据本发明的实施例的解决方案的不同部件的作用的协作图;图3a~3b表示说明根据本发明的实施例的解决方案的示例性应用中的不同部件之间的相互作用的顺序图。
具体实施例方式
特别参照图1a,说明具有分布式体系结构的数据处理系统100。系统100实现用于管理大量的物理或逻辑资源的基础结构。这些资源的例子是计算机、移动电话、硬件设备、软件程序、网络部件、因特网地址、存储子系统、用户、功用(role)、组织、数据库、消息队列、应用服务器、服务、商业活动等。
特别地,中心服务器105负责限定系统100的结构。多个端点110直接控制要被管理的一个或更多个资源。服务器105和端点110通过网络115(一般基于因特网)被耦合。
例如,系统100实现软件分布基础结构。在这种情况下,服务器105收集关于各个端点110的当前配置的信息;该信息用于规划选择的软件包的执行,这些软件包被用于实现端点110的希望的软件配置(如参考模型中所限定的)。出于此目的的市售商业软件应用的例子是上述“ITCM”。
现在考虑图1b,用150表示上述系统(服务器或端点)的一般的计算机。计算机150由与系统总线153并联连接的几个单元形成(具有根据系统中的计算机150的实际功能被适当缩放的结构)。详细地说,一个或更多个微处理器(μP)156控制计算机150的操作;RAM159被微处理器156直接用作工作存储器,ROM 162存储用于计算机150的引导程序的基本代码。几个外围单元群集在局部总线165周围(通过各个接口)。特别地,大容量存储器包含一个或更多个硬盘168和用于读取CD-ROM 174的驱动器171。并且,计算机150包含输入单元177(例如,键盘和鼠标)、和输出单元180(例如,监视器和打印机)。适配器183用于将计算机150与网络连接。桥接单元186连接系统总线153与局部总线165。各个微处理器156和桥接单元186可作为请求访问系统总线153以传输信息的主代理(master agent)工作。仲裁器189用对系统总线153的互斥管理访问的准许。
转到图2,在上述系统上运行的主软件部件整体以标号200表示。信息(程序和数据)一般被存储在硬盘上,并在程序运行时被加载(至少部分地)到各个计算机的工作存储器中。程序最初例如从CD-ROM被安装到硬盘上。特别地,该图说明了系统的静态结构(通过相应的部件)及其动态行为(通过一系列交换的消息)。
考虑一般的端点110,清单框架205实现用于收集关于由端点110控制的资源的清单信息的服务(例如,基于上述CIT)。清单框架205的主模块是提供用于发现需要的清单信息的单个访问点的公共收集器引擎(CCE)210。为此,收集器引擎210暴露发现接口215(具有允许以统一的方式发现任何清单信息的一组预定的API)。
收集器引擎210存储模型220,该模型220通过面向对象的范例(例如,以“统一信息模型或UIM”语言书写)中的相应的类(class)限定可能在系统中可用的、管理下的资源的各个类别。不同的资源类与相应的供应器225(在收集器引擎210外部)相关。供应器225是封装相关资源类别的知识的插件。以这种方式,对收集器引擎210完全掩盖要被发现的多种资源的不同行为;并且,可以通过为相应的资源类别添加新的供应器225,容易地扩展清单框架205。
更具体地,各个供应器225发现关于可用的资源的清单信息,并将其转换成资源类的相应的实例(每一个代表实际资源)。为此,供应器225一般执行硬件或软件扫描操作、检查目录、登记等;供应器225也可通过将操作交给安装在其上的第二模块发现远程计算机上的资源实例。在更复杂的情况下,供应器225适于从可用的观察(诸如计算的统计、登记的事务、测量的网络流量等)推断清单信息。例如,供应器225可以基于硬件扫描器(能够通过读取相应的硬件寄存器确定端点110的物理配置)或软件扫描器(能够通过扫描其文件系统并将任何可执行模块与软件目录中的可用的预定签名相比较,确定安装在端点110上的软件产品)。
每一个供应器225实现列举相应的资源类发现的所有资源实例(可能根据选择的准则被过滤)的方法。供应器225可以为交互类型,其中,它在有请求时动态产生资源实例。这保证清单信息总是最新的;交互式供应器225非常适于迅速发现(例如,硬件特征)或易失性(例如,登记的用户)的资源。相反,高速缓存型的供应器225具有用于存储事先被发现的资源实例的内部高速缓存。因此,当供应器225被询问时,它立即返回清单信息。结果,供应器225的响应时间十分短;高速缓存型的供应器225一般用于难以发现(例如,安装的软件产品)或具有较慢的动态(例如,硬件配置)的资源。高速缓存型的供应器225实现附加的方法;特别地,使用一种方法以准备或刷新内部高速缓存内的信息(例如,周期性地);使用另一种方法以使相同的信息无效(例如,当其使用期限达到最大的可容许值时)。供应器225也可为指示类型;在这种情况下,供应器225将为在相应的资源中发现的任何变化发出通知(向注册的收听者)。这种特征允许收集包含自最后的发现操作而出现的变化的变化(清单)信息;特别地,能够使供应器225只列举变化的资源实例(即,产生、更新或删除的那些)。任选地,批类型的供应器225也存储所有的上述事件;这允许收集与任何周期有关的变化信息。
清单信息的自动发现由模块230根据相应的指令235(通过发现接口215由系统管理员限定)控制。
各个发现指令235涉及特定的资源类(“什么”参数)。发现指令235指定用于发现相应的资源实例的时间策略(“什么时间”参数);例如,能够指示发现操作必须周期性地被执行,诸如每2~6个小时(由此,当为高速缓存类型时,限定相应供应器225的内部高速缓存的刷新速率)。任选地,发现指令235确定感兴趣的特定区域(“什么地方”参数);例如,发现操作可被限制到网络地址的子集。发现指令235也可指定关于发现操作的执行的附加信息(“如何”参数);例如,能够指示发现的清单信息必须在达到预定的最小大小(限定基本的传输块(transmission chunk))时才被处理。
其它发现指令235涉及将多个资源类别之间的相关性建模的类。例如,一个资源类被包含于另一个资源类之中(分别诸如用于存储装置的资源类和用于计算机的资源类);在这种情况下,计算机类的发现必须在存储装置类之前(由于没有前者则后者不能存在)。并且,一个资源类可为另一个资源类的特指(分别诸如用于操作系统和应用程序的资源类和用于一般软件产品的资源类);在这种情况下,软件产品类的发现涉及操作系统类和应用程序类的发现。作为另一例子,相关性将一个资源类与依赖于其变化的另一个资源类链接(分别诸如用于硬件的资源类和用于软件的资源类);在这种情况下,只要对硬件类发现任何变化,就应同样检查软件类(因为非常可能软件类也已出现变化)。并且,一个资源类可使用其它的资源类(分别诸如用于软件识别的资源类和用于签名、文件系统和登记的资源类);在这种情况下,软件识别类的发现包含签名类、文件系统类和登记类的发现。
发现控制器230确定要被执行的发现操作并产生以正确的次序执行它们的计划(根据发现指令235)。这样获得的计划被传送给调度器240(在收集器引擎210外部)。调度器240控制计划的提交,这涉及用于各个发现操作的作业的运行;该作业又通过发现控制器230调用相应的发现操作的执行。以这种方式,能够在对收集器引擎210没有任何影响的情况下改变调度器240。任选地,端点110也可包含一个或更多个可启动(fire)选择的事件(诸如与端点110上的异步硬件和/或软件变化有关)的外部监视器242;例如,监视器242可检测什么时候添加新的硬件部件、什么时候安装新的软件产品等等。在这种情况下,监视器242相应地通知发现控制器230,以致使对受事件影响的资源类执行发现操作。
在任意情况下,发现控制器230将相应的请求转发到控制要求的发现操作的实际执行的供应器服务器245。为此,供应器服务器245访问模型220(以确定与由发现操作涉及的资源类有关的供应器225)。对于要被执行的各个发现操作,供应器服务器245调用有关的供应器225。
任选地,收集器引擎210还包含全局高速缓存250。模块255管理存储在全局高速缓存250中的信息;特别地,高速缓存管理器255从全局高速缓存250提取希望的信息、在必要时使其无效等等。这即使对于交互式供应器225也允许提供高速缓存型供应器225典型特征的功能(诸如发现变化信息或处理传输块中的清单信息的可能性)。
收集器引擎210的服务被多个使用器(exploiter)260、265(例如,诸如有关例子中的“ITCM”的“变化管理器或CM”服务的资源管理器)访问。特别地,本地使用器260在相同的端点110上运行。另一方面,在服务器105上运行的远程使用器265通过公共代理270访问收集器引擎210的服务;公共代理270提供单运行时环境,该单运行时环境包裹一组多个服务(例如,根据实现IBM公司的“开放服务网关规范(Open Service gateway initiative)或OSGi”的适应版本的“服务管理框架或SMF”被限定)。为此,传送机构275用于在端点110和服务器105之间通信;优选地,传送机构275露出与实际使用的底层协议(诸如TCP/IP、FTP、HTTP等)无关的标准接口。传送机构275将服务器105上的需要的清单信息存储到被远程使用器265访问的服务库280中。
如下面详细说明的那样,在根据本发明的实施例的解决方案中,(本地或远程)使用器260、265通过数据移动器(data mover)与收集器引擎210交互作用。特别地,数据移动器285从使用器260、265接收对关于选择的资源类清单信息的发现请求。对于各个发现请求,数据移动器285将其自身在收集器引擎210注册为与相应的选择的资源类有关的清单信息的用户。如发现指令235指示的那样,收集器引擎210(通过适当的供应器225)发现用于与选择的一个相关的资源类的资源实例。一旦对于所有的上述相关资源类完成该过程,数据移动器285就将希望的清单信息返回到使用器260、265。
以这种方式,使用器260、265与在要被发现的资源之间存在的相关性被完全去耦。结果,服务器105上的相应工作流被大大简化;并且,这减少网络上传送的信息的量,使得对整个系统的效率具有有益影响。
提出的解决方案十分灵活,这是因为它允许以非常简单的方式改变被发现的资源类(基本上不对服务器上的工作流进行重新限定)。例如,让我们假定使用器260、265首先关心收集关于安装在端点110上的软件产品的清单信息,然后关心收集关于由其提供的服务的清单信息;在这种情况下,管理员将简单地将上述相关性添加到发现指令235上,以便以对使用器260、265完全不透明的方式自动收集希望的清单信息。
更具体地,发现指令235首先由管理员产生(动作A1)。一般使用器260、265向数据移动器285提交对关于由其资源类限定的选择的资源类别的清单信息的请求(动作A2)。对其响应,数据移动器285将其自身在发现控制器230(通过发现接口215)登记为与选择的资源类的事件有关的收听者(动作A3)。结果,发现控制器230解决涉及选择的资源类的相关性(如发现指令235指示的那样);以这种方式,发现控制器230确定与选择的资源类相关的资源类(包含或不包含选择的资源类本身),这应被考虑,以完成整个发现操作(动作A4)。发现控制器230定义相应的计划,这包括对各个相关的资源类执行发现操作(根据发现指令235);这样获得的计划然后被传送到调度器240(动作A5)。
调度器240提交该计划;该计划的各个作业(在运行时)通过发现控制器230调用相应的发现操作的执行(动作A6)。每当一般监视器242启动需要执行一个或更多个发现操作的事件时,也到达同一点(动作A6′)。发现控制器230将各个请求转发给供应器服务器245(动作A7)。供应器服务器245(根据模型220)确定与在请求中指定的资源类相关的供应器225(动作A8)。该供应器225然后被服务器供应器245调用(动作A9)。假定供应器225为高速缓存类型,那么它将发现的资源实例(如果存在的话)存储到相应的局部高速缓存中(动作A10)。供应器225然后通过供应器服务器245向发现控制器230通知指示完成发现操作的事件(动作A11)。
以这种方式,清单信息的发现(通过供应器225)与其使用(通过使用器260、265)完全独立。特别地,各个使用器260、265将简单地提交对希望的清单信息的发现请求,而无需指定它是如何被发现的;这一方面被完全交给发现指令235。因此,用于调度发现操作的时间策略的任何变化都对使用器260、265完全不透明。作为进一步的改进,监视器242还允许立即响应异步的事件。例如,一旦新的部件被插入端点110中,与用于硬件的资源类相关的供应器225就可被触发(以发现代表该部件的新的资源实例);类似地,一旦检测到在端点110上安装新的软件产品,与用于软件的资源类相关的供应器就可被触发(以发现代表该软件产品的新的资源实例)。在任何情况下,清单信息的发现都可根据任何可能发生的需要被调整。例如,能够在没有资源改变时避免执行不必要的操作,或者避免发现关键的清单信息太迟。要强调的是,对于发现清单信息的方式的任何更新都不需要对由服务器105实现的工作流产生任何干扰。
发现控制器230聚集接收的完成事件;一旦用于与所有相关资源类相关的供应器225的发现操作都已完成,发现控制器230就相应地通过发现接口215通知数据移动器285(动作A12)。对此响应,如数据移动器285特定的发现指令235指示的那样,数据移动器285优选验证是否整个发现信息(由所有涉及的供应器225发现)的大小达到传输块(动作A13)。如果是,数据移动器285将发现的清单信息传送到相应的使用器260、265。特别考虑远程使用器265,为此,数据移动器285(流传送接收的变化通知)从各个有关供应器225的内部高速缓存提取Δ信息(动作A14);以这种方式,要被传送的信息的量大大减少。Δ信息然后通过传送机构275被发送到服务器105,其中,它被存储在服务库280中。远程使用器265然后可从服务库280读取需要的清单信息(动作A15)。结果,在供应器225和使用器265之间实现通道;特别地,对于使用器265,发现清单信息所需要的操作现在被完全掩盖。
现在参照图3a~3b,通过在相关部件之间交换的一系列的有次序的消息示出根据本发明的实施例的解决方案的示例性应用的动态行为。例如,让我们假定一般的使用器MyExploiter关心收集关于由类MyClass1建模的资源的清单信息。为此,使用器MyExploiter在时间T1向数据移动器(对象MyDataMover)提交发现请求,由此作为参数传送资源类MyClass1(消息“discover(MyClass1)”)。数据移动器MyDataMover在时间T2通过发现接口将其自身在收集器引擎(对象MyCollector)登记为相同资源类MyClass1的收听者(消息“addListener(MyDataMover,MyClass1)”)。
现有考虑时间T3,收集器引擎MyCollector解决涉及资源类MyClass1的相关性(动作“\solve correlations\”)。例如,让我们假定管理员已产生指定资源类MyClass1使用资源类MyClass2、MyClass3的一系列发现指令,并且资源类MyClass2又使用资源类MyClass3。在这种情况下,这组相关的资源类将由资源类MyClass1、MyClass2和MyClass3构成。过程前进到时间T4,其中,收集器引擎MyCollector向调度器(对象MyScheduler)提交计划(对象MyPlan),用于执行涉及那些相关的资源类MyClass1~MyClass3有关的发现操作(消息“Schedule(MyPlan)”)。例如,让我们假定发现指令指定资源类MyClass1必须每周被发现,而资源类MyClass2和MyClass3必须每天被发现。在这种情况下,计划MyPlan将包含对资源类MyClass1的发现操作(要被重复执行,例如,每个星期天晚上)、对资源类MyClass2的发现操作和对资源类MyClass3的发现操作(两者均要被重复执行,例如,每晚)。
调度器MyScheduler然后提交计划MyPlan。因此,上述发现操作的作业根据它们的时间约束运行(考虑对执行可用的数据处理资源)。例如,星期六晚上与对资源类MyClass2的发现操作对应的作业在时间T5运行,以使得收集器引擎MyCollector在模型中确定与资源类MyClass2相关的供应器(对象MyProvider2)并调用它(消息‘run()”)。以这种方式,一旦发现操作已被完成(时间T6),供应器MyProvider2就将由用于资源类MyClass2的改变的资源实例构成的Δ信息(对象MyDelta2)保存到对于所有的相关资源类MyClass1~MyClass3一般由公共对象MyCache表示的其内部高速缓存中(消息“save(MyDelta2)”)。作为结果,相应的完成事件在时间T7返回收集器引擎MyCollector(消息“completed(MyProvider2)”)。与对资源类MyClass3的发现操作对应的作业类似地随后在时间T5′被提交,以使得收集器引擎MyCollector确定相关的供应器(对象MyProvider3)并调用它(消息“run()”)。以完全独立的方式,一旦发现操作已被完成(时间T6′),供应器MyProvider3就将得到的Δ信息(对象MyDelta3)保存到其局部高速缓存中(消息“save(MyDelta3)”)。相应的完成事件然后在时间T7′返回收集器引擎MyCollector(消息“completed(MyProvider3)”)。星期天晚上与对资源类MyClass1的发现操作对应的作业也在时间T8被提交,以使得收集器引擎MyCollector确定相关的供应器(对象MyProvider1)并调用它(消息“run()”)。一旦发现操作已被完成(时间T9),供应器MyProvider1就将其Δ信息(对象MyDelta1)保存到内部高速缓存中(消息“save(MyDelta1)”)。相应的完成事件在时间T10返回收集器引擎MyCollector(消息“completed(MyProvider1)”)。
一旦对所有的相关的资源类MyClass1~MyClass3的发现操作都已被完成,收集器引擎MyCollector就在时间T11聚集这些事件(动作“\aggregate events\”)。收集器引擎MyCollector然后在时间T12通知数据移动器MyDataMover用于选择的资源类MyClass1的需要的清单信息是可用的(消息“notify(MyClass1)”)。作为结果,数据移动器MyDataMover在时间T13将开始从相应的内部高速缓存MyCache提取Δ信息MyDelta1、MyDelta2和MyDelta3(消息“extract()”)。该信息然后在时间T14被传送到使用器MyExploiter(动作“/transfer/”)。
自然,为了满足局部和指定的需求,本领域技术人员可将上述解决方案进行许多修改和变化。特别地,虽然参照其优选实施例以一定程度的特定性说明了本发明,但应理解,在形式和细节上的各种省略、替代和变化以及其它实施例均是可能的;并且其目的明确在于,与本发明的任何公开的实施例相关说明的特定要素和/或方法步骤可作为设计选择的一般事项被加入任何其它实施例中。
特别地,如果系统具有不同的体系结构或包括等同的单元,那么类似的考虑适用。例如,系统可包括不同数量的客户机和/或服务器;但是,什么也不能阻止将提出的解决方案应用于单个计算机。并且,各计算机可具有另一结构或者可包括类似的要素(诸如暂时存储程序或其部分以减少在执行的过程中对大容量存储器的访问的高速缓冲存储器);在任何情况下,能够用任何代码执行实体(诸如PDA、移动电话等)代替计算机。
虽然在上面的说明中提到软件分布应用,但可为了任何资源管理目的收集清单信息(例如,用于许可管理基础结构中)。类似地,能够收集不同类型的清单信息;并且,考虑的资源仅是示例性的,并且不必以限定的方式解释它们。如果对资源的任何种类提供等同的模型、如果以另一种方式限定发现指令、或者如果支持其它的供应器(例如,每一个服务多个资源类中的两个),那么类似的考虑适用;并且,提出的技术思想可得到应用,以在资源之间发现任何类型的相关性。在任何情况下,能够为模型和/或发现指令采用等同的控制结构;例如,相关性可以在模型中(而不是在发现指令中)被限定。
在不背离本发明的原则的情况下,数据移动器和/或收集器引擎可由等同的模块代替。
很显然,提出的解决方案也可被应用于不是高速缓存类型的供应器(例如,通过采用收集器引擎的高速缓存管理器)。
并且,不排除调度器由简单的定时器服务(具有收集器引擎)代替的基本实现。
另一方面,异步事件的处理不是严格必需的,在本发明的一些实施例中它可被省略。
尽管仅仅为了传送Δ信息特别设计了数据移动器,但不应以限定的方式对其进行解释;换句话说,可以考虑将提出的解决方案应用于总是返回被发现的整个清单信息的数据移动器。
如果发现指令(对数据移动器特定的)诸如根据最大可容许网络带宽限定用于控制清单信息的传送的其它策略,那么类似的考虑适用。作为替代方案,能够实现与清单信息的收集有关的任何其它策略(例如,限制要被供应器使用的处理能力)。在任何情况下,不支持任何传送策略的实现处于本发明的范围内。
如果以不同的方式构建程序(可用于实现本发明的各个实施例),或者如果提供附加的模块或功能,那么类似的考虑适用;类似地,存储器结构可为其它类型,或者可以由等同的实体(不必由物理存储介质构成)代替。并且,提出的解决方案适用由等同的方法(具有类似或附加的步骤,即使是以不同的次序)实现。在任何情况下,程序可采取适于被任何数据处理系统使用或与任何数据处理系统相关使用的任何形式,诸如外部或常驻软件、固件或微代码(目标代码或源代码的形式)。并且,可以在任何计算机可使用介质上提供该程序;介质可以为适于包含、存储、传达、传播或传送程序的任何元件。这种介质的例子为固定磁盘(可以预加载程序)、可移动盘、带、卡、导线、光纤、无线连接、网络和广播波等;例如,介质可以为电子、磁性、光学、电磁、红外或半导体类型。
在任何情况下,根据本发明的解决方案适于由硬件结构(例如,被集成到半导体材料的芯片中)或由软件和硬件的组合实现。
权利要求
1.一种用于收集数据处理系统(100)中的清单信息的方法(200),该方法包括步骤提供(a1)限定系统资源的类别和各类别之间的相关性的控制结构(220;235),每个类别与用于发现与该类别的资源有关的清单信息的供应器(225)相关;从使用器实体(260;265)接收(A2)对至少一个选择的类别的发现请求;确定(A4)与控制结构中的选择的类别相关的类别;通过与控制结构中的相关类别相关的相关供应器,发现(A5~A11)与在系统中可用的相关类别的资源有关的相关清单信息;和将相关清单信息传送(A14~A15)到使用器实体。
2.根据权利要求1的方法(200),其中,发现请求被公共数据移动器(285)接收(A2),该方法还包括步骤将数据移动器在公共收集器引擎(210)登记(A3)为选择的类别的收听者,收集器引擎控制相关类别的确定(A4)和相关清单信息的发现(A5~A11);和响应对所有的相关类别发现相关清单信息,通过收集器引擎通知(A12)数据移动器,数据移动器响应所述通知控制相关清单信息的传送(A14~A15)。
3.根据权利要求1或2的方法(200),其中,各个供应器(225)与用于相应的清单信息的高速缓存存储器耦合,对于各个相关供应器,发现(A5~A11)相关清单信息的步骤包括通过收集器引擎(210)调用(A5~A6;A6′、A7~A9)相关供应器;将相关清单信息存储(A10)到高速缓冲存储器中;和将相关清单信息的发现的完成传达(A11)给收集器引擎。
4.根据权利要求3的方法(200),其中,对于与第一相关供应器相关的至少一个第一相关类别,控制结构(220;235)还限定用于发现(A5~A11)与第一相关类别的资源有关的清单信息的时间策略,发现(A5~A11)相关清单信息的步骤包括根据相应的时间策略调度(A5)用于调用各个第一相关供应器的计划,第一相关供应器根据该计划被调用(A6~A9)。
5.根据权利要求3或4的方法(200),其中,对于与第二相关供应器相关的至少一个第二相关类别,发现(A5~A11)相关清单信息的步骤包括对于各个第二相关类别监视(A6′)异步事件的出现,相应的第二相关供应器响应各异步事件被调用(A7~A9)。
6.根据权利要求1~5之任一的方法(200),其中,通过各个相关供应器被发现(A5~A11)的相关清单信息表示有关的相关类别的资源自该相关清单信息的先前发现的变化。
7.根据权利要求1~6之任一的方法(200),其中,对于至少一个第三相关类别,控制结构(220;235)还限定用于相应的相关清单信息的传送策略,该相关清单信息根据所述传送策略被传送(A14~A15)到使用器实体(260;265)。
8.根据权利要求7的方法(200),其中,使用器实体(265)在远程服务器上运行,并且,传送策略指定相关清单信息的最小大小,该方法还包括以下步骤在达到最小大小之前,防止将相关清单信息传送(A13)给使用器实体。
9.一种计算机程序(200),用于当计算机程序在数据处理系统(100)上被执行时执行权利要求1~8之任一的方法。
10.一种系统(100),包括用于执行根据权利要求1~8之任一的方法的步骤的装置(200)。
全文摘要
提出用于收集与复杂资源有关的清单信息的解决方案(200)。为此,数据移动器(285)与公共收集器引擎(210)连接。数据移动器代表每一个使用器(265)将其自身登记(A3)为选择的资源类的收听者。如预定的发现指令(235)中指示的那样,收集器引擎解决(A4)涉及的选择的资源类的相关性。根据在相同的发现指令中限定的调度计划,适于发现关于相关资源类的清单信息的供应器(225)被周期性地调用(A5~A9)。一旦用于所有的相关资源类的供应器已完成相应的信息的发现(A10),数据移动器就相应地被通知(A11)。对此响应,数据移动器将发现的(变化)清单信息传送(A13~A15)到使用器。
文档编号G06F17/00GK101025747SQ20071000445
公开日2007年8月29日 申请日期2007年1月23日 优先权日2006年2月22日
发明者鲁伊吉·皮切蒂, 弗朗赛斯科·M.·卡特里, 亚利桑得罗·多纳特利, 阿尔博托·加马瑞亚, 乔纳森·马克·瓦格纳 申请人:国际商业机器公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1