CN103064698A - 自动安装软件的方法和装置 - Google Patents

自动安装软件的方法和装置 Download PDF

Info

Publication number
CN103064698A
CN103064698A CN2012103158145A CN201210315814A CN103064698A CN 103064698 A CN103064698 A CN 103064698A CN 2012103158145 A CN2012103158145 A CN 2012103158145A CN 201210315814 A CN201210315814 A CN 201210315814A CN 103064698 A CN103064698 A CN 103064698A
Authority
CN
China
Prior art keywords
program
storage unit
software
mounting software
installation
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN2012103158145A
Other languages
English (en)
Inventor
金载桓
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.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co 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
Application filed by Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of CN103064698A publication Critical patent/CN103064698A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/654Updates using techniques specially adapted for alterable solid state memories, e.g. for EEPROM or flash memories
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/572Secure firmware programming, e.g. of basic input output system [BIOS]
    • 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
    • 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/451Execution arrangements for user interfaces
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Human Computer Interaction (AREA)
  • Stored Programmes (AREA)

Abstract

在用于安装软件的装置中,当第一存储单元中存储的基本输入/输出系统(BIOS)被驱动时,将第一存储单元中存储的第一程序拷贝到第二存储单元中。因此,当操作系统(OS)被驱动时,执行第二存储单元的第一程序,从而安装用于自动安装软件和更新软件的第二程序,使得可以由第二程序自动地安装和更新软件。

Description

