CN1668010A - 用来在更新分发系统中分发更新元数据的基于标记模式 - Google Patents

用来在更新分发系统中分发更新元数据的基于标记模式 Download PDF

Info

Publication number
CN1668010A
CN1668010A CNA2005100094902A CN200510009490A CN1668010A CN 1668010 A CN1668010 A CN 1668010A CN A2005100094902 A CNA2005100094902 A CN A2005100094902A CN 200510009490 A CN200510009490 A CN 200510009490A CN 1668010 A CN1668010 A CN 1668010A
Authority
CN
China
Prior art keywords
software upgrading
update service
service node
data structure
update
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
Application number
CNA2005100094902A
Other languages
English (en)
Inventor
A·H·艾弗布克
D·C·马尔
D·B·德根
D·P·门齐斯
J·R·弗舍尔
M·舍帕德
康成国
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Corp
Original Assignee
Microsoft Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of CN1668010A publication Critical patent/CN1668010A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • AHUMAN NECESSITIES
    • A23FOODS OR FOODSTUFFS; TREATMENT THEREOF, NOT COVERED BY OTHER CLASSES
    • A23LFOODS, FOODSTUFFS, OR NON-ALCOHOLIC BEVERAGES, NOT COVERED BY SUBCLASSES A21D OR A23B-A23J; THEIR PREPARATION OR TREATMENT, e.g. COOKING, MODIFICATION OF NUTRITIVE QUALITIES, PHYSICAL TREATMENT; PRESERVATION OF FOODS OR FOODSTUFFS, IN GENERAL
    • A23L11/00Pulses, i.e. fruits of leguminous plants, for production of food; Products from legumes; Preparation or treatment thereof
    • A23L11/05Mashed or comminuted pulses or legumes; Products made therefrom
    • A23L11/07Soya beans, e.g. oil-extracted soya bean flakes
    • AHUMAN NECESSITIES
    • A23FOODS OR FOODSTUFFS; TREATMENT THEREOF, NOT COVERED BY OTHER CLASSES
    • A23PSHAPING OR WORKING OF FOODSTUFFS, NOT FULLY COVERED BY A SINGLE OTHER SUBCLASS
    • A23P30/00Shaping or working of foodstuffs characterised by the process or apparatus
    • A23P30/10Moulding
    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47JKITCHEN EQUIPMENT; COFFEE MILLS; SPICE MILLS; APPARATUS FOR MAKING BEVERAGES
    • A47J43/00Implements for preparing or holding food, not provided for in other groups of this subclass
    • A47J43/20Shapes for preparing foodstuffs, e.g. meat-patty moulding devices, pudding moulds
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 

Abstract

提出了一种用来把软件更新元数据信息传送到客户计算机和更新服务节点的基于标记结构。更新元数据文件包括:包括单独地标识软件更新的软件更新标识符的标识符标记;带有关于软件更新的一般属性信息的零个或多个一般属性标记;带有根据语言组织的本地化属性信息的零个或多个本地化属性标记;标识如更新元数据中所述当前软件更新与其它软件更新的依从关系的零个或多个关系标记;带有用来确定软件更新对客户计算机的可应用性的信息的零个或多个应用规则标记;带有关于软件更新的有效载荷文件的信息的零个或多个文件标记;以及带有导向用来安装软件更新的软件处理器的信息的处理器专用数据标记。

Description

