CN1609803A - 通过后加载镜像布置软件的方法与装置 - Google Patents

通过后加载镜像布置软件的方法与装置 Download PDF

Info

Publication number
CN1609803A
CN1609803A CNA2004100857980A CN200410085798A CN1609803A CN 1609803 A CN1609803 A CN 1609803A CN A2004100857980 A CNA2004100857980 A CN A2004100857980A CN 200410085798 A CN200410085798 A CN 200410085798A CN 1609803 A CN1609803 A CN 1609803A
Authority
CN
China
Prior art keywords
user
order
software
instruction
software program
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
Application number
CNA2004100857980A
Other languages
English (en)
Other versions
CN1307544C (zh
Inventor
库尔维尔·S·博加尔
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.)
Activision Publishing Inc
Original Assignee
International Business Machines 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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of CN1609803A publication Critical patent/CN1609803A/zh
Application granted granted Critical
Publication of CN1307544C publication Critical patent/CN1307544C/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4411Configuring for operating with peripheral devices; Loading of device drivers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Stored Programmes (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

一种布置(deploy)软件的方法,包括:在耦合至网络的服务器上提供网站,以向用户呈现界面。该服务器具有存储其上的一组预先创建的后加载镜像,用于用户可选择的软件与硬件的组合。该服务器接收用户对于软件应用程序的选择,以布置到目标计算机系统上,以及对于目标系统的硬件的选择,并且相应地确定哪些驱动程序对应于所指示的硬件。然后,该服务器选择后加载镜像中的特定的一个,其中所选择的镜像具有用户所选择的软件应用程序以及对于用户所选择的硬件的驱动程序。

Description

通过后加载镜像布置软件的方法与装置
技术领域
本发明涉及将软件布置的某些方面自动化,更具体地,涉及提供一组用于软件应用的组合的后加载镜像,这些软件应用是用户可能选择来布置(deploy)到目标系统的。
背景技术
即使在单一计算机系统上安装、恢复或配置(即“设置”)软件,也可能是耗费时间并且耗费精力的过程。然而,因为计算机系统是如此重要的工具,从而大部分大规模的商业企业都具有许多计算机系统。相应地,这些企业就面临着维护其计算机系统以及不断变化的软件组(array)的令人生畏的任务。
已经存在许多改进设置难度的创新。例如,Colligan等的美国专利6519762B1“Method And Apparatus for Restoration of a Computer System HardDrive”,以及6298433B1“Method And Software for Supplying A ComputerSoftware Image to A Computer System”(此处统称为“Colligan”),用于提供软件镜像或恢复被破坏的软件镜像。根据Colligan,在计算机的制造过程结束时,将“工厂下载”镜像放置在计算机的硬盘驱动器上。这样的工厂下载镜像包括没有文件链接的压缩文件,并在此处被称为“预加载(pre-load)”镜像(image)。具体地,Colligan有关于定制计算机系统。在一个这类系统中,预加载镜像包括操作系统、应用程序、硬件及软件驱动程序等等的文件,这些文件由客户订购,或者是支持客户所订购的硬件所需要的。在计算机的初始加电时,客户安装定单所包含的操作系统及软件应用程序,这包括配置用户可选的偏好。这种安装过程改变了原始的预加载镜像。例如,镜像中的压缩文件被解压缩,生成其他文件,并且发生文件链接。Colligan提供了一种方式,用来在CD-ROM上提供预加载镜像的安全拷贝,用于特定的定制计算机,从而该预加载镜像只能在该特定计算机上安装。
在另一例子中,O’Connor等的美国专利5745568“Method of SecuringCD-ROM Data for Retrieval by One Machine”,也有关于提供预加载软件镜像。O’Connor尤其注意提供加密的预加载软件镜像,再次将重点放在保证该预加载软件镜像只能在一个特定计算机系统上安装。
虽然上述现有技术有用,但是在对计算机用户的服务中仍然需要改进。例如,存在以下需求:提供在软件布置中更直接地涉及用户的服务,以及以支持简化计算机设置的形式向用户布置软件。
发明内容
在本发明中如下所述地处理以上需求。一种布置软件的方法,包括:在耦合至网络的服务供应商的计算机系统上提供网站,以向用户呈现界面。该系统具有存储其上的一组镜像,用于用户可选择的软件与硬件的组合。这些镜像不是简单的预加载镜像,诸如通常为用户安装所提供的镜像。而这些镜像是“后加载(post-load)”镜像,有时也称为“幻影”镜像。即,虽然可以压缩、加密钥或加密后加载镜像,但是该镜像在其他方面基本与目标计算机系统硬盘驱动器上的镜像完全相同,该目标计算机系统硬盘驱动器上的镜像来自于对于预加载镜像的常规安装过程,其中在预加载镜像的文件之外生成文件,配置预加载镜像的软件应用程序,将文件与目标系统硬件的驱动程序链接等等。该供应商的系统用来接收用户对于软件应用程序的选择,以布置到目标计算机系统上,以及对于目标系统的硬件的选择,并且相应地确定哪些驱动程序对应于所指示的硬件。然后,该供应商的系统选择后加载镜像中的特定的一个,其中所选择的镜像具有用户所选择的软件应用程序并且具有用户所选择的硬件所特有的驱动程序。
根据本发明的另一方面,相应于接收到定单,该供应商的系统向用户发送加载实用程序连同所选择的镜像,其中这个实用程序能向目标计算机系统传送所述后加载镜像,而不依赖于目标计算机系统具有操作系统命令解释器或引导盘。Symantec公司提供了一种这样的加载实用程序,Norton Ghost。
本发明的其他目的、优点、方面以及形式将在阅读以下详细描述并参照附图时变得明显。
附图说明
图1显示根据本发明实施例的、通过因特网耦合至用户计算机系统的服务器,包括一界面,通过该界面用户可以选择安装在目标计算机系统上的软件应用程序;
图2显示根据本发明实施例的、图1的服务器的处理与结构的其他方面;
图3显示与图1的目标计算机系统有关的处理与结构的其他方面;
图4以流程图的形式显示根据本发明实施例的图1与2的服务器的特定逻辑处理;以及
图5显示根据本发明实施例的、适合于图1的服务器、目标系统或用户系统的计算机系统。
具体实施方式
本申请的权利要求列出了被认为是本发明特征的新颖特征。通过参照以下对示范性实施例的详细描述并参照附图,将能更好地理解本发明、其优选使用模式以及进一步的目标与优点。
现在参照图1,在服务器110上提供服务供应商的网站105,用于向用户150的浏览器115呈现一界面,通过该界面用户150可以选择软件应用120,以安装在目标计算机系统125上。(此处,名词“应用程序”包括操作系统以及所有形式的软件)。即,用户150可以使用通过因特网130耦合至服务器110的第二客户端计算机系统135访问第一计算机系统(即服务器110),以选择在服务器110网站105上提供的软件120,以布置到(第三)目标计算机系统125。(可替换地,第二计算机系统135可能自己就是最终的目标系统,在这种情况下,用户150选择软件120以布置到第二计算机系统135,第二计算机系统135将用新软件120被重新配置。)
用户150还向服务器110指示目标系统125的硬件性质。相应地,服务器110确定对于所指示的目标系统125的硬件需要哪些驱动程序140。例如,用户150可以指示目标系统125的特定制造商、型号以及机器号。这样的制造商、型号以及机器号指明了特定的一套硬件组件,包括(例如)显示器、声卡、键盘、鼠标等等。服务器110查找相应于由该制造商、型号以及机器号所指明的硬件组件的驱动程序140。
现在参照图2,其中显示了服务器110上信息处理与结构的其他方面。网站105服务器110具有一组在其上存储的、预先创建的后加载镜像210,用于用户可选择的软件与硬件组合。即,例如,如果所提供的软件应用程序120包括应用程序X、Y以及Z,并且驱动程序140包括驱动程序U以及V,则存在在服务器110上的预先创建的镜像组210包括用户可选择的软件应用120以及用户可能指示的硬件的驱动程序140的所有组合,即:XU、YU、ZU、XYU、XZU、YZU、XYZU、XV、YV、2V、XYV、XZV、YZV以及XYZV。(当然,应该理解,我们所设想的多于三个软件应用程序120以及两个驱动程序140)。
一旦用户150(图1)已经选择了软件应用程序120并指示了目标系统125的硬件,从这些服务器110确定相应的驱动程序140,则服务器110选择相应的预先创建的镜像210之一并向用户150提供对于传递所选择的镜像210的选择。该传递选择包括通过高速因特网130(图1)连接下载镜像210以及在诸如CD-ROM等硬介质上的信使传递。然后,服务器110相应地向用户150发送目标系统125(图1)软件镜像210。
现在参照图3,其中显示了用于与目标系统125有关的处理以及结构的其他方面。在本发明的所示实施例中,服务器110将所选择的目标系统镜像210与“加载”实用程序315一起发送。这样的加载实用程序能向计算机机系统传送镜像,而不依赖于该计算机系统具有操作系统命令解释器或引导磁盘。根据一种实施例,加载实用程序315在可引导介质上发送,诸如软盘或CD-ROM。在另一实施例中,实用程序315通过因特网连接130(图1)发送,并且用户150(图1)将该实用程序315传送到可引导介质305。
一旦用户收到了所选择的镜像210,则用户150可以简单地将镜像210发送到目标硬件系统125,而不经过现有的安装过程。即,根据现有的安装过程,首先使用引导盘安装操作系统。然后安装各个软件应用程序,一般使用包含在(或至少与其交互的)操作系统中的安装实用程序。与此不同,根据本发明的一种构造,目标计算机系统125可以没有安装任何操作系统,或者该OS可能不起作用。在这种情况下,用户只用将具有实用程序315的盘305插入目标系统125的盘驱动器310中。在关闭系统125时做这一工作。在系统被打开时,目标系统125自动引导到实用程序315,实用程序315具有使系统125自动向系统125的硬盘驱动器320传送镜像210的指令。这可以包括引导用户150(图1)通过某些非常简单的用户交互,诸如输入用户身份验证用于许可证验证目的,输入用户150希望在其上拷贝镜像210的目标系统驱动器320的指示,如果镜像210跨越多个盘325则改变盘325(如图3所示)。因此,对于传送镜像210,不需要目标系统125 OS,或者根本就不使用它,确实,如果目标系统125在其硬盘驱动器320上具有操作系统,则当用户150打开目标系统125并且该系统引导到盘305时,实用程序315的指令使系统125重新格式化硬盘驱动器320或者至少清除驱动器320的先前内容,包括操作系统。
在目标系统125镜像210已经被传送之后,用户150移除可引导加载应用程序315介质305,关闭并重新启动(或者至少重启)系统125,然后系统125引导到在目标系统125硬盘驱动器320上的新近传送的镜像210。
再次参照图2,根据本发明的一种实施例,服务供应商还通过网站105销售计算机,并且允许购买者使用同一浏览器115(图1)界面选择并配置软件120,以与计算机一起发送。网站105还在服务器110上建立并维护记录250,具有记录计算机或软件定单的定单标识符252以及用户标识符254,从而如果用户150(图1)希望选择性地更新先前提供给用户150的软件程序120,或者在先前所提供的软件程序之外还希望取得软件程序120,则服务器选择一个不同的预先创建的镜像210,该镜像210包括被选择性地更新的先前所取得的软件程序120,以及新软件程序120。服务器110为新镜像210所计算的价格反映了对于只是被更新的软件的较低的更新价格。另外,服务器110维护与用户标识符254相关联的用户150的简档260。用户150向服务器110提供对于简档260的信息,该信息通报服务器110有关用户的需求或需要,诸如用户所说的语言、生理障碍、特殊兴趣、工作性质、教育程度等等。
本结构的优点在于:一旦向服务器110提供了用户标识符254或定单标识符252,则服务器110可以容易地选择并发送对于目标系统125的替换镜像210,即使用户150没有保存或原来没有取得不同于在目标系统125硬盘驱动器320自身上的镜像210的目标系统镜像210的拷贝。另外,根据用户标识符254或定单标识符252,服务器110相应地向用户150通过浏览器115呈现先前所取得的软件120的清单,从而用户150可以在取得替换之前容易地改变原始目标系统125镜像210。另外,网站105呈现原始软件120版本对于现在可得到的新发行的比较,从而用户150可以更容易地选择软件120的更新后版本。
在建议用户150先前所选择的同一软件程序的更新后版本之外,网站105服务器110甚至还可以对有关其他软件程序120提出建议,响应于在记录250中所指示的用户先前所选择的程序120,或者响应于在简档260中所包含的有关用户150的信息,服务器110确定所述其他软件程序120可能对于用户150是所希望的。
现在参照图4,其中显示了根据本发明实施例的服务器110(图1与2)的逻辑过程。算法400从401开始。然后,在405,在耦合至诸如因特网等网络的服务器上提供网站,用于通过用户的计算机系统上的用户的浏览器向用户呈现界面。该服务器具有在其上存储的一组预先创建的后加载镜像,用于用户可选择的软件以及硬件的组合。接着,在410服务器通过网络从用户接收查询,并且如果存在与该用户的先前交易则取得用户或定单标识符。这可以从用户的计算机系统上的cookie取得,或者通过请求并从用户所输入的输入接收它来取得。
服务器维护定单记录,该记录记忆了被包含在所购买的镜像中的软件应用程序以及驱动程序。每条记录都与唯一的定单标识符以及用户标识符相关联,该定单标识符由服务器为该定单及目标计算机系统而确立,该用户标识符由服务器为该“用户”而确立,其可以是在目标系统上使用该软件的人或承诺定单的企业的管理员。服务器还维护着每一用户的简档,该简档与用户的标识符相关联。该简档包括来自用户的、通知该服务器有关用户需求的信息。
如果服务器接收定单标识符,则在415,服务器相应地检索对于在415先前定单标识符的定单记录。如果服务器接收用户标识符或检索到先前定单记录,则还在415,服务器使用用户标识符来相应地检索该用户的简档,以及与该用户标识符相关联的先前定单的任何定单记录。如果这是用户的第一定单,则还在415,服务器查询并从用户接收通知该服务器有关用户需求的新用户简档的信息。相应地,还在415,服务器确立对于新用户简档的用户标识符,并且用所收到的信息填充该简档。如果这不是第一定单,则服务器查询并可能接收对于用户简档的更新后信息,并且相应地更新简档。
接着,在420,服务器向用户呈现对于目标系统硬件的描述,以及包含在先前已经被订购的镜像中的软件应用程序以及驱动程序的清单。该列表来自包含在所检索的定单记录中的信息。这也包括,在步骤420,呈现对于先前定单或与用户或定单标识符相关联的定单的软件程序的所建议的更新的清单。这样的所建议的“更新”可能包括对于先前被订购的软件的新的发行,或者对于该软件功能更全面的版本的更新。这还包括,在步骤420,除在先前(多个)定单的定单记录中所指示的那些程序之外,对于新定单的所建议的软件程序的清单。
接着,在425,服务器从用户接收对于软件应用程序的选择,以布置到用户的目标计算机系统上,并且还是在425,从用户接收对于目标系统硬件的选择。这包括来自用户的、指示那些要为第二次定单更新的第一定单的软件程序或者指示在第一定单的软件程序之外的对于第二次定单的软件程序的选择。
接着,在430,服务器确定对于用户所选择的软件应用程序哪些驱动程序相应于用户所指示的硬件。(服务器具有其上存储的、预先创建的一组软件镜像,用于用户可选择的软件与硬件的组合。)还是在430,服务器选择预先创建的镜像的特定镜像,即具有用户所选择的软件应用程序以及对于那些软件应用程序和对于用户所选择的硬件的驱动程序的镜像。由此,所选择的镜像可以布置到目标系统硬件上。
接着,在435,服务器从用户接收对于所选择镜像的定单承诺,其包括用户对于所选择镜像发送方法的选择。相应于该定单,还是在435,服务器确立新定单记录以及相关联的定单标识符,并将其向用户呈现。然后,在440,服务器向用户发送加载实用程序(如上所述)以及所选择的镜像和定单标识符。如上所述,这可以通过电子传送或信使。
参照图5,其中的方框图显示根据本发明实施例的、适合于图1的服务器110、目标系统125或用户系统135的计算机系统510。在各种实施例中,系统510采用多种形式,包括个人计算机系统、大型计算机系统、工作站、服务器、因特网应用、PDA、具有存储器的嵌入式处理器等等。即,应该理解名词“计算机系统”意在包括任何具有执行来自存储器介质的指令的处理器的设备。类似地,虽然上面使用了名词“服务器”并且在图1中显示了服务器110,但是应该理解,在本发明的不同实施例中,容纳服务供应商网站的计算机系统可以采用多种形式,并且不一定限于所谓的“服务器”。
系统510包括处理器515、易失存储器527(例如RAM)、键盘533、定点设备530(例如鼠标)、非易失存储器529(例如ROM、硬盘、软盘、CD-ROM以及DVD)以及具有显示屏幕的显示设备537。存储器527与529用于存储程序指令(也被称为“软件程序”),其可由处理器515执行,以实现根据本发明方法的各种实施例。在各种实施例中,所述一个或多个软件程序以各种方式实现,包括基于过程的技术、基于组件的技术、和/或面向对象的技术,等等。特定例子包括XML、C、C++对象、Java以及商务级的函数库。包含在系统510中的部件通过总线540互连。通讯设备(未显示)也可以链接到总线540,以启动系统510与其他设备之间的信息交换。
注意在图1与2的网站105上的软件应用程序120不一定限于由服务供应商所开发的软件,而可能包括由任意其他人开发的软件。实际上,考虑到通常在现代计算机系统上安装的应用程序的多样性,最好该网站提供来自许多开发者的软件产品。这种结构是有利的,这是因为除其他原因外,该网站提供为用户了一站式商店。通过这种方式,该网站不仅就在目标系统上安装与配置软件的精力而言节省了用户时间,而且还就获取用于安装与配置的各种软件产品的精力而言节省了用户时间。
该结构还具有许多其他优点。其有利于迅速方便地布置软件,以恢复崩溃或被病毒感染或以其他方式破坏的系统,尤其因为为用户、用户的目标系统以及先前所取得的软件维护了记录,从而用户不需要记忆并列举目标系统的硬件特征或需要恢复的软件应用程序。另外,其有利于迅速容易地布置软件更新,以取得最新的服务包、防病毒应用程序以及安全补丁。
因为本发明有利于软件出价的比较,所以在各种形式下本发明也是有利的。其有利于更便宜的出价,这是因为服务供应商可以使用批量购买能力,并且可能导致打包费用的降低。在本发明的一种实施例中,用户标识符可以与其他用户聚组,或者与大型用户实体相关联,从而当用户根据此处所描述的结构从服务供应商购买软件时,布置该软件的服务器根据与该用户的组或实体相关联的量向该用户打批量折扣。
对于当前实施例的描述用于说明目的,而不是穷尽的或将本发明限于所公开的形式。还可以设想许多其他方面、修改以及变体,并且这些由权利要求所覆盖。例如,能够以指令的计算机可读介质的形式以各种方式分布本发明的过程。不管实际被用来进行该分布的特定信号承载介质的类型,本发明同样适用。计算机可读介质的例子包括RAM、闪存、诸如软盘、硬盘驱动器、ROM、CD-ROM、DVD等可记录类型介质以及诸如数字和/或模拟通信链接(例如因特网)等传送类型介质。
还可以设想许多其他方面、修改以及变体,并且这些由权利要求所覆盖。例如,根据一种实施例,网站不仅呈现用户可以选择布置的、服务器具有其预先创建镜像的多个软件应用程序,而且向用户呈现各种预先创建的目录结构的表示,用户可以从这些目录结构中选择以产生对于目标系统的所希望的目录结构。由此,用户可以选择其中每个软件应用程序都具有从根目录直接分支的其自身的目录(即“文件夹”)的目录结构。可替换地,用户可以选择单一的、直接从根目录分支的程序目录,其中(例如)程序目录包含每个各个应用程序目录的每一个。
在另一实施例中,在输入用户选择与指定之后,创建对于目标系统的所选择软件的定制镜像,该镜像根据所选择的目录结构为所指定的硬件而配置。即,根据该实施例,不是软件、目录结构以及硬件的所有可能组合都被预先确定并预先创建。
重申一下,还可以设想许多其他方面、修改以及变体,并且这些由权利要求所覆盖。另外,应该理解在权利要求中各动作不一定依照其所列出的特定序列执行。

Claims (21)

1.一种布置软件的方法,包括以下步骤:
在耦合至网络的服务器上提供网站,以向用户呈现界面,其中所述服务器具有存储其上的一组预先创建的后加载镜像,用于用户可选择的软件与硬件的组合;
从用户接收对于软件应用程序的选择,以布置到目标计算机系统上;
从用户接收对于目标系统的硬件的选择,并且相应地确定哪些驱动程序对应于所指示的硬件;以及
选择所述后加载镜像中的特定的一个,其中所选择的镜像具有用户所选择的软件应用程序以及对于用户所选择的硬件的驱动程序。
2.根据权利要求1的方法,包括以下步骤:
从用户接收对于可布置到目标系统硬件上的所选择软件应用程序的特定镜像的第一定单,包括用户对于所选择镜像的发送方法的选择;以及
向用户发送加载实用程序连同所选择的镜像,其中这个实用程序能向所述计算机系统传送所述后加载镜像,而不依赖于所述计算机系统是否具有操作系统命令解释器或引导盘。
3.根据权利要求2的方法,其中所述发送加载实用程序连同所选择的镜像包括:在可引导介质上发送所述加载实用程序,并且所述实用程序包括用于当开启目标系统时响应于目标系统引导到所述在可引导介质上的实用程序,使目标系统将所述镜像传送到该系统的硬盘驱动器上的指令。
4.根据权利要求2的方法,包括以下步骤:
维护所述对于包含在所发送的特定镜像中的软件应用程序以及驱动程序的定单的记录,其中所述记录与定单标识符以及用户标识符相关联;
接收用户的第二定单,包括所述用户或定单标识符;
响应于所述用户或定单标识符,检索所述对于第一定单的记录;
呈现包含在为第一定单而发送的特定镜像中的软件应用程序以及驱动程序的清单;以及
接收指示第一定单的软件程序中要为第二定单更新的那些软件程序或者指示除第一定单的软件程序之外对于第二定单的软件程序的选择。
5.根据权利要求4的方法,包括以下步骤:
响应于所述用户或定单标识符,呈现对于第一定单的软件程序的建议更新的清单。
6.根据权利要求4的方法,包括以下步骤:
响应于所述用户或定单标识符,呈现除第一定单的软件程序之外对于第二定单的建议软件程序的清单。
7.根据权利要求4的方法,包括以下步骤:
接收通知所述服务器有关用户需求的用户信息;
维护与所述用户标识符以及所接收的用户信息相关联的用户简档;以及
响应于所述用户信息,呈现对于第一定单的软件程序的建议更新的清单,或者除第一定单的软件程序之外对于第二定单的建议软件程序的清单。
8.一种布置软件的装置,包括:
处理器;
存储器,用来存储可由所述处理器执行以进行以下步骤的指令:
在耦合至网络的服务器上提供网站,以向用户呈现界面;
从用户接收对于软件应用程序的选择,以布置到目标计算机系统上;
从用户接收对于目标系统的硬件的选择,并且相应地确定哪些驱动程序对应于所指示的硬件,其中所述服务器具有存储其上的一组预先创建的后加载镜像,用于用户可选择的软件与硬件的组合;以及
选择所述后加载镜像中的特定的一个,其中所选择的镜像具有用户所选择的软件应用程序以及对于用户所选择的硬件的驱动程序。
9.根据权利要求8的装置,其中所述程序指令可由所述处理器执行以进行以下步骤:
从用户接收对于可布置到目标系统硬件上的所选择软件应用程序的特定镜像的第一定单,包括用户对于所选择镜像的发送方法的选择;以及
向用户发送加载实用程序连同所选择的镜像,其中这个实用程序能向所述计算机系统传送所述后加载镜像,而不依赖于所述计算机系统是否具有操作系统命令解释器或引导盘。
10.根据权利要求9的装置,其中所述发送加载实用程序连同所选择的镜像包括:在可引导介质上发送所述加载实用程序,并且所述实用程序包括用于当开启目标系统时响应于目标系统引导到所述在可引导介质上的实用程序,使目标系统将所述镜像传送到该系统的硬盘驱动器上的指令。
11.根据权利要求9的装置,其中所述程序指令可由所述处理器执行以进行以下步骤:
维护所述对于包含在所发送的特定镜像中的软件应用程序以及驱动程序的定单的记录,其中所述记录与定单标识符以及用户标识符相关联;
接收用户的第二定单,包括所述用户或定单标识符;
响应于所述用户或定单标识符,检索所述对于第一定单的记录;
呈现包含在为第一定单而发送的特定镜像中的软件应用程序以及驱动程序的清单;以及
接收指示第一定单的软件程序中要为第二定单更新的那些软件程序或者指示除第一定单的软件程序之外对于第二定单的软件程序的选择。
12.根据权利要求11的装置,其中所述程序指令可由所述处理器执行以进行以下步骤:
响应于所述用户或定单标识符,呈现对于第一定单的软件程序的建议更新的清单。
13.根据权利要求11的装置,其中所述程序指令可由所述处理器执行以进行以下步骤:
响应于所述用户或定单标识符,呈现除第一定单的软件程序之外对于第二定单的建议软件程序的清单。
14.根据权利要求11的装置,其中所述程序指令可由所述处理器执行以进行以下步骤:
接收通知所述服务器有关用户需求的用户信息;
维护与所述用户标识符以及所接收的用户信息相关联的用户简档;以及
响应于所述用户信息,呈现对于第一定单的软件程序的建议更新的清单,或者除第一定单的软件程序之外对于第二定单的建议软件程序的清单。
15.一种布置软件的计算机程序产品,包括:
用于在耦合至网络的服务器上提供网站,以向用户呈现界面的指令;
用于从用户接收对于软件应用程序的选择,以布置到目标计算机系统上的指令;
用于从用户接收对于目标系统的硬件的选择,并且相应地确定哪些驱动程序对应于所指示的硬件的指令,其中所述服务器具有存储其上的一组预先创建的后加载镜像,用于用户可选择的软件与硬件的组合;以及
用于选择所述后加载镜像中的特定的一个的指令,其中所选择的镜像具有用户所选择的软件应用程序以及对于用户所选择的硬件的驱动程序。
16.根据权利要求15的计算机程序产品,包括:
用于从用户接收对于可布置到目标系统硬件上的所选择软件应用程序的特定镜像的第一定单,包括用户对于所选择镜像的发送方法的选择的指令;以及
用于向用户发送加载实用程序连同所选择的镜像的指令,其中这个实用程序能向所述计算机系统传送所述后加载镜像,而不依赖于所述计算机系统是否具有操作系统命令解释器或引导盘。
17.根据权利要求16的计算机程序产品,其中所述发送加载实用程序连同所选择的镜像包括:在可引导介质上发送所述加载实用程序,并且所述实用程序包括用于当开启目标系统时响应于目标系统引导到所述在可引导介质上的实用程序,使目标系统将所述镜像传送到该系统的硬盘驱动器上的指令。
18.根据权利要求16的计算机程序产品,包括:
用于维护所述对于包含在所发送的特定镜像中的软件应用程序以及驱动程序的定单的记录的指令,其中所述记录与定单标识符以及用户标识符相关联;
用于接收用户的第二定单,包括所述用户或定单标识符的指令;
用于响应于所述用户或定单标识符,检索所述对于第一定单的记录的指令;
用于呈现包含在为第一定单而发送的特定镜像中的软件应用程序以及驱动程序的清单的指令;以及
用于接收指示第一定单的软件程序中要为第二定单更新的那些软件程序或者指示除第一定单的软件程序之外对于第二定单的软件程序的选择的指令。
19.根据权利要求18的计算机程序产品,包括:
用于响应于所述用户或定单标识符,呈现对于第一定单的软件程序的建议更新的清单的指令。
20.根据权利要求18的计算机程序产品,包括:
用于响应于所述用户或定单标识符,呈现除第一定单的软件程序之外对于第二定单的建议软件程序的清单的指令。
21.根据权利要求18的计算机程序产品,包括:
用于接收通知所述服务器有关用户需求的用户信息的指令;
用于维护与所述用户标识符以及所接收的用户信息相关联的用户简档的指令;以及
用于响应于所述用户信息,呈现对于第一定单的软件程序的建议更新的清单,或者除第一定单的软件程序之外对于第二定单的建议软件程序的清单的指令。
CNB2004100857980A 2003-10-23 2004-10-22 通过后加载镜像布置软件的方法与装置 Active CN1307544C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/692,143 US7565650B2 (en) 2003-10-23 2003-10-23 Method, apparatus and computer program product for deploying software via post-load images
US10/692,143 2003-10-23

Publications (2)

Publication Number Publication Date
CN1609803A true CN1609803A (zh) 2005-04-27
CN1307544C CN1307544C (zh) 2007-03-28

Family

ID=34522036

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2004100857980A Active CN1307544C (zh) 2003-10-23 2004-10-22 通过后加载镜像布置软件的方法与装置

Country Status (2)

Country Link
US (1) US7565650B2 (zh)
CN (1) CN1307544C (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101005551A (zh) * 2006-01-19 2007-07-25 佳能株式会社 图像处理设备和图像处理设备的启动方法
CN102099763A (zh) * 2008-05-20 2011-06-15 惠普开发有限公司 用户界面修改器
CN108170439A (zh) * 2016-12-07 2018-06-15 施耐德电子软件有限责任公司 用于管理多个分布式服务器上的机器镜像的系统和方法

Families Citing this family (74)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6760708B1 (en) * 1999-08-19 2004-07-06 Dell Products L.P. Method and system for migrating stored data to a build-to-order computing system
US7237103B2 (en) * 2004-02-18 2007-06-26 Wyse Technology, Inc. Computing device deployment using mass storage device
US8250626B2 (en) * 2006-11-03 2012-08-21 International Business Machines Corporation Securing data accessed by a software package pre-loaded on a computer system
US8127235B2 (en) 2007-11-30 2012-02-28 International Business Machines Corporation Automatic increasing of capacity of a virtual space in a virtual world
US20090164919A1 (en) 2007-12-24 2009-06-25 Cary Lee Bates Generating data for managing encounters in a virtual world environment
US8566431B2 (en) * 2008-01-16 2013-10-22 Razer (Asia-Pacific) Pte. Ltd. Identification device and method for device identification
JP5159375B2 (ja) 2008-03-07 2013-03-06 インターナショナル・ビジネス・マシーンズ・コーポレーション メタバースにおけるオブジェクトの真贋判断システム、方法及びそのコンピュータ・プログラム
US8086834B2 (en) * 2009-04-16 2011-12-27 Dell Products L.P. System and method for populating a dedicated system service repository for an information handling system
US8453140B2 (en) * 2009-04-28 2013-05-28 Qualcomm Incorporated Method for generically handling carrier specific provisioning for computer cellular wireless cards
US8417234B2 (en) * 2009-05-17 2013-04-09 Qualcomm Incorporated Method and apparatus for tracking the programming of a mobile device with multiple service accounts
US8417231B2 (en) * 2009-05-17 2013-04-09 Qualcomm Incorporated Method and apparatus for programming a mobile device with multiple service accounts
US20110093790A1 (en) * 2009-10-21 2011-04-21 International Business Machines Corporation Preemptive caching for web-based systems
US8413062B1 (en) * 2009-11-06 2013-04-02 Infragistics Inc. Method and system for accessing interface design elements via a wireframe mock-up
US9205328B2 (en) 2010-02-18 2015-12-08 Activision Publishing, Inc. Videogame system and method that enables characters to earn virtual fans by completing secondary objectives
US9682324B2 (en) 2010-05-12 2017-06-20 Activision Publishing, Inc. System and method for enabling players to participate in asynchronous, competitive challenges
US8756256B2 (en) 2010-05-26 2014-06-17 Qualcomm Incorporated Method and systems for the management of non volatile items and provisioning files for a communication device with multiple service accounts
US8434060B2 (en) * 2010-08-17 2013-04-30 Sap Ag Component load procedure for setting up systems
US8776048B2 (en) * 2012-05-22 2014-07-08 International Business Machines Corporation Early configuration in deploying an enterprise application
US10137376B2 (en) 2012-12-31 2018-11-27 Activision Publishing, Inc. System and method for creating and streaming augmented game sessions
US9189226B2 (en) * 2013-06-25 2015-11-17 Sap Se Software logistics protocols
US10286326B2 (en) 2014-07-03 2019-05-14 Activision Publishing, Inc. Soft reservation system and method for multiplayer video games
US11351466B2 (en) 2014-12-05 2022-06-07 Activision Publishing, Ing. System and method for customizing a replay of one or more game events in a video game
US10118099B2 (en) 2014-12-16 2018-11-06 Activision Publishing, Inc. System and method for transparently styling non-player characters in a multiplayer video game
WO2016118168A1 (en) * 2015-01-23 2016-07-28 Hewlett-Packard Development Company, L.P. Generating purchase order data based on physical identifiers
US10315113B2 (en) 2015-05-14 2019-06-11 Activision Publishing, Inc. System and method for simulating gameplay of nonplayer characters distributed across networked end user devices
US10286314B2 (en) 2015-05-14 2019-05-14 Activision Publishing, Inc. System and method for providing continuous gameplay in a multiplayer video game through an unbounded gameplay session
US10486068B2 (en) 2015-05-14 2019-11-26 Activision Publishing, Inc. System and method for providing dynamically variable maps in a video game
US10086266B2 (en) 2015-06-15 2018-10-02 Activision Publishing, Inc. System and method for uniquely identifying physical trading cards and incorporating trading card game items in a video game
US10471348B2 (en) 2015-07-24 2019-11-12 Activision Publishing, Inc. System and method for creating and sharing customized video game weapon configurations in multiplayer video games via one or more social networks
US11185784B2 (en) 2015-10-08 2021-11-30 Activision Publishing, Inc. System and method for generating personalized messaging campaigns for video game players
US10099140B2 (en) 2015-10-08 2018-10-16 Activision Publishing, Inc. System and method for generating personalized messaging campaigns for video game players
US10245509B2 (en) 2015-10-21 2019-04-02 Activision Publishing, Inc. System and method of inferring user interest in different aspects of video game streams
US10376781B2 (en) 2015-10-21 2019-08-13 Activision Publishing, Inc. System and method of generating and distributing video game streams
US10232272B2 (en) 2015-10-21 2019-03-19 Activision Publishing, Inc. System and method for replaying video game streams
US10694352B2 (en) 2015-10-28 2020-06-23 Activision Publishing, Inc. System and method of using physical objects to control software access
US10300390B2 (en) 2016-04-01 2019-05-28 Activision Publishing, Inc. System and method of automatically annotating gameplay of a video game based on triggering events
US10226701B2 (en) 2016-04-29 2019-03-12 Activision Publishing, Inc. System and method for identifying spawn locations in a video game
US10179289B2 (en) 2016-06-21 2019-01-15 Activision Publishing, Inc. System and method for reading graphically-encoded identifiers from physical trading cards through image-based template matching
US10573065B2 (en) 2016-07-29 2020-02-25 Activision Publishing, Inc. Systems and methods for automating the personalization of blendshape rigs based on performance capture data
US10463964B2 (en) 2016-11-17 2019-11-05 Activision Publishing, Inc. Systems and methods for the real-time generation of in-game, locally accessible heatmaps
US10709981B2 (en) 2016-11-17 2020-07-14 Activision Publishing, Inc. Systems and methods for the real-time generation of in-game, locally accessible barrier-aware heatmaps
US10500498B2 (en) 2016-11-29 2019-12-10 Activision Publishing, Inc. System and method for optimizing virtual games
US10055880B2 (en) 2016-12-06 2018-08-21 Activision Publishing, Inc. Methods and systems to modify a two dimensional facial image to increase dimensional depth and generate a facial image that appears three dimensional
US10861079B2 (en) 2017-02-23 2020-12-08 Activision Publishing, Inc. Flexible online pre-ordering system for media
US10818060B2 (en) 2017-09-05 2020-10-27 Activision Publishing, Inc. Systems and methods for guiding motion capture actors using a motion reference system
US11040286B2 (en) 2017-09-27 2021-06-22 Activision Publishing, Inc. Methods and systems for improved content generation in multiplayer gaming environments
US10974150B2 (en) 2017-09-27 2021-04-13 Activision Publishing, Inc. Methods and systems for improved content customization in multiplayer gaming environments
US10561945B2 (en) 2017-09-27 2020-02-18 Activision Publishing, Inc. Methods and systems for incentivizing team cooperation in multiplayer gaming environments
US10463971B2 (en) 2017-12-06 2019-11-05 Activision Publishing, Inc. System and method for validating video gaming data
US10537809B2 (en) 2017-12-06 2020-01-21 Activision Publishing, Inc. System and method for validating video gaming data
US10981051B2 (en) 2017-12-19 2021-04-20 Activision Publishing, Inc. Synchronized, fully programmable game controllers
US11278813B2 (en) 2017-12-22 2022-03-22 Activision Publishing, Inc. Systems and methods for enabling audience participation in bonus game play sessions
US10765948B2 (en) 2017-12-22 2020-09-08 Activision Publishing, Inc. Video game content aggregation, normalization, and publication systems and methods
US10596471B2 (en) 2017-12-22 2020-03-24 Activision Publishing, Inc. Systems and methods for enabling audience participation in multi-player video game play sessions
US11192028B2 (en) 2018-11-19 2021-12-07 Activision Publishing, Inc. Systems and methods for the real-time customization of video game content based on player data
US11263670B2 (en) 2018-11-19 2022-03-01 Activision Publishing, Inc. Systems and methods for dynamically modifying video game content based on non-video gaming content being concurrently experienced by a user
US11115712B2 (en) 2018-12-15 2021-09-07 Activision Publishing, Inc. Systems and methods for indexing, searching for, and retrieving digital media
US11679330B2 (en) 2018-12-18 2023-06-20 Activision Publishing, Inc. Systems and methods for generating improved non-player characters
US11305191B2 (en) 2018-12-20 2022-04-19 Activision Publishing, Inc. Systems and methods for controlling camera perspectives, movements, and displays of video game gameplay
US11344808B2 (en) 2019-06-28 2022-05-31 Activision Publishing, Inc. Systems and methods for dynamically generating and modulating music based on gaming events, player profiles and/or player reactions
US11097193B2 (en) 2019-09-11 2021-08-24 Activision Publishing, Inc. Methods and systems for increasing player engagement in multiplayer gaming environments
US11423605B2 (en) 2019-11-01 2022-08-23 Activision Publishing, Inc. Systems and methods for remastering a game space while maintaining the underlying game simulation
US11712627B2 (en) 2019-11-08 2023-08-01 Activision Publishing, Inc. System and method for providing conditional access to virtual gaming items
US11537209B2 (en) 2019-12-17 2022-12-27 Activision Publishing, Inc. Systems and methods for guiding actors using a motion capture reference system
US11420122B2 (en) 2019-12-23 2022-08-23 Activision Publishing, Inc. Systems and methods for controlling camera perspectives, movements, and displays of video game gameplay
US11563774B2 (en) 2019-12-27 2023-01-24 Activision Publishing, Inc. Systems and methods for tracking and identifying phishing website authors
US11524234B2 (en) 2020-08-18 2022-12-13 Activision Publishing, Inc. Multiplayer video games with virtual characters having dynamically modified fields of view
US11351459B2 (en) 2020-08-18 2022-06-07 Activision Publishing, Inc. Multiplayer video games with virtual characters having dynamically generated attribute profiles unconstrained by predefined discrete values
US11833423B2 (en) 2020-09-29 2023-12-05 Activision Publishing, Inc. Methods and systems for generating level of detail visual assets in a video game
US11717753B2 (en) 2020-09-29 2023-08-08 Activision Publishing, Inc. Methods and systems for generating modified level of detail visual assets in a video game
US11724188B2 (en) 2020-09-29 2023-08-15 Activision Publishing, Inc. Methods and systems for selecting a level of detail visual asset during the execution of a video game
US11439904B2 (en) 2020-11-11 2022-09-13 Activision Publishing, Inc. Systems and methods for imparting dynamic and realistic movement to player-controlled avatars in video games
US11853439B2 (en) 2020-12-30 2023-12-26 Activision Publishing, Inc. Distributed data storage system providing enhanced security
US11794107B2 (en) 2020-12-30 2023-10-24 Activision Publishing, Inc. Systems and methods for improved collision detection in video games

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5553139A (en) 1994-04-04 1996-09-03 Novell, Inc. Method and apparatus for electronic license distribution
US5745568A (en) 1995-09-15 1998-04-28 Dell Usa, L.P. Method of securing CD-ROM data for retrieval by one machine
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
US6078951A (en) * 1996-11-27 2000-06-20 Intel Corporation Method and apparatus for automating a software delivery system by locating, downloading, installing, and upgrading of viewer software
US6202207B1 (en) 1998-01-28 2001-03-13 International Business Machines Corporation Method and a mechanism for synchronized updating of interoperating software
US6298443B1 (en) * 1998-04-24 2001-10-02 Dell Usa, L.P. Method and system for supplying a custom software image to a computer system
US6510466B1 (en) * 1998-12-14 2003-01-21 International Business Machines Corporation Methods, systems and computer program products for centralized management of application programs on a network
US6519762B1 (en) 1998-12-15 2003-02-11 Dell Usa, L.P. Method and apparatus for restoration of a computer system hard drive
US6487718B1 (en) * 1999-03-31 2002-11-26 International Business Machines Corporation Method and apparatus for installing applications in a distributed data processing system
US7246351B2 (en) * 2001-02-20 2007-07-17 Jargon Software System and method for deploying and implementing software applications over a distributed network
US20020158900A1 (en) * 2001-04-30 2002-10-31 Hsieh Vivian G. Graphical user interfaces for network management automated provisioning environment
US20020165976A1 (en) * 2001-05-02 2002-11-07 Jean-Charles Gonthier Software deployment in a data communications network
US7143419B2 (en) * 2001-06-06 2006-11-28 Sap Ag Device for running offline applications and synchronizing with a central computer system
EP1265139A1 (en) * 2001-06-08 2002-12-11 Hewlett Packard Company, a Delaware Corporation A method of restoring an impaired software image associated with a networked computer
US7143409B2 (en) * 2001-06-29 2006-11-28 International Business Machines Corporation Automated entitlement verification for delivery of licensed software
US20030028869A1 (en) * 2001-08-02 2003-02-06 Drake Daniel R. Method and computer program product for integrating non-redistributable software applications in a customer driven installable package

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101005551A (zh) * 2006-01-19 2007-07-25 佳能株式会社 图像处理设备和图像处理设备的启动方法
US8873070B2 (en) 2006-01-19 2014-10-28 Canon Kabushiki Kaisha Image processing apparatus and method of starting image processing apparatus
CN101005551B (zh) * 2006-01-19 2015-08-19 佳能株式会社 图像处理设备和图像处理设备的启动方法
CN102099763A (zh) * 2008-05-20 2011-06-15 惠普开发有限公司 用户界面修改器
CN108170439A (zh) * 2016-12-07 2018-06-15 施耐德电子软件有限责任公司 用于管理多个分布式服务器上的机器镜像的系统和方法
CN108170439B (zh) * 2016-12-07 2023-05-02 阿韦瓦软件有限责任公司 用于管理多个分布式服务器上的机器镜像的系统和方法

Also Published As

Publication number Publication date
CN1307544C (zh) 2007-03-28
US7565650B2 (en) 2009-07-21
US20050091417A1 (en) 2005-04-28

Similar Documents

Publication Publication Date Title
CN1307544C (zh) 通过后加载镜像布置软件的方法与装置
US7143067B1 (en) System and method for installing personal computer software
US8387038B2 (en) Method and system for automatic computer and user migration
KR100396101B1 (ko) 라이센싱된 애플리케이션 인스톨 방법, 프로그램 저장장치 및 프로그램 제품
CA2724858C (en) Techniques for acquiring updates for application programs
US6760708B1 (en) Method and system for migrating stored data to a build-to-order computing system
US8352935B2 (en) System for creating a customized software distribution based on user requirements
US6636958B2 (en) Appliance server with a drive partitioning scheme that accommodates application growth in size
JP4800968B2 (ja) デルタパッチを利用してファイルをアップデートするための方法
US6898705B2 (en) Automatic appliance server re-provision/re-purposing method
TW591416B (en) Localized read-only storage device for distributing files over a network
EP2278460B1 (en) System image customization tool
CN101213557B (zh) 限制操作系统及其它软件的安装的反骇客保护
US20080071689A1 (en) Method And System For Creating License Management In Software Applications
CN100399268C (zh) 一种不依赖操作系统更新软件数据的计算机系统及方法
US20070113066A1 (en) Host build and rebuild system and method
JP2007523395A (ja) ソフトウェア配信サービスのためのシステムおよび方法
JP2001051833A (ja) コンピュータ・デバイスの自動構成のためのより小さなMicrosoftWindows(登録商標)のアプリケーションを作成および配布する方法および装置
JP2007514233A (ja) ソフトウェアアップデートを管理し通信するためのシステムおよび方法
TW200828118A (en) Method and process for using common preinstallation environment for heterogeneous operating systems
JP2001056718A (ja) ブートアップ時及びシャットダウン時の画像表示
JP5684962B2 (ja) システム・ファームウェアから記憶装置にアプリケーション・プログラムを転送するための方法およびシステム
US20070027933A1 (en) Resilient system partition for personal internet communicator
US7813964B2 (en) Click and run software purchasing
US20030028655A1 (en) Data processing system and method

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
ASS Succession or assignment of patent right

Owner name: ACTIVISION PUBLISHING COMPANY

Free format text: FORMER OWNER: INTERNATIONAL BUSINESS MACHINES CORPORATION

Effective date: 20130618

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20130618

Address after: American California

Patentee after: ACTIVISION PUBLISHING, INC.

Address before: American New York

Patentee before: International Business Machines Corp.