自动安装软件的方法和装置
相关申请的交叉引用
本申请要求享有2011年8月31日在韩国知识产权局提交的第10-2011-0088233号韩国专利申请的权益,在此并入其公开的全部以供参考。
技术领域
本发明构思涉及一种自动安装软件和更新软件的装置。
背景技术
本发明构思涉及一种安装软件和更新软件的方法和装置。驱动个人计算机(PC)中硬件设备所需的驱动程序和软件可以存储在另外的存储介质中,比如CD-ROM,或者可以由用户使用另外的安装设施从互联网下载。
发明内容
本发明构思提供了一种自动安装软件和更新软件的装置和方法。
本发明构思的其他特征和应用将在以下描述中进行一部分阐述,并且部分地将通过描述而显而易见,或者通过本发明的实践而获知。
本发明构思还提供了计算机可读记录介质,在其上记录了执行所述方法的程序。
根据本发明构思的特征,一种安装软件的装置包括:第一存储单元,用于存储第一程序和基本输入/输出系统(BIOS),第一程序调用用于安装软件和更新软件的第二程序;第二存储单元;保护单元,通过执行将第一存储单元的第一程序拷贝到第二存储单元的操作来保护第一程序;安装单元,通过执行第二存储单元的第一程序来安装第二程序;以及执行单元,执行安装的第二程序。
根据本发明构思的另一特征,一种计算机系统,包括:用于安装软件的装置,当基本输入/输出系统(BIOS)被驱动时,该装置将第一存储单元中存储的用于调用第二程序的第一程序拷贝到第二存储单元中,通过执行第二存储单元的第一程序来安装第二程序,以及执行安装的第二程序;以及用户接口单元,根据第二程序的执行结果显示可安装软件和软件更新的列表,其中第二程序是用于安装和更新软件的程序。
根据本发明构思的另一特征,一种安装软件的方法包括:当第一存储单元中存储的基本输入/输出系统(BIOS)被驱动时,将第一存储单元中存储的用于调用第二程序的第一程序拷贝到第二存储单元中;通过执行第二存储单元的第一程序来安装第二程序;以及执行安装的第二程序,其中第二程序是用于安装和更新软件的程序。
附图说明
通过结合附图的以下实施例的描述,本发明的这些和/或其它特征和实用性将变得显而易见和更加容易理解,其中:
图1是根据本发明示例性实施例的用于安装软件的装置的结构框图;
图2是包括图1所示的用于安装软件的装置的计算机系统的结构框图;
图3是示出了根据本发明示例性实施例的安装软件的方法的流程图;
图4是示出了根据本发明另一示例性实施例的安装软件的方法的流程图;
图5是示出了根据本发明示例性实施例的以下操作的流程图:使用图1所示的用于安装软件的装置来根据标记判断是否将第一存储单元的第一程序拷贝到第二存储单元。
具体实施方式
现在将详细介绍本发明的实施例,其示例将在附图中示出,其中,贯穿全文,相同参考数字涉及相同元件。以下将参考附图描述实施例,以说明本发明构思。
图1是根据本发明示例性实施例的用于安装软件的装置100的结构框图。参见图1,根据至少一个示例性实施例的用于安装软件的装置100包括第一存储单元110、第二存储单元120、保护单元130、安装单元140和执行单元150。
图1所示的用于安装软件的装置100示出了与本发明示例性实施例相关的部件。因此,本领域普通技术人员应理解,图1中用于安装软件的装置100中还可以包括与图1所示的部件不同的常见部件。
图1中用于安装软件的装置100可以与至少一个处理器相对应和/或包括至少一个处理器。因此,可以驱动图1中用于安装软件的装置100,就如同其包括在一般计算机系统(未示出)中一样。在下文中,将描述图1中用于安装软件的装置100包括在一般计算机系统中的情形。然而,本发明构思不限于此。
第一存储单元110存储:第一程序,其调用第二程序来安装软件及更新软件;以及基本输入/输出系统(BIOS)。在这种情况下,当没有在第二存储单元120上安装第二程序时,第一程序可以被实现为引导程序,其从图1安装软件的装置100的内部或外部调用第二程序并安装第二程序。然而,本发明构思不限于此。
此外,作为用于安装软件和更新软件的程序,第二程序可以实现为软件安装和更新程序。然而,本发明构思不限于此。
BIOS是在计算机系统运行之后首先执行的代码。BIOS控制计算机系统的硬件设备并且驱动操作系统(OS)。在这种情况下,在向计算机系统供电之后,在驱动操作系统(OS)之前,使用BIOS来控制计算机系统的运行的过程称作预启动模式。
当没有执行BIOS时,计算机系统不运行。
因此,可以在不能够轻易删除或修改所存储内容的第一存储单元110中存储BIOS。因此,根据本实施例的第一存储单元110可以实现为屏蔽式(mask)只读存储器(ROM)、可擦除可编程ROM(EP-ROM)等等。然而,本发明构思不限于此,包括快闪存储器的各种存储介质和ROM可以用作第一存储单元110。因此,即使用户删除了包括OS在内的所有程序,第一存储单元110中存储的内容也不会从计算机系统中删除。
第一存储单元110一并存储第一程序和BIOS。因为第一程序与BIOS一起存储在第一存储单元110中,所以不能够轻易地删除或修改存储的内容。即使用户通过对计算机系统执行格式化等来删除所有程序,第一存储单元110中存储的第一程序也不会从计算机系统中删除。
第一程序是用于调用第二程序的程序。当第一程序存储在第一存储单元110中时不执行。当保护单元130拷贝第一程序且将其存储在第二存储单元120中时,第二存储单元120中的OS被驱动,使得自动执行第一程序。
第二存储单元120存储不同于BIOS的程序、数据等。图1的第二存储单元120还可以存储OS。此外,当由第一存储单元110的BIOS驱动的OS执行在计算机系统上安装的其它应用程序时,第二存储单元120存储要由OS访问的数据或文件。因此,第二存储单元120实现为能够自由地删除存储的内容或者能够修改存储的内容的存储设备,例如,硬盘驱动(HDD)。
当由BIOS运行的预启动模式终止且OS被驱动时,由OS控制计算机系统的全部操作。在这种情况下,因为OS通过访问第二存储单元120中存储的数据和文件来控制和执行应用程序,所以需要将第一存储单元110的第一程序拷贝到和存储在第二存储单元120中,使得可以执行第一程序。因此,由保护单元130将第一存储单元110的第一程序拷贝到第二存储单元120中,以及当OS被驱动时第二存储单元120中存储的第一程序被自动执行。
当BIOS被驱动时,保护单元130将第一存储单元110的第一程序拷贝到第二存储单元120中。例如,保护单元130可以执行第一存储单元110中存储的程序保护模块,以执行第一程序的拷贝操作。因此,图1的保护单元130还可以实现为程序保护器,本发明构思不限于此。
保护单元130运行在预启动模式下。即,当向计算机系统供电时,执行第一存储单元110的BIOS,并且在执行第一存储单元110的BIOS的同时,保护单元130将第一存储单元110的第一程序拷贝到第二存储单元120中。此外,图1中用于安装软件的装置100可以判定是否激活保护单元130的操作。将参考图2详细描述判定是否激活保护单元130的操作。
此外,保护单元130判定在预启动模式终止且OS被驱动时OS是否自动执行第一程序。即使在删除了包括OS在内的计算机系统中的所有程序之后,第一存储单元110中存储的第一程序也被保护单元130存储在第二存储单元120中,且也执行第二存储单元120中存储的第一程序。因此,即使在重新安装OS时,保护单元130也会将第一存储单元110的第一程序拷贝到第二存储单元120中,使得可以自动地安装和更新软件,如图1所示。
安装单元140通过执行第二存储单元120中的第一程序来安装第二程序。在预启动模式终止之后由OS来操作安装单元140。安装单元140自动执行第二存储单元的第一程序。
在这种情况下,通过从图1中用于安装软件的装置100的外部或内部调用第二程序来安装所执行的第一程序。程序的调用指的是,为执行程序而加载已经安装的程序,或者从用于安装软件的装置100的内部或外部下载安装相应程序所需的文件。可以通过从第二存储单元120中的其他存储区,或者从与第一存储单元110和第二存储单元120相分离的第三存储单元,或者从另一计算机系统,来调用第二程序,以由安装单元140安装第二程序。将参考图2对其进行详细描述。
执行单元150执行已由安装单元140安装的第二程序。在这种情况下,执行单元150受OS的控制,以及执行单元150可以自动执行安装的第二程序。当自动执行第二程序时,向用户显示可安装的软件和软件更新的列表,并且安装和更新用户所选软件。使用第二程序安装的软件可以是驱动硬件设备所需的驱动程序和应用程序。
根据图1中用于安装软件的装置100,即使在从计算机系统中删除了包括OS在内的所有程序时,用户也可以通过调用用于自动安装软件和更新软件的第二程序,来自动安装软件和没有任何困难地更新软件。这是由于即使其它程序从计算机系统中删除时,存储BIOS的第一存储单元110的第一程序也没有被删除。
图2是包括图1所示的用于安装软件的装置100的计算机系统200的结构框图。参见图2,计算机系统200包括用于安装软件的装置100、中央处理单元(CPU)210、存储器220和用户接口单元230。可以包括总线232,以允许CPU210、存储器220、用户接口单元230和计算机系统200之间的通信。
计算机系统200指的是用作通用计算机的计算系统,例如执行程序和控制系统。计算机系统200的示例包括个人计算机(PC),比如桌上型计算机、膝上型计算机等等。用于安装软件的装置100在计算机系统200中运行。
在至少一个实施例中,图2所示的用于安装软件的装置100包括第一存储单元110、第二存储单元120、保护单元130、安装单元140、执行单元150、检查单元260、第三存储单元270和通信接口单元280。图2所示的第一存储单元110、第二存储单元120、保护单元130、安装单元140和执行单元150与图1的用于安装软件的装置100的第一存储单元110、第二存储单元120、保护单元130、安装单元140和执行单元150相同,这里不重复描述。用于安装软件的装置100不限于图2所示的部件。
如图1所描述的,第一存储单元110存储BIOS,以及第一存储单元110与计算机系统200中的BIOS ROM相对应。第一存储单元110还可以存储标记,其指示了第二程序和第一程序的运行状态。
第一存储单元110存储的标记指示在计算机系统200的操作系统(OS)终止、重启或者进入最大节电模式或休眠时第二程序的运行状态。
因此,当用于安装软件的装置100被重新驱动且处于预启动模式时,用于安装软件的装置100使用保护单元130访问在第一存储单元110中存储的标记。即,用于安装软件的装置100可以通过访问第一存储单元110中存储的标记,来根据第二程序的运行状态,判定是否将第一存储单元110的第一程序拷贝到第二存储单元120中。
第二存储单元120存储由BIOS驱动的OS,并与硬盘驱动(HDD)相对应。本领域普通技术人员应理解,第二存储单元120可以是用于存储OS的另一存储介质以及和硬盘驱动(HDD)。
保护单元130通过访问第一存储单元110中存储的标记来判定是否将第一程序拷贝到第二存储单元120中。即,保护单元130根据第二程序的运行状态判定是否将第一程序拷贝到第二存储单元120中。
当在用于安装软件的装置100被重新驱动且处于预启动模式之前第二程序已经运行时,设置对第二程序正在运行加以指示的标记,使得保护单元130判定不需要拷贝第一程序。
与此相反,当第二程序没有运行时,设置对第二程序没有运行加以指示的标记,使得保护单元130将第一存储单元110的第一程序拷贝到第二存储单元120中。
此外,可以基于用户的设置来激活或去激活保护单元130的操作,而不论第二程序的运行状态如何。用户可以使用用户接口单元230输入与设置是否激活保护单元130相关的信息。
当保护单元130被设置为去激活状态时,保护单元130不执行将第一存储单元110的第一程序拷贝到第二存储单元120的操作。如此,因为第二存储单元120没有存储第一程序,所以即使OS被驱动时,也不执行第一程序。类似地,因为没有执行用于安装或执行第二程序的第一程序,所以也不安装或执行第二程序。
保护单元130判定是否将第一存储单元110的第一程序拷贝到第二存储单元120以及是否执行第一程序。即,保护单元130判定是否安装和执行用于自动安装软件和更新软件的第二程序。因此,如上所述,不想自动安装软件和更新软件的用户可以去激活保护单元130的操作,使得可以阻止第二程序自动执行。
检查单元260执行第二存储单元120的第一程序,并检查是否已在第二存储单元120中安装了第二程序。当已在第二存储单元120中安装了第二程序时,第一程序只需调用和执行所安装的第二程序,而无需重新安装第二程序。由此,根据检查单元260的检查结果,判定是否安装安装单元140的第二程序。
在预启动模式终止之后由OS操作检查单元260,检查单元260自动执行并检查第二存储单元120的第一程序。作为检查单元260的检查结果,当已经在第二存储单元120中安装了第二程序时,不执行使用安装单元140来安装第二程序的操作,执行单元150直接执行第二程序。
当检查单元260进行了检查且判定还未在第二存储单元120上安装第二程序时,运行安装单元140。当还未在第二存储单元120上安装第二程序时,安装单元140从用于安装软件的装置100的外部或内部获得第二程序来安装第二程序。
在这种情况下,用于安装软件的装置100的内部可以是第二存储单元120中的存储区或与第二存储单元120相分离的第三存储单元270中的存储区。
此外,从用于安装软件的装置100的外部获得第二程序指的是使用通信接口单元280从网络上的外部存储介质290接收第二程序。例如,网络上的外部存储介质290可以包括位于计算机系统200的远处的另一计算机系统、服务器设备等等。
执行单元150根据检查单元260的检查结果执行在用于安装软件的装置100上已安装的第二程序。在此,用于安装软件的装置100上已安装的第二程序包括已安装的第二程序和/或由安装单元140安装的第二程序。
当执行第二程序时,如参考图1描述的,用户接口单元230向用户显示可安装软件和软件更新的列表,用户可以使用用户接口单元230选择要安装或更新的软件。
第三存储单元270存储第二程序。本领域普通技术人员应理解,第三存储单元270可以实现为HDD、快闪存储器、存储卡等等。
在图2中,为了便于说明,第三存储单元270处于用于安装软件的装置100中。然而,本发明不限于此,第三存储单元270也可以处于计算机系统200的存储器220中。因此,安装单元140通过从用于安装软件的装置100或者计算机系统200的第三存储单元270获得第二程序来安装第二程序。
通信接口单元280从与用于安装软件的装置100相连的网络上的另一计算机系统或服务器设备接收第二程序。在图2中,通信接口单元280包括在用于安装软件的装置100中。然而,本发明不限于此,通信接口单元280可以位于用于安装软件的装置100的外部,作为计算机系统200的部件。当第二程序没有位于包括用于安装软件的装置100的计算机系统200中时,用于安装软件的装置100使用通信接口单元280从计算机系统200的外部获得第二程序。
CPU 210是控制设备,其执行算术运算或数据处理并且控制包括用于安装软件的装置100的计算机系统200的全部操作。
存储器220存储驱动计算机系统200所需的数据和/或程序。图2的存储器220可以包括主存储单元和辅助存储单元,辅助存储单元可以包括CD-ROM等等。
用户接口单元230从用户获取输入信号且向用户显示输出信息。例如,用户接口单元230可以包括计算机系统200中包括的显示面板、监视器、诸如键盘、鼠标等输入/输出设备、以及用于驱动这些部件的软件模块。
用户可以使用用户接口单元230输入与设置是否激活保护单元130相关的信息。此外,执行单元150可以使用用户接口单元230来显示可安装软件和软件更新的列表,以及用户可以使用用户接口单元230来输入与从列表中选择要安装的软件相关的信息。
图3是示出了根据本发明示例性实施例的用于安装软件的方法的流程图。参见图3,安装软件的示例方法包括使用图1所示的用于安装软件的装置100顺序执行的操作。因此,尽管省略了上述图1中用于安装软件的装置100的描述,但是这可以应用于该安装软件的方法中。
在操作310中,当第一存储单元110中存储的BIOS被驱动时,用于安装软件的装置100将第一存储单元110中存储的用于调用第二程序的第一程序拷贝到第二存储单元120中。即,用于安装软件的装置100拷贝第一存储单元110的第一程序且将其存储在第二存储单元120中。此外,当预启动模式终止且OS被驱动时,用于安装软件的装置100可以将拷贝到第二存储单元120中的第一程序设置为自动执行。
在操作320中,用于安装软件的装置100通过执行第二存储单元120的第一程序来安装第二程序。在这种情况下,用于安装软件的装置100可以从用于安装软件的装置100的内部或外部调用第二程序。在这种情况下,在安装了第二程序之后,用于安装软件的装置100可以修改OS的设置或者可以从计算机系统中删除第一程序,使得可以不再自动执行第二存储单元120中存储的第一程序。
在操作330中,用于安装软件的装置100执行已安装的第二程序。用于安装软件的装置100通过使用第二程序来显示可安装软件和软件更新的列表。因此,即使在重新安装了OS时,用户也可以使用程序来自动地安装软件和容易地更新软件。
图4是示出了根据本发明另一示例性实施例的用于安装软件的方法的流程图。参见图4,安装软件的示例方法可以包括使用图2所示的计算机系统200顺序执行的操作。因此,尽管省略了上述图2的计算机系统200的描述,但是这可以应用于该安装软件的方法中。
在操作410中,用于安装软件的装置100检查保护单元130的操作是否被激活。因为用户可以进行设置以激活或去激活保护单元130的操作,所以用于安装软件的装置100检查保护单元130的操作是否被激活。当保护单元130的操作被激活时,用于安装软件的装置100继续至操作420,以及当保护单元130的操作被去激活时,用于安装软件的装置100继续至操作440。
在操作420中,当在操作410中检查出保护单元130被激活时,用于安装软件的装置100检查对第二程序的运行状态加以指示的标记且判定是否要将第一存储单元的第一程序拷贝到第二存储单元120中。即,用于安装软件的装置100检查第一存储单元110中存储的标记,判定计算机系统200中的第二程序是否在运行并且根据判定结果判定是否要拷贝第一程序。当判定要拷贝第一程序时,用于安装软件的装置100继续至操作430,当判定不拷贝第一程序时,用于安装软件的装置100继续至操作440。
在操作430中,当BIOS被驱动时,用于安装软件的装置100将第一存储单元110中存储的用于调用第二程序的第一程序拷贝到第二存储单元120中并将其存储在第二存储单元120中。
在操作440中,预启动模式终止,且OS被驱动。
在操作430中,用于安装软件的装置100可以将拷贝到第二存储单元120中的第一程序设置为在OS被驱动时自动执行。
在操作450中,用于安装软件的装置100执行第二存储单元120的第一程序。当预启动模式终止且OS被驱动时,执行第二存储单元120的第一程序。
在操作460中,用于安装软件的装置100检查第二程序是否已安装在计算机系统200上。当检查且判定第二程序还未安装在计算机系统200上时,用于安装软件的装置100继续至操作470,以及当检查且判定第二程序已安装在计算机系统200上时,用于安装软件的装置100直接继续至操作480,而不执行操作470。
在操作470中,用于安装软件的装置100通过执行第二存储单元的第一程序来安装第二程序。用于安装软件的装置100执行第二程序。当在操作460中检查且判定第二程序还未安装在计算机系统200上时,用于安装软件的装置100通过从计算机系统200的外部或内部调用第二程序来安装第二程序。
在操作480中,用于安装软件的装置100执行安装的第二程序。在这种情况下,用于安装软件的装置100可以通过执行第二程序来自动地执行软件安装和更新,或者可以通过显示可安装软件和软件更新的列表来允许用户选择要安装的软件。
图5是示出了根据本发明示例性实施例,使用图1所示的用于安装软件的装置100来判断是否将第一存储单元110的第一程序拷贝到第二存储单元120中的操作的流程图。在图5中,在从OS启动后至OS终止前的时间段内,通过访问第一存储单元110中存储的标记来判断是否要拷贝第一程序。在操作510中,预启动模式终止,且OS被驱动。
当第二程序在运行时,用于安装软件的装置100将对第二程序的运行状态加以指示的标记设置于第一存储单元110中。
在操作520中,当计算机系统200的OS终止、重启或进入最大节电模式时,用于安装软件的装置100检查对第二程序的运行状态加以指示的标记且判定第二程序是否在运行。通过访问标记,当判定第二程序没有运行时,用于安装软件的装置100继续至操作530,当判定第二程序正在运行时,用于安装软件的装置100继续至操作540。
在操作530中,根据操作520中的判定结果,当第二程序没有运行时,用于安装软件的装置100设置保护单元130将第一存储单元110的第一程序拷贝到第二存储单元120中,以执行第二程序。
在操作540中,根据操作520中的判定结果,当第二程序正在运行时,用于安装软件的装置100设置保护单元130不将第一存储单元110的第一程序拷贝到第二存储单元120。因此,用于安装软件的装置100设置保护单元130不将第一存储单元110的第一程序拷贝到第二存储单元120。
当OS终止且向用于安装软件的装置100重新供电时,在BIOS运行时被驱动的保护单元130按操作530或540中的设置来运行。即,当将用于安装软件的装置100的保护单元130设置为将第一存储单元110的第一程序拷贝到第二存储单元120时,保护单元130就将第一存储单元110的第一程序拷贝到第二存储单元120。
本发明构思还可以实现为计算机可读介质上的计算机可读代码。计算机可读介质可以包括计算机可读记录介质和计算机可读传输介质。计算机可读记录介质是能够存储数据作为能够在之后由计算机系统进行读取的程序的任何数据存储设备。计算机可读记录介质的示例包括只读存储器(ROM)、随机存取存储器(RAM)、CD-ROM、DVD、磁带、软盘和光数据存储设备。计算机可读记录介质还可以分布在经网络耦接的计算机系统上,使得以分布式的方式存储和执行计算机可读代码。计算机可读传输介质可以发送载波或信号(例如,通过互联网的有线或无线数据传输)。此外,可以由本发明构思所属技术领域的编程人员轻松地构建用于完成本发明构思的功能性程序、代码和代码段。
如上述示例性实施例所讨论的,即使在删除了包括操作系统(OS)在内的计算机系统中的所有程序之后,也可以阻止删除在存储了BIOS的第一存储单元中存储的第一程序。因此,用户可以通过调用用于自动安装软件和更新软件的第二程序来自动安装软件和无任何困难地更新软件。
尽管已经示出和描述了本发明构思的一些实施例,但是本领域普通技术人员应理解,可以在不背离由所附权利要求及其等同物所限定的本发明构思的原理和精神的情况下对这些实施例进行改变。