用来在更新分发系统中分发更新元数据的基于标记模式
技术领域
本发明涉及软件和计算机网络,尤其涉及用来在更新分发系统中分发更新元数据的基于标记模式。
背景技术
几乎所有的可购买软件产品都要经受持续的修正过程,以修理和更新软件的特征。软件产品的每一次修正常常需要添加新文件、用较新修正替换现有文件、删除过时文件、或这些动作的各种各样的组合。替换较旧文件、添加新文件、并删除软件产品的过时文件的这个过程此后将被称为“更新产品”,并且在更新产品中使用的数据集,包括二进制文件、数据文件、更新指令、元数据等等,此后将被简称为“更新”。
一旦软件供应商已为软件产品创建了用以排除问题、提高安全或添加新特征的更新,软件供应商将希望该更新对其客户库广泛可用。常常,诸如当更新涉及更正产品缺陷或解决重大安全问题时,软件供应商将希望该更新能尽快地安装在客户的计算机上。确实,大多数软件供应商有着把软件更新尽快并尽量无困难地分发给其客户的商业动机。
计算机行业已在连接到网络特别是因特网的计算机数量方面经历了爆炸性的增长。由于该爆炸性增长,并由于经与因特网连接可用的通信能力,因特网已变成软件供应商向其客户分发更新的重要且不可或缺的通道。实际上,因特网已变成许多软件供应商向其客户提供软件更新的主要分发通道。软件供应商最感兴趣的常常是在因特网上分发软件更新,因为在因特网上进行电子更新分发降低了他们的总成本,并使客户在一旦软件更新可用时就可获得它们。越来越频繁地,这些软件更新无任何用户干涉就在因特网上进行。
尽管现在通常因特网被用作从软件供应商分发软件更新的渠道,还是有若干问题会频繁产生。两个这种问题包括(1)关于更新分发基础设施/资源的功效,以及(2)软件更新在分发和安装上的管理控制。
关于分发资源的功效,包括因特网的网络仅拥有常被称为带宽的有限量的通信资源。有限量的通信带宽常导致瓶颈,特别是对于普及软件产品的软件更新,诸如微软公司的Windows系列的操作系统和相关产品。即使当在因特网上分布的多个下载点上都有软件更新时也存在这种瓶颈。发生这种瓶颈的一个原因是因特网提供的非结构化访问模型。例如,如果计算机A上的第一个用户请求下载最新的软件产品,该下载经过第一个用户的独立服务提供商(ISP)。此外,该请求被视为单个独立的访问,意思是该请求被视为独立于或无关于所有其它网络通信和/或请求。由此,如果恰巧有相同ISP的计算机B上的第二个用户请求与第一个用户同样的下载,该第二个用户的请求也被视为单个独立的访问。在此例中,由于每个请求都被单独处理,相同的下载要在相同的基础设施上传送两次。显然,如果用户数量有了实质性的增长,有限的通信带宽将变成瓶颈。在颇为常见的此例中,如果下载能高速缓存在一本地区域中,且每个用户请求从本地高速缓存中得到满足,这将会有效得多。
关于分发的控制,许多机构特别是大型机构要控制更新向其计算机的分发是有合理原因的。例如,不幸地某些更新具有或者会引入常称为错误(bug)的缺陷,它们会“破坏”软件产品的特征。这些破坏的特征也许并不重要,但是常常它们能瓦解某企业的关键关键任务(mission-critical)特征。因为企业不能承受失去其关键任务特征,负责的企业在把更新发送到其它计算机上之前,首先在受控环境中评估并测试每个软件更新一段时间。该评估阶段允许机构去证实更新是否将负面地影响关键任务特征。只有在已经令人满意地确定了更新将不会使任何关键任务特征崩溃之后,才允许向机构剩下的计算机分发更新。显然,大多数机构必须对软件更新在其计算机上的安装进行控制。
企业或机构常需要控制软件更新的分发的另一个原因是确保机构中计算机间的连续性。对信息服务部门而言,拥有所有计算机在其上操作的标准化目标平台是非常重要的,不管它是字处理器的平台还是操作系统的平台。如果没有标准,软件和计算机维护会变得不必要的复杂和困难。
本地控制重要的又一原因是为了发账单。在大机构中,单独在计算机上安装软件,或对机构中每台计算机的特定软件产品单独地许可证维持许可证,常常是低效的。相反,单节点许可证允许机构在多台计算机上运行软件产品。因而,机构可能需要报告在节点许可证下运行产品的计算机数量,或需要限制节点许可证下运行产品的计算机数量。所有这些原因常需要对软件更新分发的本地控制。
考虑到以上说明的涉及软件更新分发的各种问题,所需要的是一种可扩展软件更新分发体系结构,它用来提供对软件更新分发的控制并增加其分发功效。本发明处理在现有技术中发现的这些和其它问题。
发明内容
根据本发明的诸方面,提出了一种用来把更新元数据从更新服务节点传送到子更新服务节点或客户计算机的基于标记的结构。该基于标记的结构包括:包括唯一地标识软件更新的软件更新标识符的标识符标记;带有关于软件更新的一般属性信息的零个或多个一般属性标记;带有根据语言组织的本地化属性信息的零个或多个本地化属性标记;标识如在更新元数据中所述的当前软件更新与其它软件更新的依从关系的零个或多个关系标记;带有用来确定软件更新对客户计算机的可应用性的信息的零个或多个可应用性规则标记;带有涉及软件更新的有效载荷文件的信息的零个或多个文件标记;以及带有涉及用来安装软件更新的软件处理器的信息的处理器专用数据标记。
根据本发明的其它方面,提出了一种用来把更新元数据从更新服务节点传送到子更新服务节点或客计算机的基于标记的结构。该基于标记的结构包括:包括唯一地标识软件更新的软件更新标识符的标识符标记;标识如更新元数据中所述当前软件更新与其它软件更新的依从关系的零个或多个关系标记;和带有涉及软件更新的有效载荷文件的信息的零个或多个文件标记。
附图说明
结合附图参阅以下详细说明,本发明的前述诸方面和许多附带优点将变得更容易领会,也变得更好理解。
图1是根据本发明诸方面形成的示例性更新分发系统的示图;
图2是示出根据本发明诸方面形成的更新服务节点的示例性逻辑组件的框图;
图3是示出根据本发明诸方面形成的更新服务根节点的示例性逻辑组件的框图;
图4A和4B是示出根据本发明诸方面,在从父更新服务节点向子更新服务节点提供软件更新中,在父更新服务节点和子更新服务节点之间的示例性交换的框图;
图5是示出示例性例程的流程图,该例程在子更新服务节点上执行,以周期性地从父更新服务节点获取更新;
图6是示出示例性子例程的流程图,该子例程适合于在图5的示例性例程中使用,来从父更新服务节点获取更新目录;
图7是示出示例性子例程的流程图,该子例程适合于在图5的示例性例程中使用,用来从父更新服务节点获取软件更新;
图8是示出示例性例程的流程图,该例程用来处理来自子更新服务节点的更新请求;以及
图9是示出确定更新元数据文件内容的部分示例性基于XML更新元数据模式的框图。
具体实施方式
根据本发明的诸方面,提出了以分层方式组织的用来分发软件更新的更新分发系统。图1是根据本发明诸方面形成的示例性更新分发系统100的示图。根据本发明,在诸如所示更新分发系统100的更新分发系统“顶部”,是更新服务根节点102。诸如软件供应商110的软件供应商,通过向更新服务根节点102提交更新,经更新分发系统100分发其软件更新。根据本发明的诸方面,诸如软件供应商110的软件供应商可经诸如因特网108的网络向更新服务根节点102提交软件更新。
诸如示例性更新分发系统100的分层更新分发系统,除更新服务根节点102外可能将包括至少一个其它更新服务节点。如图1所示,示例性更新分发系统100包括更新服务根节点102和两个其它更新服务节点:更新服务节点104和更新服务节点106。根据本发明,每个分层更新分发系统都在更新服务根节点102下以树状结构形式组织。换言之,更新分发系统中的每个更新服务节点有零个或多个子更新服务节点。因而,尽管示例性更新分发系统100示出每个父更新服务节点,即更新服务根节点102和更新服务节点104,都仅有一个子节点,这仅仅是为了说明而不应被解释为限制本发明。此外,除了更新服务根节点102以外,更新分发系统中的每个更新服务节点都有一个父更新服务节点。因而,如图1所示,更新服务节点104是更新服务根节点102的子节点,而更新服务节点106是更新服务节点104的子节点。由此可见,每个更新服务节点,除了更新服务根节点102,都有父更新服务节点和子更新服务节点。
如在示例性更新分发系统100中所示,更新服务根节点102经因特网108与更新服务节点104通信。然而可以理解,这仅是说明性的而不应被解释为限制本发明。更新分发系统中的每个更新服务节点仅需要能够经某些通信网络与其父节点和/或子节点通信。因而,当更新服务节点104经因特网108与其父节点-更新服务根节点通信时,它也可经局域网124可选地与其子更新服务节点,诸如更新服务节点106通信。
还如图1所示,更新服务节点106驻留于局域网124的子网络136中。作为示例,局域网124可对应于机构的一般公司网络,且更新服务节点104代表了通过与其父更新服务节点102的连接到更新分布系统100的公司链接。此外,子网络126可对应于公司网络中的可标识计算机组,诸如测试/评估组、远程办公室、或关键任务组。如下面将要更详细描述的,根据本发明诸方面,更新服务节点104的管理员能够控制向更新服务节点106,最终向客户计算机分发更新。
可以理解,包括更新服务根节点102、更新服务节点104和106的每个更新服务节点被配置为向子更新服务节点以及客户计算机分发软件更新。如图1所示,示例性更新分发系统100包括客户计算机112-122。包括更新服务根节点102的每个更新服务节点根据本地配置信息向子更新服务节点和客户计算机分发更新。根据一实施例,管理员确定各组,并使更新分发规则与那些组相关联。每个更新服务节点具有至少一个分发组。
作为要说明更新分发系统如何操作的示例,假设局域网124对应于机构的公司网络。根据本方面的一实施例,更新服务节点104的管理员可为公司网络124确定多个分发组,包括对应于包括更新服务节点106、客户计算机120和122的评估组,用来评估更新对一般公司网络以及包括更新服务节点104、客户计算机114-118的一般公司组的适应性。
对于评估组,管理员把更新服务节点106作为其成员,并使规则与该组相关联,从而当更新可用时就能立即分发给评估组的成员。或者,对于一般公司组,管理员添加客户计算机114-118并关联规则,使得如果由管理员特别授权只会把更新分发给一般公司组。还假设子更新服务节点106的管理员创建包括评估子网络126中客户计算机120和122的缺省组,可立即向该组分发任何新的软件更新。
继续上例,软件供应商110向更新服务根节点102提交软件更新。根据在更新服务根节点102上建立的规则,最终将向公司更新服务节点104分发更新。在接收更新之后,根据由管理员建立的规则,公司更新服务节点104向评估组成员(仅定义为子更新服务节点106)分发更新,但在特别授权向该组分发更新之前扣留来自一般公司组的更新。
继续上例,接收更新之后,评估更新服务节点106对每个定义组处理更新。在此例中,评估更新服务节点106仅有一个组。然而如前所述,在真正的实现中,可能会有多个确定的组,每个组都有唯一的相关联分发规则集。对于该例,评估更新服务节点106立即提供可用于向客户计算机120和122分发的更新。客户计算机120和122现在可得到更新,并可开始评估阶段/过程。
仍继续上例,当公司更新服务节点104的管理员对更新适于在整个公司网络124上分发足够满意时,管理员明确地授权更新向一般公司组的成员分发。公司更新服务节点104相应地提供可用于客户计算机114-118的更新。应当理解,也可将评估更新服务节点106包括在一般公司组中。然而,因为已经更新了评估更新服务节点106,不需要其它更新相关动作来把更新分发到评估子网络126。
由上例可见,本发明在本地分发和下载效率方面提供了重要优点。除了本地分发控制的上述方面,还实现了通信带宽的显著节约。例如,尽管图1所示的示例性公司网络124包括了五台客户计算机,却只进行了一次将软件供应商的更新从更新服务根节点102下载到公司更新服务节点104。明显地,当由更新服务节点服务的客户计算机数量增加时,在父更新服务节点和更新服务客户机节点之间的通信带宽的使用保持常量,因此极大地减少了要使用的通信带宽。另外,更新分发系统是可扩展并可升级的。更新分发系统可用至少两种方法扩展:可向父更新服务节点添加任意数量的子更新服务节点,且子更新服务节点也可以是父更新服务节点。因此可裁剪更新方法系统的每个子树来满足个别需求。
图2是示出根据本发明诸方面形成的更新服务节点200,诸如公司更新服务节点104(图1)或评估更新服务节点106(图1),的示例性逻辑组件的框图。如图2所示,更新服务节点200包括更新网络服务202、客户机更新模块204、子更新模块206和报告模块208。示例性更新服务节点200还包括认证/授权模块210、管理应用编程接口(API)212、更新内容存储214、管理用户接口218、以及更新信息存储216。
更新网络服务202提供网络服务的通用集,通过它客户计算机、子更新服务节点和父更新服务节点可与更新服务节点通信。例如,参照图1,为了使子/评估更新服务节点106从父/公司更新服务节点104获取软件更新,客户机可通过父节点的更新网络服务202通信。类似地,当诸如更新服务根节点102的父更新服务节点具有包括更新的信息要传送到其子更新服务节点104时,父更新服务节点通过子节点的更新网络服务202通信。
关于存储在更新服务节点上的更新和更新信息,客户机更新模块204处理客户计算机和更新服务节点200之间的通信。更新相关通信包括,但不限于,响应于客户机请求分发更新,并向客户计算机提供可用软件产品及相关联更新的列表。客户机更新模块204还负责确定是否授权客户计算机根据相关联分发规则获取特定更新,并用客户计算机被授权访问的更新相关信息对客户计算机作出响应。
子更新模块206处理父更新服务节点与其子更新服务节点之间的更新相关通信。更新相关通信包括,但不限于,标识子更新服务节点可用的软件产品及相关联更新的列表,以及响应来自子更新服务节点的更新请求。下游更新模块206负责确定是否授权子更新服务节点根据相关联分发规则获取特定更新,并用子更新服务节点被授权访问的更新相关信息对子更新服务节点作出响应。
报告模块208产生更新相关报告,诸如哪个组已收到或未收到特定更新、哪个客户计算机已下载/安装或未下载/安装更新、什么更新在更新服务节点上可用等等。这些报告可诸如由管理员内部使用,并也可通过父节点的更新服务接口202提交给父更新服务节点。如上所述,对公司而言诸如为了发账单或为了维护而确定哪台客户计算机安装有特定更新常常是重要的。由报告模块208产生的信息/报告可以是这些报告的基础。
认证/授权模块210负责认证,即确定特定客户计算机或子更新服务节点的身份,并确定客户计算机或子更新服务节点是否被授权访问更新服务节点200上的可得到的更新。对于经认证并被授权访问更新服务节点上更新的那些客户计算机和子更新服务节点,认证/授权模块210发出必须结合获取更新使用的授权令牌(authorization token)。授权令牌的签发和使用将参照图4A和4B在后面进行更详细的描述。
管理API 212代表的的应用程序接口,通过它进行更新服务节点200的控制,并最终存储并分发更新。当更新网络服务202接收来自客户计算机和子更新服务节点的各种各样更新相关请求时,这些请求最终被分解成对管理API 212的直接调用,或经客户机更新模块204和子更新模块206的间接调用。结合管理用户接口218或安装在更新服务节点200上被适当配置为使用管理API 212的某些其它程序,管理员最终控制对该更新服务节点、以及任何子更新服务节点和客户计算机的更新过程的所有方面。
通过管理用户接口218,管理员可经管理API 212配置并维护更新服务节点200。因而,通过管理用户接口218,管理员创建、修改、并删除组以及每个组的相关联规则。此外,使用管理用户接口218,管理员建立客户计算机或子更新服务节点所属的组。通过管理用户接口218,管理员还可明确授权更新向客户计算机或子更新服务节点的分发、配置更新服务节点200周期性地向其父更新服务节点查询新更新、配置报告参数并查看内部报告等等。如上所述,尽管管理用户接口218允许管理员对更新服务节点200诸方面进行控制,可替代管理用户接口218使用驻留于更新服务节点200上的适当地用管理API 212来操作的另一应用。
如上所述,根据本发明的一实施例,更新服务节点200包括更新内容存储214和更新信息存储216。更新内容存储214存储代表软件更新的真正文件,诸如二进制文件和补丁文件。相反,更新信息存储216存储对应于更新服务节点200上可得到的更新的信息和元数据,包括存储在更新内容存储214上的更新文件。根据一实施例,更新内容存储214和更新信息存储216都是关系数据库。尽管示例性更新服务节点200被示为有两个数据存储,不应如此限制本发明。在一另外实施例中,可把更新内容存储214和更新信息存储216组合成一个信息存储。
根据本发明的诸方面,即使未在更新内容存储214中具体地存储更新,软件更新可表示成对客户计算机和子更新服务节点在更新服务节点200上“可用”。尤其,可在更新服务节点上存储指向父更新服务节点或其它地方上更新文件的链接,而不是立即下载和存储在更新服务节点200上的真正更新文件。因而,如果客户计算机请求更新或子更新服务节点请求真正的更新,就从父更新服务节点取下更新并将其存储在更新内容存储214中,准备将其向客户计算机或子更新服务节点传送。本领域技术人员将理解,该类更新访问被称为及时下载(just-in-time downloading)。用此方法,在真正请求“可用”更新之前不需要在各种网络信道上分发更新。根据本发明的诸方面,更新服务节点200的管理员可有选择地确定,是否要以及时方式获取软件更新。
尽管图2的以上描述说明了示例性更新服务模块200的各种组件,可以理解也可存在更新服务模块的其它组件。此外,应当理解上述组件是逻辑组件而不必要是真实组件。在一真实实现中,根据实现确定可把以上标识的组件组合在一起和/或与其它组件组合。另外,可以理解尽管更新服务节点200可视为网络上的服务器计算机,在实际实现中,可在任意多类计算装置上实现更新服务节点。例如,可在单台独立的计算机系统或者包括多个计算装置的分布式计算系统上实现和/或安装每个更新服务节点200。
图3是示出根据本发明诸方面形成的更新服务根节点300,诸如图1所示更新服务根节点102的示例性逻辑组件的框图。类似于更新服务节点200(图2)的逻辑组件,更新服务根节点300包括更新网络服务202、子更新模块206和认证/授权模块210。另外,示例性更新服务根节点300还包括管理API 212、更新内容存储214、以及更新信息存储216。可选地,更新服务根节点300还可包括客户机更新模块204、报告模块208、以及管理用户接口218。
客户机更新模块204是更新服务根节点300的可选组件,取决于该更新服务根节点是否直接向客户计算机提供软件更新。例如,参照图1,更新服务根节点102应包括可选的客户机更新模块204作为直接服务客户计算机112的更新服务根节点。然而,如果更新服务根节点300不直接服务客户计算机,则可省略客户机更新模块204。
因为更新服务根节点300没有要向其提供更新报告的父更新服务节点,报告模块208对更新服务根节点300是可选的。然而,在更新服务根节点管理员想要更新报告时,可选地包括报告模块208。
除了包括更新服务节点200(图2)所包括的逻辑组件外,更新服务根节点300还包括软件供应商接口302。软件供应商接口302提供通信接口,通过这个接口软件供应商110(图1)直接向更新服务根节点300提交软件更新,并间接向示例性更新分发系统100提交软件更新。
类似于图2的更新服务节点200,图3的以上描述示出了示例性更新服务根模块300的各种组件。然而,应当理解也存在更新服务根模块300的其它组件。此外,应当理解上述组件是逻辑组件而不必是真实组件。在一真实实现中,根据实现确定可把以上标识的组件组合在一起和/或与其它组件组合。另外,可以理解尽管更新服务节点300可视为网络上的服务器计算机,在真实实现中可在任意多台计算装置上实现更新服务节点。例如,可在单台独立的计算机系统或者包括多个计算装置的分布式计算系统上实现和/或安装更新服务节点300。
为了更好地理解如何穿过更新分发系统100从更新服务根节点分发更新,示出了在父更新服务节点和子更新服务节点之间示例性交换是恰当的。图4是示出根据本发明诸方面,在从父更新服务节点402向子更新服务节点404传播软件更新中,父更新服务节点和子更新服务节点之间的示例性交换400的框图。由此可见,示图400被分成两半,左边部分对应父更新服务节点402的动作和事件,而右边部分对应子更新服务节点404的动作和事件。
为了参照图4进行讨论,还应当理解父更新服务节点402可以是,也可以不是更新分发系统100中的更新服务根节点。另外,为了这个讨论,假设已由管理员对父更新服务节点402进行了配置,使得除非由管理员明确授权,子更新服务节点404不能接收软件更新。
如示例性交换400所示,从事件406开始,父更新服务节点402直接地(如果父更新服务节点是更新服务根节点102)或间接地经更新分发系统100从软件供应商110处接收软件更新。在父更新服务节点402从软件供应商110处接收软件更新之后的某个时间,子更新服务节点404开始从父更新服务节点获取软件更新的过程。
根据一实施例,可配置子更新服务节点404周期性地自动获取从父更新服务节点402可得到的软件更新。更特别地,通过管理用户接口218,管理员能可选地配置子更新服务节点404,周期性地自动获取在父更新服务节点402可得到的最新软件更新。作为一个示例,管理员可配置子更新服务节点404按天或按小时地自动获取来自父更新服务节点402的最新软件更新,并指定自动更新过程要开始的日期时间。也可利用其它周期性的调度和标准。类似地,管理员可经管理用户接口手动启动更新过程。
为了开始更新过程,在事件408子更新服务节点404向父更新服务节点402认证并授权它自己。向父更新服务节点402的认证和授权提供对软件更新分发的控制元素,限制了向经授权更新服务节点的更新分发。认证和授权技术是本领域技术人员众所周知的,可采用任意数量的这种技术向父更新服务节点402认证并授权子更新服务节点404。本发明不限于任意一种技术。
在恰当地向父更新服务节点402认证并授权之后,在410框父更新服务节点402向子更新服务节点404返回授权令牌。根据一实施例,授权令牌是时间敏感令牌,它向父更新服务节点提供子更新服务节点404的授权以在有限时间内进一步进行更新动作。因而如果子更新服务节点404未向父更新服务节点402认证并授权,则无授权令牌返回,且子更新服务节点不能执行除认证和授权外的任何其它更新相关动作。类似地,当更新令牌过期后,子更新服务节点404不能向父更新服务节点402执行除认证和授权外的任何其它更新相关动作。
在接收授权令牌后,在事件412子更新服务节点404向父更新服务节点提交对产品更新目录以及授权令牌的请求。产品更新目录代表父更新服务节点402为之分发软件更新的软件产品内容的列表或表格。
根据本发明的诸方面,不要求子更新服务节点404传播父更新服务节点402提供的所有软件更新。例如,参照图1的示例性更新分发系统,公司更新服务节点104可具有对更新服务根节点102所提供软件产品一部分的节点许可证。相应地,对于公司更新服务节点104而言也不必获取更新服务根节点102所提供的所有软件产品,因为大多数软件是从来不会使用的。因而,更新服务节点的管理员可有选择地建立将在更新服务节点上提供的那些软件产品更新。
根据本发明的一方面,无论子更新服务节点404是否被配置为分发每种产品的更新,从父更新服务节点402获取的更新产品目录标识了所有可提供的更新的软件产品。然而,根据本发明的一另选方面,从父更新服务节点402获取的更新产品目录仅标识请求子更新服务节点被配置成拟分发的更新的那些软件产品。例如,可根据子更新服务节点404所属的组或多个组,来确定哪些软件产品在产品更新目录中列出的限制。
在事件414,父更新服务节点402向子更新服务节点404返回产品更新目录。在事件416,子更新服务节点404从产品更新目录中选择提供当前所需最新更新的那些产品。应当注意,尽管产品更新目录仅列出子更新服务节点404分发的那些软件产品,可配置子更新服务节点在不同时间或按照不同周期性时间表获取不同软件产品的更新。
在事件418,子更新服务节点404提交更新同步请求以及授权令牌,它标识了提供子更新服务节点目前搜索的更新的选定产品。在同步请求中包括的是标识在子更新服务节点404上产品所提供最新更新的信息。标识产品最新更新的信息此后被称为“更新锚点”(update anchor)。通常每个软件产品的更新锚点都存储在更新信息存储216中(图2)。在一实施例中,更新锚点包括修正号以及关联于该修正号的日期。
响应于更新同步请求,在事件420,父更新服务节点402确定哪些更新(如果有的话)对子更新服务节点402可得到。如上所述,该确定基于与特定软件更新相关联的特定规则、子更新服务节点404是其成员的组或多个组、以及更新锚点。对于此例,如前所述,未对子更新服务节点404明确授权先前接收的软件更新。由此,在事件406接收的软件更新未被确定为对子更新服务节点404“可用”。因而,在事件422向子更新服务节点404返回一个没有标识在事件406接收的软件更新的更新列表。根据本发明的诸方面,更新列表根据同步请求标识了所有在父更新服务节点402上“可用”的更新。在一实施例中,更新列表由关联于一个更新的单单独标识符标识每个“可用”的更新信息。
在事件424,由于更新列表为空,即在父更新服务节点402上无更新当前“可用”,子更新服务节点404的更新过程延迟或休眠预定时间量。根据当前示例,在该延迟期间,在事件426,父更新服务节点402的管理员授权在事件406接收的软件更新404分发到子更新服务节点。
在事件428(图4B),子更新服务节点404通过向父更新服务节点402认证及授权自己再次开始自动更新过程。在事件430,作为响应父更新服务节点402向子更新服务节点404返回一授权令牌。
在事件432,子更新服务节点404向父更新服务节点402提交一请求及授权令牌,要求产品更新目录。在事件434,父更新服务节点402向子更新服务节点404返回产品更新目录。在事件436,子更新服务节点404对更新目录选择希望更新的产品。在事件438,子更新服务节点404提交用授权令牌所标识的那些选中产品的更新同步请求。
由于子更新服务节点404已授权获取先前在事件406接收的软件更新,在事件404父更新服务节点402确定,对该子更新服务节点该软件更新是“可用”的,并在更新列表中包括对应的更新信息。随后在事件442,父更新服务节点402向子更新服务节点404返回现标识在事件406中接收的软件更新的更新列表。
有了标识父更新服务节点402上“可用”更新的更新列表,子更新服务节点404现在有了获取软件更新所必需的信息。根据本发明的一实施例,子更新服务节点404从父更新服务节点402分两部分获取软件更新:获取更新元数据,并获取更新内容或文件(此后称为更新有效载荷)。如在后面将要更详细描述的,更新元数据描述了软件更新的有关方面,包括但不限于:唯一标识更新的更新标识符、关联于软件更新的修正号信息、是否应当考虑软件更新有优先级、语言专用信息、与其它软件更新的关系、用来下载的更新有效负载的位置、安装处理器例程等等。
把整个软件更新分两部分下载,即更新元数据和更新有效负载,常常是有益的部分原因是,更新有效负载常常比更新元数据大得多,而且即使需要更新有效负载(即需要用来在客户计算机上安装。)也并非总是立即需要的。因而,根据本发明的一实施例,更新有效负载与更新元数据分开下载,且仅在需要时下载。本领域技术人员将认识到这种下载技术是惰性下载(lazy downloading),或者是及时下载。根据本发明的诸方面,管理员可配置更新服务节点以及时方式获取更新有效负载,或在获取更新元数据之后立即下载。此外,在一另外实施例中,可联合下载更新元数据和更新有效负载。
如图4B所示,在事件444,更新在更新列表中被标识后,子更新服务节点404根据其在更新列表中的单单独标识符请求“可用”软件更新的更新元数据。象与父更新服务节点402的大多数其它通信交换一样,更新请求与授权令牌一起提交。应当注意,尽管在示例中所有更新元数据在一次访问中下载,根据本发明的另外方面(未示出),更新元数据可分多次访问下载。例如,在第一次访问中,首先下载确定软件更新是否可应用和/或是需要的所必需的更新元数据元素,诸如可应用度规则和对其它软件更新的依从性。然后,在确定更新是可应用和/或所需的之后,可获取剩下的更新元数据。作为响应,在事件446父更新服务节点402向子更新服务节点404返回软件更新的更新元数据,而子节点把更新元数据存储到更新信息存储216中。
可选地,在事件418,子更新服务节点404提交从父更新服务节点402下载更新有效负载的请求。作为响应,在事件450父更新服务节点402向子更新服务节点404返回更新有效负载,而子节点把它存储在更新内容存储214中。在另外的实施例中,子更新服务节点404从可能不是父更新服务节点402,而是在更新元数据中指定的存储位置上下载更新有效负载。
因为更新动作已在子更新服务节点404上发生,在事件452,子更新服务节点产生勾划出最近发生更新动作的更新报告,并将其提交给父更新服务节点402。然后,子更新服务节点404再次延迟,直到安排的更新过程的下一次运行(未示出)。
本领域技术人员将理解,上述事件是为了进行说明,且反映了事件和环境的一个特定示例性集。明显地,根据特定细节和环境也会发生导致上述事件产生某些变化的其它事件。另外,应当理解尽管子更新服务节点404从父更新服务节点402获取最新的“可用”软件更新,子更新服务节点可同时处理来自其子更新服务节点的多个更新请求。因此,应当视事件的以上顺序是说明性的,而非对本发明的限制。
图5是示出示例性例程500的流程图,该例程在子更新服务节点,诸如图1的公司服务节点104上执行,用来周期性地从父更新服务节点获取更新。从502方框开始,子更新服务节点从父更新服务节点获取“可用”更新的经同步处理更新列表。从父更新服务节点获取“可用”更新的经同步处理更新列表,将参照图6如下描述。
图6是示出示例性子例程600的流程图,该子例程适于在图5的示例性例程500中使用,用来从父更新服务节点获取“可用”更新的经同步处理更新列表。从方框602开始,如前参照图4A和4B所述,子更新服务节点向父更新服务节点认证并授权它自己,并响应于适当的认证和授权接收授权令牌。在方框604,结合授权令牌,子更新服务节点建立了与父更新服务节点的通信参数。建立通信参数使得父更新服务节点和子节点能适当地建立父子节点都能理解的共同基础。通信参数包括但不限于:通信更新协议或版本;产品分组;等等。
建立与父更新服务节点的通信参数之后,在方框606,子更新服务节点获取描述父更新服务节点用来提供/分发更新的软件产品的产品更新目录。在方框608,子更新服务节点选择从中当前搜索更新的那些软件产品更新。在方框610,子更新服务节点向父更新服务节点提交更新同步请求,包括授权令牌和标识已在子更新服务节点上的当前修正和更新的与选中软件产品相关联的“锚点”。
响应于更新同步请求,在方框612,子更新服务节点从父更新服务节点获取更新列表,该列表根据在父更新服务节点上“可用”的软件更新以及当前存储在子更新服务节点上的软件更新进行同步操作。如上所述,更新列表通过单单独的标识符标识对子更新服务节点“可用”的父更新服务节点上的那些软件更新。此后,示例性子例程600结束。
再次参照图5,从在父更新服务节点获取了经同步操作的更新列表之后,在判定框504,可确定当前是否有任何软件更新“可用”于从父更新服务节点下载。该确定根据在经同步操作的更新列表中是否列有任何更新标识符。如果当前没有“可用”的软件更新可下载,示例性例程500进行到延迟框510,在那里示例性例程延迟/休眠直到下一更新阶段。可选地,如果有从父更新服务节点下载的更新“可用”,在框506,子更新服务节点从父更新服务节点获取更新。从父更新服务节点获取“可用”更新参照图7如下描述。
图7是示出示例性子例程700图的流程图,该子例程适于在图5的示例性例程500中使用,用来从父更新服务节点获取“可用”软件更新。从框702开始,选择更新列表中的第一个更新标识符。在框704,子更新服务节点从父更新服务节点获取对应于选定更新标识符的更新元数据,并将其存储在更新信息存储216中。
根据一实施例,在框706,子更新服务节点从父更新服务节点获取对应于选定更新标识符的更新有效负载,并将其存储在更新信息存储212中。可选地,不需要立即把更新内容下载到子更新服务节点。如前所述,可有选择地配置子更新服务节点来以及时方式从父更新服务节点下载更新。根据如图7所示的该可选方法,示例性子例程700可选地从方框704进行到判定框708。
在判定框708,在获得选定的更新标识符的更新元数据以及可选的更新有效负载之后,可确定在更新列表中是否有任何另外的更新标识符。如果有另外的更新标识符,在方框710,选择更新列表中下一个更新标识符。例程700继续直到在判定框708,确定更新列表中不再有更新标识符,于是示例性子例程700结束。
再参看图5,在从父更新服务节点获得“可用”更新之后,在方框508,子更新服务节点向父更新服务节点报告更新动作。然后,在延迟框510,示例性例程500延迟/休眠预定时间量直到下一更新阶段,并随后进行到方框502重复上述更新过程。
如图5所示,在判定框504,即使当父更新服务节点上没有更新“可用”,能可选地配置子更新服务节点向父更新服务节点报告其更新动作。根据该另选配置,当没有更新可用时,示例性例程500可进行到方框508以报告更新动作。
图8是在父更新服务节点上实现的示例性例程800的流程图,该例程用来响应于子更新服务节点的更新同步请求产生标识“可用”更新的经同步更新列表。从方框802开始,父更新服务节点从子更新服务节点接收对标识“可用”更新的更新列表的更新同步请求。在方框804,选择在更新同步请求中标识的第一个软件产品。
在判定框806,确定对被标识软件产品是否有任何可用更新。该确定根据存储在更新信息存储216中软件产品的元数据、由子更新服务节点提供的更新锚点、以及关联于子更新服务节点所属组的分发规则而作出。根据该确定,如果有更新“可用”,在方框808,将关联于“可用”更新的单单独更新标识符写入更新列表。在将“可用”更新的单独更新标识符写入更新列表之后,在判定框810,确定是否还有任何在更新同步请求中标识的另外的软件产品。如果在更新同步请求中存在另外的软件产品,在方框814,父更新服务节点选择在更新同步请求中标识的下个软件产品,并返回到判定框806,以确定是否有选定软件产品的“可用”更新。另外,如果没有在更新同步请求中标识的另外的软件产品,在方框814,向子更新服务节点返回更新列表。然后,示例性子例程800结束。
如前所述,更新元数据描述了软件更新的相关方面。实际上,许多这些方面对软件产品而言都象更新有效负载一样重要。例如,如果第一软件更新的更新元数据表示必须安装先前的软件更新作为先决条件,而且根据管理员判定目前并未安装先前的软件更新,那么下载第一软件更新的更新有效负载就没有价值了。因此,通过不下载第一软件更新的更新有效负载,可节约大量的通信带宽。当然,本领域技术人员将理解这仅仅是更新元数据如何提供涉及软件更新的重要和相关信息的一个示例。
尽管更新元数据可用任何格式的文件进行传送,根据本发明的诸方面,对应于软件更新的更新元数据被描述并包含在基于标记文件中,诸如可扩展标记语言(XML)文件。可使用任何适当的基于标记文件格式,这些格式允许描述和包含数据的可定制的标记。用来描述和包含信息的诸如基于XML或超文本标记语言(HTML)文件的基于标记文件是本领域众所周知的。如本领域所知,常常可根据称为模式的定义文件来确定基于标记XML文件的内容。更新元数据可由子更新服务节点和客户计算机两者使用。
在本发明的一真实实施例中,软件更新的更新元数据被包含在符合更新元数据模式的基于XML文件中。图9是示出定义更新元数据文件内容的部分示例性基于XML更新元数据模式900的框图。特别地,示例性更新元数据模式900将更新(Update)902定义为包括以下元素:UpdateIdentity元素904;Properties(属性)元素906;LocalizedPropertiesCollection元素908;Relationships(关系)元素910;ApplicabilityRules元素912;Files(文件)元素914;以及HandlerSpecificData元素916。关于元素906-916,适当的更新元数据文件可包括这些元素的零个或多个,如通过标记限定词“minOccurs=″0″”918。相反,更新元数据文件必须包括一个UpdateIdentity元素904。根据所示的元数据模式900,每个更新元数据文件中的更新元素如果出现,必须按照上述顺序显示。
如前所示,每个软件更新都分配有单独的标识符。根据本发明的诸方面,UpdateIdentity元素904包括该单独标识符,以及标识该软件更新的其它信息,诸如也关联于软件更新的修正号。
Properties元素906提供涉及软件更新的信息,包括但不限于:软件更新本地化的语言,即英语、西班牙语、法语等等;提议更新在安装期间可能对计算系统的影响,例如最低影响度、高影响度,以及可能或将需要重新启动计算系统,等等的信息;由软件更新更新的软件类型,诸如系统驱动软件或软件应用;相应于软件更新对于软件供应商的重要性的重要性分级;来自软件供应商的相关安全公告;以及用来标识软件更新的更新处理器的更新处理器标识。由以上所列的各种类型属性可见,在更新元数据文件中可有零个或多个Properties元素906。
LocalizedPropertiesCollection元素908提供涉及软件更新的语言专用信息,诸如但不限于:更新标题;旨在向计算机用户显示的软件更新描述;来自软件供应商的发行注解;终端用户许可证协定及相关信息;用来卸载软件更新的用户指南;等等。根据本发明的诸方面,根据语言组合本地化属性。例如,尽管LocalizedPropertiesCollection元素908可包括多条信息,以上信息的英语版本可组合在一起,而西班牙语版本也可类似地组合。与以上Properties元素906一样,在更新元数据文件中可有零个或多个LocalizedPropertiesCollection元素908。
Relationships元素910提供关于本软件更新与其它软件更新之间关系的信息。这些关系的示例包括,但不限于,先决条件软件更新、取代软件更新、以及捆绑软件更新。先决条件软件更新关系表明,在安装本软件更新之前,必须在客户计算机系统上安装另一由单独更新标识符标识的软件更新。多个先决条件关系可由诸如逻辑运算符AND和OR的布尔运算符连接成逻辑语句,使得对逻辑语句的运算可确定软件更新在客户计算机上安装的适应性。
捆绑软件更新标识要一起安装的多个软件更新。作为一个示例,捆绑应用可表示本软件更新与其它软件更新之间的相互依从性,从而如果在计算机系统上安装了其中任何软件更新,则必须安装捆绑中由单独更新标识符标识的所有更新。与以上的先决条件软件更新一样,捆绑软件更新的元素可由布尔运算符连接以形成逻辑语句,用来估算软件更新在客户计算机上安装的适应性。相反,取代软件更新标识已被本软件更新取代的其它软件更新。与以上Properties元素906一样,在更新元数据文件中可有零个或多个Relationships元素910。
ApplicabilityRules元素912提供规则或测试,用来确定软件更新是否可应用在和/或适于安装在计算系统上。尽管在某些方面与Relationships元素910的关系相类似,但ApplicabilityRules元素912测试与另一软件更新可能特别相关或可能不特别相关的计算机系统上的条件。与以上标识的大部分其它元素一样,在更新元数据文件中可有零个或多个ApplicabilityRules元素912。
Files元素914标识关联于软件更新的文件,即更新有效负载,以及与那些文件相关的信息。该另外的信息包括但不限于:在更新有效负载中是否有一个或多个文件;从中可获取文件的位置;文件尺寸;文件名;文件创建日期;等等。本领域技术人员将容易理解单个软件更新可用多种方式安装在客户计算机上。作为一个示例,可通过用补丁修改部分现有文件或者通过用较新版本替换现有文件,来安装相同的软件更新。因而,根据本发明的诸方面,Files元素914的更新有效负载可包括或指向:现有文件的补丁、替换文件、或者补丁和替换文件两者。在更新元数据文件中可有零个或多个Files元素914。
可以各种格式提供更新,诸如描述要用δ补丁信息重写的文件区域的δ补丁、可执行文件、替换文件等等。这些类型更新的每一种需要特定更新处理器,以便在计算系统上执行软件更新。相应地,HandlerSpecificData元素916提供更新元数据文件中的位置,用来包括处理器专用数据/信息。例如,该信息可包括但不限于,处理器应当在其中执行的目录、对于处理器的命令行变量、如果安装的某些部分失败要采取的动作、如果安装成功要采取的动作、等等。更新元数据文件可包括零个或多个HandlerSpecificData元素916。
尽管已说明和描述了本发明的包括较佳实施例的各种实施例和方面,可以理解能作出各种更改也不背离本发明的精神和范围。例如,尽管本发明已被描述为经通信网络通过更新分发系统传送软件更新,更新元数据以及更新有效负载可在计算机可读介质,诸如压缩盘或软盘上,从更新服务节点传送到客户计算机上。

