CN102045390A - 计算机专用软件更新的自动配置 - Google Patents
计算机专用软件更新的自动配置 Download PDFInfo
- Publication number
- CN102045390A CN102045390A CN2010105724124A CN201010572412A CN102045390A CN 102045390 A CN102045390 A CN 102045390A CN 2010105724124 A CN2010105724124 A CN 2010105724124A CN 201010572412 A CN201010572412 A CN 201010572412A CN 102045390 A CN102045390 A CN 102045390A
- Authority
- CN
- China
- Prior art keywords
- software
- process control
- upgrading
- main frame
- relevant
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- 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/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
Abstract
软件更新系统自动对执行过程控制系统的计算机主机进行过程控制系统的提供商批准的软件更新的配置。软件更新系统包括客户端应用程序以及服务器应用程序,其中的客户端应用程序生成计算机主机可用的软件更新请求并且启动自动配置对主机的软件更新,服务器应用程序响应该请求向客户端应用程序提供软件更新数据。
Description
交叉引用相关申请
本申请基于并且要求2009年9月25日提出的名称为“计算机专用软件更新的自动配置”(代理人档案号06005/592219P)的美国临时申请No.61/246,008的优先权,因此,在这里通过引用明确地结合其全部内容。
技术领域
本公开通常涉及在目标主机上分配计算机更新,并且特别涉及向处理控制系统自动配置该更新。
背景技术
操作系统、普遍使用的应用软件或专门的合成软件包等的提供者经常频繁地发布更新或确定发现问题,诸如潜在地严重的编程错误、安全缺陷以及其他发布信息。例如,操作系统的供应商可能发现操作系统的某个版本不能恰当地处理一个特殊事件,或者某个通信端口不能防止未授权的访问。而不是准备操作系统的新版本,该操作系统可能包括好几万个文件,供应商特别准备一个或多个诸如动态链接库(DLLs)的对象来代替或补充操作系统的发布版本中的对象。同样,软件解决方案的提供者,例如实现为标准操作系统上的应用程序,可以仅仅在将软件解决方案发布给一个或多个消费者之后不时地发现一个问题,并且因此可以希望直接给消费者发布一个补丁。不断增加操作系统和专业软件解决方案的复杂性可以确保特殊环境中所要求的更新数量保持较高。
此外,电子攻击的威胁使得需要定期地更新防病毒数据库。这些数据库,如通常所知的,经常在网络流量中存储能够检测防病毒软件的数据格式,并且标记携带该格式的数据包或帧。因为几乎每天都生成新形式的恶意病毒(例如,病毒、蠕虫、木马、间谍软件),防病毒数据库需要频繁地更新相应的防病毒软件来保持有效。此外,由于越来越多的主机通过因特网通信,计算机保护的重要性继续增加。
总之,现今的许多软件制造商需要或者至少推荐经常更新已经发布给消费者的软件产品。为了简化删除和安装该更新的过程,一些软件制造商提供了所谓的商用成品(COTS)配置应用程序。例如,微软公司已经开发了WindowsTM服务器更新业务(WSUS)。一般而言,WSUS包括在局域网的主机上运行的可下载的客户端部分,连接外部服务器部分以便接收更新,并且在运行Windows操作系统的一个版本的多个计算机上安装从服务器部分接收的更新。这样,WSUS避免了分别在每个个人计算机上安装更新的必要。
然而,个人计算机的用户可以安全地直接从相应软件的提供者维护的专门网站上获得更新(例如,使用Windows更新应用程序),支持相对较大局域网的公司和其他组织通常通过一个或多个中间服务器转出更新。网络管理员有时可能希望检查可用更新的列表,确定什么时候应该安装该可用更新,并且将所选择的更新分配给局域网中的主机。此外,WSUS支持父/子拓扑,以便在公司网上的WSUS主机,以父亲的角色,可以接收一个或多个更新并且将这些更新提供给一个或多个子WSUS 主机,用于随后分配给用户工作站。
对于在操作系统环境中运行对变化敏感的专业软件系统的那些组织或部分组织来说,网络管理员的许可尤其相关。主机上运行的专用系统和应用程序的更新的效果经常是未知的。例如,安全的更新可能反而影响软件系统使用的信道或端口。因此,在许多情况下,软件系统的制造商能更好地定位于批准或拒绝操作系统更新。
该复杂软件系统的一个例子是由EmersonTM rocess Management出售的基于Windows的DeltaVTM控制系统。一般而言,DeltaV是用于管理并控制工业过程的数字自动控制系统。正如所公知的,许多现代的工业过程由基于某个控制策略自动完成某一方面的物理功能的控制器和各种设备来执行的。许多控制策略是非常复杂的,并且工程师、操作员以及技术员的队伍需要诸如DeltaV的全面的软件解决方案来管理执行该控制策略的过程设备。如今,在诸如生命科学、生物工艺学、石油、汽油、化学制品、纸浆和造纸以及食物和饮料的不同工业中,设置操作员在许多过程设备中运行DeltaV。
DeltaV包括由不同主机存储的并且由不同主机执行的多个应用程序,该不同主机诸如位于过程设备中的不同位置的工作站。如果需要,DeltaV应用程序也可以越过多个设备或过程控制设备被网络化。例如,位于一个或多个操作者工作站中的配置应用程序允许用户创建或改变过程控制模块并且通过数据总线将这些过程控制模块下载到专用的分布式控制器。作为另一个例子,可以在一个或多个操作者工作站上运行的观察应用程序通过数据总线从控制器应用程序接收数据,并且使用用户接口向过程控制系统的设计者、操作者或者用户显示该数据。
因为诸如DeltaV的过程控制系统可以与诸如Windows的标准操作系统(OS)兼容,例如,在运行过程控制系统的工作站上安装一些OS更新可能是适当的。然而,一些其他OS更新对于过程控制系统的正常运行可能是不必要的,然而其他的对于过程控制系统仍然可能是有害的。此外,根据过程控制系统的需求,防病毒更新可能同样属于多个种类。此外,制造商可以不时的需要更新设备操作员位置上的过程控制系统工作站。基于这些以及其他原因,运行过程控制系统的主机可以要求软件更新的非常专门化的组合。然而,诸如WSUS的COTS应用程序不为诸如过程控制系统的专业软件应用程序设立更新的扩展。至于OS更新,过程控制系统的操作者最多可以通过手动批准或拒绝更新来使用COTS应用程序。
此外,因为过程控制系统工作站通常只定义设备操作者的一部分较大的网络,适合该工作站的更新可以与设备操作者的网络中工作的主机上安装的更新不同,但是与过程控制系统无关。因此,即使每个主机具有相同版本的操作系统,网络管理员可能需要不断跟踪局域网中的不同主机的不同需求。在其他的组织中,过程控制系统操作者负责包括专用工作站的过程控制网络的网络管理,而公司网管理员负责网络的其他部分。然而,该责任的划分可能是不实际的。例如,一般通过公司网中的WSUS主机对过程控制系统工作站进行WSUS更新。WSUS主机可以通知公司网管理员某些主机(即,过程控制系统工作站)还没有被正确地更新,并且过程控制系统操作者随后必须解释为什么过程控制网络中的一些更新已经被省略。
这些以及其他的因素导致效率降低、缺乏明确性和网络管理的复杂性的增加。作为一个比较不重要的问题,公司或局域网管理员可能在选择或应用软件更新时产生错误,或者不总是将软件更新作为高优先级任务来对待。结果,许多重要的更新在相当长的时间段内处于未安装状态。其间,过程控制系统继续受到安全性或系统完整性的威胁,这种情况经常发生在用于确定系统崩溃的更新。由于操作者远离专有技术,而是贴近更加开放和共同使用的标准和系统,过程控制产业中计算机攻击的威胁变得非常重要。此外,在许多情况下,与安全威胁无关的更新同样重要,因为该更新的发布涉及系统的稳定性和可靠性。
发明内容
软件更新系统自动为消费者系统配置被批准的软件更新或涉及该更新的元数据,以便可以在一个或多个目标计算机上安全地安装被批准的软件更新,而不需要消费者系统的操作者手动批准。软件更新系统包括可下载到主机的在消费者系统中运行的客户端应用程序,以及在消费者系统之外运行的服务器应用程序,该服务器应用程序用于管理元数据,在某些情况下,该服务器应用程序还用于管理软件更新,确定哪个软件更新应当被安装到消费者系统中,并且为客户端应用程序提供适当的元数据和/或软件更新。
在一些实施例中,消费者系统包括与较大网络(例如,因特网)接触的中间网络层(例如,所谓的“非军事化区(demilitarized zone)”或DMZ),以及执行专用于消费者运行消费者系统的商业行为的应用程序的专门网络层。这些实施例的至少一些中的客户端应用程序包括在DMZ中运行的前端模块以及在专门网络层中运行的后端模块。前端模块与服务器应用程序通信,以便请求将可获得的软件更新和/或实际的软件更新作为可下载对象的信息。在某些情况下,前端模块与诸如防病毒更新应用程序或上行OS专用配置应用程序的其他应用程序通信,这些应用程序在同一个服务器(或者DMZ中的另一个服务器)上运行以便指定哪个防病毒或OS软件更新已经被批准在专门网络层中安装。后端模块依次与前端模块通信,以便在DMZ中检索软件更新和元数据,如果需要,则解码并解压缩所检索到的软件更新和元数据,并且启动专门网络层中的软件更新的自动安装。在一个实施例中,后端模块通过给专门网络层中运行的COTS配置应用程序发布适当的命令来触发自动安装。
在一些实施例中,专门网络层是一个过程控制层,其中基于软件的过程控制系统在一个或多个操作者工作站上运行以便管理并控制具有一个或多个控制器以及多个现场设备的过程设备,该现场设备执行各自的物理步骤以便实现过程设备的过程控制策略。过程控制系统的制造商或供应商可以管理软件更新系统以便生成并且分类专用于过程控制系统的更新,并且确定由防病毒软件和操作系统的各自制造商出版的哪个更新适合过程控制系统的不同版本。因此,响应于来自客户端应用程序的查询,服务器应用程序可以为过程控制系统、防病毒数据库以及操作系统生成潜在更新的报告,并且将该报告传送给客户端应用程序。在一些实施例中,客户端应用程序将该报告应用到诸如WSUS的COTS配置应用程序,以便触发更新在操作系统的下载和/或安装。
在一些实施例中,服务器应用程序或客户端应用程序将更新的包装应用到过程控制系统,以便相应操作系统的COTS配置应用程序可以安装代表过程控制系统的制造商的这些更新。基于这个目的,服务器应用程序或客户端应用程序可以应用COTS的制造商提供的应用编程接口(API)。该包装可以指定一个或多个位置,在该位置应当分配了包装更新以及其他安装参数。如果需要,该包装可以包括过程控制系统的制造商的数字签名以确保安全。
在一些实施例中,客户端应用程序可配置为根据某个进度、响应用户的命令或者基于任何其他具体原则来询问服务器应用程序。客户端应用程序可以向服务器应用程序报告专门网络层(例如,过程控制网络)中运行的软件的版本,而服务器应用程序可以确定哪个更新,如果有的话,应当下载到消费者系统。在其他的实施例中,客户端应用程序向服务器应用程序报告消费者的身份,而服务器应用程序根据消费者的身份来确定消费者系统中运行的专门软件的版本。
附图说明
图1示意性地说明了包括消费者系统和软件更新系统的通信系统,该消费者系统具有管理过程设备的操作的过程控制层、由过程控制系统的供应商操作的过程控制系统供应商层,该软件更新系统分布在消费者系统和过程控制系统供应商层之间以便自动配置消费者系统的软件更新。
图2是图1中说明的通信系统的某些部分的结构图。
图3是说明图1的通信系统中自动配置软件更新的一个例子的消息序列图。
图4是说明由图1中说明的软件更新系统支持的消息和数据结构的交互的一个例子的结构图。
图5是作为图1的软件更新系统的一部分运行的服务器应用程序的结构图。
图6是作为图1的软件更新系统的一部分运行的客户端应用程序的结构图。
图7是一个界面屏幕的例子,其中图5的客户端应用程序可以显示给过程控制系统的操作者。
图8是用于处理来自消费者的询问的方法例子的流程图,该方法可以由图4的服务器应用程序来执行。
图9是用于处理来自消费者的更新请求的方法例子的流程图,该方法可以由图4的服务器应用程序来执行。
图10是用于询问并请求软件更新的方法例子的流程图,该方法可以由图5的客户端应用程序来执行。
具体实施方式
图1说明了通信系统10,其中的软件更新系统12包括服务器应用程序14和具有前端模块18和后端模块20的客户端应用程序16,安全并有效地配置在消费者系统26的过程控制层24中运行的多个主机的软件更新。软件更新系统12在这里也指软件更新传送业务(SUDS),而应用程序14和16分别指SUDS服务器和SUDS客户端。诸如运行化学设备的公司、炼油厂或水处理设备的设备操作者可以通过设备LAN层32和设备“非军事化区(demilitarized zone)”(DMZ)层34将过程控制层24与因特网30分离。在通信系统10的例子中,设备LAN层32通过路由器/防火墙40连接到因特网30,而设备DMZ层34通过路由器/防火墙42连接到设备LAN层32。此外,开关44将过程控制层24连接到DMZ层34。
设备LAN层32包括连接到通信线路54的多个工作站50和52,该通信线路与任何合适的通信标准(例如IEEE 802.3以太网)兼容。典型地,工作站50和52共享具有联网能力的操作系统(例如微软公司制造的WindowsTM)。不同组织角色的用户操作工作站50以便实现设备操作者的日常行为。例如,设备操作者可以雇用工程师、会计师、市场职员以及其他人员。操作工作站50的用户可以拥有某个许可的集合,该许可特别不允许这些用户访问过程控制层24。另一方面,这些用户具有对因特网30上的主机的几乎无限制的访问权限,结果,暴露出病毒、恶意病毒、劫持企图以及其他计算机威胁的相对高的风险。
为了保护布置在设备LAN层32上或之下的计算机主机,网络管理员(也称为IT人员)可能操作工作站52以便监控通信线路54上的通信量,配置路由器/防火墙40上运行的或者本地的工作站50和52上的防火墙应用程序,为不同用户分配许可,确定并消除设备LAN层32中的恶意软件,等等。另外,根据从操作系统56和防病毒软件的各个供应商处接收的相应通知,网络管理员可以在工作站50和52上安装操作系统和防病毒更新。
设备DMZ层34可以包括诸如防病毒服务器62、数据服务器64以及历史服务器66的多个服务器。如所知道的,DMZ层一般通过限制直接暴露给诸如因特网30的较大网络而仅仅暴露给多个主机(即,服务器62-66、DNS服务器(未示出)、网页服务器(未示出)等等),来为局域网提供额外的安全。另外,上游更新服务器70可以执行客户端应用程序16的前端模块18,以便支持如下详细讨论的软件更新和/或与软件更新相关的元数据的传播的自动配置。应当注意的是,DMZ层34通常是任何中间网络层,该中间网络层通过引导经由一个或多个主机的所有流入和流出的因特网通信量来改善消费者系统26的安全性。
继续参照图1,过程控制层24可以包括许多操作者工作站71和72,每个工作站运行操作系统56和诸如DeltaV的过程控制系统74,例如,用于控制过程设备75。过程控制层24也可以包括许多诸如应用程序服务器76和配置服务器78的服务器。此外,该结构示例中的下游服务器80执行客户端应用程序16的后端模块20。因为下游服务器80执行过程控制层24中对主机的软件更新的实际配置,所以下游服务器80也可以被称作是更新服务器。在一些实施例中,下游服务器80被配置成仅作为网关操作,而不运行过程控制系统74。
操作中,例如响应来自用户接口的命令或者根据诸如定时器到期的预配置事件,客户端应用程序16的前端18被激活。紧接着激活,例如,客户端应用程序16向服务器应用程序12请求对过程控制系统74和操作系统56的可用更新的列表,该服务器应用程序可以在供应商更新服务器86上的过程控制系统供应商层84中运行。响应来自客户端应用程序16的请求,服务器应用程序14确定软件更新是否可用,以及哪个可用更新与消费者系统26中过程控制系统74和操作系统56的各个版本相兼容。服务器应用程序14然后向客户端应用程序16传送可用更新的列表。接下来,客户端应用程序16检查是否任何所列出的可用更新还没有被下载到设备DMZ层34中的文件系统。如果客户端应用程序16确定需要软件更新,则客户端应用程序16格式化并且向服务器应用程序14传送相应的请求。
响应来自客户端应用程序16的请求,服务器应用程序14向客户端应用程序16传送适当的软件更新和/或与软件更新相关的元数据,以便软件和/或元数据可以存储到DMZ层34中的某个位置。前端模块18然后与后端模块20工作以便安全地向下游服务器80以及最后向过程控制层24(例如,工作站71和72)中的不同主机传送软件更新和元数据。此外,作为更详细的讨论,一些实施例中的客户端应用程序16自动配置诸如WSUS的一个或多个COTS应用程序,以便根据从服务器应用程序14接收的被认可的软件更新的列表,获得来自各个供应商或制造商的软件更新。
仍然参照图1,上游更新服务器70可以运行除客户端应用程序16的前端模块18之外的上游WSUS 90,以及诸如Symantec公司的在线更新管理器(LUA)的防病毒请求应用程序92。此外,例如,下游服务器80可以运行下游WSUS 94以及诸如Symantec公司的末端保护管理器(SEPM)的防病毒配置应用程序96。防病毒请求应用程序92向相应的制造商(例如,Symantec)请求防病毒更新,并且通常可以驻留在DMZ层34或设备LAN层32中的任何主机中。另一方面,防病毒配置应用程序96为过程控制层24中的主机配置由防病毒请求应用程序92检索的防病毒更新。同样,上游WSUS 90和下游WSUS 94执行父/子拓扑。特别地,上游WSUS 90向OS制造商(例如,微软)请求软件更新而下游WSUS 94配置成向过程控制层24中的主机分配更新。应当进一步注意的是,过程控制层24可以通过下游(或更新)服务器80连接到DMZ层34,从而提供保护过程设备75的另一层。
在一些实施例中,接着前端模块18的查询,后端模块20从DMZ层34的位置检索更新。由于必须解压缩检索到的对象,后端模块20可以是执行文件传输功能的相关“轻量级(light-weight)”应用程序,并且应用解密算法来校验检索到的对象的完整性和安全性。结果,后端模块20可以应用任何合适的公知技术(例如,应用数字证书)。后端模块20然后可以将专用于过程控制系统75的对象转换成由下游WSUS 94或另一个合适的COTS配置应用程序识别的格式,即,“包装(wrap)”对象,并且向下游WSUS 94提供这些转换的或包装的对象用于分配。如果需要,后端模块20可以进一步与下游WSUS 94通信,以便指定已经批准的用于分配的包装对象,从而触发转换对象通过过程控制层24的后续(如果需要,立即)分配。例如,微软公司提供API用于包装与Windows操作系统无关的对象,以便使这些对象通过WSUS应用程序与配置兼容。在一些实施例中,可以在过程控制供应商层84包装对象。
实际上,这些实施例中的后端模块20可编程地将软件对象和批准数据注入到下游WSUS 94中以用于分配和安装,并且因此实现软件更新的间接配置。鉴于这个原因,后端模块20不需要支持软件更新的实际分配或安装的复杂逻辑,并且可以作为WSUS 94的外接式附件操作。然而,在选择的实施例中,后端模块20中包括分配和安装逻辑是可能的,因此,后端模块20形成全面的配置应用程序。
如上所述,软件更新系统12可以配置成自动配置(以直接和/或间接的方式)与过程控制系统74、操作系统56、消费者系统26中使用的防病毒软件以及,如果需要,过程控制层24中安装或可安装的其他软件产品相关的更新。如此,过程控制系统74的制造商或供应商可以简单化配置更新的过程,以及确保在安装了每个更新之后,过程控制系统74继续适当地运行。当然,过程控制系统74的供应商可以操作诸如供应商更新服务器86的单独的更新服务器以便与多个消费者系统相互作用。因此,软件更新系统12可以包括一个服务器应用程序14和多个客户端应用程序16。为了简化用户的使用,供应商更新服务器86可以将客户端应用程序16的副本存储为可下载和容易安装的对象97。如果需要,可以压缩对象97。应当进一步理解的是,为了适当地配置更新,软件更新系统12最好包括一个或多个数据库,或者与一个或多个数据库合作,该数据库存储与每个消费者、过程控制系统74使用的每个版本、以及需要转出消费者专用软件更新的其他信息相关的数据。
如图1中所说明的,供应商更新服务器86与配置储存库98通信地耦接,该储存库存储与诸如消费者系统26的消费者系统的配置相关的信息。对于每个消费者系统,配置储存库98可以存储过程控制层24中安装的过程控制系统74的版本标识符、操作系统56的版本标识符、过程控制系统74中的防病毒软件或数据库的最后更新的日期,等等。
供应商更新服务器86也可以连接到更新储存库100,在该储存库中供应商为过程控制系统74的每个软件更新存储软件对象。因为过程控制系统74的每个版本特别需要不同的软件更新,更新储存库100因此可以维护更新的专用版本列表。更新储存库100也可以存储与过程控制系统74的更新以及来自其他供应商的软件组成(例如,操作系统56)的更新相关的元数据。可以以任何需要的方式,诸如在个别的数据服务器中,在供应商更新服务器86的文件系统中存储的相关数据库中,作为诸如光盘(CD)或数字化视频光盘(DVD)的计算机可读介质上存储的文件或记录的集合,实现每个更新储存库98和100。如果需要,更新储存库98和100可以实现为一个完整的储存库。
一般而言,元数据是配置应用程序(诸如下游WSUS 94)用于瞄准适当的计算机或用于安装的其他节点的电子信息。例如,通信系统10中使用的元数据可以包括消费者使用的过程控制系统的标识,例如,由过程控制系统74的供应商分配的唯一的号码。根据实施例,例如,可以在过程控制层24或消费者系统26的级别分配标识。下游WSUS 94可以比较相应的在下游服务器80本地存储的参数,以便校验已经完全发送到下游WSUS 94的某个软件更新。作为其他例子,元数据可以包括目标计算机的名字或标识符、更新中包括的软件对象的名字、更新行为(例如,重启需求、业务中断)、文件大小、更新的说明、安装指令。
对于更新储存库100来说,存储与过程控制系统74以及其他软件的更新相关的元数据是可能的,然而,更新储存库100中实际的软件对象典型地仅仅相应于过程控制系统74。在其他实施例中,更新储存库100可以包括其他软件产品的软件对象。在这些实施例中,过程控制系统74的供应商实际上变成所有软件更新的单独的直接来源。然而,应该注意的是,虽然一些消费者可能发现该配置的便利,但是其他消费者可能不喜欢向诸如过程控制系统74的专业软件的供应商公开组织(例如,设备LAN层32以及DMZ层34)的网络结构。
为了进一步增强过程控制系统供应商层84中管理的数据的安全性,可以在连接因特网30的路由器104和供应商更新服务器86以及存储储存库98和100的数据服务器之间配置安全的面向因特网的主机102。潜在的入侵者因此发现访问储存库98和100中存储的关于诸如消费者系统26的私人设备的信息是很困难的。
继续参照图1,过程控制层24包括主开关110和副开关112,通过这两个开关工作站71和72可以访问过程设备75。作为典型,过程设备75使用一个或多个控制器120执行分配的过程控制,每个控制器通过输入/输出(I/O)设备或卡126连接到一个或多个现场设备122或智能设备124,例如,该卡可以是现场总线接口、过程现场总线接口、HART接口、标准4-20mA接口,等等。现场设备122和124可以是执行过程设备75,例如,传感器、电子管、泵、传送器、位置调节器中的各自的物理功能的任何类型的设备。
为了清楚的目的,图2采用结构图说明了上面讨论的一些部件。连接图2中各个方框的箭头并不相应于直接连接,而仅仅提供用于说明软件更新系统12、WSUS部件90和94、防病毒应用程序部件92和96、操作系统56的供应商130以及消费者系统26中使用的防病毒软件的供应商132之间的信息如何传送。总之,软件更新系统12可以与任意数量的软件制造商或供应商进行交互。同样,客户端应用程序16不必包括两个不同的模块,如图1和2说明的实施例中的情况。例如,一些消费者系统可能根本不设有安全网络层(诸如DMZ层34),而这些实施例中的客户端应用程序16可以包括具有上述模块18和20的组合功能的单一模块。
参照图2,供应商130和132可能向软件更新系统12提供软件更新、元数据或者提供这两者。基于上述原因,消费者可能宁愿从相应的供应商而不是从单独的实体取回软件更新。然而,例如,专业软件的供应商可能测试并批准专业软件与供应商130和132提供的更新之间的交互。所需的测试可能是手工处理或者使用兼容的测试模块134自动处理。当然,专业软件的供应商也可能采用任何合适的方式来识别应当批准来自供应商130和132的哪个软件更新。在服务器应用程序14不直接提供代表供应商130和132的软件更新的那些情况下,例如,专业软件的供应商选择地提供已批准更新的列表以及与已批准更新相关的元数据,其中客户端应用程序16可用于配置下游WSUS 94和防病毒配置应用程序96。
接下来,图3说明了操作用于自动配置软件更新的多个部件之间交换信息的例子。此外,为了更好地解释自动配置软件更新的系统(诸如软件更新系统12)是如何管理来自一个或多个软件供应商的更新和元数据的,图4示意性地描述了过程控制系统供应商层84(参照图1)上的多个信息和数据结构之间的交互。然后,图5和6分别说明了服务器和客户端应用程序的例子的结构图,该应用程序可以在图1所示的通信系统中运行。
参照图3,SUDS服务器150、SUDS前端客户端152、SUDS后端客户端154以及COTS配置应用程序156在相应通信系统的不同部分中运行,以便自动地并且安全地对消费者系统配置软件更新。例如,部件150-154可以在图1的通信系统10中运行,以便对消费者系统26配置更新,因此图3所示的信息可以由部件14、18、20和94来执行。出于安全的考虑,SUDS前端客户端152可以在相应计算机网络的DMZ上运行,而SUDS后端客户端154可以在诸如过程控制层的专业网络层上(或者在通信地耦接专业网络层的服务器上)运行。SUDS服务器150可以在消费者系统安装的专业软件系统的供应商的计算机网络中运行。然而,通常,对于部件150-154来说,在具有任何适当的拓扑、任意数量的网络层等等的通信网络中操作是可能的。此外,SUDS服务器150可以与各个消费者系统中操作的SUDS前端客户端152的多种情况进行交互。此外,部件150-154并不限定为包括用于控制过程设备的过程控制层的网络。因此,一些或所有部件150-154可以在任何计算机系统中配置更新,虽然可以预期到部件150-154对于在至少一些计算机主机上运行专业软件应用程序的那些系统是特别有帮助的。
在块160中,根据任何需要的方案,其中相应的管理程序可以鉴于技术和商业因素来定义相应的方案,SUDS前端客户端152可以配置成启动对消费者系统中安装的专业软件系统以及其他软件系统(例如,OS,防病毒软件)进行软件更新。例如,SUDS前端客户端152可以被安排成每周“唤醒(wake up)”一次,以便查询SUDS服务器150的更新。响应定时器到时事件162,SUDS前端客户端152向SUDS服务器150格式化并传送一个检查更新消息164以便请求可用更新的列表。如果需要,SUDS前端客户端152可以被配置成在接收定时器到时事件162之后而在传送消息164之前在工作站71或72之一上显示一个对话屏幕,以便向操作员请求一个明确的认可。
消息164可以包括诸如登录以及密码以防止未授权用户连接SUDS服务器150的认证信息。一些实施例中,消息164也包括消费系统的操作者的标识(例如,“ACME公司”),以便SUDS服务器150可以识别消费者系统中目前安装的不同软件系统的版本。其他实施例中,消息164标识消费者系统中安装的专业软件的版本(例如,“DeltaV版本=9.0”)。如果需要,这些实施例中的消息164也可以标识已在消费者系统中安装的补丁和操作系统56的版本(例如,“OS 版本=Windows XP”),以及防病毒数据库和任何其他相关软件应用程序的版本。为了这个目的,当格式化消息164时,SUDS前端客户端152可以检查本地配置数据。在另一个实施例中,消息164可以包括由操作SUDS服务器150的供应商分配的消费者系统的唯一标识。
响应接收的消息164,在块166中,SUDS服务器150可以通过已接收的消息164识别相关软件的哪个版本被安装到消费者系统中。如上所述,一些实施例中,在块166中,消息164已经指定了SUDS服务器150检索的多数或所有信息。接下来,在块168中,SUDS服务器150确定与某些或所有专业软件系统(例如,过程控制系统)、操作系统、防病毒软件等等相关的哪些更新对于消费者系统是被推荐的和/或已经被认可。参照图4更详细地讨论块166和168中SUDS服务器150的操作的许多例子。
继续参照图3,SUDS服务器150可以生成可用更新消息170的列表并且将该消息传送到SUDS前端客户端152。一些实施例中,可以根据XML规则格式化消息170。然后SUDS前端客户端152可以与本地储存库比较可用更新的列表,以便确定哪些所列的更新还没有出现在SUDS前端客户端152操作的网络或子网络中,如果有的话。作为例子,SUDS服务器150可以指示应当下载的多个OS补丁,并且SUDS前端客户端152可以检查同一个DMZ中运行的WSUS应用程序是否已经检索了这些OS更新并在本地文件夹中存储了该更新。同样,SUDS前端客户端152可以检查是否已经事先下载了专业计算机系统的更新。可选地,SUDS服务器150可以继续跟踪已经事前传送到每个SUDS前端客户端152的更新。
然后SUDS前端客户端152可以格式化更新请求消息174,该消息列出了请求下载哪些更新。SUDS服务器150可以分析消息174并且准备包括软件对象和/或元数据的更新数据,并且向消息176中的SUDS前端客户端152发送该更新数据。一些实施例中,更新数据包括用于打补丁、升级、另外修改专业软件系统的实际软件对象,其中SUDS服务器150与该专业软件系统的供应商有关。例如,消息176可以包括用于寻址目前在过程控制系统中发现的缺陷的DLL,该过程控制系统中的消费者系统在过程控制层中运行。更新数据也可以包括与一个或多个对象相关的元数据。然而,基于上述的原因,消息176不必包括用于给操作系统打补丁的实际软件对象,或用于更新防病毒数据库的数据对象。另外,消息176可以只包括与“非原产(non-native)”于SUDS服务器150的对象相关的元数据,或者可选地,只包括这些对象的标识。
响应定时器到时事件178,SUDS后端客户端154向SUDS前端客户152传送对象和元数据消息179的检查。如果已经接收到并且在SUDS后端客户端154可访问的某个位置存储了更新数据,则SUDS前端客户152通知SUDS后端客户端154该更新是可用的,并且开始向更新服务器传送更新数据(消息180),根据该通知可以在SUDS客户端应用程序152和154服务的子网络(例如,过程控制网络)中安装该更新数据。如果需要,SUDS后端客户端154可以解压缩并解密更新文件,并且应用包装程序使更新对象与COTS配置应用程序156兼容(块182)。消息184通知COTS配置应用程序156一个或多个包装的对象是可用的,并且在块186中,COTS配置应用程序156安装更新。
在某些情况下,消息184可以包括更新应用程序的元数据和/或认可信息,其中为该应用程序提供了COTS配置应用程序156。例如,COTS配置应用程序156可以是WSUS应用程序,而消息184可以指定与专业软件系统的当前版本兼容的哪些Windows更新已经被认可。返回参照图1和2,应当理解的是,参照图1-3讨论的技术避免了需要由公司网络管理员确保手动批准更新专业网络层的安全。特别地,后端模块20有效地配置下游WSUS94以便请求并从上游WSUS 90仅仅获得已经被过程控制系统74的供应商批准的那些OS专用更新。不考虑这些,更新被分配到消费者系统26中网络的其他部分,下游WSUS 94向上游WSUS 90报告一致性,并且已批准的更新被正确地安装到过程控制层24。因此,例如,监视软件更新的公司网络管理员将看不到报告过程控制层24中缺少一致性的错误警报,即使过程控制层24中实际应用的更新可以与设备LAN层32中应用的更新不同。
再次参照图3,其他实施例中的SUDS前端客户端152可以在相对长的时间周期内只传送一次消息164,例如,根据专业软件系统的新版本的安装。例如,消息164可以包括SUDS前端客户端152的认证信息、专业软件系统的版本标识符,以及用于自动通知有关新软件更新的方法和频率的指示。这些实施例中,当新更新变得可用时,SUDS服务器150可以保持需要自动通知的SUDS客户端的列表,一旦新更新被批准后检查列表,并且在合适时为SUDS前端客户端152生成各自的消息170。如果需要,SUDS服务器150也可以通知其凭证还没有提供给SUDS服务器150的消费者系统。换句话说,一些实施例中,由于SUDS服务器150(或参照图1和2讨论的服务器应用程序14)可以支持供应商发起的软件更新以及客户端发起的软件更新,消息164可以是可选的。
现在参照图4,过程控制系统软件系统的供应商可以维护储存库200,该储存库存储与运行过程控制系统的不同版本的消费者相关的配置数据、与专业软件系统相关的更新,以及与更新供应商的消费者可以使用的其他软件产品或系统的软件相关的数据。储存库200可以是计算机可读介质上存储的数据。作为一个例子,储存库200可以被实现为图1和2中说明的配置储存库98以及更新储存库100。如图4中所说明的,储存库200可以与软件或硬件部件202进行交互,例如,该软件或硬件部件可以是服务器应用程序14或SUDS服务器150的部件。
储存库200包括用户表格204、更新表格206、控制系统更新210以及操作系统更新212。为了清楚的目的,所说明的储存库200没有防病毒更新对象,虽然通常储存库200可能包括相关的任何数量的软件产品。该实施例中,表格204指定特殊消费者目前正在使用过程控制系统的哪个版本,而表格206列出了每个版本被批准的更新。因此,如果消息164确定具有用户标识“456547567”的消费者,则表格204指示在该消费者的位置安装过程控制系统的版本2.1,并且表格206列出了操作系统更新标识符OS8以及过程控制系统更新标识符CS25。该例子中,控制系统更新210作为软件对象与相应的元数据一起被存储。软件对象可以是DLLs、数据文件或可以在一个或多个目标目录中安装的文件组。一些实施例中,控制系统更新210进一步包括请求生成包装程序的数据,该包装程序由诸如下游WSUS 94的COTS配置应用程序或COTS配置应用程序156使用。另一方面,如果需要,操作系统更新数据212只包括元数据或者只包括软件更新对象的标识(例如,OS1,OS5,OS8)。图4说明的例子中,包括软件对象和元数据的更新OS8以及只包括元数据的更新CS25与消息170中的客户端应用程序通信。
图5是服务器应用程序300的结构图,例如,该服务器应用程序可以在通信系统10中或作为SUDS服务器150操作。服务器应用程序300包括更新储存库接口302,通过该接口,服务器应用程序300可以与诸如储存库200的配置和更新数据的储存库进行交互。更具体地,更新储存库接口302可以是用于通过储存库200的各种表格进行查找,用于检索更新对象和/或更新对象的标识等等的一组API。此外,例如,服务器应用程序300包括用于从相应的客户端应用程序接收消息的控制系统接口304,该客户端应用程序在诸如消费者系统26的消费者设备中运行。返回参照图1和2,控制系统接口304可以支持向客户端应用程序16或者从客户端应用程序16交互消息。在实施例中,控制系统接口304包括连接到因特网的计算机主机上的HTTPS端口,以及用于校验输入消息的完整性的一个或多个加密套接字协议层(SSL)。
服务器应用程序300还包括用公知技术实现的用户认证器306,用于校验请求软件更新的消费者的登录和密码信息。控制系统识别器308可以查询本地储存库200,例如,用于确定消费者实体目前使用哪个软件。如果需要,控制系统识别器308也可以检查消费者目前使用什么类型和版本的操作系统和/或防病毒数据库。
此外,更新列表生成器310可以连接到控制系统接口304,以便向相应的客户端应用程序报告已经批准了哪个软件更新。此外,服务器应用程序300包括控制系统更新包装程序312,用于选择地将包装程序应用到过程控制系统对象以使这些对象与COTS配置服务兼容。可选地,控制系统更新包装程序312可以驻留在相应的客户端应用程序中。此外,更新包生成器314可以为客户端应用程序生成软件更新包,该客户端应用程序包括某些或所有软件对象、元数据以及软件对象标识符。
现在参照图6,客户端应用程序330包括前端应用程序332和后端应用程序334。在实施例中,参照图1和2在上面讨论的客户端应用程序16实现客户端应用程序330的结构。前端应用程序332包括与过程控制供应商的计算机网络中运行的应用程序通信的供应商接口340。例如,前端应用程序332可以与服务器应用程序14通信。前端应用程序332进一步包括用于执行调度的调度程序342,根据该调度,客户端应用程序330查询有关软件更新的相应的服务器应用程序。此外,前端应用程序332包括更新列表处理器344以及用于格式化诸如图3中说明的消息164和174的消息的消息生成器346,该更新列表生成器检查DMZ或运行前端应用程序332的其他类型的网络中遗漏了哪些报告的可用更新。
此外,客户端应用程序330包括用于接收用户命令、关于可用软件更新的显示信息、列出之前更新的显示报告等等的操作者接口348,该用户命令诸如查询有关可用更新的服务器应用程序的命令或者开始向DMZ下载可用软件更新的命令。
更新文件夹350可以被安置在运行前端应用程序332的计算机主机的文件系统中,安置在诸如DMZ的另一个主机的文件系统的共享网络位置,或者安置在可访问前端应用程序332和后端应用程序334的任何其他位置。在至少某些实施例中,更新列表处理器344可以在更新文件夹350中存储软件对象以及从服务器应用程序接收的元数据,用于随后后端应用程序334以及COTS配置应用程序352的配置和安装。后端应用程序334可以使用文件传输模块356检索、解密并且解压缩更新文件夹350中的文件。
格式转换模块358可以注入COTS配置应用程序352没有识别的软件对象。例如,如果COTS配置应用程序352是下游WSUS应用程序,为了使这些对象与WSUS兼容,则格式转换模块358将微软公司提供的一个或多个API函数应用到过程控制对象。对于其他软件更新,文件传输模块356可以将标识符和/或元数据直接应用到COTS配置应用程序352。继续下游WSUS的例子,文件传输模块356可以作为配置数据直接应用与Windows更新相关的标识符或元数据,以便下游WSUS只向上游WSUS请求这些标识的更新。
通常关于图5和6,应当注意的是,可以用硬件、软件、固件或任何希望的它们的组合来实现块302-314,340-348以及352-358。将某些块302-314,340-348以及352-358结合到一起或者相反地将这些块的一些分割成更小的模块也是可能的。此外,在多个计算机主机之间分配一些块302-314,340-348以及352-358是可能的。
接下来,图7说明了当操作客户端应用程序16时(参见图1和2)过程控制系统的操作者可以看到的接口屏幕400的例子。在某些情况下,操作者可能更愿意完全自动地执行检测、下载以及配置软件更新的处理,因此可能停用该接口屏幕400。然而,在其他情况下,操作者可能希望手动地使用控制“下载列表(Download List)”来检查更新是否是可用的,使用控制“现在下载(download Now)”来启动下载,使用控制“测试连接(Test Connection)”来测试网络连接,等等。如图7中进一步说明的,接口屏幕400可以指示过程控制层24中目前安装的是过程控制系统的哪个版本,什么时候进行更新的最后下载,在哪存储该下载,对于下载多少存储器是可用的,等等。另外,操作者可以点击控制“配置(Configure)”来指定自动更新调度,配置客户端应用程序的前端和后端部件之间的交互,等等。此外,“预览日志(View Logs)”控制允许操作者访问之前下载的历史以及相关的事件。
接下来,图8-10说明了用于执行系统的各种功能的方法例子的各自的流程图,该系统用于自动配置更新诸如软件更新系统12。例如,服务器应用程序14可以执行方法450以便处理来自客户端应用程序16的检查可用更新,以及执行方法470以便处理来自客户端应用程序16的更新请求消息,而客户端应用程序16可以执行方法500以便开始并且处理查询和软件更新请求。
参照图8,在块452,服务器应用程序14可以接收检查更新的请求,在块454授权相应的消费者,在块456和458,分别确定消费者系统中使用的操作系统和过程控制系统请求的软件更新。如上所述,服务器应用程序14可以维护操作系统的更新列表,该操作系统已经经过测试和过程控制系统供应商的技术人员的批准。技术人员同样可以检查并且批准或拒绝更新一个或多个防病毒应用程序。如上面详细讨论的,服务器应用程序14可以考虑至少消费者系统26正在使用的操作系统的版本以及过程控制系统74的当前版本,向客户端应用程序16推荐软件更新。在块460,服务器应用程序14可以向客户端应用程序16报告可用的以及批准的更新的列表。
现在参照图9,在块472,服务器应用程序14可以接收指定一个或多个软件更新的请求。然后在块474,服务器应用程序14可以检索需要的软件对象和/或元数据,并且在块476生成客户端应用程序16的更新包。然后服务器应用程序14可以采用一个或多个消息,使用任何公知的技术,诸如通过HTTP,使用FTP客户端/服务器对,或者通过任何其他合适的协议,向客户端应用程序16传送更新包。
参照图10,在块502,客户端应用程序16等待唤醒事件。在块504,响应唤醒事件(例如,用户命令、定时器到时),客户端应用程序16可以请求可用软件更新的列表,从服务器应用程序14接收该列表,在块506,将该列表与已经从网络中获得的更新进行比较。在块508,如果客户端应用程序16确定要求了至少一个软件更新,则方法500进行到块510;否则,方法500返回块502。
在块510,客户端应用程序16生成并传送用于指定服务器应用程序14正需要哪些更新的消息。在块512,客户端应用程序16然后接收作为软件对象、元数据的软件更新,或者另一个应用程序(例如,WSUS)管理的软件更新的标识符。在块514,客户端应用程序16开始直接或间接配置软件更新的下载。更具体地,客户端16可以包括根据元数据分配并安装软件对象的部件,该元数据描述每个对象的位置、更新行为以及安装参数。选择地,客户端应用程序16可以与不同的配置应用程序交互,以便代表客户端应用程序16请求安装过程控制更新,并且通过配置该配置应用程序来控制操作系统的软件更新的配置。
根据以上所述,应当理解的是,通常,软件更新系统12以及上述的相关技术为使用软件系统、特别是复杂的专业软件系统诸如过程控制系统的用户提供了许多便利。为了具体考虑过程控制工业,该过程控制工业中的设备操作者通常依赖过程控制系统以安全可靠地管理相应的过程设备,这些便利包括(但不受限于)下述内容:安装与过程控制系统的临界功能相冲突从而威胁操作者的安全或导致设备停止的软件更新的风险显著降低;消除了过程控制操作者有时在其他任务的时间执行网络管理的需要;根据过程控制系统供应商的批准立即配置更新,因此消除了延迟配置重要软件更新的危险;并且消除了不必要的甚至是有害的更新,该更新占用操作者的时间和努力以及网络故障事件。此外,上述的技术允许过程控制系统供应商在更新操作系统的同时配置过程控制系统的升级或打补丁,因此节省了操作者的努力并且增强了所有用户的经验。另一方面,这些技术无缝地将常见的COTS更新和配置应用程序,诸如上游和下游WSUS应用程序,与更新过程控制系统的处理相结合。此外,因为这些技术允许将非本地过程控制系统更新作为本地更新提供给COTS应用程序(例如,通过包装软件对象),所以公司的IT人员可以监视网络层的安全更新一致性,在该网络层中,实现过程控制系统,而不需要手工检查来自过程控制供应商的估价单或者批准过程控制操作者的要求。
虽然参照具体的例子描述了当前的系统和方法,其仅仅是说明性的并不用于限定本发明,对于本领域的那些普通技术人员可以理解的是,在不脱离本发明的精神和范围的前提下,可以对公开的实施例进行修改、增加和/或删除。
Claims (25)
1.一种计算机网络中使用的用于自动配置软件更新的软件更新系统,其中的计算机网络包括执行操作系统和过程控制软件以控制过程设备操作的主机,该自动软件更新系统包括:
第一客户端应用程序,作为指令的第一集合存储在计算机可读介质上,用于从计算机网络中用于更新操作系统的第一服务器中接收与操作系统相关的软件对象,其中的第一服务器由操作系统的提供商操作;
第二客户端应用程序,作为指令的第二集合存储在计算机可读介质上,用于从第二服务器接收与软件对象相关的元数据,其中的第二服务器由过程控制软件的提供商操作;
元数据指定哪个软件对象已经被批准以用于主机上的过程控制软件和操作系统;并且其中
第二客户端应用程序进一步适于指定哪个软件对象将要配置到主机上。
2.根据权利要求1所述的软件更新系统,进一步包括:
配置应用程序,作为指令的第三集合存储在计算机可读介质上,用于在主机上自动安装一个或多个软件更新;其中
第二客户端应用程序适于向配置应用程序传送消息以启动配置指定的软件对象。
3.根据权利要求1所述的软件更新系统,其中的第二客户端应用程序进一步适于接收:
与过程控制软件相关的软件对象;以及
与该过程控制软件相关的软件对象所相关的元数据。
4.根据权利要求3所述的软件更新系统,其中的第二客户端应用程序包括格式转换模块,该格式转换模块用于将包装程序应用到与过程控制软件相关的软件对象,以生成包装的软件对象,从而使得包装的软件对象以及操作系统相关的软件对象与共同的配置应用程序相兼容。
5.根据权利要求1所述的软件更新系统,其中的计算机网络包括在其中第一主机进行操作的过程控制层以及将过程控制层与外部网络分开的安全层;第二客户端应用程序包括:
前端模块,该前端模块在安全层中运行,并且通过外部网络从第二服务器接收元数据;以及
后端模块,该后端模块在过程控制层中运行,并且从前端模块接收元数据。
6.一种用于自动向计算机主机传送软件更新的软件更新系统,该计算机主机执行操作系统和过程控制软件以控制过程设备的操作,该软件更新系统包括:
客户端应用程序,作为指令的第一集合存储在计算机可读介质上,用于生成可应用到计算机主机的一个或多个软件更新请求,接收与软件更新相关的软件更新数据,并且使用软件更新数据来启动自动配置对主机的软件更新;以及
服务器应用程序,作为指令的第二集合存储在计算机可读介质上,用于响应于接收请求以向客户端应用程序提供软件更新数据,其中
软件更新已经被批准以用于计算机主机上的过程控制软件和操作系统。
7.根据权利要求6所述的软件更新系统,其中的软件更新包括如下至少之一:
软件对象,该软件对象与过程控制软件、计算机主机正在使用的操作系统、或包括计算机主机的计算机网络中正在运行的防病毒软件的至少一个相关;以及
与至少一个软件对象相关的元数据。
8.根据权利要求7所述的软件更新系统,其中的元数据指定文件大小、更新行为、安装指令以及目标计算机标识的至少一个。
9.根据权利要求6所述的软件更新系统,其中的软件更新用于更新过程控制软件。
10.根据权利要求6所述的软件更新系统,其中的软件更新用于更新操作系统。
11.根据权利要求6所述的软件更新系统,其中的计算机主机在操作者网络的过程控制层中操作,并且其中的操作者网络进一步包括设置在过程控制层与外部网络之间的安全层,该安全层用于防止从外部网络直接访问过程控制网络;该客户端应用程序包括:
安装在安全层中的前端模块,该前端模块用于与服务器应用程序通信;以及
安装在过程控制层中的后端模块,该后端模块用于从前端模块检索软件更新并且启动配置过程控制网络中的软件更新。
12.根据权利要求11所述的软件更新系统,其中的前端模块包括:
消息生成器,用于生成请求被比准的软件更新列表的查询;以及
更新列表处理器,用于接收一个或多个被批准软件更新的列表,并且将该列表与安全层中设置的储存库中存储的数据进行比较;其中
如果不能在储存库中获得一个或多个被批准的软件更新,则消息生成器进一步生成一个或多个软件更新的请求。
13.根据权利要求11所述的软件更新系统,其中的前端模块包括调度程序,该调度程序用于生成周期事件,该周期事件响应于前端模块生成一个或多个软件更新的请求。
14.根据权利要求11所述的软件更新系统,其中的软件更新包括与过程控制软件相关的软件对象;而其中的后端模块包括:
格式转换模块,用于将包装程序应用到软件对象以生成包装的软件对象,其中包装的软件对象与商用成品配置应用程序兼容。
15.根据权利要求11所述的软件更新系统,其中的后端模块适于检索来自前端模块的软件更新,而不需要前端模块从操作人员接收手工的批准。
16.根据权利要求6所述的软件更新系统,其中的计算机主机在操作者网络的过程控制层中操作,其中的客户端应用程序在操作者网络中运行,而其中的服务器应用程序在过程控制软件的提供商操作的网络中运行;其中的服务器应用程序包括:
控制系统接口,用于从操作者接收请求,其中的请求包括操作者认证数据;
用户认证程序,用于根据操作者认证数据鉴别操作者;以及
控制系统识别程序,用于确定操作者网络的过程控制层中安装的过程控制软件的版本。
17.一种计算机系统中用于自动对网络配置软件更新的方法,该网络由消费者操作且具有过程控制层,在该过程控制层中的至少一个主机执行过程控制软件来操作过程设备,该方法包括:
接收来自消费者的查询,其中的查询是第一电子消息,该第一电子消息通过通信线路传送到计算机系统;
响应于接收查询执行数据库查询,以确定过程控制层可用的一个或多个软件更新,其中,该一个或多个软件更新的每一个已经被批准以用于过程控制层中正在使用的过程控制系统和操作系统;
生成与一个或多个软件更新相应的软件更新数据,其中的软件更新被存储到计算机可读介质上;以及
在第二电子消息中传送软件更新数据给消费者操作的网络中的主机。
18.根据权利要求17所述的方法,其中生成软件更新数据包括至少以下之一:
提供过程控制系统相关的软件对象以及与该过程控制软件相关的软件对象所相关的元数据;
提供与操作系统相关的软件对象所相关的元数据;以及
提供与消费者操作的网络中正在使用的防病毒软件相关的软件对象所相关的元数据。
19.根据权利要求17所述的方法,进一步包括使用查询中包括的登录和密码来验证客户。
20.根据权利要求17所述的方法,进一步包括,在生成软件更新数据并且向主机传送软件更新数据之前:
在第三电子消息中传送可用更新的列表给主机;以及
接收第四电子消息,该第四电子消息指示可用更新列表中指定的哪个可用更新将要在第二电子消息中传送。
21.一种用于对主机配置软件更新的软件更新方法,该主机在计算机网络中操作并且执行用于操作过程设备的过程控制软件,该方法包括:
生成对请求信息的查询,该请求信息与被批准在主机使用的过程控制系统和操作系统中使用的软件更新相关;
向过程控制系统的提供商传送作为第一电子消息的查询;
接收作为第二电子消息的对查询的响应,其中的响应包括与软件更新相关的软件更新数据;以及
启动对主机自动配置软件更新。
22.根据权利要求21所述的方法,其中生成查询包括响应超时事件生成查询。
23.根据权利要求21所述的方法,其中启动自动配置包括:
如果软件更新与过程控制软件相关,则向软件更新中包括的软件对象应用包装程序,以生成包装的软件对象;以及
如果软件更新与过程控制软件相关,则向商用成品(COTS)配置应用程序传送包装的软件对象。
24.根据权利要求21所述的方法,进一步包括,如果软件更新数据包括与操作系统相关的软件对象所相关的元数据,则向客户更新应用程序传送命令,其中的客户更新应用程序负责提供有关操作系统的软件更新,而其中的命令指定有关操作系统的一个或多个软件更新。
25.一种用于计算机网络的软件应用程序,该软件应用程序作为指令的集合存储到计算机可读介质上,在该计算机网络中,主机执行操作系统和过程控制软件以操作过程设备,该软件应用程序包括:
消息生成器,用于生成请求软件更新数据的查询,其中的软件更新数据与可用于对主机进行配置的软件更新相关;
第一接口,用于向过程控制软件的提供商传送查询;
更新列表处理器,当对于查询的响应相应于至少一个软件更新时,用于响应查询,接收与一个或多个软件更新相关的数据,其中过程控制软件的供应商已经批准对执行操作系统和过程控制软件的计算机配置一个或多个软件更新的每一个,以及
第二接口,用于启动配置对一个或多个主机进行一个或多个软件更新;其中
一个或多个软件更新的每一个与过程控制软件和操作系统的至少之一相关。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US24600809P | 2009-09-25 | 2009-09-25 | |
US61/246,008 | 2009-09-25 | ||
US12/883,664 US9003387B2 (en) | 2009-09-25 | 2010-09-16 | Automated deployment of computer-specific software updates |
US12/883,664 | 2010-09-16 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102045390A true CN102045390A (zh) | 2011-05-04 |
CN102045390B CN102045390B (zh) | 2016-12-07 |
Family
ID=43065635
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201010572412.4A Active CN102045390B (zh) | 2009-09-25 | 2010-09-25 | 计算机专用软件更新的自动配置 |
Country Status (5)
Country | Link |
---|---|
US (1) | US9003387B2 (zh) |
JP (2) | JP5846730B2 (zh) |
CN (1) | CN102045390B (zh) |
DE (1) | DE102010037759A1 (zh) |
GB (1) | GB2473946B (zh) |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102662712A (zh) * | 2012-04-10 | 2012-09-12 | 腾讯科技(深圳)有限公司 | 获取、推送应用程序的方法、设备和系统 |
CN104040522A (zh) * | 2011-12-22 | 2014-09-10 | 惠普发展公司,有限责任合伙企业 | 使用应用元数据和客户端更新使能远程受管应用的执行 |
CN105635237A (zh) * | 2014-11-27 | 2016-06-01 | 广州华多网络科技有限公司 | 一种客户端的频道内应用程序的下载方法及设备、系统 |
TWI578737B (zh) * | 2015-02-10 | 2017-04-11 | 鴻海精密工業股份有限公司 | 交換機、控制設備及其管理方法 |
CN106648848A (zh) * | 2016-10-14 | 2017-05-10 | 乐视控股(北京)有限公司 | 一种应用程序生效处理方法及装置 |
CN107257152A (zh) * | 2011-04-28 | 2017-10-17 | 佐尔循环公司 | 用于更新数据、操作参数和/或软件的系统 |
CN108427564A (zh) * | 2017-02-15 | 2018-08-21 | 株式会社电装天 | 控制器和控制程序更新方法 |
CN109426233A (zh) * | 2017-09-05 | 2019-03-05 | 罗伯特·博世有限公司 | 具有至少一个现场设备和至少一个控制单元的自动化系统 |
CN104216725B (zh) * | 2013-06-04 | 2019-04-19 | Sap欧洲公司 | 用于软件解决方案托管的存储库层策略调整 |
CN109690478A (zh) * | 2016-09-14 | 2019-04-26 | 瑞士优北罗股份有限公司 | 软件更新系统、空中固件更新系统和更新客户端装置的方法 |
CN111327671A (zh) * | 2018-12-17 | 2020-06-23 | 恩德莱斯和豪瑟尔分析仪表两合公司 | 过程自动化技术中的传感器信号监视的硬件软件通信系统 |
Families Citing this family (157)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5694546A (en) | 1994-05-31 | 1997-12-02 | Reisman; Richard R. | System for automatic unattended electronic information transport between a server and a client by a vendor provided transport software with a manifest list |
US9134989B2 (en) | 2002-01-31 | 2015-09-15 | Qualcomm Incorporated | System and method for updating dataset versions resident on a wireless device |
US9092286B2 (en) * | 2002-12-20 | 2015-07-28 | Qualcomm Incorporated | System to automatically process components on a device |
US8626146B2 (en) | 2003-10-29 | 2014-01-07 | Qualcomm Incorporated | Method, software and apparatus for performing actions on a wireless device using action lists and versioning |
US7623028B2 (en) | 2004-05-27 | 2009-11-24 | Lawrence Kates | System and method for high-sensitivity sensor |
US7142107B2 (en) | 2004-05-27 | 2006-11-28 | Lawrence Kates | Wireless sensor unit |
US8033479B2 (en) | 2004-10-06 | 2011-10-11 | Lawrence Kates | Electronically-controlled register vent for zone heating and cooling |
US8387037B2 (en) * | 2005-01-28 | 2013-02-26 | Ca, Inc. | Updating software images associated with a distributed computing system |
EP1905200A1 (en) | 2005-07-01 | 2008-04-02 | Terahop Networks, Inc. | Nondeterministic and deterministic network routing |
BRPI0812543A2 (pt) | 2007-06-19 | 2015-09-29 | Qualcomm Inc | métodos e aparelho para sincronização de conjunto de dados em um ambiente sem fio |
WO2009140669A2 (en) | 2008-05-16 | 2009-11-19 | Terahop Networks, Inc. | Securing, monitoring and tracking shipping containers |
KR20110118975A (ko) * | 2010-04-26 | 2011-11-02 | 삼성전자주식회사 | 휴대용 단말기에서 펌웨어 업데이트를 수행하기 위한 장치 및 방법 |
JP5465099B2 (ja) * | 2010-06-14 | 2014-04-09 | 株式会社ソニー・コンピュータエンタテインメント | 情報処理装置 |
US8727611B2 (en) | 2010-11-19 | 2014-05-20 | Nest Labs, Inc. | System and method for integrating sensors in thermostats |
US8843239B2 (en) | 2010-11-19 | 2014-09-23 | Nest Labs, Inc. | Methods, systems, and related architectures for managing network connected thermostats |
US9104211B2 (en) | 2010-11-19 | 2015-08-11 | Google Inc. | Temperature controller with model-based time to target calculation and display |
US9118505B2 (en) * | 2010-11-05 | 2015-08-25 | Blackberry Limited | System and method for controlling updates on a mobile device |
US9268344B2 (en) | 2010-11-19 | 2016-02-23 | Google Inc. | Installation of thermostat powered by rechargeable battery |
US10346275B2 (en) | 2010-11-19 | 2019-07-09 | Google Llc | Attributing causation for energy usage and setpoint changes with a network-connected thermostat |
US9046898B2 (en) | 2011-02-24 | 2015-06-02 | Google Inc. | Power-preserving communications architecture with long-polling persistent cloud channel for wireless network-connected thermostat |
US9448567B2 (en) | 2010-11-19 | 2016-09-20 | Google Inc. | Power management in single circuit HVAC systems and in multiple circuit HVAC systems |
US8850348B2 (en) | 2010-12-31 | 2014-09-30 | Google Inc. | Dynamic device-associated feedback indicative of responsible device usage |
US9453655B2 (en) | 2011-10-07 | 2016-09-27 | Google Inc. | Methods and graphical user interfaces for reporting performance information for an HVAC system controlled by a self-programming network-connected thermostat |
US9459018B2 (en) | 2010-11-19 | 2016-10-04 | Google Inc. | Systems and methods for energy-efficient control of an energy-consuming system |
US8944338B2 (en) | 2011-02-24 | 2015-02-03 | Google Inc. | Thermostat with self-configuring connections to facilitate do-it-yourself installation |
US9557981B2 (en) | 2011-07-26 | 2017-01-31 | Ford Global Technologies, Llc | Method and apparatus for automatic module upgrade |
US20130042231A1 (en) | 2011-08-10 | 2013-02-14 | Ford Global Technologies, Llc | Methods and Apparatus for Software Updating |
US8893032B2 (en) | 2012-03-29 | 2014-11-18 | Google Inc. | User interfaces for HVAC schedule display and modification on smartphone or other space-limited touchscreen device |
US9222693B2 (en) | 2013-04-26 | 2015-12-29 | Google Inc. | Touchscreen device user interface for remote control of a thermostat |
US9143530B2 (en) | 2011-10-11 | 2015-09-22 | Citrix Systems, Inc. | Secure container for protecting enterprise data on a mobile device |
US9280377B2 (en) | 2013-03-29 | 2016-03-08 | Citrix Systems, Inc. | Application with multiple operation modes |
TWI462017B (zh) * | 2012-02-24 | 2014-11-21 | Wistron Corp | 伺服器部署系統及資料更新的方法 |
WO2013149210A1 (en) | 2012-03-29 | 2013-10-03 | Nest Labs, Inc. | Processing and reporting usage information for an hvac system controlled by a network-connected thermostat |
JP5928707B2 (ja) * | 2012-05-01 | 2016-06-01 | 株式会社日立製作所 | セキュリティポリシ配布実行システムおよびセキュリティポリシ実行方法 |
US9525587B2 (en) | 2012-05-17 | 2016-12-20 | International Business Machines Corporation | Updating web resources |
US9152410B2 (en) * | 2012-06-21 | 2015-10-06 | Vaibhav KHANDELWAL | Auto-update while running client interface with handshake |
US8620841B1 (en) | 2012-08-31 | 2013-12-31 | Nest Labs, Inc. | Dynamic distributed-sensor thermostat network for forecasting external events |
EP2711797A1 (en) * | 2012-09-21 | 2014-03-26 | ABB Research Ltd. | Operating a programmable logic controller |
US8635373B1 (en) | 2012-09-22 | 2014-01-21 | Nest Labs, Inc. | Subscription-Notification mechanisms for synchronization of distributed states |
US8539567B1 (en) | 2012-09-22 | 2013-09-17 | Nest Labs, Inc. | Multi-tiered authentication methods for facilitating communications amongst smart home devices and cloud-based servers |
US20140109072A1 (en) | 2012-10-16 | 2014-04-17 | Citrix Systems, Inc. | Application wrapping for application management framework |
US9971585B2 (en) * | 2012-10-16 | 2018-05-15 | Citrix Systems, Inc. | Wrapping unmanaged applications on a mobile device |
US9513895B2 (en) * | 2012-10-31 | 2016-12-06 | Oracle International Corporation | Method and system for patch automation for management servers |
US9383992B2 (en) | 2012-11-21 | 2016-07-05 | International Business Machines Corporation | Enterprise wide software version recommendation |
US20140189136A1 (en) * | 2012-12-31 | 2014-07-03 | Oracle International Corporation | Enforcing web service policies attached to clients operating in restricted footprint platforms |
EP2778816B1 (en) * | 2013-03-12 | 2015-10-07 | ABB Technology AG | System and method for testing a distributed control system of an industrial plant |
US10061574B2 (en) | 2013-03-14 | 2018-08-28 | Ford Global Technologies, Llc | Method and apparatus for multiple vehicle software module reflash |
US9242043B2 (en) * | 2013-03-15 | 2016-01-26 | Tandem Diabetes Care, Inc. | Field update of an ambulatory infusion pump system |
US10284627B2 (en) | 2013-03-29 | 2019-05-07 | Citrix Systems, Inc. | Data management for an application with multiple operation modes |
GB2516009A (en) * | 2013-07-01 | 2015-01-14 | Muntedhar Sahib Alhakim | Automated software deployment management |
EP3049874A4 (en) * | 2013-09-27 | 2017-06-28 | Fisher-Rosemount Systems, Inc. | Change management system in a process control architecture |
JP2015103105A (ja) * | 2013-11-26 | 2015-06-04 | 株式会社リコー | 通信装置、通信システム、及び通信プログラム |
DE102013021158A1 (de) * | 2013-12-10 | 2015-06-11 | Fresenius Medical Care Deutschland Gmbh | Verfahren zum Update und/oder Upgrade der Betriebssoftware eines elektronischen Gerätes |
CN104731607B (zh) * | 2013-12-18 | 2018-10-30 | 华为技术有限公司 | 终端终生学习处理方法、装置和系统 |
US9229704B2 (en) | 2014-04-01 | 2016-01-05 | Ford Global Technologies, Llc | Smart vehicle reflash with battery state of charge (SOC) estimator |
US9317278B1 (en) * | 2014-04-25 | 2016-04-19 | Duran Walker Group, LLC | Updating shared access machine-readable code |
US9021458B1 (en) * | 2014-06-25 | 2015-04-28 | Chef Software, Inc. | Vertically integrated continuous delivery of an application |
US20160048383A1 (en) * | 2014-08-13 | 2016-02-18 | Microsoft Technology Licensing, Llc | Isv update delivery |
US9928059B1 (en) * | 2014-12-19 | 2018-03-27 | Amazon Technologies, Inc. | Automated deployment of a multi-version application in a network-based computing environment |
EP3243110B1 (en) * | 2015-01-09 | 2020-08-19 | Siemens Aktiengesellschaft | Provisioning of control layer applications for use in industrial control environments |
US10379829B2 (en) * | 2015-02-26 | 2019-08-13 | Blackberry Limited | System and method for restricting system and application software available for installation on a managed mobile device |
CN104639374B (zh) * | 2015-03-03 | 2017-12-12 | 上海瀚银信息技术有限公司 | 一种应用程序部署管理系统 |
DE202015101633U1 (de) | 2015-03-31 | 2016-07-04 | Fujitsu Technology Solutions Intellectual Property Gmbh | Computersystem und Speichervorrichtung |
DE202015101904U1 (de) | 2015-04-17 | 2016-07-20 | Fujitsu Technology Solutions Intellectual Property Gmbh | Computersystem und Speichervorrichtung zum Aktualisieren von Firmwarekomponenten |
WO2016175791A1 (en) * | 2015-04-29 | 2016-11-03 | Hewlett Packard Enterprise Development Lp | Compliance and governance policy propagation |
DE202015102285U1 (de) | 2015-05-05 | 2016-08-09 | Fujitsu Technology Solutions Intellectual Property Gmbh | Computersystem und Speichervorrichtung zum Bereitstellen wenigstens eines Datenträgers |
CN104951335B (zh) * | 2015-05-22 | 2019-01-04 | 小米科技有限责任公司 | 应用程序安装包的处理方法及装置 |
US20160363919A1 (en) * | 2015-06-09 | 2016-12-15 | Fisher Controls International Llc | Custom application environment in a process control device |
US9774628B2 (en) | 2015-08-19 | 2017-09-26 | The Boeing Company | Method for analyzing suspicious activity on an aircraft network |
US10042619B2 (en) * | 2015-08-25 | 2018-08-07 | Cognizant Technology Solutions India Pvt. Ltd. | System and method for efficiently managing enterprise architecture using resource description framework |
US9977667B2 (en) | 2015-09-09 | 2018-05-22 | Red Hat, Inc. | Updating software utilizing domain name system (DNS) |
DE102015120759A1 (de) * | 2015-11-30 | 2017-06-01 | ondeso GmbH | Verfahren und System zur Übertragung von Dateien |
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 |
US10425386B2 (en) | 2016-05-11 | 2019-09-24 | Oracle International Corporation | Policy enforcement point for a multi-tenant identity and data security management cloud service |
US10878079B2 (en) | 2016-05-11 | 2020-12-29 | Oracle International Corporation | Identity cloud service authorization model with dynamic roles and scopes |
US9838376B1 (en) | 2016-05-11 | 2017-12-05 | Oracle International Corporation | Microservices based multi-tenant identity and data security management cloud service |
US10341410B2 (en) | 2016-05-11 | 2019-07-02 | Oracle International Corporation | Security tokens for a multi-tenant identity and data security management cloud service |
US10454940B2 (en) | 2016-05-11 | 2019-10-22 | Oracle International Corporation | Identity cloud service authorization model |
US10581820B2 (en) | 2016-05-11 | 2020-03-03 | Oracle International Corporation | Key generation and rollover |
US9838377B1 (en) | 2016-05-11 | 2017-12-05 | Oracle International Corporation | Task segregation in a multi-tenant identity and data security management cloud service |
US9781122B1 (en) | 2016-05-11 | 2017-10-03 | Oracle International Corporation | Multi-tenant identity and data security management cloud service |
US11605037B2 (en) | 2016-07-20 | 2023-03-14 | Fisher-Rosemount Systems, Inc. | Fleet management system for portable maintenance tools |
US10554644B2 (en) | 2016-07-20 | 2020-02-04 | Fisher-Rosemount Systems, Inc. | Two-factor authentication for user interface devices in a process plant |
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 |
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 |
US10599134B2 (en) | 2016-07-22 | 2020-03-24 | Fisher-Rosemount Systems, Inc. | Portable field maintenance tool configured for multiple process control communication protocols |
US10375162B2 (en) | 2016-07-22 | 2019-08-06 | Fisher-Rosemount Systems, Inc. | Process control communication architecture |
CN107645403B (zh) * | 2016-07-22 | 2020-07-03 | 阿里巴巴集团控股有限公司 | 终端规则引擎装置、终端规则运行方法 |
US10585422B2 (en) | 2016-07-22 | 2020-03-10 | Fisher-Rosemount Systems, Inc. | Portable field maintenance tool system having interchangeable functional modules |
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 |
US10764083B2 (en) | 2016-07-25 | 2020-09-01 | Fisher-Rosemount Systems, Inc. | Portable field maintenance tool with resistor network for intrinsically safe operation |
US10255061B2 (en) * | 2016-08-05 | 2019-04-09 | Oracle International Corporation | Zero down time upgrade for a multi-tenant identity and data security management cloud service |
US10735394B2 (en) | 2016-08-05 | 2020-08-04 | Oracle International Corporation | Caching framework for a multi-tenant identity and data security management cloud service |
US10263947B2 (en) | 2016-08-05 | 2019-04-16 | Oracle International Corporation | LDAP to SCIM proxy service |
US10721237B2 (en) | 2016-08-05 | 2020-07-21 | Oracle International Corporation | Hierarchical processing for a virtual directory system for LDAP to SCIM proxy service |
US10585682B2 (en) | 2016-08-05 | 2020-03-10 | Oracle International Corporation | Tenant self-service troubleshooting for a multi-tenant identity and data security management cloud service |
US10516672B2 (en) | 2016-08-05 | 2019-12-24 | Oracle International Corporation | Service discovery for a multi-tenant identity and data security management cloud service |
US10530578B2 (en) | 2016-08-05 | 2020-01-07 | Oracle International Corporation | Key store service |
US10484382B2 (en) | 2016-08-31 | 2019-11-19 | Oracle International Corporation | Data management for a multi-tenant identity cloud service |
US10594684B2 (en) | 2016-09-14 | 2020-03-17 | Oracle International Corporation | Generating derived credentials for a multi-tenant identity cloud service |
US10846390B2 (en) | 2016-09-14 | 2020-11-24 | Oracle International Corporation | Single sign-on functionality for a multi-tenant identity and data security management cloud service |
US10511589B2 (en) | 2016-09-14 | 2019-12-17 | Oracle International Corporation | Single logout functionality for a multi-tenant identity and data security management cloud service |
US10791087B2 (en) | 2016-09-16 | 2020-09-29 | Oracle International Corporation | SCIM to LDAP mapping using subtype attributes |
US10445395B2 (en) | 2016-09-16 | 2019-10-15 | Oracle International Corporation | Cookie based state propagation for a multi-tenant identity cloud service |
US10567364B2 (en) | 2016-09-16 | 2020-02-18 | Oracle International Corporation | Preserving LDAP hierarchy in a SCIM directory using special marker groups |
US10484243B2 (en) | 2016-09-16 | 2019-11-19 | Oracle International Corporation | Application management for a multi-tenant identity cloud service |
US10341354B2 (en) | 2016-09-16 | 2019-07-02 | Oracle International Corporation | Distributed high availability agent architecture |
EP3513542B1 (en) | 2016-09-16 | 2021-05-19 | Oracle International Corporation | Tenant and service management for a multi-tenant identity and data security management cloud service |
US10904074B2 (en) | 2016-09-17 | 2021-01-26 | Oracle International Corporation | Composite event handler for a multi-tenant identity cloud service |
KR102000984B1 (ko) * | 2017-01-09 | 2019-07-17 | (주)아이엔소프트 | 복수의 서버에 자동 생성 기능을 제공하는 운영 자동화 시스템 |
US10261836B2 (en) | 2017-03-21 | 2019-04-16 | Oracle International Corporation | Dynamic dispatching of workloads spanning heterogeneous services |
US10587625B2 (en) * | 2017-03-27 | 2020-03-10 | Citrix Systems, Inc. | Segregation of protected resources from network frontend |
US10133566B2 (en) * | 2017-03-30 | 2018-11-20 | Adtran, Inc. | Software upgrading system and method in a distributed multi-node network environment |
US10454915B2 (en) | 2017-05-18 | 2019-10-22 | Oracle International Corporation | User authentication using kerberos with identity cloud service |
EP3428756B1 (de) | 2017-07-10 | 2019-06-19 | Siemens Aktiengesellschaft | Integritätsüberwachung bei automatisierungssystemen |
US10571901B2 (en) * | 2017-08-08 | 2020-02-25 | Fisher-Rosemount Systems, Inc. | Controlled roll-out of module classes |
US11188501B1 (en) * | 2017-08-15 | 2021-11-30 | Amazon Technologies, Inc. | Transactional and batch-updated data store search |
US10348858B2 (en) | 2017-09-15 | 2019-07-09 | Oracle International Corporation | Dynamic message queues for a microservice based cloud service |
US10831789B2 (en) | 2017-09-27 | 2020-11-10 | Oracle International Corporation | Reference attribute query processing for a multi-tenant cloud service |
US11271969B2 (en) | 2017-09-28 | 2022-03-08 | Oracle International Corporation | Rest-based declarative policy management |
US10834137B2 (en) | 2017-09-28 | 2020-11-10 | Oracle International Corporation | Rest-based declarative policy management |
US10705823B2 (en) | 2017-09-29 | 2020-07-07 | Oracle International Corporation | Application templates and upgrade framework for a multi-tenant identity cloud service |
US10798181B2 (en) * | 2017-11-13 | 2020-10-06 | Canon Marketing Japan Kabushiki Kaisha | Storage medium containing a program, information processing device, and processing method for deploying an application generated to a cloud environment |
JP7010005B2 (ja) * | 2018-01-11 | 2022-01-26 | 富士フイルムビジネスイノベーション株式会社 | 情報処理装置及びプログラム |
US10715564B2 (en) | 2018-01-29 | 2020-07-14 | Oracle International Corporation | Dynamic client registration for an identity cloud service |
JP7311245B2 (ja) * | 2018-03-07 | 2023-07-19 | トヨタ自動車株式会社 | マスタ装置、マスタ、制御方法、プログラム及び車両 |
US10747525B2 (en) | 2018-03-09 | 2020-08-18 | International Business Machines Corporation | Distribution of a software upgrade via a network |
US10931656B2 (en) | 2018-03-27 | 2021-02-23 | Oracle International Corporation | Cross-region trust for a multi-tenant identity cloud service |
US11165634B2 (en) | 2018-04-02 | 2021-11-02 | Oracle International Corporation | Data replication conflict detection and resolution for a multi-tenant identity cloud service |
US10798165B2 (en) | 2018-04-02 | 2020-10-06 | Oracle International Corporation | Tenant data comparison for a multi-tenant identity cloud service |
US11258775B2 (en) | 2018-04-04 | 2022-02-22 | Oracle International Corporation | Local write for a multi-tenant identity cloud service |
US11012444B2 (en) | 2018-06-25 | 2021-05-18 | Oracle International Corporation | Declarative third party identity provider integration for a multi-tenant identity cloud service |
US10764273B2 (en) | 2018-06-28 | 2020-09-01 | Oracle International Corporation | Session synchronization across multiple devices in an identity cloud service |
CN110896404B (zh) * | 2018-09-12 | 2021-09-14 | 华为技术有限公司 | 数据处理的方法、装置和计算节点 |
US11693835B2 (en) | 2018-10-17 | 2023-07-04 | Oracle International Corporation | Dynamic database schema allocation on tenant onboarding for a multi-tenant identity cloud service |
US11321187B2 (en) | 2018-10-19 | 2022-05-03 | Oracle International Corporation | Assured lazy rollback for a multi-tenant identity cloud service |
US10977025B2 (en) * | 2018-11-07 | 2021-04-13 | Microsoft Technology Licensing, Llc | Intelligent software asset classification for software update validation |
US11639142B2 (en) | 2019-01-11 | 2023-05-02 | Ford Global Technologies, Llc | Electronic control module wake monitor |
US11651357B2 (en) | 2019-02-01 | 2023-05-16 | Oracle International Corporation | Multifactor authentication without a user footprint |
US11061929B2 (en) | 2019-02-08 | 2021-07-13 | Oracle International Corporation | Replication of resource type and schema metadata for a multi-tenant identity cloud service |
US11321343B2 (en) | 2019-02-19 | 2022-05-03 | Oracle International Corporation | Tenant replication bootstrap for a multi-tenant identity cloud service |
US11669321B2 (en) | 2019-02-20 | 2023-06-06 | Oracle International Corporation | Automated database upgrade for a multi-tenant identity cloud service |
US11423111B2 (en) | 2019-02-25 | 2022-08-23 | Oracle International Corporation | Client API for rest based endpoints for a multi-tenant identify cloud service |
US11792226B2 (en) | 2019-02-25 | 2023-10-17 | Oracle International Corporation | Automatic api document generation from scim metadata |
US11137996B2 (en) | 2019-02-28 | 2021-10-05 | International Business Machines Corporation | Cognitive service updates via container instantiation |
US10614382B1 (en) * | 2019-07-12 | 2020-04-07 | Capital One Services, Llc | Computer-based systems and methods configured to utilize automating deployment of predictive models for machine learning tasks |
US11870770B2 (en) | 2019-09-13 | 2024-01-09 | Oracle International Corporation | Multi-tenant identity cloud service with on-premise authentication integration |
US11687378B2 (en) | 2019-09-13 | 2023-06-27 | Oracle International Corporation | Multi-tenant identity cloud service with on-premise authentication integration and bridge high availability |
US11321156B1 (en) * | 2019-09-27 | 2022-05-03 | Amazon Technologies, Inc. | System for updating resources independently from source code |
CN112579192A (zh) * | 2019-09-30 | 2021-03-30 | 北京京东尚科信息技术有限公司 | 信息处理方法、装置、系统和计算机可读存储介质 |
US11611548B2 (en) | 2019-11-22 | 2023-03-21 | Oracle International Corporation | Bulk multifactor authentication enrollment |
US11544625B2 (en) * | 2020-02-03 | 2023-01-03 | Microsoft Technology Licensing, Llc | Computing system for training, deploying, executing, and updating machine learning models |
EP3902225A1 (en) * | 2020-04-24 | 2021-10-27 | Honeywell International Inc. | Systems and methods for secure over-the-air updates for cyber-physical systems |
US11567753B1 (en) | 2021-08-31 | 2023-01-31 | International Business Machines Corporation | Automated software patch mapping and recommendation |
CN114741102A (zh) * | 2022-04-13 | 2022-07-12 | 鼎捷软件股份有限公司 | 具有自动升级功能的开发系统以及开发系统的自动升级方法 |
CN116974857B (zh) * | 2023-09-21 | 2024-01-23 | 中国西安卫星测控中心 | 一种监控代理自动部署更新方法及其系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101179573A (zh) * | 2007-10-24 | 2008-05-14 | 中兴通讯股份有限公司 | 一种在线动态更新服务器软件配置信息的实现方法 |
US20090007091A1 (en) * | 2007-06-27 | 2009-01-01 | Microsoft Corporation | Techniques for automatic software provisioning |
CN101410800A (zh) * | 2003-12-15 | 2009-04-15 | 微软公司 | 用于软件发布服务的系统和方法 |
Family Cites Families (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB9623298D0 (en) * | 1996-11-08 | 1997-01-08 | Int Computers Ltd | Updating mechanism for software |
US6282709B1 (en) * | 1997-11-12 | 2001-08-28 | Philips Electronics North America Corporation | Software update manager |
JP3451989B2 (ja) * | 1999-07-14 | 2003-09-29 | ミノルタ株式会社 | 印刷システムにおけるソフトウェアの版管理装置 |
US7289994B2 (en) * | 1999-10-18 | 2007-10-30 | Fisher-Rosemount Systems, Inc. | Interconnected zones within a process control system |
JP2002007129A (ja) | 2000-06-20 | 2002-01-11 | Oki Electric Ind Co Ltd | ソフトウェアの更新方法及び更新システム |
US7539978B1 (en) * | 2001-11-01 | 2009-05-26 | Cigital, Inc. | Method for understanding and testing third party software components |
US7555749B2 (en) * | 2003-03-10 | 2009-06-30 | Microsoft Corporation | Software updating system and method |
US7620948B1 (en) * | 2003-08-29 | 2009-11-17 | Adobe Systems Incorporated | Client side software updating |
US7539686B2 (en) * | 2004-03-12 | 2009-05-26 | Microsoft Corporation | Tag-based schema for distributing update metadata in an update distribution system |
US7975266B2 (en) * | 2004-07-30 | 2011-07-05 | Sap Aktiengesellschaft | Remote installation of computer resources |
US20070022403A1 (en) * | 2005-07-21 | 2007-01-25 | Caterpillar Inc. | Software system development apparatus |
US20070169079A1 (en) * | 2005-11-08 | 2007-07-19 | Microsoft Corporation | Software update management |
US8286154B2 (en) * | 2006-03-22 | 2012-10-09 | Honeywell International Inc. | Apparatus and method for live loading of version upgrades in a process control environment |
US8413130B2 (en) * | 2007-10-03 | 2013-04-02 | International Business Machines Corporation | System and method for self policing of authorized configuration by end points |
US20090133012A1 (en) * | 2007-11-21 | 2009-05-21 | Cyberlink Corporation | Apparatus and method for providing notification of software update |
JP5130073B2 (ja) | 2008-02-08 | 2013-01-30 | 株式会社オービックビジネスコンサルタント | 情報処理システム、サーバ装置、ユーザ管理装置、情報処理方法、およびプログラム |
US8914783B2 (en) | 2008-11-25 | 2014-12-16 | Fisher-Rosemount Systems, Inc. | Software deployment manager integration within a process control system |
US8561052B2 (en) * | 2008-12-08 | 2013-10-15 | Harris Corporation | Communications device with a plurality of processors and compatibility synchronization module for processor upgrades and related method |
-
2010
- 2010-09-16 US US12/883,664 patent/US9003387B2/en active Active
- 2010-09-22 GB GB1015879.8A patent/GB2473946B/en active Active
- 2010-09-24 DE DE201010037759 patent/DE102010037759A1/de active Pending
- 2010-09-25 CN CN201010572412.4A patent/CN102045390B/zh active Active
- 2010-09-27 JP JP2010215391A patent/JP5846730B2/ja active Active
-
2015
- 2015-10-02 JP JP2015196742A patent/JP6130460B2/ja active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101410800A (zh) * | 2003-12-15 | 2009-04-15 | 微软公司 | 用于软件发布服务的系统和方法 |
US20090007091A1 (en) * | 2007-06-27 | 2009-01-01 | Microsoft Corporation | Techniques for automatic software provisioning |
CN101179573A (zh) * | 2007-10-24 | 2008-05-14 | 中兴通讯股份有限公司 | 一种在线动态更新服务器软件配置信息的实现方法 |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107257152B (zh) * | 2011-04-28 | 2021-04-09 | 佐尔循环公司 | 用于更新数据、操作参数和/或软件的系统 |
CN107257152A (zh) * | 2011-04-28 | 2017-10-17 | 佐尔循环公司 | 用于更新数据、操作参数和/或软件的系统 |
CN104040522A (zh) * | 2011-12-22 | 2014-09-10 | 惠普发展公司,有限责任合伙企业 | 使用应用元数据和客户端更新使能远程受管应用的执行 |
CN102662712A (zh) * | 2012-04-10 | 2012-09-12 | 腾讯科技(深圳)有限公司 | 获取、推送应用程序的方法、设备和系统 |
CN102662712B (zh) * | 2012-04-10 | 2015-11-18 | 深圳市腾讯计算机系统有限公司 | 获取、推送应用程序的方法、设备和系统 |
CN104216725B (zh) * | 2013-06-04 | 2019-04-19 | Sap欧洲公司 | 用于软件解决方案托管的存储库层策略调整 |
CN105635237A (zh) * | 2014-11-27 | 2016-06-01 | 广州华多网络科技有限公司 | 一种客户端的频道内应用程序的下载方法及设备、系统 |
US10104013B2 (en) | 2015-02-10 | 2018-10-16 | Nanning Fugui Precision Industrial Co., Ltd. | Openflow controller and switch installing an application |
TWI578737B (zh) * | 2015-02-10 | 2017-04-11 | 鴻海精密工業股份有限公司 | 交換機、控制設備及其管理方法 |
CN109690478A (zh) * | 2016-09-14 | 2019-04-26 | 瑞士优北罗股份有限公司 | 软件更新系统、空中固件更新系统和更新客户端装置的方法 |
CN109690478B (zh) * | 2016-09-14 | 2022-06-10 | 瑞士优北罗股份有限公司 | 软件更新系统、空中固件更新系统和更新客户端装置的方法 |
CN106648848A (zh) * | 2016-10-14 | 2017-05-10 | 乐视控股(北京)有限公司 | 一种应用程序生效处理方法及装置 |
CN108427564A (zh) * | 2017-02-15 | 2018-08-21 | 株式会社电装天 | 控制器和控制程序更新方法 |
CN108427564B (zh) * | 2017-02-15 | 2021-04-13 | 株式会社电装天 | 控制器和控制程序更新方法 |
CN109426233A (zh) * | 2017-09-05 | 2019-03-05 | 罗伯特·博世有限公司 | 具有至少一个现场设备和至少一个控制单元的自动化系统 |
CN111327671A (zh) * | 2018-12-17 | 2020-06-23 | 恩德莱斯和豪瑟尔分析仪表两合公司 | 过程自动化技术中的传感器信号监视的硬件软件通信系统 |
Also Published As
Publication number | Publication date |
---|---|
JP5846730B2 (ja) | 2016-01-20 |
GB201015879D0 (en) | 2010-10-27 |
CN102045390B (zh) | 2016-12-07 |
DE102010037759A1 (de) | 2011-06-16 |
US20110078675A1 (en) | 2011-03-31 |
US9003387B2 (en) | 2015-04-07 |
JP2016021263A (ja) | 2016-02-04 |
GB2473946A (en) | 2011-03-30 |
GB2473946B (en) | 2015-06-24 |
JP2011070674A (ja) | 2011-04-07 |
JP6130460B2 (ja) | 2017-05-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102045390A (zh) | 计算机专用软件更新的自动配置 | |
US8850587B2 (en) | Network security scanner for enterprise protection | |
CN1791871B (zh) | 企业控制台 | |
US9727352B2 (en) | Utilizing history of changes associated with software packages to manage computing systems | |
CN101657793B (zh) | 用于配置防火墙的方法、系统和计算机程序 | |
WO2002065283A2 (en) | Networked installation system for deploying systems management platforms | |
US20120042388A1 (en) | Method of managing a software item on a managed computer system | |
CN102244585A (zh) | 分布式应用中的更改跟踪和管理 | |
JP2006520975A (ja) | 非侵入な自動オフサイト・パッチ・フィンガプリンティングおよびアップデーティングシステム、および方法 | |
CN111698283B (zh) | 分布式集群主机的管控方法、装置、设备及存储介质 | |
US11645086B2 (en) | System and method for implementing a filesystem agent management solution | |
CN114244604B (zh) | 适用于堡垒机的一体化权限管理方法、系统、电子设备和可读存储介质 | |
CN105518686A (zh) | 软件撤销基础设施 | |
US11924285B2 (en) | Data center asset deployment via a connectivity management deployment operation | |
CN103150203B (zh) | 一种虚拟机控制系统、虚拟机控制器及控制方法 | |
CN110597662A (zh) | 备份数据自动验证方法、装置、用户设备及存储介质 | |
US20230344801A1 (en) | Secure Certificate Storage When a Connectivity Management System Client is Running on an Operating System | |
KR101034186B1 (ko) | 생산관리 단말기 및 그 운영방법 | |
CN102270129A (zh) | 将软件产品分发为包括脚本逻辑和外部资源的可执行文件 | |
WO2002039257A2 (en) | Automated provisioning framework for internet site servers | |
US20230009170A1 (en) | System for Performing a Data Center Asset Bridging Operation | |
CN114297733A (zh) | 一种数字媒体设备的软件升级和部署的方法及装置 | |
KR100881552B1 (ko) | 컴퓨터 라이프사이클 관리 방법 | |
GB2394570A (en) | Installing software components according to component characteristics | |
JP2007011645A (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 |