Claims (15)

1.一种安装软件的装置,包括:
第一存储单元,用于存储第一程序和基本输入/输出系统BIOS,第一程序调用用于安装软件和更新软件的第二程序;
第二存储单元;
保护单元,通过执行将第一存储单元的第一程序拷贝到第二存储单元中的操作来保护第一程序;
安装单元,通过执行第二存储单元的第一程序来安装第二程序;以及
执行单元,执行安装的第二程序。
2.如权利要求1所述的装置,还包括:检查单元,用于检查是否通过执行第二存储单元的第一程序安装了第二程序,其中,根据检查结果,当还未安装第二程序时,安装单元通过从所述装置的外部和内部中的至少一个调用第二程序来安装第二程序。
3.如权利要求1所述的装置,还包括:第三存储单元,用于存储第二程序,其中,安装单元安装在第三存储单元中存储的第二程序。
4.如权利要求1所述的装置,还包括:通信接口单元,用于从外部存储设备接收第二程序,其中安装单元安装接收的第二程序。
5.如权利要求1所述的装置,其中,第一存储单元存储对第二程序的运行状态加以指示的标记,并且当基于标记判定第二程序没有运行时,保护单元将第一程序拷贝到第二存储单元中且将第一程序存储在第二存储单元中。
6.如权利要求5所述的装置,其中,当所述装置的操作系统OS终止或者进入最大节电模式时,第一存储单元存储对第二程序的运行状态加以指示的标记。
7.如权利要求1所述的装置,其中,执行单元执行第二程序且显示可安装软件和软件更新的列表。
8.如权利要求1所述的装置,还包括:判定单元,用于根据用户设置的信息判定是否激活保护单元。
9.一种计算机系统,包括:
用于安装软件的装置,当基本输入/输出系统BIOS被驱动时,该装置执行将第一存储单元中存储的用于调用第二程序的第一程序拷贝到第二存储单元中的操作,通过执行第二存储单元的第一程序来安装第二程序,以及执行安装的第二程序;以及
用户接口单元,根据第二程序的执行结果显示可安装软件和软件更新的列表,
其中第二程序是用于安装和更新软件的程序。
10.如权利要求9所述的计算机系统,其中,所述用于安装软件的装置检查是否通过执行第二存储单元的第一程序安装了第二程序,以及根据检查结果,当还未安装第二程序时,所述用于安装软件的装置通过从所述用于安装软件的装置的外部和内部中的至少一个调用第二程序来安装第二程序。
11.如权利要求9所述的计算机系统,还包括:通信接口单元,用于从外部存储设备接收第二程序,其中所述用于安装软件的装置安装接收的第二程序。
12.如权利要求9所述的计算机系统,第一存储单元存储对第二程序的运行状态加以指示的标记,并且当基于标记判定第二程序没有运行时,所述用于安装软件的装置将第一程序拷贝到第二存储单元中且将第一程序存储在第二存储单元中。
13.一种安装软件的方法,所述方法包括:
当第一存储单元中存储的基本输入/输出系统BIOS被驱动时,执行将第一存储单元中存储的用于调用第二程序的第一程序拷贝到第二存储单元中的操作;
通过执行第二存储单元的第一程序来安装第二程序;以及
执行安装的第二程序,
其中第二程序是用于安装和更新软件的程序。
14.如权利要求13所述的方法,还包括:检查是否通过执行第二存储单元的第一程序安装了第二程序,
其中,根据检查结果,当还未安装第二程序时,第二程序的安装包括:通过从用于安装软件的装置的外部和内部中的至少一个调用第二程序来安装第二程序。
15.如权利要求13所述的方法,拷贝第一程序包括:当基于第一存储单元中存储的对第二程序的运行状态加以指示的标记判定第二程序没有运行时,将第一程序拷贝到第二存储单元中且将第一程序存储在第二存储单元中。
CN2012103158145A 2011-08-31 2012-08-30 自动安装软件的方法和装置 Pending CN103064698A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020110088233A KR20130024667A (ko) 2011-08-31 2011-08-31 소프트웨어를 자동으로 설치하는 방법 및 장치
KR10-2011-0088233 2011-08-31