Claims (25)

1.存储组织在一基于标记数据结构中的计算机可读数据的一种计算机可读介质,所述数据结构用来把对应于一软件更新的更新元数据传送到更新服务节点或客户计算机,其特征在于,所述数据结构包括:
一UpdateIdentity元素,用来单单独地标识所述软件更新;
零个或多个Properties元素,用来存储关于所述软件更新的一般属性;
零个或多个LocalizedPropertiesCollection元素,用来存储导向与所述软件更新相关的计算机用户的内容;
零个或多个Relationships元素,用来存储所述软件更新与其它软件更新的关系;
零个或多个ApplicabilityRules元素,用来存储确定所述软件更新对客户计算机的可应用性的规则;
零个或多个Files元素,用来存储描述关于所述软件更新的有效负载信息的信息;
零个或多个HandlerSpecificData标记,用来存储安装所述软件更新专用类型的更新处理器的信息。
2.如权利要求1所述的基于标记数据结构,其特征在于,所述基于标记数据结构是XML数据结构。
3.如权利要求1所述的基于标记数据结构,其特征在于,所述基于标记数据结构的所述元素,如果出现,按照上述顺序包括在所述更新元数据中。
4.如权利要求1所述的基于标记数据结构,其特征在于,所述UpdateIdentity元素包括单单独地标识所述软件更新的一单单独标识符子元素、以及标识关联于所述软件更新的修正号的一修正号子元素。
5.如权利要求1所述的基于标记数据结构,其特征在于,所述基于标记数据结构中的所述Relationships元素包括标识必须在安装所述软件更新之前安装的第二软件更新的一先决条件子元素。
6.如权利要求5所述的基于标记数据结构,其特征在于,所述Relationships元素包括标识多个软件更新的多个先决条件子元素,这些子元素可用布尔运算符连接成一逻辑语句,使得对所述逻辑语句的运算可确定所述软件更新安装在客户计算机上的适应性。
7.如权利要求1所述的基于标记数据结构,其特征在于,所述Relationships元素包括标识必须共延展地(coextensively)安装的多个软件更新的一捆绑子元素。
8.如权利要求7所述的基于标记数据结构,其特征在于,所述捆绑子元素的多个软件更新可用布尔运算符连接成一逻辑语句,使得对所述逻辑语句的运算可确定所述软件更新安装在客户计算机上的适应性。
9.如权利要求1所述的基于标记数据结构,其特征在于,所述Relationships元素包括标识由所述软件更新取代的至少一个其它软件更新的一取代子元素。
10.如权利要求1所述的基于标记数据结构,其特征在于,所述Relationships元素包括标识在所述软件更新安装之前必须安装的其它软件更新的任意数量先决条件子元素、标识必须共延展地安装的多个软件更新的捆绑子元素、以及标识由所述软件更新取代的至少一个其它软件更新的取代子元素。
11.如权利要求1所述的基于标记数据结构,其特征在于,所述Files元素包括标识用来给客户计算机上现有文件打补丁的所述软件更新的有效负载的信息。
12.如权利要求1所述的基于标记数据结构,其特征在于,所述Files元素包括标识用来替代客户计算机上现有文件的所述软件更新的有效负载的信息。
13.如权利要求12所述的基于标记数据结构,其特征在于,所述Files元素包括标识用来给客户计算机上现有文件打补丁,以及替代客户计算机上现有文件的所述软件更新的有效负载的信息。
14.存储组织成一基于标记数据结构的计算机可读数据的一种计算机可读介质,所述数据结构用来把对应于一软件更新的更新元数据传送到更新服务节点或客户计算机,其特征在于,所述数据结构包括:
一UpdateIdentity元素,用来单单独地标识所述软件更新;
零个或多个Relationships元素,用来存储所述软件更新与其它软件更新的关系;
零个或多个Files元素,用来存储描述关于所述软件更新的有效负载信息的信息。
15.如权利要求14所述的基于标记数据结构,其特征在于,所述基于标记数据结构是XML数据结构。
16.如权利要求14所述的基于标记数据结构,其特征在于,所述UpdateIdentity元素包括单单独地标识所述软件更新的一单单独标识符子元素、以及标识关联于所述软件更新的修正号的一修正号子元素。
17.如权利要求16所述的基于标记数据结构,其特征在于,所述Relationships元素包括标识必须在安装所述软件更新之前安装的第二软件更新的一先决条件子元素。
18.如权利要求17所述的基于标记数据结构,其特征在于,所述Relationships元素包括标识多个软件更新的多个先决子元素,这些子元素可用布尔运算符连接成一逻辑语句,使得对所述逻辑语句的运算可确定所述软件更新安装在客户计算机上的适应性。
19.如权利要求16所述的基于标记数据结构,其特征在于,所述Relationships元素包括标识必须共延展地(coextensively)安装的多个软件更新的一捆绑子元素。
20.如权利要求19所述的基于标记数据结构,其特征在于,所述捆绑子元素的多个软件更新可用布尔运算符连接成一逻辑语句,使得对所述逻辑语句的运算可确定所述软件更新安装在客户计算机上的适应性。
21.如权利要求16所述的基于标记数据结构,其特征在于,所述Relationships元素包括标识由所述软件更新取代的至少一个其它软件更新的一取代子元素。
22.如权利要求16所述的基于标记数据结构,其特征在于,所述Relationships元素包括标识在所述软件更新安装之前其它软件更新的任意数量先决子元素、标识必须共延展地安装的多个软件更新的捆绑子元素、以及标识由所述软件更新取代的至少一个其它软件更新的取代子元素。
23.如权利要求16所述的基于标记数据结构,其特征在于,所述Files元素包括标识用来给客户计算机上现有文件打补丁的所述软件更新的有效负载的信息。
24.如权利要求16所述的基于标记数据结构,其特征在于,所述Files元素包括标识用来替代客户计算机上现有文件的所述软件更新的有效负载的信息。
25.如权利要求24所述的基于标记数据结构,其特征在于,所述Files元素包括标识用来给客户计算机上现有文件打补丁,以及替代客户计算机上现有文件的所述软件更新的有效负载的信息。
CNA2005100094902A 2004-03-12 2005-02-16 用来在更新分发系统中分发更新元数据的基于标记模式 Pending CN1668010A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/799,440 2004-03-12
US10/799,440 US7539686B2 (en) 2004-03-12 2004-03-12 Tag-based schema for distributing update metadata in an update distribution system

