CN1183458C - 将应用程序从系统固件传递到存储设备的方法和系统 - Google Patents

将应用程序从系统固件传递到存储设备的方法和系统 Download PDF

Info

Publication number
CN1183458C
CN1183458C CNB001222198A CN00122219A CN1183458C CN 1183458 C CN1183458 C CN 1183458C CN B001222198 A CNB001222198 A CN B001222198A CN 00122219 A CN00122219 A CN 00122219A CN 1183458 C CN1183458 C CN 1183458C
Authority
CN
China
Prior art keywords
processor
memory element
content
memory
memory device
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.)
Expired - Fee Related
Application number
CNB001222198A
Other languages
English (en)
Other versions
CN1282923A (zh
Inventor
C・E・斯特文斯
C·E·斯特文斯
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.)
Golden Harvest Holdings Limited
Original Assignee
Phoenix Technologies Ltd
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
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=23314430&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=CN1183458(C) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Phoenix Technologies Ltd filed Critical Phoenix Technologies Ltd
Publication of CN1282923A publication Critical patent/CN1282923A/zh
Application granted granted Critical
Publication of CN1183458C publication Critical patent/CN1183458C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

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

Abstract

本发明的一个方面是一种访问存储元件的方法和系统。系统包括存储处理基于处理器的系统的指令序列的存储器,该存储器至少有一个存储元件;与所述存储器相连的处理器,该处理器执行存储的指令序列;及与处理器相连的存储设备,其中所述存储设备对于该处理器和存储器是本地的;其中在引导操作系统之前,所存储的指令序列使处理器将至少一个存储元件的内容写入存储设备中,与引导后应用程序无关地执行所述写的动作。本发明的另一个方面涉及计算机系统。在引导用户计算机上的操作系统之前将至少一个存储元件的内容写如用户计算机上的存储设备中,在用户计算机和服务中心之间建立通信链接,并在用户计算机上显示用户计算机可用的信息。

Description