Publications (1)

Publication Number Publication Date
CN103064698A true CN103064698A (zh) 2013-04-24

Family

ID=47745583

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2012103158145A Pending CN103064698A (zh) 2011-08-31 2012-08-30 自动安装软件的方法和装置

Country Status (3)

Country Link
US (1) US20130055230A1 (zh)
KR (1) KR20130024667A (zh)
CN (1) CN103064698A (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9349009B2 (en) * 2013-07-15 2016-05-24 Paul A. Rivera Method and apparatus for firmware based system security, integrity, and restoration
US8990793B1 (en) 2013-12-05 2015-03-24 Google Inc. Updating an operating system
US10552170B2 (en) * 2015-04-17 2020-02-04 Summit Imaging, Inc. System and method for activating a medical device using secured and unsecured utilities
CN106325899B (zh) * 2015-06-23 2019-11-26 联想(北京)有限公司 一种应用程序的安装方法、安装系统及电子设备
US11636210B2 (en) * 2020-07-01 2023-04-25 Meta Platforms Technologies, Llc Artificial reality system with multi-stage boot process

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1283817A (zh) * 1999-06-18 2001-02-14 凤凰技术有限公司 一种为计算设备的自动配置创建并展开较小Microsoft Windows应用程序的方法和设备
US20110099547A1 (en) * 2009-10-28 2011-04-28 Gaurav Banga Approaches for installing software using bios
CN102147736A (zh) * 2010-02-10 2011-08-10 华为技术有限公司 软件的安装方法及装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1283817A (zh) * 1999-06-18 2001-02-14 凤凰技术有限公司 一种为计算设备的自动配置创建并展开较小Microsoft Windows应用程序的方法和设备
US20110099547A1 (en) * 2009-10-28 2011-04-28 Gaurav Banga Approaches for installing software using bios
CN102147736A (zh) * 2010-02-10 2011-08-10 华为技术有限公司 软件的安装方法及装置

Also Published As

Publication number Publication date
KR20130024667A (ko) 2013-03-08
US20130055230A1 (en) 2013-02-28

Similar Documents

Publication Publication Date Title
US10922413B2 (en) Methods and apparatus to apply a firmware update to a host processor
US7017004B1 (en) System and method for updating contents of a flash ROM
US9251336B1 (en) Secure versioning of software packages
US8185884B2 (en) System and method for offline updation of software in virtual machine (VM) images
US20130031538A1 (en) Updating Secure Pre-boot Firmware In A Computing System In Real-time
KR20130085052A (ko) 프리-히팅된 소프트웨어 설치
CN102165418A (zh) 涡轮引导系统和方法
CN103064698A (zh) 自动安装软件的方法和装置
JP2012128841A (ja) ブート・ブロックの再配置によって複数のソフトウェア・イメージを管理するための方法、コンピュータ・プログラムおよびシステム
US8234486B2 (en) Managing reboot operations
US9354902B2 (en) Comparing system engram with product engram to determine compatibility of product with system
KR102226558B1 (ko) 맞춤형 통합 확장 펌웨어 인터페이스 드라이버를 설치한 컴퓨터-읽기가능 레코딩 매체 및 그것의 방법
KR20120083130A (ko) 컴퓨터시스템 및 그 프로그램 업데이트 방법
EP2805233B1 (en) Installation engine and package format for parallelizable, reliable installations
US20110265072A1 (en) Dynamic Installation of Files for Running Programs
KR20060056471A (ko) 이동통신 단말기에 소프트웨어를 설치하는 장치 및 방법
US10481892B2 (en) Multiple domain embedded system
CN106155713B (zh) 启动信息管理方法及装置
KR101576370B1 (ko) 컴퓨터 시스템의 원격 복원 시스템 및 그 방법, 그리고 기록한 컴퓨터로 읽어 들일 수 있는 기록매체
US11467849B2 (en) Systems and methods for collecting deep operating system (OS) telemetry
KR101595936B1 (ko) 백신과 컴퓨터 최적화 기능을 구비한 컴퓨터 최적화 방법, 최적화 서버 및 컴퓨터 판독 가능한 기록매체
US9495146B2 (en) Host and method of upgrading connection manager of dongles
KR101461319B1 (ko) 셋탑박스의 펌웨어 업그레이드 방법 및 펌웨어 업그레이드 장치
US7516452B1 (en) Method and system for managing installation of software on a computer system platform
CN115357355A (zh) 一种软件跨系统迁移的方法、装置、设备及可读存储介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20130424

WD01 Invention patent application deemed withdrawn after publication