JP5757509B2 - システム・リセット - Google Patents

システム・リセット Download PDF

Info

Publication number
JP5757509B2
JP5757509B2 JP2013544442A JP2013544442A JP5757509B2 JP 5757509 B2 JP5757509 B2 JP 5757509B2 JP 2013544442 A JP2013544442 A JP 2013544442A JP 2013544442 A JP2013544442 A JP 2013544442A JP 5757509 B2 JP5757509 B2 JP 5757509B2
Authority
JP
Japan
Prior art keywords
instance
operating system
storage element
installing
user
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
JP2013544442A
Other languages
English (en)
Other versions
JP2014503895A (ja
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.)
Microsoft Corp
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 JP2014503895A publication Critical patent/JP2014503895A/ja
Application granted granted Critical
Publication of JP5757509B2 publication Critical patent/JP5757509B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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)

Description

[0001] 本発明は、コンピューター・ソフトウェアに関し、更に特定すれば、システムをその元の工場出荷状態にリセットするために用いられるソフトウェアに関する。
[0002] 従来のオペレーティング・システムの中には、ユーザーに、コンピューター上で実行する当該オペレーティング・システムおよび/またはアプリケーションを、これらのコンポーネントが以前の時点において存在していた状態に「戻す」(roll back)または「復元する」(restore)能力を提供するものがある。例えば、「システム復元」能力は、システム・ファイル、レジストリー・キー、インストールされているアプリケーション、および/または他のコンポーネントを、システム誤動作または障害の前にこれらのコンポーネントが存在していた状態に戻すことをユーザーに可能にすることができる。同様に、オペレーティング・システムの中には、「システム・リセット」を実行する能力を提供するものがあり、これによってオペレーティング・システムおよび/またはアプリケーションをその元の「工場」設定値にリセットする。通例、システム・リセットは、システムを オペレーティング・システムおよび/またはアプリケーションに対して何らかの変更が行われる前、および/またはシステムにいずれのデーターも格納される前に存在していた状態に戻すためにシステム復元を実行することを伴う。(「システム復元」および「システム・リセット」という用語は、本明細書では、便宜上これらの能力を指すために用いられるが、これらの用語のいずれかと、従来のオペレーティング・システムのいずれかによって提供される能力を記述するために用いられる用語との間におけるいずれの類似性も、そのオペレーティング・システムによって提供される機能にその用語を限定するように、読解してはならない。)
[0003] 出願人は、コンピューター・システムの性能および/または信頼性が、多数の理由のいずれかによりときの経過とともに低下する可能性があることを認めている。例えば、オペレーティング・システムおよび/またはアプリケーションは、以前に観察したときよりも動作が遅くなったり、または頻繁に「クラッシュ」し始めることがある。これの理由の1つは、アプリケーションがもはやユーザーによって用いられていないにも拘わらず、リソースを消費し続けることをあげることができる。他の理由には、ユーザーがアプリケーションをアンインストールしようとしても、システムからそのアプリケーションが完全に除去されないことが考えられる。例えば、アプリケーション絡みでユーザーが体験する問題は、それをアンインストールすることを試みるが、そうするとアプリケーションが「引き裂かれた」(torn)状態で残ってしまうか、または「ゴミ箱」(wastes)の中に残ってしまう可能性があり、システム性能を損なう虞れがある。更に他の理由には、ユーザーによって行われた設定と、1つ以上のアプリケーションおよび/またはオペレーティング・システムによって行われた設定とがときの経過と共に一致しなくなることが考えられる。例えば、ユーザーがある時点において1群の設定を確定したが、後にインストールされたアプリケーションがこれらの設定の一部または全部を、他の設定とは相反するように変化させてしまうことが考えられる。
[0004] ユーザーがシステム性能および/または信頼性の低下を体験すると、システム全体のリカバリー(recovery)を実行しようとすることがあるが、通例、ユーザーは彼/彼女の個人的なデーターを外部の記憶デバイスにバックアップし、ハード・ドライブをフォーマットし直し、そしてオペレーティング・システムおよびあらゆるアプリケーションをインストールし直す必要がある。システム性能低下に対処するためにシステム全体のリカバリーをユーザーが実行することには、多数の問題が伴う。第1に、これは非常に時間がかかる作業である。加えて、ユーザーの中には、システム全体のリカバリーを開始する前に、彼らの個人データーを外部記憶デバイスにバックアップしなければならないことを認めない者もいるかもしれず、後にハード・ドライブをフォーマットし直すときに、そのデーターを結果的に失う可能性がある。その結果、ユーザーがアプリケーションをアンインストールすることによってシステム性能を改善しようとして失敗したことによって苛々し、更にシステム全体のリカバリーを実行したことの結果彼らの個人的データーを再現不可能に失うと、二重に苛々するという結末になる可能性がある。
[0005] 代わりにユーザーが通常採用する手法は、システムが最適に実行していた以前の状態にシステムを復元すること、またはそれを元の工場出荷状態にリセットすることである。しかしながら、これらの手法の各々にも同様に多数の問題がある。例えば、システムを以前にバックアップしたバージョンに復元するには、バックアップが行われていることが前提条件となる。バックアップを行うのは、時間がかかるプロセスであり、(先に注記したように)外部記憶デバイスが必要となるが、外部記憶デバイスをなくす可能性があり、および/または必要になったときになかなか見つけられなこともあり得る。加えて、システムがいつ最適に実行しているか識別すること、そして彼/彼女がその時点において、今後の使用のためにシステムをバックアップする必要があることを覚えておくことは、ユーザーにとって非常に難しい可能性がある。ユーザーが、ある特定の時点においてシステムが最適に実行していると確信し、バックアップを開始することを覚えていても、ユーザーの確信が誤っていることもある。何故なら、システムは、何の兆候も見られない内でも、後の性能低下の根源的な原因を含む可能性があるからである。加えて、システム復元またはシステム・リセットのいずれを実行しても、システム全体のリカバリーを実行する場合と同様、ユーザーは彼らの個人的データーを外部ドライブにバックアップする必要がある。何故なら、従来の手法では、復元またはリセット動作の間にユーザーのデーターが削除されないことを保証できないからである。
[0006] 本発明の実施形態は、システム上にあるユーザーの個人的データーを破壊することなく、オペレーティング・システムおよび/またはアプリケーションの既存のインスタンスを新たなインスタンスと交換するためにシステム・リセットを実行することによって、ユーザーがシステム性能および/または信頼性低下に取り組むことができる技法を提供し、これにより従来の手法に付随するこれらおよびその他の欠点に取り組む。システム上において性能および/または信頼性低下の原因となり得るアプリケーションはいずれも、完全に除去することができる。オペレーティング・システムおよびアプリケーションの既存のインスタンスを除去する前に、ユーザーの個人的データーをハード・ディスク上にある保護エリア内に待避させておき、除去が行われる間破壊されずに残すことができる。オペレーティング・システムの新たなインスタンスを適用するとき、ユーザーは彼/彼女がシステム上に有することを望むあらゆるアプリケーションを再インストールすることができる。したがって、本発明の実施形態は、ユーザーが、彼らの個人的データーを破壊することなく、そして時間がかかり複雑なバックアップおよび/または復元動作を実行する必要なく、システムの性能および/または信頼性低下に取り組むことができる簡単な技法を提供することができる。
[0007] 以上のことは、本発明の非限定的な摘要である。本発明は、添付した特許請求の範囲によって定義されることとする。
[0008] 添付図面は、同じ縮尺率で描かれることを意図していない。図面において、同じまたはほぼ同じコンポーネントが種々の図において示されている場合、各々、同様の番号によって表されている。明確化のために限って、全ての図面において全てのコンポーネントには名称を付けていない。
図1は、本発明の実施形態による、システム・リセットを実行する前におけるシステム構成例を示すブロック図である。 図2は、本発明の実施形態による、オペレーティング・システムの新たなインスタンスの適用時におけるシステム構成例を示すブロック図である。 図3は、本発明の実施形態による、オペレーティング・システムの新たなインスタンスにユーザー設定およびアカウントを転送したときにおけるシステム構成例を示すブロック図である。 図4は、本発明の実施形態による、オペレーティング・システムおよび/またはアプリケーションの以前のインスタンスを除去したときのシステム構成例を示すブロック図である。 図5は、本発明の実施形態にしたがってシステム・リセットを実行するプロセス例を示すフロー・チャートである。 図6は、本発明の実施形態を実現するために採用することができるコンピューター例を示すブロック図である。 図7は、本発明の態様を具体化する命令を記録することができるメモリー例を示すブロック図である。
[0016] 本発明の実施形態は、システム・リセットを実行することによって、ユーザーがシステムの性能および/または信頼性低下(例えば、用いられていないアプリケーションがシステム・リソースを不必要に消費することによって起こり、アプリケーションのアンインストールを試してみてそのアプリケーションの残片が後に残ってしまったことによって起こり、および/または他の原因によって起こる)に取り組むことができる技法を提供する。実施形態では、システム・リセットによって、ユーザーのデーターを破壊することなく、システム上にあるオペレーティング・システムの以前のインスタンスを新たなインスタンスと交換し、システム上にインストールされているアプリケーションを除去する。ユーザーのデーターは破壊されずに残るので、本発明の実施形態は、システム全体のリカバリーまたはシステムの復元に必要となる、個人データーを外部記憶デバイスにバックアップするという時間のかかるプロセスに耐える必要なく、またシステムを後に復元しようとするバックアップを取っておくことができるように、システムがいつ最適に実行していたか判断する必要もなく、ユーザーがシステム性能および/または信頼性低下に取り組むことを可能にすることができる。
[0017] 本発明の実施形態は、様々なステップを含むプロセスを提供する。第1に、ユーザーのデーターおよび設定値を特定し一覧表に纏め、次いでストレージにおける1つ以上の保護された位置に移動させる。次に、システム上にあるオペレーティング・システムおよびあらゆるアプリケーションの既存のインスタンスを除去するが、ユーザーの個人的なデーターおよび設定値は不変のままにしておく。次に、オペレーティング・システムの新たなインスタンスを適用し、次いで、ユーザーの設定値またはその一部を、オペレーティング・システムの新たなインスタンスに適用する。その後、ユーザーは、彼/彼女が望むいずれのアプリケーションでも再インストールすることができる。システム上にあるオペレーティング・システムおよびあらゆるアプリケーションの以前のインスタンスは(例えば、その全体が)除去されるので、ユーザーは再インストールされたアプリケーションを選択することができ、不要なアプリケーションの痕跡はシステム上に残らず、その性能を低下させることはない。更に、この手順全体は、ユーザーの個人的なデーターを一時的に外部記憶デバイスに移す必要なく実行することができる。この手順については、以下で図1から図4を参照して更に詳しく説明する。
[0018] 図1は、本発明の実施形態による、システム・リセットを実行する前におけるシステム例の上位図である。図1に示す例では、記憶エレメント101が現在のオペレーティング・システム(OS)105を格納しており、あらゆるユーザー・アカウントを反映する。現OS105を構成する情報の記憶エレメント101上の位置は、適したやり方であればいずれでも指定することができる。例えば、WA、RedmondのMicrosoft Corporationが提供するMicrosoft Windows(登録商標)系のオペレーティング・システムでは、現OS105を構成する情報はC:\Windows(登録商標) locationに格納することができる。他のオペレーティング・システムでは、1つ以上の他の位置を指定することや、全く位置を指定しない場合もある。 本発明の実施形態は、いずれの特定の位置に格納されているオペレーティング・システムと共に用いることにも限定されない。
[0019] 記憶エレメント101は、適したタイプの記憶エレメントであればいずれでも備えることができる。これは、本発明の実施形態はこれに関して限定されないからである。例えば、記憶エレメント101は、ハード・ディスク、フラッシュ・ドライブ、および/または他のあらゆる適したタイプの物理的記憶媒体(複数の媒体)を備えるのでもよい。しかしながら、記憶エレメント101は、物理的な記憶エレメントを備える必要はなく、代わりに1つ以上の仮想記憶エレメントを備えてもよい。例えば、1つ以上の物理的記憶エレメントを表す1つ以上のソフトウェア構造(constructs)によって、ソフトウェア・エレメント101を実装してもよい。更に、図1に示す例は1つの記憶エレメントしか含まないが、本発明の全ての実施形態がそのように限定されるのではなく、代わりに、適した数の記憶エレメントであればいくつでも採用することができる。本発明の実施形態は、いずれの特定の実施態様のやり方にも限定されない。
[0020] 図1に示す例では、記憶エレメント101は、アプリケーションを「標準」位置115に格納する。これらのアプリケーションは、例えば、インストールされるアプリケーションを格納するためにオペレーティング・システムによって指定されたファイル・システム位置にインストールされたアプリケーションを含むこともできる。例えば、Microsoft Windows(登録商標)系オペレーティング・システムでは、アプリケーション115をC:\Program Filesディレクトリに格納することができる。他のオペレーティング・システムでは、1つ以上の他の位置を指定したり、またはアプリケーション115を格納する位置を全く指定しない場合もある。システムから除去すべきアプリケーションを指定するための適したやり方であればいずれでも採用することができる。何故なら、本発明の実施形態はこれに関して限定されないからである。
[0021] 図1の例では、記憶エレメント101はデーターおよびアプリケーションを「非標準」位置120にも格納する。実施形態では、データーおよびアプリケーション120が、記憶エレメント101上に格納されているが、現OS105およびアプリケーション115によってもたらされた(encompass)のではない何らかの情報を表す場合がある。しかしながら、本発明の全ての実施形態がそのように限定されるのではない。保存すべきデーターおよびアプリケーションは、いずれの適したやり方でも指定することができる。例えば、実施形態は記憶エレメント101を走査して、ユーザーの個人的データー、アカウント、アプリケーションおよび/または設定値を格納しているように思われる記憶位置を特定し、このような情報を格納するために通常用いられることが分かっている記憶位置(例えば、フォルダー)を探し、あるいは他のいずれかの適したやり方でデーターおよびアプリケーション120を特定することができる。
[0022] 図2は、オペレーティング・システム125の新たなインスタンスを記憶エレメント101に適用した後における、図1に示したシステム例を示す。実施形態では、オペレーティング・システムの新たなインスタンスは、OSの「クリーン・コピー」(clean copy)であり、全ての設定値がデフォルト・モードに置かれており、クリーン・コピーでなければ(otherwise)オペレーティング・システムが提供することができたアプリケーションは含まれていない。しかしながら、新たなオペレーティング・システムのインスタンスは、適した設定値および/またはアプリケーションであればいずれでも組み込むことができる。何故なら、本発明の実施形態はこれに関して限定されないからである。
[0023] オペレーティング・システム125の新たなインスタンスの記憶エレメント101への適用は、多数の方法のいずれでも行うことができる。例えば、実施形態は、外部媒体(例えば、記録ディスク)から「リカバリー・イメージ」を転送することを含んでもよい。リカバリー・イメージは、オペレーティング・システムの新たなインストールに必要とされるデーターの本体を含む。他の実施形態では、記憶エレメント101のリカバリー・パーティションからリカバリー・イメージを読み出すことを伴うことがある。これに関して、必要な場合にオペレーティング・システムの再インストールを容易に行うことができるように、コンピューターおよび/または記憶エレメントの製造業者が、リカバリー・イメージを、オペレーティング・システムの「生の」インスタンスが格納されている位置とは別の記憶エレメント上の位置にロードすることもできる。
[0024] 更に他の実施形態では、OS125の新たなインスタンスを構成するリカバリー・イメージを作成するために、現OS105をオフライン環境にブートすることを伴うこともある。このオフライン環境は、実施形態では、オペレーティング・システムが実行していない実行環境である。オフライン環境は、例えば、特定の目標に定めたプログラムを実行するのに必要なコンポーネントのみを含むことができる。この環境にブートされると、現オペレーティング・システム105によるこれらのプログラムの実行によって、リカバリー・イメージを生成させることができる。次に、図2に示すように、リカバリー・イメージを記憶エレメント101に適用することができる。
[0025] OS125の新たなインスタンスは、記憶エレメント101上における適した位置であればどこにでも格納することができる。例えば、実施形態では、OS125の新たなインスタンスは、現OS105が格納されているフォルダー(1つまたは複数)とは異なる1つ以上のフォルダーに格納することができる。本発明の実施形態は、OS125の新たなインスタンスをいずれの特定の位置(1つまたは複数)に格納することにも限定されない。
[0026] OS125の新たなインスタンスを記憶エレメント101に適用したことの結果、記憶エレメント101上にはこの時点でオペレーティング・システムの2つのインスタンスが存在することになり、現OS105がユーザーの設定値、アカウント、およびその他の情報を反映する。図3は、これらの設定値、アカウント、およびその他の情報をOS125の新たなインスタンスに適用するために変更されたシステム例を示す。具体的には、図3は、ユーザーの設定値、アカウント、およびその他の情報が現OS105からOSの新たなインスタンス125に転送されることを、130において示す。これは、多数の方法のいずれでも実行することができる。例えば、実施形態の中には、現OS105によって維持されているレジストリーの1つ以上のハイブ(hives)を、OS125の新たなインスタンスによって維持されているレジストリーに移す場合もある。
[0027] ユーザーの設定値、アカウント、およびその他の情報をOS125の新たなインスタンスに移すには、多数の動作のいずれを実行することも含むことができる。実施形態の中には、既存の設定値から生ずることが分かっている今後の問題を阻止するためというようなことのために、移動が設定値の変更を含むとよい場合もある。例えば、特定の設定値、または設定値の組み合わせが問題であることが分かっている(例えば、ヘルプ・ラインへのユーザーの通話回数に基づいて)場合、この設定値(1つまたは複数)をOS125の新たなインスタンスには適用しないのでもよい。例えば、ワイヤレス・ネットワーク構成に関するある種の設定値の結果ユーザー体験に問題が生ずることが分かっている場合(ユーザーが誤った設定値を入力した(implement)ため、アプリケーションがときの経過と共に設定値を変更したため、および/または他の理由のために、これが生ずることがある)、これらの設定値をOS125の新たなインスタンスに移さなくてもよい。実施形態の中には、問題を解決することがわかっている設定値または設定値の組み合わせを、代わりに入力することができる場合がある。本発明の実施形態は、適したやり方であればいずれでも実現することができる。
[0028] 1つ以上のアプリケーションを除去することによって設定値が用いられなくなることがあるので、ユーザー設定値の一部を移さなくてもよい。例えば、ユーザーのデスクトップ上において、除去しようとしているアプリケーションを指す「プログラム・ショートカット」(program shortcut)は、OS125の新たなインスタンスに転送しなくてもよい。OS125の新たなインスタンスに転送される設定値、アカウント、および/またはその他の情報がいずれも有効であり、システム上にある他の情報と相容れることを保証するためには、多数の種類の措置のいずれでも講ずることができる。
[0029] 実施形態では、ユーザー・アカウントへのリンクを指定するあらゆるデーター・ファイルに対して、OS125の新たなコピーにおいてアカウントが存在することを保証するために、ユーザー・アカウント111の移動が、データーおよびアプリケーション120を検査することを伴うとよい。例えば、ユーザーAおよびBが図示のシステムと、ファイルA.txtおよびB.txtをそれぞれ用いる場合、ユーザーAおよびBのアカウントがOS125の新たなインスタンスに移動することを保証するために、ユーザー・アカウントの移動が、ファイルA.txtおよびB.txtを調べることを伴うとよい。勿論、本発明の実施形態は、いずれかの適したやり方で、データーがいずれの数(ひとりを含む)のユーザーにでもアクセス可能であることを保証することができる。
[0030] 図4は、現OS105およびアプリケーション115を除去したときにおけるシステム例を示す。除去は、多数の方法のいずれでも行うことができる。例えば、現OS105およびアプリケーション115を構成する情報の記憶位置が分かっている場合、その記憶位置(1つまたは複数)を指定する1つ以上の削除動作を実行することによって、この情報を除去することができる。現OS105およびアプリケーション115を構成する情報の記憶位置の全てが分かっているのではない場合、または確信をもって判定することができない場合、OS125の新たなインスタンスならびにデーターおよびアプリケーション120を格納することが分かっている位置に格納されない情報の全てを除去することができる。現OS105およびアプリケーション115を除去するためには、多数の技法のいずれでも採用することができる。何故なら、本発明の実施形態はこれに関して限定されないからである。
[0031] 本発明の実施形態は、システム・リセットが行われる前にある種の条件が満たされていることを検証するための手段を設けることもできる。例えば、実施形態は、システム・リセットを開始する前に、記憶エレメント101がOS125の新たなインスタンスのために十分な格納空間を含むことを検証することができる。含まない場合、最初に記憶エレメント101から現OS105を除去し(「ワイプする」)、次いでOS125の新たなインスタンスを(例えば、その除去に先立って、現OS105が格納されていた同じ記憶位置(1つまたは複数)に)適用する柔軟性をユーザーに提供するとよい。この技法の一例(即ち、プロセス例500)を図5に示す。
[0032] プロセス例500は、動作502から開始し、システム・リセットを開始する前に1つ以上のチェックを行う。例えば、記憶エレメントが、オペレーティング・システムの新たなインスタンス、および現在格納されているオペレーティング・システムの現インスタンスの双方を格納する十分な記憶空間を含むか否か判定を行うことができる。プロセス例500では、動作502は、オペレーティング・システムの新たなインスタンスをインスタンス化するために用いられるリカバリー・イメージを突き止めることも含む。
[0033] 動作502におけるチェック(1つまたは複数)の結果、記憶エレメント上にはオペレーティング・システムの新たなインスタンスおよびオペレーティング・システムの現インスタンスの双方を格納するための十分な記憶空間がないと判定された場合、プロセス例500は動作504に進み、リセットを進めるには、オペレーティング・システムの現インスタンスを除去する必要があることの指示をユーザーに与える。実施形態の中には、オペレーティング・システムの現在のインスタンスを除去した結果、オペレーティング・システムの現在のインスタンスにおいて反映されていたユーザー設定値がいずれも保存されず、「工場リセット」が実行されることになる場合がある。しかしながら、本発明の全ての実施形態がこのような実施態様に限定されるのではない。例えば、実施形態の中には、リセットが実行される前にオペレーティング・システムの現在のインスタンスが除去されても、ユーザーの設定値を保存することができる能力を設けることができるものもある。
[0034] 動作502において、オペレーティング・システムの双方のインスタンスに対して十分な記憶空間が存在すると判定され、更に動作502において実行された他のあらゆる妥当性判断も合格であった場合、プロセス例500は動作506に進み、「基本」および「高度」リセット動作間で選択を行うようにユーザーを促す。実施形態の中には、「高度」リセットを実行することが、リセットに関するある種の選択肢をユーザーに提示することを含む場合もある。ユーザーは、リセットを実行するやり方を指定するために、これらの選択肢から選択することができる。選択肢の一例は、例えば、オペレーティング・システムの現在のインスタンスを、新たなインスタンスを適用する前に除去するか否かであってもよい。多数の選択肢のいずれでも提示することができる。
[0035] 次いで、基本または高度リセット動作を選択するユーザーの入力を、動作508において処理する。ユーザーが高度リセットを実行することを選択した場合、プロセス例500は動作510に進み、リセット動作に関する選択肢を指定することをユーザーに許可する。次いで、動作510の完了時に、あるいは動作508においてユーザーが基本リセット動作を選択したと判断した場合、または動作504の完了時に、動作512が開始する。
[0036] 動作512において、オフライン環境でオペレーティング・システムを再起動させる。先に注記したように、オフライン環境とは、オペレーティング・システムが実行していない実行環境とすることができる。しかしながら、本発明の実施形態はこのような実施形態に限定されるのではない。更に、オフライン環境にブートすることは、オペレーティング・システムの新たなインスタンスを記憶エレメントに適用するために可能な1つの技法に過ぎない。多数の他の技法のいずれでも、代わりに採用することができる。
[0037] 次に、プロセス例500は動作514に進み、オペレーティング・システムの現インスタンスの除去が承認されたか否か(例えば、動作504における警告の提示後、またはユーザーが動作506において高度リセットを選択し、次いで動作510において現インスタンスを除去すべきことを示した後)判定を行う。承認された場合、プロセス500は動作516に進み、動作516においてオペレーティング・システムの現インスタンスを除去する。次いで、オフライン・ブート環境におけるプログラムの実行によってというようにして、動作518においてリカバリー・イメージを適用する。
[0038] 動作514に戻り、オペレーティング・システムの現インスタンスの除去が承認されなかったと判定された場合(例えば、ユーザーが動作506において基本リセットを選択したか、または動作506において高度リセットを選択したが、動作510において現インスタンスを除去すべきことを指定しなかったために)、プロセス500は動作522に進み、既に記憶エレメントに格納されているオペレーティング・システムの現インスタンスに加えて、リカバリー・イメージを適用する。次いで、プロセス例500は動作524に進み、データーおよび設定値を収集して格納し、次いで動作526においてリセットを確定する(commit)。
[0039] 動作526または518のいずれかの完了時に、プロセス500は動作520に進み、適用したリカバリー・イメージを起動する。次いで、動作528において、オペレーティング・システムの現インスタンスが、新たなインスタンスを適用する前に除去されたか否か判定を行う。そうである場合、プロセス例500は動作530に進み、「第1ブート」体験をユーザーに示す。これに関して、プロセス例500におけるオペレーティング・システムの現インスタンスの除去によって、「工場リセット」が実行されたので、動作530は、初期設定値を定めること、および/または他の構成設定タスクを実行することをユーザーに許可することを含むとよい。
[0040] 動作528において、オペレーティング・システムの既存のインスタンスが、新たなインスタンスを適用する前に除去されなかったと判定された場合、プロセス例500は動作532に進み、オペレーティング・システムの新たに適用されるインスタンスに、データーおよび/または設定値(例えば、動作524において収集した)を適用する。次いで、プロセス例500は動作532に進み、リセットを実行した結果除去されたいずれのアプリケーションについてもこれを再度取得することに対する指針を、ユーザーに提示する。これは、多数の方法のいずれでも提示することができる。例えば、以前に購入したプログラムをユーザーに再インストールさせるオンライン設備へのアクセスを、ユーザーに与えることができる。
[0041] 動作530または534のいずれかの完了時に、プロセス例500は完了する。
[0042] 尚、以上のことから、本発明の実施形態は、システム・リセットを実行している間に、ユーザーによっては別個に購入する必要があるかもしれない外部記憶デバイスにユーザーの個人的データーおよび/またはカスタム化した設定値を保存し、ユーザーが時間のかかるバックアップを実行するプロセスに耐える必要をなくすることを可能にする。コンピューターおよび/またはオペレーティング・システムの供給業者も便益を得ることができる。何故なら、供給業者は、リセットを実行することに伴うユーザー・サポートの対話減少を体験することができるからであり、リセット動作を簡素化することにより、より多くのユーザーが彼ら自身でその動作を実行する自信を持つことができるからである。更に、システム・リセットの間にユーザーのデーターおよび/または設定値を保存するので、以前では失われたデーターおよび/または設定値に起因して行われていたユーザー・サポートの対話を減少させることができる。
[0043] 本発明の特徴を実施するためのシステムおよび方法の種々の態様は、図6に示すコンピューター・システム例600のような、1つ以上のコンピューター・システム上で実現することができる。コンピューター・システム600は、入力デバイス(1つまたは複数)602、出力デバイス(1つまたは複数)601、プロセッサー603、メモリー・システム604、およびストレージ606を含み、これらは全て、直接または間接的に相互接続メカニズム605によって結合されている。相互接続メカニズム605は、1つ以上のバス、スイッチ、ネットワーク、および/または他のいずれかの適した相互接続を備えることができる。入力デバイス(1つまたは複数)602は、ユーザーまたは機械(例えば、人間の操作者)から入力を受け取り、出力デバイス(1つまたは複数)601は、情報をユーザーまたは機械(例えば、液晶ディスプレイ)に表示または送信する。これらの入力および出力デバイス(1つまたは複数)は、とりわけ、ユーザー・インターフェースを提示するために用いることができる。ユーザー・インターフェースを提供するために用いることができる出力デバイスの例には、出力の視覚的提示のためのプリンターまたはディスプレイ、および出力の可聴提示のためのスピーカーまたは他の音響生成デバイスが含まれる。ユーザー・インターフェースのために用いることができる入力デバイスの例には、キーボード、ならびにマウスのようなポインティング・デバイス、タッチ・パッド、およびディジタル化タブレットを含む。他の例として、コンピューターが音声認識によって、または他の可聴フォーマットで入力情報を受けても良い。
[0044] プロセッサー603は、通例、オペレーティング・システム(例えば、Microsoft Windows(登録商標)系のオペレーティング・システム、または他のいずれかの適したオペレーティング・システム)と呼ばれるコンピューター・プログラムを実行する。オペレーティング・システムは、他のコンピューター・プログラムの実行を制御し、スケジューリング、入力/出力および他のデバイスの制御、アカウンティング、コンパイル、ストレージ割り当て、データー管理、メモリー管理、通信およびデーター・フロー管理の機能を備えている。集合的に、プロセッサーおよびオペレーティング・システムは、アプリケーション・プログラムおよび他のコンピューター・プログラム言語を書くコンピューター・プラットフォームを定める。
[0045] また、プロセッサー603は、種々の機能を実装するために1つ以上のコンピューター・プログラムを実行することもできる。これらのコンピューター・プログラムは、いずれのタイプのコンピューター・プログラム言語でも書くことができ、手続き型プログラミング言語、オブジェクト指向プログラミング言語、マクロ言語、またはその組み合わせを含む。これらのコンピューター・プログラムは、記憶システム606に格納することができる。記憶システム606は、揮発性または不揮発性媒体上に情報を保持することができ、固定でもまたは着脱可能でもよい。記憶システム606を図7に更に詳しく示す。
[0046] 記憶システム606は、有形コンピューター読み取り可能および書き込み可能不揮発性記録媒体501を含むことができ、この上に、コンピューター・プログラムまたはこのプログラムが用いる情報を定義する信号を格納する。記録媒体は、例えば、ディスク・メモリー、フラッシュ・メモリー、および/または情報を記録および格納するために使用可能な他のあらゆる製造品目(1つまたは複数)であってもよい。通例、動作中、プロセッサー603は不揮発性記録媒体601から揮発性メモリー502(例えば、ランダム・アクセス・メモリー、即ち、RAM)にデーターを読み込ませる。揮発性メモリー502の方が、媒体501よりも、プロセッサー603がこの情報に速くアクセスすることを可能にする。メモリー502は、図6に示す記憶システム606またはメモリー・システム604内に配置することができる。プロセッサー603は、一般に、集積回路メモリー604、502内部でデーターを操作し、次いで、処理が完了した後にデーターを媒体501にコピーする。媒体501と集積回路メモリー・エレメント604、502との間におけるデーター移動を管理する種々のメカニズムが知られており、本発明は、現在知られているか、または今後開発されるかに関係なく、いずれのメカニズムにも限定されない。また、本発明は、特定のメモリー・システム604にも記憶システム606にも限定されない。
[0047] 以上、本発明の少なくとも1つの実施形態の様々な態様について説明したが、種々の変形、変更、および改良が当業者には想起されることは認められよう。このような変形、変更、および改良は、本開示の一部であることを意図しており、本発明の主旨および範囲内に該当することを意図している。したがって、以上の説明および図面は、一例に過ぎない。
[0048] 本発明の以上で説明した実施形態は、多数の方法のいずれでも実現することができる。例えば、これらの実施形態は、ハードウェア、ソフトウェア、またはその組み合わせを用いて実現することもできる。ソフトウェアで実現する場合、いずれかの適したプロセッサーまたはプロセッサーの集合体において、1つのコンピューターに設けられるのかまたは複数のコンピューターおよび/またはシステム間で分散されるのかには関係なく、ソフトウェア・コードを実行することができる。このようなプロセッサーは、集積回路として実現するとよく、1つ以上のプロセッサーが集積回路コンポーネント内にある。しかし、いずれかの適したフォーマットの回路を用いて、プロセッサーを実現することもできる。
[0049] 尚、本明細書において記載した機能を実行するコンポーネントまたはコンポーネントの集合体はいずれも、先に論じた機能を制御する1つ以上のコントローラーとして包括的に考えることができることは、認められてしかるべきである。1つ以上のコントローラーは、専用のハードウェアによってというように、または以上で明記した機能を実行するためにマイクロコードまたはソフトウェアを用いてプログラミングされた1つ以上のプロセッサーを採用することによって、多数の方法で実現することができる。コントローラーがシステム動作のためのデーターを格納するまたは供給する場合、このようなデーターは、中央のレポジトリー、複数のレポジトリー、またはその組み合わせに格納することができる。
[0050] 更に、コンピューターは、ラック組み立てコンピューター(rack-mounted computer)、デスクトップ・コンピューター、ラップトップ・コンピューター、またはタブレット・コンピューターというような、複数の形態の内いずれでも具体化することもできることは認められてしかるべきである。加えて、コンピューターが、パーソナル・ディジタル・アシスタント(PDA)、スマート・フォン、あるいは他のあらゆる適した携帯用または固定電子デバイスを含む、一般にはコンピューターとは見なされないが、適した処理能力を有するデバイスに埋め込まれてもよい。
[0051] また、コンピューターが1つ以上の入力および出力デバイスを有してもよい。これらのデバイスは、とりわけ、ユーザー・インターフェースを提示するために用いることができる。ユーザー・インターフェースを提供するために用いることができる出力デバイスの例には、出力の視覚的提示のためのプリンターまたはディスプレイ、および出力の可聴提示のためのスピーカーまたは他の音響生成デバイスが含まれる。ユーザー・インターフェースのために用いることができる入力デバイスの例には、キーボード、ならびにマウスのようなポインティング・デバイス、タッチ・パッド、およびディジタル化タブレットを含む。他の例として、コンピューターが音声認識によって、または他の可聴フォーマットで入力情報を受けても良い。
[0052] このようなコンピューターは、企業ネットワークまたはインターネットのような、ローカル・エリア・ネットワークまたはワイド・エリア・ネットワークを含む、いずれかの適した形態の1つ以上のネットワークによって相互接続することができる。このようなネットワークは、いずれかの適した技術に基づけばよく、いずれかの適したプロトコルにしたがって動作すればよく、ワイヤレス・ネットワーク、有線ネットワーク、または光ファイバ・ネットワークを含むことができる。
[0053] また、本明細書で概要を説明した種々の方法またはプロセスは、ソフトウェアとしてコード化することができる。このソフトウェアは、種々のオペレーティング・システムまたはプラットフォームのいずれかを採用する1つ以上のプロセッサーにおいて実行可能である。加えて、このようなソフトウェアは、複数の適したプログラミング言語および/またはプログラミングまたはスクリプティング・ツールの内いずれを用いても書くこともでき、更にまた、フレームワークまたは仮想環境において実行される、実行可能機械語コードまたは中間コードとしてコンパイルされてもよい。
[0054] これに関して、本発明は、1つ以上のプログラムがエンコードされたコンピューター読み取り可能記憶媒体(複数のコンピューター読み取り可能媒体(例えば、コンピューター・メモリー、1つ以上のフロッピー(登録商標)・ディスク、コンパクト・ディスク(CD)、光ディスク、ディジタル・ビデオ・ディスク(DVD)、磁気テープ、フラッシュ・メモリー、フィールド・プログラマブル・ゲート・アレイまたは他の半導体デバイスにおける回路構成、あるいは他の一時的でない、有形コンピューター記憶媒体)として具体化することもできる。このプログラムが1つ以上のコンピューターまたは他のプロセッサーにおいて実行されると、以上で説明した本発明の種々の実施形態を実現する。1つまたは複数のコンピューター読み取り可能記憶媒体は移植可能とすることができ、そこに格納されている1つ以上のプログラムは、1つ以上の異なるコンピューターまたは他のプロセッサーにロードして、先に論じたような本発明の種々の形態を実現することができる。本明細書において用いる場合、「一時的でないコンピューター読み取り可能記憶媒体」という用語は、生産物(即ち、生産品目)または機械(machine)であると見なすことができるコンピューター読み取り可能媒体のみを含む。
[0055] 「プログラム」または「ソフトウェア」という用語は、先に論じた本発明の種々の態様を実施するようにコンピューターまたは他のプロセッサーをプログラミングするために採用することができる、あらゆるタイプのコンピューター・コードまたはコンピューター実行可能命令を指すように、本明細書では包括的な意味で用いられている。加えて、この実施形態の一態様によれば、実行されると本発明の方法を実行する1つ以上のコンピューター・プログラムは、1つのコンピューターまたはプロセッサー上に存在する必要はなく、本発明の種々の態様を実施するために、モジュール状に多数の異なるコンピューターまたはプロセッサー間に分散されていてもよいことは認められてしかるべきである。
[0056] コンピューター実行可能命令は、1つ以上のコンピューターまたは他のデバイスによって実行する、プログラム・モジュールのような多くの形態とすることができる。一般に、プログラム・モジュールは、ルーチン、プログラム、オブジェクト、コンポーネント、データー構造等を含み、特定のタスクを実行するか、または特定の抽象データー・タイプを実施する。通例、種々の実施形態において所望通りに、プログラム・モジュールの機能を組み合わせることまたは分散することもできる。
[0057] また、データー構造は、いずれかの適した形態で、コンピューター読み取り可能媒体に格納することができる。図示を簡略化するために、データー構造は、当該データー構造における場所によって関係付けられたフィールドを有するように示すことができる。同様に、このような関係は、コンピューター読み取り可能媒体においてフィールド間で関係を伝える場所と共に、これらのフィールドにストレージを割り当てることによって達成することができる。しかしながら、データー構造のフィールドにおいて情報間に関係を確立するためには、いずれかの適したメカニズムを用いることができ、ポインター、タグ、またはデーター・エレメント間に関係を確立するその他のメカニズムの使用によることが含まれる。
[0058] 本発明の種々の態様は、単独でも、組み合わせでも、または先に説明した実施形態において具体的な論じられなかった種々の構成でも用いることができ、したがって、前述の説明において明記したコンポーネントや図面に示したコンポーネントの詳細や構成には、その応用は限定されない。例えば、一実施形態において説明した態様を、他の実施形態において説明した態様といかように組み合わせてもよい。
[0059] また、本発明は、方法として具体化することができ、その例を示した。この方法の一部として実行される動作は、いずれの適した方法でも順序を決定することができる。したがって、実施形態は、図示した順序とは異なる順序で動作が実行される構成にすることもでき、一部の動作を同時に実行することを含むことができるが、本明細書において説明した例示的な実施形態では連続的な動作として示されている。
[0060] 「第1」、「第2」、「第3」等のような序数を請求項において用いて請求項の要素を修飾する場合、それ自体は、優先順位も、時間的先行も、あるいは1つの請求項要素の他の要素に対する順序、即ち、方法の動作が実行される時間的順序も言外に含むことはなく、単に、請求項要素を区別するために、ある名称を有する1つの請求項要素を、同じ名称を有する他の要素(序数項の使用を除く)から区別する付箋として用いられるに過ぎない。
[0061] また、本明細書において用いた言葉づかいや用語は、説明を目的にしているのであり、限定と見なしてはならない。「含む」(including)、「含む」(comprising)、または「有する」(having)、「含む」(containing)、「伴う」(involving)、およびこれらの派生形は、本明細書では、その後に羅列される項目、その均等物、および付加的な項目も包含することを意味する。

Claims (19)

  1. オペレーティング・システムの第1インスタンスと、複数のアプリケーションと、コンピューター・システムのユーザーによって作成されたデーターとを格納する少なくとも1つの記憶エレメントを備えている前記コンピューター・システムにおいて用いる方法であって、
    前記オペレーティング・システムの前記第1インスタンスと前記複数のアプリケーションを前記少なくとも1つの記憶エレメントから除去するステップであって、前記オペレーティング・システムの前記第1インスタンスが設定値を含む、ステップと、
    前記オペレーティング・システムの前記第1インスタンスと交換するために、前記少なくとも1つの記憶エレメント上に前記オペレーティング・システムの第2インスタンスをインストールするステップであって、
    前記設定値の1つ以上を前記オペレーティング・システムの前記第2インスタンスに適用する前に、前記設定値の1つ以上を変更特定の設定値または設定値の組み合わせが前記オペレーティング・システムの前記第2インスタンスに適用されないように、前記設定値の少なくとも一部を、前記オペレーティング・システムの前記第2インスタンスに適用するステッ
    を含むステップ
    含み、前記データーを前記少なくとも1つの記憶エレメントから除去することなく、前記除去するステップおよび前記インストールするステップを実行する、方法。
  2. 請求項1記載の方法において、前記オペレーティング・システムの前記第1インスタンスが、ユーザー・アカウントを含み、前記インストールするステップが、前記ユーザー・アカウントの少なくとも一部を、前記オペレーティング・システムの前記第2インスタンスに移すステップを含む、方法。
  3. 請求項1記載の方法において、前記インストールするステップが、前記オペレーティング・システムのリカバリー・イメージを用いるステップを含む、方法。
  4. 請求項3記載の方法において、前記インストールするステップが、前記リカバリー・イメージを外部記憶媒体から前記少なくとも1つの記憶エレメントに転送するステップを含む、方法。
  5. 請求項3記載の方法において、前記インストールするステップが、前記リカバリー・イメージを前記少なくとも1つの記憶エレメント上のリカバリー・パーティションから読み出すステップを含む、方法。
  6. 請求項3記載の方法において、前記インストールするステップが、前記オペレーティング・システムの前記第1インスタンスをオフライン環境にブートするステップと、前記オペレーティング・システムの前記第1インスタンスを利用して前記リカバリー・イメージを作成するステップとを含む、方法。
  7. 請求項1記載の方法において、前記インストールするステップが、前記除去するステップが完了した後にのみ実行される、方法。
  8. 請求項1記載の方法において、前記インストールするステップが、前記除去するステップの完了前に実行される、方法。
  9. 請求項1記載の方法において、前記除去するステップまたは前記インストールするステップを開始する前に、前記少なくとも1つの記憶エレメントが前記オペレーティング・システムの前記第1インスタンスと前記第2インスタンスの両方を記憶するのに十分な記憶空間を有しているか否かを判定するステップを更に含む、方法。
  10. 請求項9記載の方法において、前記少なくとも1つの記憶エレメントが前記オペレーティング・システムの前記第1インスタンスと前記第2インスタンスの両方を記憶するのに十分な記憶空間を有していないと判定された場合、前記除去するステップが前記インストールするステップの前に実行される、方法。
  11. 請求項10記載の方法において、除去された前記複数のアプリケーションのうちの少なくとも1つを再度取得するように前記ユーザーに指針を与えるステップを更に含む、方法。
  12. コンピューター・システムであって、
    オペレーティング・システムの第1インスタンス、複数のアプリケーション、および前記コンピューター・システムのユーザーによって作成されたデーターを格納する少なくとも1つの記憶エレメントと、
    少なくとも1つのプロセッサーと
    備え、前記少なくとも1つのプロセッサーは、
    前記データーを前記少なくとも1つの記憶エレメントから除去することなく、前記オペレーティング・システムの前記第1インスタンスと前記複数のアプリケーションを前記少なくとも1つの記憶エレメントから除去し、
    前記データーを前記少なくとも1つの記憶エレメントから除去することなく、前記オペレーティング・システムの前記第1インスタンスと交換するために、前記少なくとも1つの記憶エレメント上に前記オペレーティング・システムの第2インスタンスをインストールし、
    前記除去または前記インストールの前に、前記少なくとも1つの記憶エレメントが前記オペレーティング・システムの前記第1インスタンスと前記第2インスタンスの両方を記憶するのに十分な記憶空間を有しているか否かを判定
    特定の設定値または設定値の組み合わせが前記オペレーティング・システムの前記第2インスタンスに適用されないように、前記オペレーティング・システムの前記第1インスタンスが含む設定値の少なくとも一部を、前記オペレーティング・システムの前記第2インスタンスに適用する
    ようにプログラムされている、コンピューター・システム。
  13. 請求項12記載のコンピューター・システムにおいて、前記オペレーティング・システムの前記第1インスタンスが、ユーザー・アカウントを含み、前記インストールが、前記ユーザー・アカウントの少なくとも一部を、前記オペレーティング・システムの前記第2インスタンスに移すことを含む、コンピューター・システム。
  14. 請求項12記載のコンピューター・システムにおいて、前記少なくとも1つのプロセッサーは、前記オペレーティング・システムの前記第1インスタンスをオフライン環境にブートし、前記オペレーティング・システムの前記第1インスタンスを利用してリカバリー・イメージを作成するように更にプログラムされている、コンピューター・システム。
  15. 請求項12記載のコンピューター・システムにおいて、前記少なくとも1つのプロセッサーは、前記データーを前記少なくとも1つの記憶エレメントの保護エリアに移動するように更にプログラムされている、コンピューター・システム。
  16. コンピューター・システムに方法を実行させるプログラムであって、前記コンピューター・システムは、オペレーティング・システムの第1インスタンスと、複数のアプリケーションと、コンピューター・システムのユーザーによって作成されたデーターとを格納する少なくとも1つの記憶エレメントを備え、前記方法
    前記オペレーティング・システムの前記第1インスタンスと前記複数のアプリケーションとを前記少なくとも1つの記憶エレメントから除去するステップと、
    前記オペレーティング・システムの前記第1インスタンスと交換するために、前記少なくとも1つの記憶エレメント上に、前記オペレーティング・システムの第2インスタンスをインストールするステップと
    特定の設定値または設定値の組み合わせが前記オペレーティング・システムの前記第2インスタンスに適用されないように、前記オペレーティング・システムの前記第1インスタンスが含む設定値の少なくとも一部を、前記オペレーティング・システムの前記第2インスタンスに適用するステップと
    含み、前記データーを前記少なくとも1つの記憶エレメントから除去することなく、前記除去するステップおよび前記インストールするステップを実行し、前記インストールするステップが、前記除去するステップの完了前に実行される、プログラム
  17. 請求項16記載のプログラムであって、前記オペレーティング・システムの前記第1インスタンスが、ユーザー・アカウントを含み、前記インストールするステップが、前記ユーザー・アカウントの少なくとも一部を、前記オペレーティング・システムの前記第2インスタンスに移すステップを含む、プログラム
  18. 請求項16記載のプログラムであって、前記インストールするステップが、前記オペレーティング・システムの前記第1インスタンスをオフライン環境にブートするステップと、前記オペレーティング・システムの前記第1インスタンスを利用してリカバリー・イメージを作成するステップとを含む、プログラム
  19. 請求項16記載のプログラムであって、前記方法が更に、前記除去するステップおよび前記インストールするステップの前に、前記少なくとも1つの記憶エレメントが前記オペレーティング・システムの前記第1インスタンスと前記第2インスタンスの両方を記憶するのに十分な記憶空間を有しているか否かを判定するステップを含む、プログラム
JP2013544442A 2010-12-14 2010-12-18 システム・リセット Active JP5757509B2 (ja)

Applications Claiming Priority (3)

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

Publications (2)

Publication Number Publication Date
JP2014503895A JP2014503895A (ja) 2014-02-13
JP5757509B2 true JP5757509B2 (ja) 2015-07-29

Family

ID=46200667

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013544442A Active JP5757509B2 (ja) 2010-12-14 2010-12-18 システム・リセット

Country Status (7)

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

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 삼성전자주식회사 팩토리 데이터 리셋 기능에 의해 제거된 어플리케이션을 복원하는 장치 및 방법
US11126419B2 (en) 2019-05-21 2021-09-21 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
US11126441B2 (en) * 2019-05-21 2021-09-21 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
US11182141B2 (en) 2019-05-21 2021-11-23 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
CN112231147B (zh) * 2020-10-22 2024-09-03 深圳市沃特沃德软件技术有限公司 恢复出厂的方法、装置和计算机设备

Family Cites Families (30)

* 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 富士通株式会社 システムプログラムのバージョンアップ方法,システムプログラムのバージョンアップ用プログラムおよびシステムプログラムのバージョンアップ用プログラム記録媒体
US7428633B2 (en) * 2002-02-05 2008-09-23 Samsung Electronics Co., Ltd. Embedded device and method of initializing the same
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
WO2004099972A1 (ja) 2003-05-08 2004-11-18 Fujitsu Limited ソフトウェア構成復元方法及び装置並びにコンピュータ読取可能な記憶媒体
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
JP2008515074A (ja) * 2004-09-29 2008-05-08 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ コンピュータにソフトウェアプログラムをインストールする方法
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
US7729690B1 (en) 2006-02-15 2010-06-01 Trend Micro, Inc. Backup and restore of user data for mobile telephone
US20070143591A1 (en) * 2007-02-23 2007-06-21 Richard Dellacona Method for non-destructive restoration of a corrupted operating system
US7913113B2 (en) * 2007-03-23 2011-03-22 Microsoft Corporation Self-managed processing device
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 中兴通讯股份有限公司 一种自动备份应用数据且按需恢复的方法及装置

Also Published As

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

Similar Documents

Publication Publication Date Title
JP5757509B2 (ja) システム・リセット
US8135813B2 (en) Method, system and program product for remotely deploying and automatically customizing workstation images
EP3769224B1 (en) Configurable recovery states
US6205558B1 (en) Recovery of file systems after modification failure
US8732121B1 (en) Method and system for backup to a hidden backup storage
US8312259B1 (en) System and method for booting a computer from backup
US20080104441A1 (en) Data processing system and method
US9619340B1 (en) Disaster recovery on dissimilar hardware
WO2019074730A1 (en) IMPROVED TECHNIQUES TO UPDATE SOFTWARE
JP5284604B2 (ja) 過渡状態情報を格納するための方法、システムおよびコンピュータ・プログラム
US9852029B2 (en) Managing a computing system crash
EP3769225B1 (en) Free space pass-through
Halsey et al. Installing Windows 10 on Your Computer

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20131218

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20131218

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140910

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140916

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20141119

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20150427

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20150508

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150526

R150 Certificate of patent or registration of utility model

Ref document number: 5757509

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R360 Written notification for declining of transfer of rights

Free format text: JAPANESE INTERMEDIATE CODE: R360

R370 Written measure of declining of transfer procedure

Free format text: JAPANESE INTERMEDIATE CODE: R370

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250