将应用程序从系统固件传递到 存储设备的方法和系统
技术领域
本发明通常涉及基于处理器的或基于微控制器的系统中的存储器,特别是涉及一种不需操作系统和/或目录服务即可将应用程序从系统硬件传送到存储设备的系统和方法。
背景技术
在诸如计算机之类的基于处理器的系统中,必须首先安装操作系统,随后才可以安装和执行其它应用软件。操作系统软件通常通过小型盘或磁盘安装。在特定情况下,必须通过设备驱动程序或其它软件成分扩展操作系统,从而将系统提高到母板厂商或系统厂商所需要的性能水平上。这会产生涉及这些设备驱动程序的传输等若干问题。
系统被分阶段制造。第一阶段收集不同的部件来构成系统母板。第二阶段将系统母板和电源、硬磁盘机以及其它内部构件组合形成计算机主体。第三阶段将计算机主体和各种各样的监视器、扬声器、键盘和鼠标等外围设备集成。
每个制造阶段可以有唯一的需求、技术上的进步或涉及不同的测试及故障处理。由于不同的制造阶段可以在不同的物理位置上和不同的公司内进行,因此加入目标操作系统中的设备驱动程序或专用软件会额外增加系统成本。对于每个系统来说,由于附加的驱动程序或专用软件必须通过软盘、光盘或其它介质传输,因此会产生额外成本。而且,类似软盘或光盘等额外物品也很易丢失或被盗。
此外,随着技术的发展,系统硬件会提供当前操作系统所不能使用的功能。目前,还没有可靠的方法使系统固件或BIOS能控制新的硬件或提供扩展的系统功能。例如,现在的系统可插入实时视频显示。尽管硬件实现了这个功能,但操作系统不能显示实时视频。正如前面所讨论的,系统厂商可能会向用户提供具有显示实时视频所需软件的磁盘或光盘(CD)。由此产生的问题是,在母板插入系统并卖给终端用户之前,可能会经过几个中间人,使磁盘或CD容易丢失或被破坏。
因此,在技术上需要一种克服上述问题的系统和方法。尤其是,在不需要即不用操作系统和/或目录服务的情况下,需要将应用程序从系统固件传递到存储设备的系统和方法。
发明内容
本发明的一个方面是提供一种访问基于处理器系统中的至少一个存储元件的系统,包括:用于存储处理基于处理器的系统的指令序列的存储器,该存储器至少有一个存储元件;与所述存储器相连的处理器,该处理器执行存储的指令序列;及与处理器相连的存储设备,其中所述存储设备对于该处理器和存储器是本地的;其中在引导操作系统之前,所存储的指令序列使处理器将至少一个存储元件的内容写入存储设备中,与引导后应用程序无关地执行所述写的动作。本发明的另一方面提供一种访问基于处理器的系统中的至少一个存储元件的方法,该基于处理器系统具有与至少一个存储元件相连的处理器及与处理器相连接的存储设备,所述的存储设备对于该处理器是本地的,包括:在基于处理器系统上引导操作系统之前,将至少一个存储元件的内容写入到存储设备中,其中与引导后应用程序无关地执行所述的写入。
本发明的另一方面提供在计算机系统中,具有与远程服务计算机通信的用户计算机,远程服务中心访问识别服务中心可用信息的数据库,一种将信息传送到用户计算机的计算机执行方法包括:(a)在引导用户计算机上的操作系统之前,将该用户计算机的至少一个存储元件的内容写入到该用户计算机的存储设备上,与引导后应用程序无关地执行所述写入;(b)在用户计算机和服务中心之间建立通信链接;及(c)在用户计算机上显示用户计算机可得到的信息。
本发明的一个方面是一种访问基于处理器的系统中的至少一个存储元件的方法和系统。该系统包括存储指令序列的存储器,通过这些指令序列处理基于处理器的系统。存储器至少有一个存储元件。处理器与存储器连接,存储设备与处理器连接。在引导基于处理器系统中的操作系统之前,已存储的指令序列使处理器将至少一个存储元件的内容写入存储设备中。
本发明的另一个方面涉及一种计算机系统,该计算机系统具有与远程服务计算机通信的用户计算机。该远程服务计算机访问识别服务计算机可用信息的数据库。一种将信息传送到用户计算机的计算机实现方法,包括:在引导用户计算机上的操作系统之前将至少一个存储元件的内容写入用户计算机上的存储设备中,在用户计算机和服务计算机之间建立通信链路,以及在用户计算机上出现用户计算机可用的信息。
附图说明
图1是信息分配系统的一个实施例的系统方框图,其中使用了本发明的设备和方法。
图2A示出了一种实现本发明实施例的示例性处理器系统或用户计算机系统。
图2B描述了通过用于0柱面上第一对磁头的典型的操作系统实现的扇区分配技术的实施例。
图3示出了图2A中计算机系统的一个实施例的图表,其中使用了本发明的设备和方法。
图4A和4B示出了根据本发明原理所提供的系统程序流程图的一个实施例。
图5A示出了本发明的文件或有效负载发送过程的一个实施例的流程图。
图5B示出了本发明的文件或有效负载发送过程200B的第二实施例的流程图。
图6A和6B示出了图5A中文件或有效负载应用安装过程220或图5B中的260的一个实施例的流程图。
图7A和7B示出了图6A和6B中文件或有效负载应用安装过程360的一个实施例的流程图。
图8是图7A和7B中传递文件或有效负载过程465或485的一个实施例的流程图。
具体实施方式
本发明涉及一种在不需要操作系统或目录服务的情况下提供应用程序的系统和方法。在一个实施例中,有效负载或文件最初存储在处理器系统的非易失性存储器中。在安装文件或有效负载前,有效负载传递程序将文件或有效负载传送到系统的起始或启动目录中。在操作系统被完全引导后,随后安装文件或有效负载。
本发明允许母板供应商在操作系统被升级或改变时通过提供自动安装的扩展功能来区分他们的产品。该扩展功能可以运行新的或“不同的”系统硬件,或者可以是一种基于软件的性能,诸如有商标的因特网浏览器。如果程序放置在特殊目录中,一些操作系统可配置成在操作系统引导期间自动运行程序。
本发明的另一个方面涉及一种提供信息介质(infomediary)的系统和方法。它包含安全的构建和维护、因特网用户的私人知识库以及系统轮廓,主要通过保证书服务注册、因特网服务注册,系统轮廓以及用户优先权来收集。最初,该信息被用来由所购硬件和软件产品的制造商、以及在线或其它服务的提供者对用户进行注册。随着时间的推移,利用用户数据轮廓或通知用户有关软件的更新和升级,从而鼓励在线购买相关产品以及使一对一交易和其它服务成为可能。
本发明的再一个方面涉及引导前屏幕消息。在系统的引导前过程中,软件或固件可被用来以可嵌入图形的消息形式提供定制屏幕。这些消息可采取广告的形式。在一个实施例中,在引导前过程中,预先存储在ROM中的图形可恢复从而在屏幕上显示出来。当已经与预定的WEB站点建立链接时,可以使用附加图形。这些附加图形包括任意的或基于从用户调查或用户系统中得到的信息所提供的更新或消息。在一个实施例中,一旦完成引导过程,部分显示屏幕可用于提供用来访问关于前一个显示消息或广告的详细信息的图标。在另一个实施例中,在关闭过程中可再次显示消息或广告,例如,用其他选择消息或广告来代替显示“窗口正在关闭”或“现在可安全关闭你的计算机”消息的屏幕显示。
定义
正如本文所讨论的,“计算机系统”是一个包括能处理数据的电路的产品。计算机系统可以包括但不限于以下产品:通用计算机系统(例如服务器、便携式电脑、台式电脑、掌上电脑、个人电子设备等)、个人计算机(PC)、硬拷贝设备(例如打印机、标绘器、传真机等)、银行设备(例如自动取款机)以及类似产品。信息介质是提供代表货物和服务的生产商信息的WEB站点,为供应者和其他商业所提供的产品和/或服务交易提供相应的信息。内容指应用程序、驱动程序、实用程序、文件、有效负载等以及其中一些的组合,也指图形、信息材料(文章、股票报价等)以及类似物,既可以是单一的也可以是任何一种组合。“有效负载”指图形或信息材料(诸如文章、库存引用等)消息,可能还包括文件或应用程序。在一个实施例中,以预定时间将其传送到系统的大容量存储介质中。另外,“通信链接”指通信的媒体或通道。通信链接可以包括、但不限于电话线、调制解调器连接、Internet连接、综合业务数字网(ISDN)连接、异步转移模式(ATM)连接、帧中断连接、以太网连接、同轴连接、光纤连接、卫星连接(例如数字卫星服务等)、无线连接、无线电频率(RF)链接、电动链接、双向传呼连接等,以及这些连接的组合。
另外,操作系统(“OS”)的安装指操作系统引导程序装入程序的初始布局。在一个实施例中,在OS安装过程中,信息部分从硬盘装入系统存储器中。相反,引导程序装入程序从网络装入系统存储器中。OS“引导”指引导程序装入程序的执行。它代替OS来控制系统。在OS引导过程中执行的部分动作包括:系统配置、设备保护、安装驱动程序以及用户登录。OS运行时间指引导阶段的完成以及OS执行应用程序的开始。在一个实施例中,在OS运行过程中,OS配合用户执行和/或运行应用程序。加电自检(“POST”)指在装入OS前执行配置和检测系统硬件的指令。
系统概述
下面描述的是对结合本发明实施例的示例性系统的说明。
图1示出了信息分配系统10的一个实施例的系统方框图,其中使用了本发明的设备和方法。系统10指提供信息介质。它包括安全的构建和维护、因特网用户的私人知识库以及系统轮廓,主要通过保证书服务注册、因特网服务注册,系统轮廓以及用户优先权来收集。最初,该信息被用来由所购硬件和软件产品的制造商、以及在线或其它服务的提供者对用户进行注册。随着时间的推移,利用用户数据建立用户轮廓或通知用户有关软件的更新和升级,从而鼓励在线购买相关产品以及使一对一交易和其它服务成为可能。
在一个实施例中,使用两个软件模块实现本发明的不同实施例。一个常驻用户系统,用来访问预定WEB站点。例如,在一个实施例中,操作系统及基本输入输出系统(BIOS)预装在计算机系统内,当计算机系统随后被首次加电时,为便于讨论,将应用程序称为第一软件模块(在一个实施例中,第一软件模块为初始启动应用程序(ISUA),这将在以下加以讨论),该应用程序允许在预引导环境下启动一个或多个可执行程序。在一个实施例中,第一软件模块便于在OS装入、引导、执行和/或运行之前启动一个或多个可执行程序。在一个实施例中,鼓励用户选择使用这样的程序(例如使用第一软件模块),在另一个实施例中,自动启动该程序。包含在第一软件模块中的程序可作为在适当时间运行的工具和效用,通过正确的用户授权,也允许用户通过连接到PC上的Internet下载包括驱动程序、应用程序以及附加文件或有效负载的第二软件模块。如果OS不能成功启动,这些程序也可用来提供系统的遥控管理。
一旦第二软件模块被发送,它就变成存储驻留,并不能传送第一软件模块的拷贝。在第二软件模块不能运行并变得不可靠或被删除前,一旦最初的第一软件模块如上所述被再次传送,仍驻留在系统非易失性存储器中的第一软件模块的原始拷贝保持空闲。第二软件模块可包括将用户连接到Internet上的特殊服务器的应用程序,以及指导用户至预定WEB站点查找授权以下载更多的预约材料。第二软件模块也可以包括与第一软件模块内容相同或类似的内容。
在一个实施例中,系统也可以包括存储在只读存储器BIOS(ROM BIOS)中的初始有效负载。在一个实施例中,初始有效负载是第一软件模块(例如ISUA)的一部分。在另一个实施例中,初始有效负载作为模块存储在ROM BIOS中,且与第一软件模块分开。在一个实施例中,在加电自检(POST)之后但在引导、装入和/或执行OS之前,从ROM BIOS启动初始有效负载并在屏幕上显示出来。这可以发生在预定时间内,例如当建立、装配和检测系统时,或当最终用户首次激活系统时。在另一个实施例中,该初始有效负载在预定时间内被复制至预定位置(例如系统的硬盘上),例如当建立、装配和检测系统时,或当最终用户首次激活系统时。一旦被复制,在POST后但OS运行前执行有效负载,并在屏幕上显示图形、广告、动画、联合照相专家组(JPEG)/活动图像专家组(MPEG)格式的材料。当发送附加程序和/或有效负载时(通过Internet或其它的外部连接),在OS引导前以及引导期间可用显示屏幕以消息或图形的形式来提供可定制屏幕。此外,可利用在第一软件模块中发送的可执行程序以及从Web站点下载的后续程序(例如第二软件模块)来测量PC以确定安装的不同类型的设备、驱动程序及应用程序。在一个实施例中,本文结合题为“用于计算机上自动安装及配置软件的方法及设备”的未决的美国专利进行描述,利用第一软件模块识别及为用户自动产生快捷方式和/或书签。从Web站点下载的程序可包括收集和维护基于用户选择的用户轮廓的软件。这些信息可提供给信息介质,随后将部分信息和/或基于该信息的已编译数据给供应者和其它商业以获得供应者和其它商业所提供的信息升级或修订。
参考图1,信息分配系统10包括将一个或多个通信链接301-30N连接到一个或多个用户计算机系统401-40N(“40”)的服务中心20。该服务中心20包括一个或多个服务器22、一个或多个数据库24以及一个或多个计算机261-26M。多个用户计算机系统401-40N能同时访问一个或多个计算机261-26M。如果使用多个计算机,则可通过局域网(LAN)或其它类似的连接技术连接计算机261-26M。然而,服务中心20也可能有其他配置。例如,具有许多运行在较大型计算机上的内部程序或过程的更少量的大型计算机(即少数大型机、小型计算机等计算机)能够与用户计算机建立通信链接。
服务中心20也可以连接到远程网络50(例如Internet)或远程站点(例如图1中未示出的卫星)。远程网络50或远程站点允许服务中心20提供更多种类的可存储在服务中心20上的计算机软件、内容等。可使用连接到服务中心计算机(例如计算机26)上的一个或多个数据库24将由计算机软件组成的数据库入口存储在计算机26上。在一个实施例中,每个用户计算机系统401-40N具有使其他计算机无法访问的自身的安全数据库(未示出)。通信链接301-30N允许一个或多个用户计算机系统401-40N同时与计算机261-26M相连接。该连接由服务器22控制。
在用户计算机系统40与信息服务计算机26建立双向通信后,以下文所述的方式将内容发送到用户计算机系统40中。下载的内容包括测量用户和/或用户计算机系统的硬件和/或软件以发展用户轮廓及用户系统改轮廓的应用程序。随后将从用户和/或用户计算机系统中收集的信息提供给服务中心20,服务中心20将附加内容提供给基于用户及系统轮廓的用户计算机40。在一个实施例中,以安全模式传送用户和系统轮廓,题为“用于将轮廓数据传送到使用基于ROM安全密钥的服务器的方法和设备”、申请日为1999年6月18日、转让给Phoenix技术有限公司的未决的美国专利申请所描述的,本文通过参考结合该专利内容。从连接到服务计算机26上的数据库的数据库入口包含关于计算机软件、硬件以及用户可用的第三方服务及产品的信息。基于用户和/或系统轮廓,该内容进一步被发送至用户计算机上显示。该内容也可以包括诸如对现有计算机软件、现有计算机软件的新版本、商标新的计算机软件、新的帮助文件等修订和纠错的信息摘要。该内容还可包括有关用户感兴趣的硬件及第三方产器和服务的信息。然后用户能够从可得到的产品和服务的摘要中进行一个或多个选择,并请求将产品从服务计算机26上传送到用户计算机上。用户也可以选择从可得到的产品和服务的摘要中购买所需的产品或服务。
图2A示出了实现本发明实施例的示例性计算机系统100。尽管其它的实施例可能易于使用,但该计算机系统100示出了用户计算机系统401-40N和/或计算机261-26M的一个实施例(图1)。
参考图2A,计算机系统100包括处理器或中央处理器(CPU)104。示出的CPU104包括用于执行计算算术逻辑部件(ALU)、收集用于暂时存储数据和指令的寄存器以及控制系统100运行的控制器。在一个实施例中,CPU104包括由IntelTM公司销售的任何一种X86、PentiumTM、PentiumIITM以及Pentium ProTM微处理器,由AMDTM公司销售的K-6微处理器或CyrixTM公司销售的6X86MX微处理器。其他还包括由数字设备公司TM销售的AlphaTM处理器、MotorolaTM销售的680X0处理器或IBMTM销售的Power PCTM处理器。此外,还包括任何一种其它的处理器,包括那些来自于Microsystems、MIPS、IBM、Motorola、NEC、Cyrix、AMD、Nexgen及其它公司的可执行CPU104的处理器。CPU104不限于微处理器,还可以是诸如微控制器、数字信号处理器、精简指令集计算机(RISC)、应用专用集成电路及类似的形式。尽管示出的只有一个CPU104,但另一方面计算机系统100可以有多个处理装置。
CPU104通过CPU总线108与总线控制器112相连。总线控制器112包括集成在其中的存储控制器116,而存储控制器116在总线控制器112的外部。存储控制器116设有CPU104或其它设备通过存储器总线120访问系统存储器124的接口。在一个实施例中,系统存储器124包括同步动态随机存取存储器(SDRAM)。系统存储器124可随意包括任何附加或司选择的高速存储设备或存储电路。总线控制器112与系统总线128相连,该系统总线可以是外围部件互连(PCI)总线、工业标准结构(ISA)总线等。与系统总线128相连的是图形控制器、图形引擎或视频控制器132、大容量存储器152、通信接口设备156、一个或多个输入/输出(I/O)设备1681-168N以及扩展总线控制器172。视频控制器132与视频存储器136(例如8兆字节)和视频BIOS140相连,所有这些都可以集成到一块卡或设备上,如数字144所示。视频存储器136用于包含在显示屏幕148上显示信息的显示数据,视频BIOS140包括控制视频控制器132的编码和视频服务。在另一个实施例中,视频控制器132通过加速图形端口(AGP)总线连接到CPU104上。
大容量存储器152包括(但不限于)硬盘、软盘、CD-ROM、DVD-ROM、磁带、高密度软盘、大容量可移动介质、低容量可移动介质、固态存储设备等,及其组合。大容量存储器152可以包括任何其他大容量存储介质。通信接口设备156包括网卡、调制解调器接口等,以通过通信链路160访问网络164。I/O设备1681-168N包括键盘、鼠标、声频/语音卡、打印机和类似设备。I/O设备1681-168N可以是盘驱动器,例如光盘驱动器、数字磁盘驱动器、磁带驱动器、zip驱动器、jazz驱动器、大容量可移动介质驱动器、低容量介质设备,和/或它们的任意组合。扩展总线控制器172与非易失性存储器175连接,非易失性存储器175包括系统固件176。系统固件176包括系统BIOS82,用于控制在其他物品中计算机系统100中的硬件设备。系统固件176还包括ROM180和快速(或EEPROM)184。扩展总线控制器172还与具有RAM、ROM和/或快速存储器(未示出)的扩展存储器188a连接。此外系统100可以包括与总线控制器112连接的存储器模块190。在一个实施例中,存储器模块190包括ROM192和快速(或EEPROM)194。
正如本领域技术人员所熟悉的,计算机系统100还包括操作系统(OS)和至少一个应用程序,在一个实施例中,在POST之后从大容量存储器152将所述操作系统和应用程序装入系统存储器124中并启动它们。OS可以包括任何类型的OS,包括但不限制于或局限于DOS、WindowTM(例如Window95TM,Window98TM,WindowNTTM),Unix、Linux、OS/2、OS/9、Xenix等。操作系统是一组控制计算机系统操作和资源分配的一个或多个程序。应用程序是一组执行用户所期望的任务的一个或多个软件程序。
根据计算机编程领域技术人员的实践,下面参考用符号表示的操作来描述本发明,除非特别指出,否则这些操作都是由计算机系统100执行的。这种操作有时称为计算机执行的操作。应当理解,用符号表示的这些操作包括通过CPU104操作表示数据位的电信号的和将数据位保持在系统存储器124中的存储单元中,其他信号的处理也一样。保持数据位的存储单元是物理单元,这些物理单元具有与数据位相对应的特殊的电、磁、光或有机特性。
当以软件实现时,本发明的部件实质上是执行所需任务的代码段。程序或代码段可以存储在处理器可读介质中或通过传输媒介或通信链路由包含在载波中的计算机数据信号传输。“处理器可读介质”可以包括能存储或传送信息的任何介质。处理器可读介质的例子包括电子电路、半导体存储器设备、ROM、快速存储器、可擦除ROM(EROM)、软盘、CD-ROM、光盘、硬盘、光纤介质、射频(RF)链路等。计算机数据信号可以包括能通过传输媒介传播的任何信号,传输媒介例如电子网络信道、光纤、空气、电磁、RF链路等。代码段可以通过计算机网络例如Internet、内联网等下载。
计算机操作系统通常在硬盘上指定特殊的数据结构。为了便于以有序的方式存储和检索数据,通常以称为扇区的块的形式组织计算机硬盘。这些扇区通过一组称为柱面(或轨道)的唯一标识符、磁头(或面)和扇区号位于盘上。在个人计算机中,柱面的编号通常是0到给定盘所允许的最大值;磁头的编号通常是0到给定柱面的最大编号,扇区的编号是1到给定柱面和磁头的最大扇区号。或者,简单地,这些标识符可以是处于0-NN之间的扇区号,其中NN是最大扇区号。
图2B示出了典型操作系统对柱面号0上的第一对磁头所实现的扇区分配技术的一个实施例。BIOS支持包括这样一种惯例的硬盘:从第一硬盘将柱面0、磁头0、扇区1开始读以引导操作系统。该扇区(0/0/1)称为主引导记录或分区扇区,包括有关硬盘如何分区的信息并提供足够的可执行代码以定位标有可引导标记的分区。分区扇区包括与个人分区有关的信息并利用分区表中的分区记录存储起来。在引导过程中,分区的第一扇区被拷贝到存储器中然后执行。
图3示出了计算机系统100的逻辑图。参考图2A和3,系统固件176包括软件模块和在POST期间装入系统存储器124中且随后被处理器104执行的数据。在一个实施例中,系统固件176包括具有系统BIOS处理程序、硬件程序等的系统BIOS模块82、ROM应用程序接口(RAPI)模块84、初始启动应用(ISUA)模块86、初始与装载88a、密钥90、密码引擎92和显示引擎94。RAPI84在ROM应用程序和系统BIOS82之间提供安全接口。前面提到的系统固件176的模块和部分可以包含在ROM180和/或快速184中。或者,前面提到的系统固件176的模块和部分包含在ROM190和/或快速194中。RAPI84、ISUA86和初始有效负载88a可以分别开发并在开始使用计算机系统100之前存储在系统固件176中。在一个实施例中,RAPI84、ISUA86和初始有效负载88a每个都包括Phoenix技术有限公司开发的专用软件。RAPI84的一个实施例描述在:题为“用于安全利用基本输入输出系统(BIOS)服务的系统和方法”、申请日为1999年6月18日、转让给Phoenix技术有限公司的未决的美国专利申请中,本文通过参考结合该专利申请内容。ISUA86的一个实施例描述在:题为“在计算机上自动安装和配置软件的方法和设备”、申请日为1999年6月18日、转让给Phoenix技术有限公司的未决的美国专利申请所描述的,本文通过参考结合该专利申请内容。
在图3、图4A和4B所示的一个实施例中,一个新的计算机系统100首次加电后,系统开始进行 POST程序。在首次 POST期间,ISUA86被传送到大容量存储器152中,如A1所示。在一个实施例中,这种传送在制造和/或组装过程中、当计算机系统100在已经安装操作系统之后(但在引导、装入和运行操作系统之前)首次加电时进行。在另一个实施例中,这种传送可以在制造和/或组装过程之后、在用户接收和为系统100加电之后进行。在另一个实施例中,在ISUA86传送期间,附加程序、应用程序、驱动程序、数据、图形和其他信号也可以传送(例如,从ROM)到大容量存储器152。例如,传送可以包括将初始有效负载88a传送到大容量存储器152,随后,从大容量存储器152发送初始有效负载88a。或者,可以从ROM发送初始有效负载。图5-8结合文字(见“发送过程”)描述了传送过程的一个实施例。方便这种传送的系统和过程的另一个实施例见:申请序列号为09/272,859、题为“提供基于存储器的设备仿真的方法和设备”、申请日为1999年3月19日的未决的美国专利申请,题为“提供基于存储器的设备仿真的方法和设备”、申请日为1999年6月18日的未决的美国专利序列申请,题为“在大容量存储器上插入一个或多个文件的系统和方法”、申请日为1999年6月18日的未决的美国专利申请,每个申请都转让给本发明的受让人Phoenix技术有限公司,本文在此通过参考结合每个专利申请的内容。在另一个实施例中,如果在ISUA86的传送之后发现ISUA85不起作用或有缺陷,自动解安装。这种解安装技术的描述见:题为“在不起作用时自动解安装应用程序模块的方法和设备”、申请日为1999年6月18日、转让给Phoenix技术有限公司的未决的美国专利申请,本文通过参考结合该专利申请内容。
在一个实施例中,ISUA86是一个计算机软件可执行程序,它确定是否有驻留在终端用户系统上的预安装程序。如果有,则识别那些预安装的程序并建立快捷方式(如果是Windows操作系统则建立在桌面上)或者书签,以便允许用户自动启动程序。在该实施例中,可执行程序还能启动并预服务器22和/或任何一个服务计算机26(图1)上的一个或多个应用程序建立双向通信,以下将描述。而且,在一个实施例中,初始有效负载88a的图形内容在POST期间通过显示引擎94显示在用户显示屏148上。或者,初始有效负载88a的图形内容在随后的引导过程之后显示出来。例如,作为下述用户轮廓部分,可以询问用户他或她是否愿意获得与一个或多个产品和/或服务有关的信息。如果用户希望得到,与希望产品和/或服务有关的内容就会在随后的引导过程中显示出来。在一个实施例中,这种显示过程描述在:题为“在操作系统引导之外扩展屏幕显示的BIOS控制的方法和设备”、转让给本发明的受让人Phoenix技术有限公司的未决的美国专利申请,本文通过参考结合该专利申请内容。
一旦POST完成,装载、执行、初始化OS。然后安装标准OS驱动程序和服务程序。然后提示用户进入注册信息,该注册信息包括诸如年龄、性别、习惯等人口调查信息。另外,执行ISUA86并在后台运行,保持空闲直至其保护建立在图2A的网络164(例如在因特网上)上的计算机系统100和远程服务器(例如图1中的服务器22)之间的通信连接。需要注意的是,尽管ISUA86显示为存储在系统固件176内,但也可以位于系统存储器124、存储器模块190、大容量存储器152、任意I/O设备168或设在通信接口156中。
在一个实施例中,ISUA86可以通过操作系统进行搜索以确定是否有应用程序被预装载及预安装在系统上。如果有的话,一旦建立通信连接,ISUA86可自动为应用程序安装到预定服务器中提供快捷方式和/或书签。该通信连接可通过插槽,或任何其它已知的现有的双向通信技术建立网络协议堆栈(例如TCP/IP)。一旦建立通信连接30,ISUA86向服务器22(如A2所示)发出请求信号以从内容模块60下载初始内容包62。服务器响应该请求下载初始内容包62(如A3所示),在一个实施例中,该初始内容包62存储在大容量存储设备152中。在一个实施例中,初始内容包62和后续内容包64存储在服务器22之前,初始内容包62和后续内容包64可分别发展,每一个都被加密和/或使用密码键的数字符号。当初始内容包62和/或后续内容包64随后下载到系统100中时,密码引擎92将使用密钥90解密初始内容包62和后续内容包64。
如前面所述,初始内容包62可包括应用程序62a、驱动程序62b和有效负载62c。在一个实施例中,应用程序62a包括数据加载应用程序和轮廓管理应用程序。数据加载应用程序功能具有与ISUA86相同或相似的方式,一旦下载,使ISUA86失效并代替ISUA86。更准确地说,数据加载应用程序是能初始化、建立和终止服务器22和计算机系统100之间双向通信的计算机软件程序。该数据加载应用程序在服务器22和计算机系统100之间也具有通信控制管理,也具有在最终用户系统和特定服务器之间易于通信的其它功能,以及下载到最终用户系统中的内容。
轮廓管理器获取计算机系统100的用户和系统轮廓,该用户和系统轮廓基于安装在计算机系统100上的用户选择、系统硬件和软件。一旦获得计算机系统100的用户和系统轮廓,轮廓管理器应用程序将结果转送到数据加载应用程序,随后将信息提供给服务器22,使用户指定的选项与数据库24(图1)相匹配。该结构可在预定时间间隔或在用户请求下被转送。然后服务器22将用户轮廓或人口调查数据和目标内容处理给具有相似轮廓的用户。另外,在服务器22上编译和聚合多个用户的用户轮廓数据以产生集合用户轮廓模式。然后内容被发送给基于用户轮廓数据和/或集合用户轮廓模式(如A4所示)的用户计算机系统。后续内容64被下载并存储在由数字88b指定的系统固件176中。在一个实施例中,后续内容64存储在诸如快速或电可擦除只读存储器的非易失性存储器中,正如现有技术中已知的,通过对ROM再扩容完成后续内容的装载。后续内容64也可能以一个或多个文件存储在大容量存储设备152中,或也可用来改变WindowsTM系统文件(在WindowsTM环境中)。只要计算机系统100激活就继续轮廓收集进程。在一个实施例中,在服务器22中接收并分析用户轮廓后,可以下载内容。
随后计算机系统100加电(见图4B),该系统再次执行POST。在装载和/或执行操作系统前或OS正在装载时,显示先前下载并存储在系统固件176中的并且要接受的版权条款的内容。在一个实施例中,这种显示过程描述在:题为“在操作系统引导之外扩展屏幕显示的BIOS控制的方法和设备”、转让给本发明的受让人Phoenix技术有限公司的1999年6月18日申请未决的美国专利申请,本文通过参考结合该专利申请内容。这种过程可用于在装载操作系统之外扩展显示内容。在WindowsTM环境中,在初始装载操作系统期间显示的WindowsTM标志随后可被一个或多个屏幕显示代替,这些屏幕显示存储在系统固件176中的先前下载内容。
在将内容作为一个或多个文件存储在大容量存储设备152的情况下,与再扩容ROM相反,可改变或代替在引导和关闭期间显示的WindowsTM标志文件。一个利用这种方法的实施例包括用一个或多个显示内容(例如图形文件)的文件来代替相应的WindowsTM系统文件,题为“在引导和关闭期间显示图像”、转让给本发明的受让人Phoenix技术有限公司的1999年6月18日申请未决的美国专利申请,本文通过参考结合该专利申请内容。引导Windows显示文件名称为LOGO.SYS,通常位于Windows目录内。首先WindowsTM LOGO.SYS文件从Windows目录传送到其它目录。然后,内容图形被重命名为LOGO.SYS并传送到Windows目录。当首次装入操作系统时,操作系统恢复该文件,因此在显示屏幕上显示内容。尽管WindowsTM后来会因显示的目的将分辩率调整为640×480,但WindowsTM仍希望LOGO.SYS文件是具有320×400分辩率及256色的位图。因此,内容图形文件将具有相同的图形格式(通常在被改名为LOGO.SYS前具有扩展名“.BMP”的名称)。
然后装载、执行和初始化操作系统,也装载标准操作系统驱动程序和应用程序,然后执行轮廓管理程序。当已经与预定Web站点建立连接后,附加内容可被下载并在随后显示出来。这种附加内容即可以是任意提供的,也可以是基于从用户或用户系统调查中得到的信息提供的。在一个实施例中,一旦完成引导过程,部分显示屏幕可用于提供图标或快捷方式,可利用该图标或快捷方式访问关于先前显示消息或广告的详细信息。在另一个实施例中,在关闭过程中可再次显示消息或广告,例如,用其它选择的内容代替显示“窗口正在关闭”或“现在可安全关闭你的计算机”消息的屏幕显示。
发送过程
图5A示出了本发明的文件或有效负载交付过程200A的一个实施例的流程图。在一个实施例中,文件或有效负载包含至少一个应用程序。在另一个实施例中,文件包含数据和/或图形。该文件也可以包含有效负载。文件或有效负载交付过程200A为应用程序(可以存储在系统存储器124、存储器176(见图2A)、扩展存储器188a、存储器模块190,或通过任意外围模块1681-168N提供),该应用程序将有效负载从非易失性存储器传送到预定设备。在一个实施例中,预定设备为大容量存储设备152,诸如硬盘。在另一个实施例中,该设备可为任意存储设备,包括但不局限于CD ROM、zip盘、软盘或快速存储器。
过程200A起始于加电启动状态,并开始进行判定块210,在210中询问上次引导过程是否失败。如果失败,则过程200A进行到过程块220中,在220中安装文件、应用程序或有效负载。然后过程200A开始进行过程块230,在230中执行正常的引导过程。如果在判定块210中,过程确定上次引导过程没有失败,则执行判定块240,在240中询问上次引导安装过程是否成功。一个不成功的引导安装过程的例子包括用户放弃引导过程。如果上次引导安装过程不成功,则过程开始进行过程块220,在220中安装文件或有效负载。否则完成过程200A。
图5B示出了本发明的文件或有效负载交付过程200A的第二个实施例的流程图。过程200B起始于加电启动状态,并开始进行判定块250,在250中询问上次引导过程是否失败。如果失败,则过程200B进行到过程块260中,在260中安装应用程序或有效负载。然后过程200B开始进行到过程块270中,在270中执行正常的引导过程。如果在判定块250中,过程200B确定上次引导过程没有失败,则执行判定块280,在280中询问上次引导安装过程是否成功。如果成功,则完成过程200B。如果不成功,则过程开开始进行判定块290中,在290中确定文件或有效负载是否失效。如果不成功,则过程200B开始进行过程块260,在260中安装文件或有效负载。否则完成过程200B。
图6A和6B示出了图5A和5B中的文件或有效负载应用安装过程220或260的一个实施例的流程图。为便于讨论,称这个过程为过程220,过程220开始于启动状态,并继续执行到过程块300,在300中查找安装在系统上的第一个设备。在一个实施例中,第一设备为诸如硬盘之类的大容量存储设备。接着过程220读磁盘的第一扇区(过程块305)。在一个实施例中,第一扇区为设备的引导扇区。然后过程220确定在读取第一扇区中是否有错误(判定块310)。如果有,过程220开始进行过程块315,在315中查找安装在系统上的下一个设备。如果判定块310中读取第一扇区没有错误,则过程220开始对支持文件系统的存在进行检查(过程块320)。如判定块325所示,如果分区表存在于设备中,则过程220通过第一决定来执行。如果没有,开始进行过程块315,在315中查找下一个设备。否则,开始进行判定块330,在330中检查分区表以确定分区是否是活动的。如果不是,则开始进行过程块315。否则,开始进行判定块335。
在判定块335上,过程220询问设备上的文件系统是否是支持或已知系统。如果不是,则过程220开始进行过程块340,在340上发出诸如“不支持文件系统”错误消息并退出。如果文件系统支持或已知,则过程220开始进行过程块345,在345中读取文件系统的目录结构并分析子目录。然后过程220通过读取一组特定文件并分析文件内容来确定操作系统。然后过程220询问是否存在初始或启动目录。启动目录是在启动时定位信息文件的默认目录。若是,则过程220开始进行判定块355,在355中询问是否有启动目录。若有,则过程220安装该文件或有效负载(过程块360)然后终止。否则,过程220发出如过程块365所示的指示不存在启动目录的消息或信号并退出。
图7A和7B示出了图6A和6B中的文件或有效负载安装过程360的一个实施例的流程图。从启动状态开始,过程360开始进行过程块400,在400中定位文件系统的根目录。然后过程360询问二级目录(例如Windows目录)是否有效(过程块415)。若有效,则过程360开始进行过程块420,在420中前进到二级目录。然后过程360询问三级目录(诸如轮廓目录)是否有效(过程块425)。若有效,则过程360开始进行过程块430。否则,发出错误消息(过程块435)并退出。若在判定块415上,过程360确定二级目录无效,则开始进行过程块440,在440上查找所有为三级目录的子目录。然后过程360进行到判定块445,在445上询问是否发现三级目录。若没发现,则开始进行过程块435。否则,开始进行过程块430,在430上前进到三级目录。
然后过程360定位启动目录,如过程块450所示。随后确定是否发现启动目录,如判定块455所示。若没发现,则发出错误消息(过程块460)并退出。否则,将文件或有效负载转送至启动目录(过程块465)。随后过程360定位下一个启动目录(过程块470)。询问是否发现启动目录(判定块475)。若发现,则完成并终止过程360。否则,开始进行过程块485,在485上将文件或有效负载传送至下一个启动目录并返回到过程块470以定位下一个启动目录。
图8是图7中传送文件或有效负载过程465或485的一个实施例的流程图。为便于讨论,过程465和485被称为过程465。从启动状态开始,过程465开始进行过程块500,在500上试图定位自由(空闲)目录项。过程465接着询问是否发现自由目录项(判定块505)。若发现,则将文件或有效负载的名称写入发现的目录内(过程块510)。否则,分配新的目录页(过程块515)并前进到判定块520,在520中确定分配是否成功。若成功,则开始进行过程块510。否则,开始进行过程块525,在525上发出失败消息并退出。
过程465从过程块510前进到过程块530,在530上定位用于文件或有效负载传送的自由(空闲)空间。随后询问该空间是否有效,如判定块535所示。若有效,则过程465开始进行过程块525。否则,开始进行过程块540,在540上将文件或有效负载传送到在设备上发现的空间内。然后过程465调节目录项以指向文件或有效负载并终止。
由此本发明提供用于在不需要或不使用操作系统或目录服务的情况下将应用程序从系统固件发送到存储设备、大容量可移动介质设备、小容量可移动介质设备以及大、小容量可移动介质设备组合(诸如Panasonic LS 120/超级磁盘驱动器)的系统和方法,这些存储设备包括诸如光盘(CD)驱动器、数字化磁盘驱动(DVD)驱动器、磁带驱动器、软盘驱动器、硬盘驱动器、磁头驱动器、文件扫描仪、固态存储驱动器、zip驱动器、jazz驱动器、高密度软盘(诸如Sony HiFD驱动器)。
虽然已经描述了本发明的优选实施例,但是,应当知道,本领域的技术人员可以在不背离本发明的精神的条件下进行变化和变型。