Publications (1)

Publication Number Publication Date
CN1668010A true CN1668010A (zh) 2005-09-14

Family

ID=34912620

Family Applications (1)

Application Number Title Priority Date Filing Date
CNA2005100094902A Pending CN1668010A (zh) 2004-03-12 2005-02-16 用来在更新分发系统中分发更新元数据的基于标记模式

Country Status (16)

Country Link
US (1) US7539686B2 (zh)
EP (1) EP1585287A3 (zh)
JP (1) JP4907876B2 (zh)
KR (1) KR100942127B1 (zh)
CN (1) CN1668010A (zh)
AU (1) AU2005200328B2 (zh)
BR (1) BRPI0500296A (zh)
CA (1) CA2495339C (zh)
IL (1) IL166813A0 (zh)
MX (1) MXPA05001673A (zh)
MY (1) MY144440A (zh)
NO (1) NO20050535L (zh)
NZ (1) NZ538169A (zh)
RU (1) RU2378686C2 (zh)
SG (1) SG115727A1 (zh)
TW (1) TWI369869B (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102365634A (zh) * 2009-01-30 2012-02-29 伊斯曼柯达公司 用于管理分布式资产和元数据的系统
US8195757B2 (en) 2006-11-30 2012-06-05 International Business Machines Corporation Method, apparatus and computer program for controlling retention of publications
CN101584181B (zh) * 2006-12-08 2012-08-29 斯凯普有限公司 通信系统
CN104683440A (zh) * 2013-11-26 2015-06-03 株式会社理光 通信设备、通信系统、通信方法和记录介质
CN110114761A (zh) * 2016-12-27 2019-08-09 歌乐株式会社 软件更新装置和软件更新系统
CN111684766A (zh) * 2019-05-23 2020-09-18 深圳市大疆创新科技有限公司 分布式系统中通信协议版本号的更新

Families Citing this family (97)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005033964A1 (en) 2003-09-05 2005-04-14 Itron, Inc. Synchronizing and controlling software downloads, such as for utility meter-reading data collection and processing
US7266565B2 (en) 2003-09-24 2007-09-04 Tablecode Software Corporation Table-oriented application development environment
US7536434B1 (en) * 2004-09-30 2009-05-19 Avaya Inc. Global dynamic persistent information architecture
US7809763B2 (en) * 2004-10-15 2010-10-05 Oracle International Corporation Method(s) for updating database object metadata
US7475396B2 (en) * 2004-12-03 2009-01-06 International Business Machines Corporation Method and apparatus for defining, building and deploying pluggable and independently configurable install components
US20070043752A1 (en) * 2005-08-19 2007-02-22 Opnet Technologies, Inc. Disparate network model synchronization
US20070169079A1 (en) * 2005-11-08 2007-07-19 Microsoft Corporation Software update management
US20070203956A1 (en) * 2006-02-28 2007-08-30 Microsoft Corporation Metadata Customization Using Diffgrams
US8726267B2 (en) * 2006-03-24 2014-05-13 Red Hat, Inc. Sharing software certification and process metadata
US8775572B2 (en) * 2006-06-23 2014-07-08 Microsoft Corporation Public network distribution of software updates
US7873957B2 (en) * 2006-07-27 2011-01-18 Microsoft Corporation Minimizing user disruption during modification operations
US7676586B2 (en) * 2006-10-05 2010-03-09 Microsoft Corporation Hierarchical federation metadata
US8429626B2 (en) * 2007-02-15 2013-04-23 Microsoft Corporation Packaging content updates
CN101425922B (zh) * 2007-10-31 2011-09-28 国际商业机器公司 跟踪和定位web服务更新过程中的改变的方法和装置
JP4991668B2 (ja) * 2008-09-29 2012-08-01 株式会社東芝 コンピュータシステムおよび修正パッチ確認/適用方法
US8302088B2 (en) * 2008-10-15 2012-10-30 International Business Machines Corporation Analysis of effects of a software maintenance patch on configuration items of a CMDB
US8898660B2 (en) * 2008-11-25 2014-11-25 Fisher-Rosemount Systems, Inc. Systems and methods to provide customized release notes during a software system upgrade of a process control system
US8914783B2 (en) * 2008-11-25 2014-12-16 Fisher-Rosemount Systems, Inc. Software deployment manager integration within a process control system
EP2377016A4 (en) * 2009-01-14 2014-03-26 Ericsson Telefon Ab L M IPTV DEVICE AND METHOD FOR SUCH A DEVICE
JP5321816B2 (ja) * 2009-03-27 2013-10-23 日本電気株式会社 コンピュータネットワークシステム及びその管理方法
US10282373B2 (en) 2009-04-17 2019-05-07 Excalibur Ip, Llc Subject-based vitality
WO2010129487A1 (en) * 2009-05-02 2010-11-11 Citrix Systems, Inc. Methods and systems for providing a consistent profile to overlapping user sessions
US9003387B2 (en) * 2009-09-25 2015-04-07 Fisher-Rosemount Systems, Inc. Automated deployment of computer-specific software updates
US9031987B2 (en) * 2009-09-30 2015-05-12 Red Hat, Inc. Propagation of data changes in distribution operations in hierarchical database
US8996453B2 (en) 2009-09-30 2015-03-31 Red Hat, Inc. Distribution of data in a lattice-based database via placeholder nodes
US20110078199A1 (en) * 2009-09-30 2011-03-31 Eric Williamson Systems and methods for the distribution of data in a hierarchical database via placeholder nodes
US8984013B2 (en) * 2009-09-30 2015-03-17 Red Hat, Inc. Conditioning the distribution of data in a hierarchical database
US9128799B2 (en) * 2009-11-09 2015-09-08 Bank Of America Corporation Programmatic creation of task sequences from manifests
US8584113B2 (en) * 2009-11-09 2013-11-12 Bank Of America Corporation Cross-updating of software between self-service financial transaction machines
US8671402B2 (en) * 2009-11-09 2014-03-11 Bank Of America Corporation Network-enhanced control of software updates received via removable computer-readable medium
US20110113226A1 (en) * 2009-11-09 2011-05-12 Bank Of America Corporation Distribution Of Software Updates
US9176898B2 (en) * 2009-11-09 2015-11-03 Bank Of America Corporation Software stack building using logically protected region of computer-readable medium
US8972974B2 (en) * 2009-11-09 2015-03-03 Bank Of America Corporation Multiple invocation points in software build task sequence
US9122558B2 (en) * 2009-11-09 2015-09-01 Bank Of America Corporation Software updates using delta patching
US20110154004A1 (en) * 2009-12-23 2011-06-23 genForma Corp Installing and Configuring Software and/or Hardware Components Using Metadata Representations of Component Interdependencies
US8315174B2 (en) * 2009-12-31 2012-11-20 Red Hat, Inc. Systems and methods for generating a push-up alert of fault conditions in the distribution of data in a hierarchical database
US8316120B2 (en) * 2010-02-02 2012-11-20 Microsoft Corporation Applicability detection using third party target state
US20110238572A1 (en) * 2010-03-25 2011-09-29 Bank Of America Corporation Remote Control Of Self-Service Terminal
JP2011203971A (ja) * 2010-03-25 2011-10-13 Fuji Xerox Co Ltd 情報処理装置及びプログラム
CN101951400B (zh) * 2010-09-13 2013-01-02 烽火通信科技股份有限公司 一种家庭网络中应用终端的软件安装和升级方法及系统
US9354852B2 (en) 2010-12-23 2016-05-31 Microsoft Technology Licensing, Llc Satisfying application dependencies
US20120245984A1 (en) * 2011-03-21 2012-09-27 Sungil Lee Systems and methods for acquiring a captive customer base within a cloud environment
JP5790222B2 (ja) * 2011-07-12 2015-10-07 株式会社リコー 通信装置、アップデート方法およびアップデートプログラム
US9253164B2 (en) 2011-09-12 2016-02-02 Microsoft Technology Licensing, Llc Distribution of portions of content
US8613101B2 (en) 2011-09-12 2013-12-17 Microsoft Corporation Software distribution service federation
US8839222B1 (en) * 2011-09-21 2014-09-16 Amazon Technologies, Inc. Selecting updates for deployment to a programmable execution service application
US8726263B2 (en) 2011-09-28 2014-05-13 Microsoft Corporation Detection and installation of software on a per-user basis
US8959504B2 (en) 2011-10-18 2015-02-17 Microsoft Corporation Update scanning
WO2013078951A1 (zh) * 2011-12-01 2013-06-06 腾讯科技(深圳)有限公司 软件升级方法和系统
US8825817B1 (en) * 2012-03-19 2014-09-02 Amazon Technologies, Inc. Using a template to update a stack of resources
JP5330565B2 (ja) * 2012-04-24 2013-10-30 株式会社東芝 コンピュータ
US9032386B1 (en) * 2012-07-30 2015-05-12 Adobe Systems Incorporated Product upgrade location identifier for software upgrade
KR20140057998A (ko) * 2012-11-05 2014-05-14 삼성전자주식회사 전자 장치에서 응용프로그램의 갱신 정보를 알리기 위한 방법 및 장치
US9489188B1 (en) 2012-11-14 2016-11-08 Amazon Technologies, Inc. Tag-based deployment
US9531704B2 (en) 2013-06-25 2016-12-27 Google Inc. Efficient network layer for IPv6 protocol
US9191209B2 (en) 2013-06-25 2015-11-17 Google Inc. Efficient communication for devices of a home network
US9959107B2 (en) * 2013-06-28 2018-05-01 Samsung Electronics Co., Ltd. Method and apparatus for updating application
KR101491018B1 (ko) 2013-07-10 2015-02-06 에스케이플래닛 주식회사 클라우드 오픈 api 기반 토큰을 이용한 클라우드 서비스 점검 시스템, 클라우드 서비스 점검 방법 및 이를 위한 장치
JP6173112B2 (ja) * 2013-08-09 2017-08-02 キヤノン株式会社 同意事項を通知するか判断するシステム、方法、及びプログラム
CN104378391A (zh) * 2013-08-12 2015-02-25 无锡知谷网络科技有限公司 软件更新方法、系统及设备
JP2015103106A (ja) * 2013-11-26 2015-06-04 株式会社リコー 通信装置、及び通信プログラム
EP3140734B1 (en) 2014-05-09 2020-04-08 Nutanix, Inc. Mechanism for providing external access to a secured networked virtualization environment
US10210172B1 (en) * 2014-08-14 2019-02-19 Google Llc File system integration and synchronization between client and server
US9740473B2 (en) 2015-08-26 2017-08-22 Bank Of America Corporation Software and associated hardware regression and compatibility testing system
US10831465B2 (en) 2016-02-12 2020-11-10 Nutanix, Inc. Virtualized file server distribution across clusters
US10382312B2 (en) 2016-03-02 2019-08-13 Fisher-Rosemount Systems, Inc. Detecting and locating process control communication line faults from a handheld maintenance tool
US11218418B2 (en) 2016-05-20 2022-01-04 Nutanix, Inc. Scalable leadership election in a multi-processing computing environment
US10560356B2 (en) * 2016-07-14 2020-02-11 International Business Machines Corporation Assuring data correctness in non-stable network environment
US10554644B2 (en) 2016-07-20 2020-02-04 Fisher-Rosemount Systems, Inc. Two-factor authentication for user interface devices in a process plant
US11605037B2 (en) 2016-07-20 2023-03-14 Fisher-Rosemount Systems, Inc. Fleet management system for portable maintenance tools
US10374873B2 (en) 2016-07-22 2019-08-06 Fisher-Rosemount Systems, Inc. Process control communication between a portable field maintenance tool and a process control instrument
US10585422B2 (en) 2016-07-22 2020-03-10 Fisher-Rosemount Systems, Inc. Portable field maintenance tool system having interchangeable functional modules
US10599134B2 (en) 2016-07-22 2020-03-24 Fisher-Rosemount Systems, Inc. Portable field maintenance tool configured for multiple process control communication protocols
US10270853B2 (en) * 2016-07-22 2019-04-23 Fisher-Rosemount Systems, Inc. Process control communication between a portable field maintenance tool and an asset management system
US10375162B2 (en) 2016-07-22 2019-08-06 Fisher-Rosemount Systems, Inc. Process control communication architecture
US10764083B2 (en) 2016-07-25 2020-09-01 Fisher-Rosemount Systems, Inc. Portable field maintenance tool with resistor network for intrinsically safe operation
US10505585B2 (en) 2016-07-25 2019-12-10 Fisher-Rosemount Systems, Inc. Portable field maintenance tool with a bus for powering and communicating with a field device
US10481627B2 (en) 2016-07-25 2019-11-19 Fisher-Rosemount Systems, Inc. Connection check in field maintenance tool
US10387385B1 (en) 2016-09-29 2019-08-20 Servicenow, Inc. System and method for batch database modification
US10728090B2 (en) 2016-12-02 2020-07-28 Nutanix, Inc. Configuring network segmentation for a virtualization environment
US10824455B2 (en) 2016-12-02 2020-11-03 Nutanix, Inc. Virtualized server systems and methods including load balancing for virtualized file servers
US11568073B2 (en) 2016-12-02 2023-01-31 Nutanix, Inc. Handling permissions for virtualized file servers
US11562034B2 (en) 2016-12-02 2023-01-24 Nutanix, Inc. Transparent referrals for distributed file servers
US11294777B2 (en) 2016-12-05 2022-04-05 Nutanix, Inc. Disaster recovery for distributed file servers, including metadata fixers
US11281484B2 (en) 2016-12-06 2022-03-22 Nutanix, Inc. Virtualized server systems and methods including scaling of file system virtual machines
US11288239B2 (en) 2016-12-06 2022-03-29 Nutanix, Inc. Cloning virtualized file servers
US11693827B2 (en) * 2016-12-29 2023-07-04 Microsoft Technology Licensing, Llc Syncing and propagation of metadata changes across multiple endpoints
JP6334776B1 (ja) * 2017-04-20 2018-05-30 三菱電機株式会社 電子制御装置
CN109213502B (zh) * 2017-06-30 2022-09-27 上海尚往网络科技有限公司 应用更新方法和装置
US11086826B2 (en) 2018-04-30 2021-08-10 Nutanix, Inc. Virtualized server systems and methods including domain joining techniques
US11194680B2 (en) 2018-07-20 2021-12-07 Nutanix, Inc. Two node clusters recovery on a failure
US11770447B2 (en) 2018-10-31 2023-09-26 Nutanix, Inc. Managing high-availability file servers
CN110162322A (zh) * 2019-05-27 2019-08-23 网宿科技股份有限公司 一种升级方法及装置
CN111581223B (zh) * 2020-04-11 2023-08-22 北京城市网邻信息技术有限公司 一种数据更新方法、装置、终端设备及存储介质
US11768809B2 (en) 2020-05-08 2023-09-26 Nutanix, Inc. Managing incremental snapshots for fast leader node bring-up
CN111930521A (zh) 2020-09-23 2020-11-13 北京百度网讯科技有限公司 用于部署应用的方法、装置、电子设备及可读存储介质
US11755309B2 (en) * 2022-01-19 2023-09-12 Red Hat, Inc. Tagging packages in an application ecosystem

Family Cites Families (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04635A (ja) * 1990-04-18 1992-01-06 Fujitsu Ltd ファイル更新方式
US6947571B1 (en) * 1999-05-19 2005-09-20 Digimarc Corporation Cell phones with optical capabilities, and related applications
US6151643A (en) * 1996-06-07 2000-11-21 Networks Associates, Inc. Automatic updating of diverse software products on multiple client computer systems by downloading scanning application to client computer and generating software list on client computer
GB2333864B (en) 1998-01-28 2003-05-07 Ibm Distribution of software updates via a computer network
US6202207B1 (en) * 1998-01-28 2001-03-13 International Business Machines Corporation Method and a mechanism for synchronized updating of interoperating software
US6697948B1 (en) * 1999-05-05 2004-02-24 Michael O. Rabin Methods and apparatus for protecting information
US7051243B2 (en) * 2002-04-30 2006-05-23 Sun Microsystems, Inc. Rules-based configuration problem detection
US6711557B1 (en) * 2000-08-14 2004-03-23 Adobe Systems Incorporated Client-based background update monitoring
CA2423175A1 (en) * 2000-09-22 2002-03-28 Patchlink.Com Corporation Non-invasive automatic offsite patch fingerprinting and updating system and method
US7003110B1 (en) * 2000-11-14 2006-02-21 Lucent Technologies Inc. Software aging method and apparatus for discouraging software piracy
US20040068721A1 (en) * 2000-11-17 2004-04-08 O'neill Patrick Network for updating firmware and / or software in wireless communication devices
US20020069192A1 (en) * 2000-12-04 2002-06-06 Aegerter William Charles Modular distributed mobile data applications
AU2002230771A1 (en) 2000-12-07 2002-06-18 Webputty Automatically deploy and upgrade an application based on markup language application definition
KR100774475B1 (ko) * 2001-04-21 2007-11-08 엘지전자 주식회사 이동 단말기의 소프트웨어를 다운로드하는 방법
US20040015939A1 (en) * 2001-05-16 2004-01-22 Cheah Jonathon Y. Updateable memory module
US7350207B2 (en) 2001-05-25 2008-03-25 Tellabs Operations, Inc. Rule-based system and method for downloading computer software over a network
US20030018964A1 (en) * 2001-07-19 2003-01-23 International Business Machines Corporation Object model and framework for installation of software packages using a distributed directory
CA2354443A1 (en) * 2001-07-31 2003-01-31 Ibm Canada Limited-Ibm Canada Limitee Method and system for visually constructing xml schemas using an object-oriented model
US7526575B2 (en) * 2001-09-28 2009-04-28 Siebel Systems, Inc. Method and system for client-based operations in server synchronization with a computing device
US7415539B2 (en) * 2001-09-28 2008-08-19 Siebel Systems, Inc. Method and apparatus for detecting insufficient memory for data extraction processes
US6993760B2 (en) * 2001-12-05 2006-01-31 Microsoft Corporation Installing software on a mobile computing device using the rollback and security features of a configuration manager
US20040006586A1 (en) * 2002-04-23 2004-01-08 Secure Resolutions, Inc. Distributed server software distribution
US20040073903A1 (en) * 2002-04-23 2004-04-15 Secure Resolutions,Inc. Providing access to software over a network via keys
US20040003390A1 (en) * 2002-06-27 2004-01-01 Microsoft Corporation System and method for installing a software application in a non-impactfull manner
US7366460B2 (en) * 2003-01-23 2008-04-29 Dexterra, Inc. System and method for mobile data update
JP2003308273A (ja) * 2003-02-10 2003-10-31 Seiko Epson Corp ネットワーク上に存在するコンテンツを自動収集するシステム
WO2004092982A2 (en) * 2003-04-07 2004-10-28 Dexterra, Inc. System and method for context sensitive mobile data and software update
US7478381B2 (en) * 2003-12-15 2009-01-13 Microsoft Corporation Managing software updates and a software distribution service
US7574706B2 (en) * 2003-12-15 2009-08-11 Microsoft Corporation System and method for managing and communicating software updates
US20080244555A1 (en) * 2007-03-29 2008-10-02 Welvaert Eugene F Bundling software updates

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8195757B2 (en) 2006-11-30 2012-06-05 International Business Machines Corporation Method, apparatus and computer program for controlling retention of publications
CN101584181B (zh) * 2006-12-08 2012-08-29 斯凯普有限公司 通信系统
CN102365634A (zh) * 2009-01-30 2012-02-29 伊斯曼柯达公司 用于管理分布式资产和元数据的系统
CN104683440A (zh) * 2013-11-26 2015-06-03 株式会社理光 通信设备、通信系统、通信方法和记录介质
CN104683440B (zh) * 2013-11-26 2018-10-12 株式会社理光 通信设备、通信系统和通信方法
CN110114761A (zh) * 2016-12-27 2019-08-09 歌乐株式会社 软件更新装置和软件更新系统
CN110114761B (zh) * 2016-12-27 2023-04-28 歌乐株式会社 软件更新装置和软件更新系统
US11645062B2 (en) 2016-12-27 2023-05-09 Clarion Co., Ltd. Software update device and software update system
CN111684766A (zh) * 2019-05-23 2020-09-18 深圳市大疆创新科技有限公司 分布式系统中通信协议版本号的更新

Also Published As

Publication number Publication date
NO20050535L (no) 2005-09-13
JP4907876B2 (ja) 2012-04-04
RU2378686C2 (ru) 2010-01-10
US7539686B2 (en) 2009-05-26
CA2495339C (en) 2013-04-30
TWI369869B (en) 2012-08-01
NO20050535D0 (no) 2005-02-01
TW200533111A (en) 2005-10-01
AU2005200328A1 (en) 2005-09-29
MXPA05001673A (es) 2005-09-14
EP1585287A3 (en) 2006-05-03
IL166813A0 (en) 2006-01-15
SG115727A1 (en) 2005-10-28
AU2005200328A2 (en) 2005-09-29
KR100942127B1 (ko) 2010-02-16
BRPI0500296A (pt) 2005-11-08
MY144440A (en) 2011-09-15
AU2005200328B2 (en) 2009-06-11
CA2495339A1 (en) 2005-09-12
JP2005259115A (ja) 2005-09-22
RU2005101833A (ru) 2006-07-10
US20050228798A1 (en) 2005-10-13
NZ538169A (en) 2007-05-31
KR20050091998A (ko) 2005-09-16
EP1585287A2 (en) 2005-10-12

Similar Documents

Publication Publication Date Title
CN1668010A (zh) 用来在更新分发系统中分发更新元数据的基于标记模式
CN1668009A (zh) 用于分发软件的更新分发系统的体系结构和方法
US8578371B2 (en) Software distribution method and system with automatic prerequisite installation
US8495615B2 (en) Method, system and computer program for distributing software patches
CN1291313C (zh) 操作系统的自动安装和配置的系统和方法
US7797670B2 (en) Mirrored file system
CN101069172A (zh) 用于管理更新分发系统中软件更新的分发的应用程序编程接口
CN1777867A (zh) 使用增量压缩打补丁更新文件的系统和方法
CN1735862A (zh) 用于更新网络化环境中的安装组件的系统和方法
RU2424552C2 (ru) Расщепленная загрузка для электронных загрузок программного обеспечения
US20080270617A1 (en) Method, System and Article of Manufacture for Providing Connections and Connection Aliases Descriptors by Services and Libraries Archives
US20030220992A1 (en) Pre-verification and sequencing of patches
JP2007523395A (ja) ソフトウェア配信サービスのためのシステムおよび方法
US20040088700A1 (en) System and method for automatically installing software on client computers via a network
CN101042645A (zh) 统一软件开发环境的方法、设备及系统
CN1549178A (zh) 分配和更新杂散资源的方法和系统
CN102007756A (zh) 用于数据处理环境中的动态供应的方法和装置
CN105553671B (zh) 一种数字证书的管理方法、装置及系统
US20120096453A1 (en) Software Package Management Mechanism
CN1656479A (zh) 分配数据的方法和系统
CN1848083A (zh) 一般软件要求分析器
CN1218246C (zh) 一种智能网业务管理接入点自动升级的方法
CN115454420A (zh) 人工智能算法模型部署系统、方法、设备及存储介质
JP7177335B2 (ja) 情報処理方法、情報処理装置および情報処理プログラム
KR20150137766A (ko) 가상머신 스택 생성 시스템 및 방법

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C12 Rejection of a patent application after its publication
RJ01 Rejection of invention patent application after publication

Open date: 20050914