CN102567128B - 系统复位 - Google Patents

系统复位 Download PDF

Info

Publication number
CN102567128B
CN102567128B CN201110436710.5A CN201110436710A CN102567128B CN 102567128 B CN102567128 B CN 102567128B CN 201110436710 A CN201110436710 A CN 201110436710A CN 102567128 B CN102567128 B CN 102567128B
Authority
CN
China
Prior art keywords
operating system
memory element
user
application program
described operating
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.)
Active
Application number
CN201110436710.5A
Other languages
English (en)
Other versions
CN102567128A (zh
Inventor
D·T·李
V·奥加尔
K·P·苏布拉马尼亚
S·S·K·P·库玛卡斯图里
H·郑
苑钰楠
G·W·尼科尔斯
S·多利
K·K·道鲁如
C·内格雷亚努
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of CN102567128A publication Critical patent/CN102567128A/zh
Application granted granted Critical
Publication of CN102567128B publication Critical patent/CN102567128B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1433Saving, restoring, recovering or retrying at system level during software upgrading
    • 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/4403Processor initialisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1417Boot up procedures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/24Resetting means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1479Generic software techniques for error detection or fault masking
    • G06F11/1482Generic software techniques for error detection or fault masking by means of middleware or OS functionality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • G06F8/62Uninstallation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/805Real-time
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/85Active fault masking without idle spares

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Quality & Reliability (AREA)
  • Computer Security & Cryptography (AREA)
  • Stored Programmes (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明涉及系统复位。本发明的一些实施例提供了一些技术,由此用户可执行系统复位(例如,解决诸如由不必要地消耗系统资源的未使用应用程序、尝试卸载遗留应用程序残余的应用程序、和/或其他原因导致的系统性能和/或可靠性降级的问题)。在一些实施例中,执行系统复位以操作系统的新实例代替系统上操作系统的第一实例,并移除系统上安装的任何应用程序,而不会打扰用户数据。

Description

系统复位
技术领域
本发明涉及计算机软件,且由其涉及用于将系统复位到其出厂状态的软件。
背景技术
一些传统操作系统向用户提供将操作系统和/或计算机上执行的应用程序“回退”或“恢复”到那些组件在先前时间点上存在的状态的能力。例如,“系统恢复”能力可允许用户将系统文件、注册表项、已安装应用程序、和/或其他组件回退到这些组件在系统故障或失败之前存在的状态。类似地,一些操作系统提供了执行“系统复位”的能力,由此操作系统和/或应用程序被复位至其原始的“出厂”设置。通常,系统复位涉及执行系统恢复以使该系统回到其原始存在的、在对该操作系统和/或应用程序做出任何改变之前、和/或在任何数据被存储到该系统上之前的状态。(出于便利,术语“系统恢复”和“系统复位”在本文中用于指代这些能力,尽管任一这些术语以及用于描述由任何常规操作系统提供的能力的术语间的任何相似性不应被解读为将该术语限制在由该操作系统所提供的功能性。)
发明内容
申请人已经认识到,计算机系统的性能和/或可靠性可出于多种原因的任一种而随时间降级。例如,操作系统和/或应用程序可开始比先前观察到更缓慢地运行,或更频繁地“崩溃”。此现象的一个原因可能是应用程序持续消耗资源,尽管其不再被用户使用。另一个原因可能是用户尝试卸载应用程序而没有将该应用程序从系统中完全移除。例如,体验到与应用程序有关的问题的用户可能试图卸载它,但这样做会使该应用程序处于“拆卸”状态,或留下可损害系统性能的“垃圾”。又一个原因可能是用户做出的设置、一个或多个应用程序和/或操作系统之间随时间产生的冲突。例如,用户可具有已经在一时间点建立的一组设置,但随后后来安装的应用程序导致一些或所有设置以使其与其他设置冲突的方式改变。
体验到降级的系统性能和/或可靠性的用户可能尝试执行完全系统恢复,这通常涉及将他/她的个人数据备份至外部存储设备、重新格式化硬盘驱动器以及随后重新安装操作系统和任何应用程序。存在若干与用户执行完全系统恢复以处理降级的系统性能相关联的问题。首先,这是非常耗时的运动。此外,一些用户可能没有认识到其个人数据必须在启动完全系统恢复之前被备份至外部存储设备,且因此可能在硬盘驱动器后来重新格式化时丢失数据。结果是,因通过卸载应用程序来改善系统性能的不成功尝试而沮丧的用户可能在其个人数据因执行完全系统恢复而不可挽回地丢失时以双重的沮丧而告终。
用户通常使用的替代性办法是尝试将系统恢复到其曾最优运行的先前状态,或将其复位至原始的出厂状态。然而,这些办法的每一个也存在若干问题。例如,将系统恢复到先前备份版本的先决条件是曾执行过备份。执行备份可能是耗时的过程,且(如上所述)经常需要外部存储设备,该设备在需要时可能被错放和/或难以放置。此外,用户标识系统何时最优运行以及记得此时他/她需要备份系统以供后来使用是非常困难的。即使用户相信系统在特定时间最优运行,并记住随后启动备份,但用户的信任可能被错放,因为系统随后可能包括后来性能降级的根本原因,即便还没有显示任何征兆。此外,随执行完全系统恢复一起执行的系统恢复或系统复位涉及用户将其个人数据备份至外部驱动器,因为常规办法不能保证用户的数据不在恢复或复位操作期间被删除。
通过提供一些技术,由此用户可通过执行系统复位来代替操作系统的现有实例和/或具有新实例的应用程序而不会干扰用户在系统上的个人数据,本发明的一些实施例解决了与传统办法相关联的这些和其他缺陷。系统上的任何可能导致性能和/或可靠性降级的应用程序可被完全移除。在操作系统的现有实例和应用程序被移除之前,当发生移除时用户的个人数据可被留在硬盘上的受保护区域中且不被打扰。当操作系统的新实例被应用时,用户可重新安装他/她希望在操作系统上具有的任何应用程序。同样,本发明的一些实施例可提供简单的技术,由此用户可解决系统性能和/或可靠性降级的问题而不会打扰其个人数据且不必要执行耗时、复杂的备份和/或恢复操作。
以上是对由所附权利要求书所定义的本发明的非限定性的概述。
附图说明
附图不旨在按比例绘制。在附图中,各个附图中示出的每个相同或近乎完全相同的组件由同样的附图标记来表示。出于简明的目的,不是每个组件在每张附图中均被标记。在附图中:
图1是描绘根据本发明的一些实施例在执行系统复位之前的示例系统配置的框图;
图2是描绘根据本发明的一些实施例在应用操作系统的新实例时的示例系统配置的框图;
图3是描绘根据本发明的一些实施例在将用户设置和账户转移到操作系统的新实例时的示例系统配置的框图;
图4是描绘根据本发明的一些实施例在移除操作系统的在前实例和/或应用程序时的示例系统配置的框图;
图5是描绘根据本发明的一些实施例用于执行系统复位的示例过程的流程图;
图6是描绘可被用于实现本发明的一些实施例的示例计算机的框图;以及
图7是描绘其上可记录体现本发明的各方面的示例存储器的框图。
具体实施方式
本发明的一些实施例提供了一些技术,由此用户可通过执行系统复位来解决(例如,由不必要地消耗系统资源的未使用应用程序、尝试卸载遗留应用程序残余的应用程序、和/或其他原因带来的)系统性能和/或可靠性降级的问题。在一些实施例中,系统复位以新实例代替系统上操作系统的在前实例,并移除系统上安装的应用程序,而不会打扰用户数据。因为用户数据处于不被打扰,本发明的实施例可允许用户解决系统性能和/或可靠性降级的问题,而不必要忍受执行完全系统恢复或系统恢复所需要的将个人数据备份到外部存储设备的耗时的过程、或不必要猜测系统何时最佳运行以便可采取系统后来将被恢复的备份。
本发明的一些实施例提供了包括几个步骤的过程。首先,用户数据和设置被标识并编制清单,且随后被移至存储器上一个或多个受保护的位置。然后,操作系统的现有实例和系统上的任何应用程序被移除,同时使用户的个人数据和设置完整。然后应用操作系统的新实例,随后将用户设置或其一部分应用至操作系统的新实例。此后,用户可重新安装他/她所需的任何应用程序。因为操作系统的先前实例和系统上的任何应用程序被移除(例如,完全移除),因而用户可选择重新安装的应用程序,使得没有不希望应用程序的痕迹留在系统上以降级系统性能。进一步,可执行整个过程而不必要将用户个人数据临时迁移到外部存储设备。该过程将在以下参考图1-4更详细地描述。
图1是根据本发明的一些实施例在执行系统复位之前的示例系统的高级描绘。在图1所示的示例中,存储元件101存储当前操作系统(OS)105,其反映任何用户账户110。存储元件101上构成当前OS105的信息的位置可以任何适当方式指定。例如,在有华盛顿州雷蒙德的微软公司提供的Microsoft Windows家族操作系统中,包含当前OS105的信息被存储在C:\Windows位置中。其他操作系统可指定一个或多个其他位置,或不指定任何位置。本发明的各实施例不限于与任何特定位置中存储的操作系统一起使用。
由于本发明各实施例不限于这一方面,因此存储元件101可包括任何合适类型的存储元件。例如,存储元件101可包括硬盘、闪存驱动器、和/或任何其他合适类型的无论存储介质(媒体)。存储元件101不需要包括物理存储元件,然而,可替换地包括一个或多个虚拟存储元件。例如,软件元件101可经由一个或多个表示一个或多个物理存储元件的软件构造来实现。此外,尽管图1所示的示例仅包括单个存储元件101,但并非所有本发明的实施例都是如此限制,因为可替换性地使用任何合适数量的存储元件。本发明的各实施例不限于任何特定的实现方式。
在图1所示的示例中,存储元件101存储“标准”位置115处的应用程序。这些应用程序例如可包括安装在由操作系统指定的用于存储已安装应用程序的文件系统位置处的应用程序。例如,在Microsoft Windows家族操作系统中,应用程序115可被存储在C:\Program Files目录中。其他操作系统可指定一个或多个其他位置,或不指定任何用于存储应用程序115的位置。由于本发明各实施例不限于这一方面,因此可使用任何合适的方式来指定将从系统中移除的应用程序。
在图1的示例中,存储元件101也存储“非标准”位置120处的数据和应用程序。在一些实施例中,数据和应用程序120可表示未被当前OS105和应用程序115涵盖的存储元件101上存储的任何信息。然而,并非所有本发明的实施例都如此限制。将被保留的数据和应用程序可以任何合适的方式被指定。例如,一些实施例可扫描存储元件101以标识似乎存储用户个人数据、账户、应用程序和/或设置的存储位置,查找已知惯用于存储此类信息的存储位置(例如,文件夹),或以任何合适的方式标识数据和应用程序120。
图2描绘了操作系统125的新实例被应用于存储元件101后的图1示出的示例系统。
在一些实施例中,操作系统125的新实例是OS的“干净副本”,其中所有设置都置于默认模式,且不包括操作系统可另行提供的应用程序。然而,由于本发明的各实施例并不限于此方面,因此新的操作系统实例可结合任何合适的设置和/或应用程序。
可以多种方式的任一种执行将操作系统125的新实例应用于存储元件101。例如,一些实施例可涉及转移“恢复镜像”,其包括从外部介质(例如记录盘)新安装操作系统所需的数据正文。其他实施例可涉及从存储元件101上的恢复分区检索恢复镜像。在这一方面,一些计算机和/或存储元件制造商可在存储元件上在与存储操作系统的“活动”(live)实例的位置分离的位置处加载恢复镜像,以便于需要时重新安装操作系统。
还有其他实施例可涉及将当前OS105启动至离线环境(这在一些实施例中是其中没有执行操作系统的执行环境)以创建构成OS的新实例125的恢复镜像。离线环境可例如仅包括允许特定目标程序所必需的组件。当启动至该环境时,由当前操作系统105执行这些程序可能导致生成恢复镜像。随后恢复镜像可被应用于存储元件101,如图2所示。
OS的新实例125可以任何合适方式被存储在存储元件101上。例如,在一些实施例中,OS的新实例125可被存储在不同于存储当前OS105的文件夹的一个或多个文件夹中。本发明的各实施例不限于将OS的新实例125存储在任何特定位置。
作为将OS的新实例125应用于存储元件101的结果,操作系统的两个实例现在驻留在存储元件101上,其中当前OS105反映用户的设置、账户和其他信息。图3描绘了正被修改以将这些设置、账户和其他信息应用于OS的新实例125的示例例系统。具体地,图3指示在130,用户的设置、账户和其他信息从当前OS105转移到OS的新实例125。这可以多种方式的任一种来执行。例如,在一些实施例中,当前OS105维护的一个或多个注册表单元(hive)被迁移至由OS的新实例125维护的注册表。
将用户的设置、账户和其他信息迁移至OS的新实例125可包括执行多个动作的任一个。在一些实施例中,迁移可包括修改设置,诸如阻止已知由现有设置产生的将来问题。例如,如果已知(例如,基于若干对帮助栏(help line)的用户调用)特定设置或设置组合是有问题的,则(诸)设置可不被应用于OS的新实例125。例如,如果已知用户由于与无线网络配置有关的某些设置而体验到了问题(这可能因为用户实现了错误设置、因为应用程序随时间改变了设置、和/或出于其他原因而导致),则那些设置可不被迁移至OS的新实例125。在一些实施例中,可代替地实现已知会解决该问题的设置或设置组合。本发明的各实施例可以任何合适方式实现。
一些用户设置可不被迁移,因为移除一个或多个应用程序可能使得这些设置过时。例如,用户桌面上指代将被移除的应用程序的“问题快捷方式”可能不被转移到OS的新实例125。可采取多种类型动作的任一种来确保转移到OS的新实例125的任何设置、账户和/或其他信息是有效的,且与系统上的其他信息一致。
在一些实施例中,移动用户账户111可涉及对数据和应用程序120检查指定至用户账户的链接的任何数据文件以确保账户存在于OS的新副本125。例如,如果用户A和B使用所示系统并分别拥有文件A.txt和B.txt,则移动用户账户可能涉及检查文件A.txt和B.txt以确保用户A和B的账户被移至OS的新实例125。当然,本发明的各实施例可确保数据可以任何合适方式被任何数量的用户(包括一个)访问。
图4描绘了移除当前OS105和应用程序115时的示例系统。移除可以多种方式中的任一种来完成。例如,如果包括当前OS105和应用程序115的信息的存储位置是已知的,则该信息可通过一个或多个指定该存储位置的删除操作来移除。如果包括当前OS105和应用程序115的信息的所有存储位置都不是已知的,或不能确定无疑地确定,则可移除未存储在已知用于存储OS的新实例125的位置中的所有信息。因为本发明的各实施例并不限于此方面,因此可使用多种技术的任一种来移除当前OS105和应用程序115。
本发明的一些实施例可提供发生系统复位前验证某些条件得到满足。例如,一些实施例可在开始系统复位前验证存储元件101包括对于OS的新实例125来说足够的存储空间。如果没有,用户可具有首先从存储元件101中移除(“擦除”)当前OS105,然后(例如,在移除当前OS105之前存储当前OS105的相同存储位置中)应用OS的新实例125的灵活性。在图5中示出了此技术的示例(即,示例过程500)。
示例过程500始于动作502,在动作502,在开始系统复位之前执行一个或多个检查。例如,可确定存储元件是否包括对于同时存储操作系统的新实例和当前存储的操作系统的当前实例两者来说足够的存储空间。在示例过程500中,动作502还包括定位将被用于实例化操作系统的新实例的恢复镜像。
如果作为动作502的检查的结果确定存储元件上没有对于同时存储操作系统的新实例和操作系统的当前实例两者来说足够的存储空间,则实例过程500前进至动作504,在动作504,向用户提供继续复位将要求移除操作系统的当前实例的指示。在一些实施例中,移除操作系统的当前实例的结果是操作系统的当前实例中反映的任何用户设置将不被保留,由此执行“出厂复位”。然而,并非本发明的所有实施例都限于此种实现。例如,一些实施例可提供一种能力,由此即便在执行复位前移除操作系统的当前实例,用户设置仍被保留。
如果在动作502确定确实存在对于操作系统的两个实例来说足够的存储空间,且动作502中执行的任何其他验证是成功的,则示例过程500前进至动作506,其中提示用户在“基本”和“高级”复位操作间选择。在一些实施例中,执行“高级”复位包括向用户呈现与复位有关的某些选项。用户可从这些选项中选择以指定执行复位的方式。一个示例选项例如可为,操作系统的当前实例是否在应用新实例之前被移除。可呈现多个选项的任一个。
然后在动作508处理选择基本或高级复位操作的用户输入。如果用户选择执行高级复位,则示例过程500前进至动作510,在动作510,允许用户指定与复位操作有关的选项。然后在完成动作510处、或如果在动作508确定用户选择基本复位操作、或完成动作504之际开始动作512。
在动作512,操作系统在离线环境中重启。如上所述,离线环境可为其中不执行操作系统的执行环境。然而,本发明各实施例并不限于此种实现。并且,启动至离线环境仅仅是将操作系统的新实例应用于存储元件的一种可能技术。可代替使用多种其他技术的任一种。
示例过程500随后前进至动作514,其中确定是否同意移除操作系统的当前实例(例如,在动作504呈现警告后、或在用户在动作506选择高级复位并随后在动作510指示应移除当前实例后)。如果这样,过程500前进至动作516,其中操作系统的当前实例在动作516被移除。然后在动作518应用恢复镜像,诸如通过在离线启动环境中执行程序。
回到动作514,如果确定不同意移除操作系统的当前实例(例如,因为用户在动作506选择基本复位、或在动作506选择高级复位但未指定应在动作510移除当前实例),则过程500前进至动作522,在动作522,除已被存储在存储元件上的操作系统的当前实例以外,还应用恢复镜像。示例过程500然后前进至动作524,其中收集并存储数据和设置,然后在动作526进行复位。
一旦完成动作526或518,过程500前进至动作520,其中启动已应用的恢复镜像。然后在动作528确定是否在应用新实例之前移除操作系统的现有示例。如果是的话,则示例过程500前进至动作530,在动作530,向用户显示“首次启动”体验。在这一方面,因为在示例过程500中移除操作系统的当前实例导致将执行“出厂复位”,因此动作530可包括允许用户建立初始设置和/或执行其他配置任务。
如果在动作528确定在应用新实例之前不移除操作系统的现有实例,则示例过程500前进至动作532,在动作532,(例如,动作524中收集的)数据和/或设置被应用于操作系统新应用的实例。然后示例过程500前进至动作532,其中向用户呈现关于重新获取因执行复位而移除的任何应用程序的指导。这可以多种方式的任一种来执行。例如,可向用户提供对在线设施的接入以允许用户重新安装先前购买的程序。
一旦完成动作530或534,示例过程500结束。
从以上应认识到,本发明的一些实施例可在执行系统复位同时使用户保留其个人数据和/或定制设置,以便用户不需要忍受耗时的执行备份至一些用户可能需要个别购买的外部存储设备的过程。计算机和/或操作系统厂商可获得益处,因为这些厂商可能体验到过涉及执行复位的用户支持交互的减少,因为简化复位操作可导致更多用户有足够自信独立执行该操作。此外,在系统复位期间保留用户数据和/或设置可减少之前因丢失数据和/或设置而导致的用户支持交互。
用于实践本发明的各特征的系统和方法的各个方面可被实现在一个或多个计算机系统中,诸如图6中示出的示例性计算机系统600。计算机系统600包括输入设备602、输出设备601、处理器603、存储器系统604和存储606,这些设备全都经由可包括一个或多个总线、交换机、网络和/或任何其他合适互连的互连机制605来直接或间接地耦合。输入设备602接收来自用户或机器(如,人类操作者)的输入,并且输出设备601向用户或机器(如,液晶显示器)显示或传送信息。输入和输出设备主要可用于呈现用户界面。可用于提供用户界面的输出设备的示例包括用于可视地呈现输出的打印机或显示屏和用于可听地呈现输出的扬声器或其他声音生成设备。可用于用户界面的输入设备的示例包括键盘和诸如鼠标、触摸板和数字化输入板等定点设备。作为另一示例,计算机可以通过语音识别或以其他可听格式来接收输入信息。
处理器603通常执行被称为操作系统(例如,微软Windows系列操作系统或任何其他合适的操作系统)的计算机程序,操作系统控制其他计算机程序的执行并提供调度、输入/输出以及其他设备控制、会计、汇编、存储安排、数据管理、存储器管理、通信以及数据流控制。笼统而言,处理器和操作系统定义为其编写应用程序和其他计算机程序语言的计算机平台。
处理器603还可执行一个或多个计算机程序以实现各种功能。这些计算机程序语言可以用任何类型的计算机程序语言来编写,包括过程程序设计语言、面向对象的程序设计语言、宏语言、或它们的组合。这些计算机程序可存储在存储系统606中。存储系统606可将信息保持在易失性或非易失性介质上,并可以是固定或可移动的。在图7中更详细地示出了存储系统606。
存储系统606可包括有形计算机可读和可写非易失性记录介质501,其上存储有定义计算机程序或要由该程序使用的信息的信号。记录介质例如可以是盘存储器、闪存、和/或可用于记录和存储信息的任何其它制品。通常,在操作中,处理器603使得数据从非易失性记录介质601读入允许处理器603比对介质502进行的更快的信息访问的易失性存储器501(如,随机存取存储器,即RAM)中。如图6所示,存储器502可位于存储系统606中或位于存储器系统604中。处理器604一般处理集成电路存储器604、502内的数据,随后在处理结束之后将这些数据复制到介质501中。已知有各种机制可用于管理介质501和集成电路存储元件604、502之间的数据移动,并且本发明不限于当前已知的或以后研发的任何机制。本发明也不限于特定的存储器系统604或存储系统606。
描述了本发明的至少一个实施例的若干方面,可以理解,本领域的技术人员可容易地想到各种更改、修改和改进。这样的更改、修改和改进旨在是本发明的一部分,且旨在处于本发明的精神和范围内。从而,上述描述和附图仅用作示例。
可以多种方式中的任一种来实现本发明的上述实施例。例如,可使用硬件、软件或其组合来实现各实施例。当使用软件实现时,该软件代码可在无论是在单个计算机中提供的还是在多个计算机和/或系统之间分布的任何合适的处理器或处理器的集合上执行。尽管可使用以任何适合的形式的电路来实现处理器,但这样的处理器可被实现为集成电路,集成电路组件中具有一个或多个处理器。
应当理解,执行此处描述的功能的任何组件或组件的集合一般可被认为是控制上述功能的一个或多个控制器。一个或多个控制器可以用众多方式来实现,诸如用专用硬件、或通过采用使用执行上述功能的微码或软件来编程的一个或多个处理器。在控制器存储或提供数据以供系统操作的情况下,这些数据可以存储在中央储存库中、多个储存库中、或其组合。
应当理解,计算机可以用多种形式中的任意一种来具体化,诸如机架式计算机、台式计算机、膝上型计算机、或平板计算机。此外,计算机可以具体化在通常不被认为是计算机但具有合适的处理能力的设备中,包括个人数字助理(PDA)、智能电话、或任何其他适合的便携式或固定电子设备。
同样,计算机可以具有一个或多个输入和输出设备。这些设备主要可用于呈现用户界面。可用于提供用户界面的输出设备的示例包括用于可视地呈现输出的打印机或显示屏和用于可听地呈现输出的扬声器或其它声音生成设备。可用于用户界面的输入设备的示例包括键盘和诸如鼠标、触摸板和数字化输入板等定点设备。作为另一示例,计算机可以通过语音识别或以其他可听格式来接收输入信息。
这些计算机可以通过任何合适形式的一个或多个网络来互连,包括作为局域网或广域网,如企业网络或因特网。这些网络可以基于任何合适的技术并可以根据任何合适的协议来操作,并且可以包括无线网络、有线网络或光纤网络。
而且,此处略述的各种方法或过程可被编码为可在采用各种操作系统或平台中任何一种的一个或多个处理器上执行的软件。此外,这样的软件可使用多种合适的程序设计语言和/或程序设计或脚本工具中的任何一种来编写,而且它们还可被编译为可执行机器语言代码或在框架或虚拟环境上执行的中间代码。
在这方面,本发明可被具体化为用一个或多个程序编码的一个计算机可读介质(或多个计算机可读介质)(如,计算机存储器、一个或多个软盘、紧致盘(CD)、光盘、数字视频盘(DVD)、磁带、闪存、现场可编程门阵列或其他半导体器件中的电路配置、或其他非瞬态的有形计算机可读存储介质),当这些程序在一个或多个计算机或其他处理器上执行时,它们执行实现本发明的上述多个实施例的方法。计算机可读介质或媒体可以是便携的,使得其上存储的一个或多个程序可被加载到一个或多个不同的计算机或其它处理器上以实现本发明上述的各个方面。如此处所使用的,术语“非瞬态计算机可读存储介质”只包含可被认为是产品(即,制品)或机器的计算机可读介质。
此处以一般的意义使用术语“程序”或“软件”来指可被用来对计算机或其他处理器编程以实现本发明上述的各个方面的任何类型的计算机代码或计算机可执行指令集。另外,应当理解,根据本实施例的一个方面,当被执行时实现本发明的方法的一个或多个计算机程序不必驻留在单个计算机或处理器上,而是可以按模块化的方式分布在多个不同的计算机或处理器之间以实现本发明的各方面。
计算机可执行指令可以具有可由一个或多个计算机或其他设备执行的各种形式,诸如程序模块。一般而言,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等。通常,程序模块的功能可以按需在多个实施例中进行组合或分布。
而且,数据结构能以任何适合的形式存储在计算机可读介质上。为简化说明,数据结构可被示为具有通过该数据结构中的位置而相关的字段。这些关系同样可以通过对各字段的存储分配传达各字段之间的关系的计算机可读介质中的位置来得到。然而,可以使用任何适合的机制在数据结构的各字段中的信息之间建立关系,包括通过使用指针、标签、或在数据元素之间建立关系的其他机制。
本发明的各个方面可单独、组合或以未在前述实施例中特别讨论的各种安排来使用,从而并不将其应用限于前述描述中所述或附图形中所示的组件的细节和安排。例如,可使用任何方式将一个实施例中描述的各方面与其他实施例中描述的各方面组合。
同样,本发明可被具体化为方法,其示例已经提供。作为该方法的一部分所执行的动作可以按任何适合的方式来排序。因此,可以构建各个实施例,其中各动作以与所示的次序所不同的次序执行,不同的次序可包括同时执行某些动作,即使这些动作在此处描述的各说明性实施例中被示为顺序动作。
在权利要求书中使用诸如“第一”、“第二”、“第三”等序数词来修饰权利要求元素本身并不意味着一个权利要求元素较之另一个权利要求元素的优先级、先后次序或顺序、或者方法的各动作执行的时间顺序,而仅用作将具有某一名字的一个权利要求元素与(若不是使用序数词则)具有同一名字的另一元素区分开的标签以区分各权利要求元素。
同样,此处所使用的短语和术语是出于描述的目的而不应被认为是限制。此处对“包括”、“包含”、或“具有”、“含有”、“涉及”及其变型的使用旨在包括其后所列的项目及其等效物以及其他项目。

Claims (8)

1.一种计算机系统(600)中使用的方法,所述计算机系统包括存储操作系统的第一实例(105)、多个应用程序(115)和由所述计算机系统的用户创建的数据(120)的至少一个存储元件(101),所述方法包括:
(A)从所述至少一个存储元件(101)中移除所述操作系统的第一实例(105)和所述多个应用程序(115),所述操作系统的第一实例包括设置;以及
(B)在所述至少一个存储元件(101)上安装所述操作系统的第二实例(125)以代替所述操作系统的第一实例(105),包括:
在将所述设置中的一个或多个应用于所述操作系统的第二实例(125)之前修改所述设置中的一个或多个(110);
将所述设置的至少一部分应用于所述操作系统的第二实例(125);
其中执行(A)和(B)而不必从所述至少一个存储元件(101)移除所述数据(120)。
2.如权利要求1所述的方法,其特征在于,所述操作系统的第一实例(105)包括用户账户(110),且其中(B)包括将所述用户账户的至少一部分迁移至所述操作系统的第二实例(125)。
3.如权利要求1所述的方法,其特征在于,(B)包括使用所述操作系统的恢复镜像。
4.如权利要求3所述的方法,其特征在于,(B)包括将所述恢复镜像从外部存储介质转移至所述至少一个存储元件。
5.一种计算机系统(600)中使用的方法,所述计算机系统包括存储操作系统的第一实例(105)、多个应用程序(115)和由所述计算机系统的用户创建的数据(120)的至少一个存储元件(101),所述方法包括:
(A)确定所述至少一个存储元件(101)是否有足够的存储空间用于存储所述操作系统的第一实例(105)和所述操作系统的第二实例(125)两者(502);
(B)如果在(A)确定所述至少一个存储元件(101)没有足够的存储空间用于存储所述操作系统的第一实例(105)和所述操作系统的第二实例(125)两者:
(B1)从所述至少一个存储元件(101)中移除所述操作系统的第一实例(105)和所述多个应用程序(115)(516);以及
(B2)在所述至少一个存储元件(101)上安装所述操作系统的第二实例(125)以代替所述操作系统的第一实例(105)(518);
其中执行(B1)和(B2)而不必从所述至少一个存储元件(101)移除所述数据(120);以及
(C)如果在(A)确定所述至少一个存储元件(101)具有足够的存储空间用于存储所述操作系统的第一实例(105)和所述操作系统的第二实例(125)两者,则:
(C1)在所述至少一个存储元件(101)上安装所述操作系统的第二实例(125);以及
(C2)从所述至少一个存储元件(101)中移除所述操作系统的第一实例(105)和所述多个应用程序(120);
其中执行(C1)和(C2)而不必从所述至少一个存储元件(101)移除所述数据(120)。
6.如权利要求5所述的方法,其特征在于,所述操作系统的第一实例(105)包括设置,且(B2)或(C1)包括将所述设置的至少一部分应用于所述操作系统的第二实例(125)。
7.如权利要求6所述的方法,其特征在于,(B2)或(C1)包括在将一个或多个所述设置应用于所述操作系统的第二实例(125)之前修改一个或多个所述设置。
8.如权利要求5所述的方法,其特征在于,(B2)或(C1)包括使用所述操作系统的恢复镜像(522)。
CN201110436710.5A 2010-12-14 2011-12-13 系统复位 Active CN102567128B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US12/967,838 US8639973B2 (en) 2010-12-14 2010-12-14 System reset
US12/967,838 2010-12-14

Publications (2)

Publication Number Publication Date
CN102567128A CN102567128A (zh) 2012-07-11
CN102567128B true CN102567128B (zh) 2015-01-07

Family

ID=46200667

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110436710.5A Active CN102567128B (zh) 2010-12-14 2011-12-13 系统复位

Country Status (7)

Country Link
US (4) US8639973B2 (zh)
EP (1) EP2652599B1 (zh)
JP (1) JP5757509B2 (zh)
KR (1) KR101781447B1 (zh)
CN (1) CN102567128B (zh)
TW (1) TWI505087B (zh)
WO (1) WO2012082146A1 (zh)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8473565B2 (en) * 2010-09-10 2013-06-25 International Business Machines Corporation Abstracting special file interfaces to concurrently support multiple operating system levels
US8793350B2 (en) * 2011-03-09 2014-07-29 Asset Science Llc Systems and methods for modifying content of mobile communication devices
CN102521031B (zh) 2011-12-13 2014-11-05 华为终端有限公司 移动终端预置应用程序的管理方法和移动终端
US10163388B2 (en) * 2015-09-14 2018-12-25 Apple Inc. Light-emitting diode displays with predictive luminance compensation
US9997104B2 (en) * 2015-09-14 2018-06-12 Apple Inc. Light-emitting diode displays with predictive luminance compensation
US10453388B2 (en) * 2015-09-14 2019-10-22 Apple Inc. Light-emitting diode displays with predictive luminance compensation
CN108509204B (zh) * 2018-03-14 2020-05-15 维沃移动通信有限公司 一种应用程序登录方法和移动终端
CN108829443B (zh) * 2018-05-03 2021-02-09 烽火通信科技股份有限公司 一种终端设备配置数据的设计方法、加载方法及其应用
KR20200014094A (ko) * 2018-07-31 2020-02-10 삼성전자주식회사 팩토리 데이터 리셋 기능에 의해 제거된 어플리케이션을 복원하는 장치 및 방법
US11182141B2 (en) 2019-05-21 2021-11-23 Vmware, Inc. Management platform recovery for a user device
US11263021B2 (en) * 2019-05-21 2022-03-01 Vmware, Inc. Management platform recovery for a user device
US11132188B2 (en) 2019-05-21 2021-09-28 Vmware, Inc Management platform recovery for a user device
US11126419B2 (en) 2019-05-21 2021-09-21 Vmware, Inc. Management platform recovery for a user device
US11126441B2 (en) * 2019-05-21 2021-09-21 Vmware, Inc. Management platform recovery for a user device
KR20210088100A (ko) * 2020-01-06 2021-07-14 휴렛-팩커드 디벨롭먼트 컴퍼니, 엘.피. 디바이스 리셋 후의 어플리케이션의 복구
US11544182B2 (en) * 2020-06-30 2023-01-03 Micron Technology, Inc. Smart factory reset procedure using one or more commands at least on user data and system data
CN112231147A (zh) * 2020-10-22 2021-01-15 深圳市沃特沃德股份有限公司 恢复出厂的方法、装置和计算机设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1437111A (zh) * 2002-02-05 2003-08-20 三星电子株式会社 嵌入式设备和初始化该设备的方法
CN101641681A (zh) * 2007-03-23 2010-02-03 微软公司 自管理处理设备
US7729690B1 (en) * 2006-02-15 2010-06-01 Trend Micro, Inc. Backup and restore of user data for mobile telephone

Family Cites Families (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4763333A (en) 1986-08-08 1988-08-09 Universal Vectors Corporation Work-saving system for preventing loss in a computer due to power interruption
US5297282A (en) * 1991-05-29 1994-03-22 Toshiba America Information Systems, Inc. Resume processing function for the OS/2 operating system
US6948099B1 (en) 1999-07-30 2005-09-20 Intel Corporation Re-loading operating systems
US6754855B1 (en) * 1999-12-01 2004-06-22 Microsoft Corporation Automated recovery of computer appliances
EP1195679A1 (en) 2000-10-06 2002-04-10 Hewlett-Packard Company, A Delaware Corporation Performing operating system recovery from external back-up media in a headless computer entity
GB2367656A (en) 2000-10-06 2002-04-10 Hewlett Packard Co Self-repairing operating system for computer entities
US7028079B2 (en) * 2001-05-25 2006-04-11 Lenovo (Singapore) Pte, Ltd. Method and apparatus for the automatic migration of applications and their associated data and configuration files
JP3977627B2 (ja) * 2001-11-05 2007-09-19 富士通株式会社 システムプログラムのバージョンアップ方法,システムプログラムのバージョンアップ用プログラムおよびシステムプログラムのバージョンアップ用プログラム記録媒体
US7706405B2 (en) 2002-09-12 2010-04-27 Interdigital Technology Corporation System for efficient recovery of Node-B buffered data following MAC layer reset
US7024581B1 (en) * 2002-10-09 2006-04-04 Xpoint Technologies, Inc. Data processing recovery system and method spanning multiple operating system
US20040117414A1 (en) * 2002-12-17 2004-06-17 Capital One Financial Corporation Method and system for automatically updating operating systems
AU2003235892A1 (en) 2003-05-08 2004-11-26 Fujitsu Limited Software configuration restoration method and device, and computer-readable recording medium
US20050144617A1 (en) 2003-12-06 2005-06-30 International Business Machines Corporation Automatic configuration of reinstall information
US20060059327A1 (en) 2004-09-13 2006-03-16 Brown Norman P Method to reset an image to a known state
CN101031879A (zh) * 2004-09-29 2007-09-05 皇家飞利浦电子股份有限公司 用于在计算机上安装软件程序的方法
US20060069902A1 (en) 2004-09-30 2006-03-30 Yu Rui Method for recovering operating system and user data executed in a computer and its recovery system thereof
JP4965824B2 (ja) * 2005-06-24 2012-07-04 株式会社東芝 情報処理装置およびデータ救済方法
US7523269B2 (en) * 2005-07-22 2009-04-21 Microsoft Corporation Preparing memory to allow access to data when primary operating system is unavailable
US20070143591A1 (en) * 2007-02-23 2007-06-21 Richard Dellacona Method for non-destructive restoration of a corrupted operating system
JP2007226828A (ja) * 2007-04-23 2007-09-06 Fujitsu Ltd ソフトウェア構成復元方法及び装置並びにコンピュータ読取可能な記憶媒体
US9146722B2 (en) 2008-04-16 2015-09-29 International Business Machines Corporation Reinstalling a computer based on frequency of application utilization
US8341384B2 (en) * 2008-06-06 2012-12-25 Apple Inc. Installation of software onto a computer
JP2010176534A (ja) * 2009-01-30 2010-08-12 Toshiba Corp 情報処理装置およびプログラム
US8069343B2 (en) * 2009-03-20 2011-11-29 Concorso James A Computer with bootable restoration
KR20110055841A (ko) * 2009-11-20 2011-05-26 삼성전자주식회사 시스템의 복구 방법 및 이를 지원하는 장치
US20120084601A1 (en) * 2010-09-30 2012-04-05 Yung-Chih Lee Computer system rescue method
CN104636375B (zh) * 2013-11-12 2019-05-07 中兴通讯股份有限公司 一种自动备份应用数据且按需恢复的方法及装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1437111A (zh) * 2002-02-05 2003-08-20 三星电子株式会社 嵌入式设备和初始化该设备的方法
US7729690B1 (en) * 2006-02-15 2010-06-01 Trend Micro, Inc. Backup and restore of user data for mobile telephone
CN101641681A (zh) * 2007-03-23 2010-02-03 微软公司 自管理处理设备

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
JP特开平5-189075A 1993.07.30 *

Also Published As

Publication number Publication date
EP2652599B1 (en) 2020-12-09
TW201224739A (en) 2012-06-16
JP5757509B2 (ja) 2015-07-29
CN102567128A (zh) 2012-07-11
US20160292039A1 (en) 2016-10-06
KR20130140777A (ko) 2013-12-24
US20140351640A1 (en) 2014-11-27
US8819487B2 (en) 2014-08-26
US20120151258A1 (en) 2012-06-14
US10067835B2 (en) 2018-09-04
US20130290949A1 (en) 2013-10-31
US8639973B2 (en) 2014-01-28
TWI505087B (zh) 2015-10-21
WO2012082146A1 (en) 2012-06-21
EP2652599A4 (en) 2014-11-19
EP2652599A1 (en) 2013-10-23
KR101781447B1 (ko) 2017-09-25
JP2014503895A (ja) 2014-02-13
US9367400B2 (en) 2016-06-14

Similar Documents

Publication Publication Date Title
CN102567128B (zh) 系统复位
US7774636B2 (en) Method and system for kernel panic recovery
US20070226685A1 (en) Apparatus and method for live loading of version upgrades in a process control environment
CN102193817B (zh) 简化物理和虚拟部署的管理
EP3769224B1 (en) Configurable recovery states
US20150186161A1 (en) Platform system, method for changing support hardware configuration of universal extensible firmware interface basic input output system and computer program product
CN102567136A (zh) 一种计算机系统的备份、还原方法、装置及计算机系统
JP2010079440A (ja) ファームウェア更新装置及び方法
US20130219380A1 (en) Time Shift Configuration Management for Software Product Installation
US20140298245A1 (en) Display Instance Management
CN101645003A (zh) 软件移植方法及装置
Bott et al. Windows 10 inside out
US20150324209A1 (en) Operating System Switching Method and Dual-Operating System Electronic Device Using the Same
US10564894B2 (en) Free space pass-through
CN105511904A (zh) 一种自动更新快捷窗口的方法及装置
US20150046414A1 (en) Computer product, managing apparatus, and managing method
Bettany et al. Exam Ref 70-698 Installing and Configuring Windows 10
JP2022132049A (ja) システム開発支援装置、システム開発支援方法およびシステム開発支援プログラム
CN105786652B (zh) 驱动备份、恢复的方法及装置
JPH04219822A (ja) ファイル更新方式
KR20140073152A (ko) 메모리 폴트 정보를 이용한 스냅샷 이미지 처리 장치 및 방법

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
ASS Succession or assignment of patent right

Owner name: MICROSOFT TECHNOLOGY LICENSING LLC

Free format text: FORMER OWNER: MICROSOFT CORP.

Effective date: 20150427

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

Effective date of registration: 20150427

Address after: Washington State

Patentee after: Micro soft technique license Co., Ltd

Address before: Washington State

Patentee before: Microsoft Corp.