Claims (17)

1.一种访问基于处理器系统中的至少一个存储元件的系统,包括:
用于存储处理基于处理器的系统的指令序列的存储器,该存储器至少有一个存储元件;
与所述存储器相连的处理器,该处理器执行存储的指令序列;及
与处理器相连的存储设备,其中所述存储设备对于该处理器和存储器是本地的;
其中在引导操作系统之前,所存储的指令序列使处理器将至少一个存储元件的内容写入存储设备中,与引导后应用程序无关地执行所述写的动作。
2.根据权利要求1所述的系统,其中将至少一个存储元件的内容写入到存储设备中的动作发生在装入操作系统之前。
3.根据权利要求1所述的系统,其中指令序列还使处理器初始化引导序列。
4.根据权利要求1所述的系统,其中至少一个存储元件为非易失性存储器。
5.根据权利要求2所述的系统,其中存储设备从以下选择:光盘驱动器、数字化视频光盘驱动器、固态存储设备、数字化磁盘驱动、硬盘驱动器、磁光盘驱动器、磁带驱动器、zip驱动器、jazz驱动器、高密度软盘驱动器、大容量可移动介质设备、小容量可移动介质设备以及大、小容量可移动介质设备组合。
6.根据权利要求1所述的系统,其中存储设备包括文件系统;其中在将至少一个存储元件的内容写入到存储设备中的动作中,至少一个存储元件为文件;其中写入动作包括将所述文件传送至所述存储设备内的所述文件系统。
7.根据权利要求1所述的系统,其中将至少一个存储元件的内容写入到存储设备包括:
(a)定位存储在所述存储器中的启动目录;
(b)将与至少一个存储元件相对应的名字写入所述启动目录;及
(c)将所述至少一个存储元件的内容传送至所述存储设备;
(d)设定目录入口以指向所述被传送内容。
8.一种访问基于处理器的系统中的至少一个存储元件的方法,该基于处理器系统具有与至少一个存储元件相连的处理器及与处理器相连接的存储设备,所述的存储设备对于该处理器是本地的,包括:
在基于处理器系统上引导操作系统之前,将至少一个存储元件的内容写入到存储设备中,其中与引导后应用程序无关地执行所述的写入。
9.根据权利要求8所述的方法,其中将至少一个存储元件的内容写入到存储设备中的动作发生在装入操作系统之前。
10.根据权利要求8所述的方法,还包括初始化引导序列。
11.根据权利要求8所述的方法,其中在写入动作中,至少一个存储元件为非易失性存储器。
12.根据权利要求8所述的方法,其中存储设备从以下选择:光盘驱动器、数字化磁盘驱动器、数字化视频光盘驱动器、固态存储设备、硬盘驱动器、磁光盘驱动器、磁带驱动器、zip驱动器、jazz驱动器、高密度软盘驱动器、大容量可移动介质设备、小容量可移动介质设备以及大、小容量可移动介质设备组合。
13.根据权利要求8所述的方法,其中存储设备包括文件系统;其中在将至少一个存储元件的内容写入到存储设备中的动作中,至少一个存储元件为文件;其中写入动作包括将所述文件传送至所述存储设备内的所述文件系统中。
14.根据权利要求8所述的方法,其中将至少一个存储元件的内容写入到存储设备包括:
(a)定位存储在所述存储器中的启动目录;
(b)将与至少一个存储元件相对应的名字写入所述启动目录;
(c)将所述至少一个存储元件的内容传送至所述存储设备;和
(d)将目录指示符设定为所述被传送内容。
15.一种将信息传送到用户计算机的计算机执行方法,所述方法用在具有与远程服务计算机通信的用户计算机的计算机系统中,远程服务中心访问识别服务中心可用信息的数据库,包括:
(a)在引导用户计算机上的操作系统之前,将该用户计算机的至少一个存储元件的内容写入到该用户计算机的存储设备上,与引导后应用程序无关地执行所述写入;
(b)在用户计算机和服务中心之间建立通信链接;及
(c)在用户计算机上显示用户计算机可得到的信息。
16.根据权利要求15所述的方法,其中在(a)中,至少一个存储元件的内容包括应用程序,其中方法还包括:
在(b)之后,通过应用程序将从服务计算机到用户计算机的软件传送初始化;
通过用户计算机接收所述软件,其中该软件包括至少一个收集有关用户计算机系统信息的程序。
17.根据权利要求16所述的方法,还包括:
将系统信息提供给服务计算机;
通过服务计算机,显示基于系统信息的信息。
CNB001222198A 1999-06-18 2000-06-18 将应用程序从系统固件传递到存储设备的方法和系统 Expired - Fee Related CN1183458C (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US09/336,067 US6519659B1 (en) 1999-06-18 1999-06-18 Method and system for transferring an application program from system firmware to a storage device
US09/336,067 1999-06-18
US09/336067 1999-06-18

Publications (2)

Publication Number Publication Date
CN1282923A CN1282923A (zh) 2001-02-07
CN1183458C true CN1183458C (zh) 2005-01-05

Family

ID=23314430

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB001222198A Expired - Fee Related CN1183458C (zh) 1999-06-18 2000-06-18 将应用程序从系统固件传递到存储设备的方法和系统

Country Status (4)

Country Link
US (1) US6519659B1 (zh)
JP (1) JP5684962B2 (zh)
CN (1) CN1183458C (zh)
TW (1) TW515996B (zh)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6791572B1 (en) * 1999-06-18 2004-09-14 Phoenix Technologies Ltd. Generating media output during BIOS boot-up
US6486883B1 (en) * 1999-06-18 2002-11-26 Phoenix Technologies, Ltd. Apparatus and method for updating images stored in non-volatile memory
JP2001025053A (ja) * 1999-07-09 2001-01-26 Mitsubishi Electric Corp 携帯電話のメモリシステム
US6665778B1 (en) * 1999-09-23 2003-12-16 Gateway, Inc. System and method for storage of device performance data
CN1398371A (zh) * 2000-02-04 2003-02-19 印西德软件公司 在操作系统装载之前更改操作系统启动顺序的系统和方法
US6772330B2 (en) * 2001-01-26 2004-08-03 Dell Products L.P. System and method for storing component information and a program in a hidden partition, and loading the component information to a reserved portion of the memory using the program
US7107588B2 (en) * 2001-08-31 2006-09-12 Hewlett-Packard Development Company, L.P. System and method for installing window installer service without rebooting
US7007081B2 (en) * 2001-12-19 2006-02-28 Kabushiki Kaisha Toshiba Peripheral equipment of computer
US7941659B2 (en) * 2003-05-05 2011-05-10 Peter Ar-Fu Lam External memory enabling a user to select an application program to be launched before launching an operating system
US7822962B2 (en) * 2003-05-05 2010-10-26 Peter Ar-Fu Lam Application software configured to work with two operating systems
US8095783B2 (en) 2003-05-12 2012-01-10 Phoenix Technologies Ltd. Media boot loader
JP2005018744A (ja) * 2003-06-04 2005-01-20 Ricoh Co Ltd 描画装置、描画プログラム、記録媒体及び描画方法
US20050071656A1 (en) * 2003-09-25 2005-03-31 Klein Dean A. Secure processor-based system and method
US7853826B2 (en) * 2004-09-24 2010-12-14 Phoenix Technologies, Ltd. Operating system transfer and launch without performing post
US7412595B2 (en) * 2004-12-30 2008-08-12 Intel Corporation Customization of electronic devices via pre-boot space
US20070233932A1 (en) * 2005-09-30 2007-10-04 Collier Josh D Dynamic presence vector scaling in a coherency directory
US8533820B2 (en) * 2006-12-12 2013-09-10 International Business Machines Corporation Reserved write positions on install media
CN101937380A (zh) * 2009-06-30 2011-01-05 鸿富锦精密工业(深圳)有限公司 电脑测试系统及方法

Family Cites Families (55)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5146568A (en) 1988-09-06 1992-09-08 Digital Equipment Corporation Remote bootstrapping a node over communication link by initially requesting remote storage access program which emulates local disk to load other programs
US5121345A (en) 1988-11-03 1992-06-09 Lentz Stephen A System and method for protecting integrity of computer data and software
US5142680A (en) * 1989-04-26 1992-08-25 Sun Microsystems, Inc. Method for loading an operating system through a network
US5131089A (en) 1989-06-12 1992-07-14 Grid Systems Corporation Solid state disk drive emulation
JPH03168828A (ja) 1989-11-29 1991-07-22 Canon Inc 情報処理装置
US5307497A (en) 1990-06-25 1994-04-26 International Business Machines Corp. Disk operating system loadable from read only memory using installable file system interface
US5128995A (en) 1990-07-23 1992-07-07 International Business Machines Corp. Apparatus and method for loading a system reference diskette image from a system partition in a personal computer system
US5214695A (en) 1990-07-23 1993-05-25 International Business Machines Corporation Apparatus and method for loading a system reference diskette image from a system partition in a personal computer system
US5497492A (en) * 1990-09-04 1996-03-05 Microsoft Corporation System and method for loading an operating system through use of a fire system
EP0483865A3 (en) 1990-11-02 1992-09-02 Kabushiki Kaisha Toshiba Personal computer capable of changing boot priority
EP0489227B1 (en) 1990-12-06 1998-12-23 Tandberg Data Asa Data storage system having removable media and equipped to download a control program from the removable media
US5594903A (en) 1991-02-26 1997-01-14 Lynx Real-Time Systems, Inc. Operating System architecture with reserved memory space resident program code identified in file system name space
US5452454A (en) 1991-12-10 1995-09-19 Digital Equipment Corporation Generic remote boot for networked workstations by creating local bootable code image
US5471674A (en) 1992-02-07 1995-11-28 Dell Usa, L.P. Computer system with plug-in override of system ROM
EP0559222A2 (en) 1992-03-06 1993-09-08 Microsoft Corporation Improved method for loading programs
US5325532A (en) 1992-09-25 1994-06-28 Compaq Computer Corporation Automatic development of operating system boot image
US5469573A (en) 1993-02-26 1995-11-21 Sytron Corporation Disk operating system backup and recovery system
US5463766A (en) 1993-03-22 1995-10-31 Dell Usa, L.P. System and method for loading diagnostics routines from disk
US5522076A (en) 1993-05-13 1996-05-28 Kabushiki Kaisha Toshiba Computer system having BIOS (basic input/output system)-ROM (Read Only Memory) writing function
US5444850A (en) 1993-08-04 1995-08-22 Trend Micro Devices Incorporated Method and apparatus for controlling network and workstation access prior to workstation boot
US5418918A (en) 1993-09-10 1995-05-23 Compaq Computer Corp. Scanning initial CD-ROM sectors for a boot record and executing said boot record to load and execute floppy disk image corresponding to the existing floppy drive
US5379431A (en) 1993-12-21 1995-01-03 Taligent, Inc. Boot framework architecture for dynamic staged initial program load
FR2718262B1 (fr) 1994-03-31 1996-05-24 Sgs Thomson Microelectronics Mémoire tampon à adressage modulo.
US5504905A (en) 1994-05-17 1996-04-02 International Business Machines Corporation Apparatus for communicating a change in system configuration in an information handling network
US5604890A (en) 1994-08-16 1997-02-18 Miller; Paul B. Coupling device for the switching of data lines between a data storage device controller and a plurality of bootable data storage devices
US5864698A (en) 1994-08-24 1999-01-26 Packard Bell Nec Disk based bios
JPH0887460A (ja) 1994-09-19 1996-04-02 Seiko Epson Corp インストールシステム
US5586327A (en) 1994-09-27 1996-12-17 International Business Machines Corporation Extended initialization for personal data processing systems
US5802363A (en) 1994-09-27 1998-09-01 International Business Machines Corporation Bios dynamic emulation of multiple diskettes from a single media
US5694583A (en) 1994-09-27 1997-12-02 International Business Machines Corporation BIOS emulation parameter preservation across computer bootstrapping
US5652868A (en) 1994-09-27 1997-07-29 International Business Machines Corporation Data processor having BIOS decryption of emulated media images
US5652886A (en) 1994-10-03 1997-07-29 United Technologies Corporation System for loading a boot program into an initially blank programmable memory of a microprocessor using state machine and serial bus
US5581740A (en) 1994-10-04 1996-12-03 Dell Usa, L.P. System for reading CD ROM data from hard disks
US5715456A (en) 1995-02-13 1998-02-03 International Business Machines Corporation Method and apparatus for booting a computer system without pre-installing an operating system
US5781758A (en) 1995-03-23 1998-07-14 Apple Computer, Inc. Software emulation system with reduced memory requirements
US5701477A (en) 1995-03-30 1997-12-23 Cirrus Logic, Inc. Method and apparatus for master boot record shadowing
US5832251A (en) 1995-06-02 1998-11-03 Nec Corporation Emulation device
US5748957A (en) 1995-06-27 1998-05-05 Klein; Dean A. Computer system usage determination based on hard disk drive activity
JP3088269B2 (ja) 1995-07-26 2000-09-18 日本電気通信システム株式会社 コンピュータネットワークシステム及びそのオペレーティングシステムの版数管理方法
US5664194A (en) 1995-12-04 1997-09-02 Metricom, Inc. Method for autonomously transferring code to a computer without accessing local memory by the central processing unit
US5819063A (en) 1995-09-11 1998-10-06 International Business Machines Corporation Method and data processing system for emulating a program
US5754853A (en) 1995-12-15 1998-05-19 Dell Usa, Lp System for executing utility programs while preserving the state of a native operating system
US5790849A (en) 1995-12-22 1998-08-04 Intel Corporation Method and apparatus to permit the boot of a shared memory buffer architecture employing an arbitrary operating system
US5805880A (en) 1996-01-26 1998-09-08 Dell Usa, Lp Operating system independent method for avoiding operating system security for operations performed by essential utilities
US5796984A (en) 1996-01-26 1998-08-18 Dell Usa, L.P. Operating system independent apparatus and method for eliminating peripheral device functions
US5694600A (en) 1996-02-09 1997-12-02 Iomega Corporation Methods and apparatus for booting a computer having a removable media disk drive
US5732268A (en) 1996-02-26 1998-03-24 Award Software International Extended BIOS adapted to establish remote communication for diagnostics and repair
US5805882A (en) 1996-07-19 1998-09-08 Compaq Computer Corporation Computer system and method for replacing obsolete or corrupt boot code contained within reprogrammable memory with new boot code supplied from an external source through a data port
US5907679A (en) 1996-08-19 1999-05-25 Visiontek Hard drive upgrade system
US5854905A (en) 1996-09-03 1998-12-29 Intel Corporation Extensible bios for boot support of devices on multiple hierarchical buses
US5764593A (en) 1996-12-04 1998-06-09 Keylabs, Inc. Method and system for the interception and control of the computer boot process
US5887164A (en) 1997-06-06 1999-03-23 National Instruments Corporation System and method for enabling a target computer to use storage resources of a host computer
US5901310A (en) 1997-09-11 1999-05-04 Ati Technologies, Inc. Storing firmware in compressed form
US6081508A (en) * 1998-02-25 2000-06-27 Indus River Networks, Inc. Remote computer communication
FR2781582B1 (fr) * 1998-07-21 2001-01-12 Technical Maintenance Corp Systeme de telechargement d'objets ou de fichiers pour mise a jour de logiciels

Also Published As

Publication number Publication date
JP2001043071A (ja) 2001-02-16
US6519659B1 (en) 2003-02-11
CN1282923A (zh) 2001-02-07
JP5684962B2 (ja) 2015-03-18
TW515996B (en) 2003-01-01

Similar Documents

Publication Publication Date Title
CN1183458C (zh) 将应用程序从系统固件传递到存储设备的方法和系统
CN1211734C (zh) 计算机上自动安装和配置软件的方法和设备
CN100385386C (zh) 在引导和关机期间显示图象的方法
CN1157654C (zh) 在应用程序模块不工作时自动卸载的方法和装置
US6148387A (en) System and method for securely utilizing basic input and output system (BIOS) services
CN1258702C (zh) 为不同的指令集结构所编写的固件之间进行通信的方法
US5931909A (en) System for multiple-client software installation and upgrade
CN1113291C (zh) 自动配置生成
US6438750B1 (en) Determining loading time of an operating system
US8233893B2 (en) Mobile handset update package generator that employs nodes technique
US6449682B1 (en) System and method for inserting one or more files onto mass storage
CN100451964C (zh) 管理软件模块的管理方法和信息处理器
US20030135418A1 (en) Point-of-sale (POS) systems that use a peripheral device for point-of-sale applications and methods of operating the same
CN100399268C (zh) 一种不依赖操作系统更新软件数据的计算机系统及方法
US6457122B1 (en) Fault tolerant process for the delivery of programs to writeable storage device utilizing pre-operating system software/firmware
CN101114233A (zh) 固件更新的设备与方法
CN1959658A (zh) 本地供应便携式设备的设备驱动的方法和系统
CN1609803A (zh) 通过后加载镜像布置软件的方法与装置
WO2005002060A2 (en) Method for firmware variable storage with eager compression, fail-safe extraction and restart time compression scan
CN101425021A (zh) 基于虚拟机技术的个人计算机可迁移应用模式
US6715043B1 (en) Method and system for providing memory-based device emulation
EP1050813A2 (en) Method and apparatus for implementing deployment descriptions in an enterprise environment
CN1269044C (zh) 一种更新存储在非易失性存储器中的图象的设备和方法
CN1296220A (zh) 安装和/或升级自助金融交易终端的软件的方法和系统
GB2403303A (en) Software patch registry

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: KENNEDE HOLDING COMPANY

Free format text: FORMER OWNER: PHOENIX TECHNOLOGIES LTD.

Effective date: 20130110

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

Effective date of registration: 20130110

Address after: Singapore Singapore

Patentee after: Golden Light Holdings

Address before: American California

Patentee before: Phoenix Technologies Ltd.

C56 Change in the name or address of the patentee

Owner name: JINLAI HOLDINGS CO., LTD.

Free format text: FORMER NAME: KENNEDE HOLDING COMPANY

CP01 Change in the name or title of a patent holder

Address after: Singapore Singapore

Patentee after: Golden Harvest Holdings Limited

Address before: Singapore Singapore

Patentee before: Golden Light Holdings

CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20050105

Termination date: 20170618

CF01 Termination of patent right due to non-payment of annual fee