(57)【要約】  処理装置は保護サービスを自動的に提供することができると共に、ユーザーファイル、システムファイル、構成ファイル、及び他の情報をバックアップ及び復元するためのバックアップサービスを提供することができる。処理装置は、１つ又は複数の性能条件を検査すると共に、該１つ又は複数の性能条件に基づいて性能を改善するための処置を実施するように構成することができる。処理装置は構成変更及びファイル変更を監視すると共に、セッション中にアプリケーションによって行われた構成変更及び／又はファイル変更を持続又は破棄する能力をユーザーに提供することができる。処理装置はリカバリーボタン又はリカバリースイッチを備えることができ、該リカバリーボタン又はリカバリースイッチは、選択又は押下されると、処理装置を動作状態に復元させることができる。処理装置は不安定性を自動的に検出することができると共に、不安定性の可能性のある原因を修復するように自動的に試みることができる。処理装置は、バックアップサービス及びリカバリーサービスを実施することができる追加のチップセットも備えることができる。
2010522400.tif 000002
【特許請求の範囲】
【請求項１】
処理装置の自己管理方法であって、
前記処理装置に関して構成変更を監視及び記録すること（図２Ａ、２１６）、
セッション中にアプリケーション毎の単位でファイルシステム変更を監視及び記録すること（図６Ａ、６０４）、
前記構成変更又は前記ファイル変更を持続するか否かを判断すること（図２Ａ、２１２）（図６Ｂ、６２６）、及び
前記構成変更又は前記ファイル変更が持続されるべきでないとき、該構成変更又は該ファイル変更を取り消すこと（図２Ａ、２１４）（図６Ｂ、６２８〜６４２）、
を含む、処理装置の自己管理方法。
【請求項２】
前記構成変更又は前記ファイル変更を持続するか否かを判断することは、
少なくとも１つのユーザーファイル、少なくとも１つのシステムファイル、又は該少なくとも１つのユーザーファイル及び該少なくとも１つのシステムファイルの両方に対してセッション中に行われた変更が持続されるべきか又は破棄されるべきかに関して、ユーザーにプロンプトすることをさらに含む、請求項１に記載の方法。
【請求項３】
少なくとも１つのシステム不安性が存在するか否かを自動的に検出すること、及び
前記少なくとも１つのシステム不安性を検出した後、前記処理装置を安定状態に復元しようと自動的に試みること、
をさらに含む、請求項１に記載の方法。
【請求項４】
少なくとも１つのシステム不安性が存在するか否かを自動的に検出すること、
前記少なくとも１つのシステム不安性が検出されると、前記処理装置を安定状態に復元しようと自動的に試みること、及び
前回のセッション中に変更されたファイルを復元するオプションをユーザーに提供すること、
をさらに含む、請求項１に記載の方法。
【請求項５】
リカバリーボタンを提供することであって、該リカバリーボタンを起動することによって、前記処理装置を、以前から既知である複数の機能状態のうちの１つに復元する、提供することをさらに含む、請求項１に記載の方法。
【請求項６】
前記処理装置のブートが成功した後に、システム設定のバックアップコピーを自動的に作成すること、及び
前記処理装置の後続のブートの失敗の後に、前記バックアップコピーから前記システム設定を自動的に復元すること、
をさらに含む、請求項１に記載の方法。
【請求項７】
前記処理装置のブートの失敗を自動的に検出すること、及び
記憶領域からシステム設定を自動的に復元することであって、前記処理装置を機能状態に復元しようと試みる、復元すること、
をさらに含む、請求項１に記載の方法。
【請求項８】
処理装置であって、
少なくとも１つのプロセッサー（図１Ａ、１０４）（図１Ｂ、１３２及び１３４）と、
前記少なくとも１つのプロセッサーのための命令を含むメモリー（図１Ａ、１０６）（図１Ｂ、１３６及び１３８）と、
前記少なくとも１つのプロセッサー及び前記メモリーに接続されるバスであって、前記少なくとも１つのプロセッサーと前記メモリーとの間の通信能力を提供するように配置される、バス（図１Ａ、１０２）（図１Ｂ、１３０）と、
を備え、前記メモリーは、
前記処理装置の起動が成功した後、システム設定のバックアップコピーを自動的に作成する（図３、３０６）ための命令と、
前記処理装置の後続のブートの失敗を検出した後に、前記バックアップコピーから前記システム設定を自動的に復元する（図３、３０５）ための命令と、
を含む、処理装置。
【請求項９】
前記メモリーは、
前記処理装置の性能を自動的に監視するための命令と、
前記処理装置の前記性能の前記監視の結果に基づいて前記処理装置の前記性能を改善するための処置を自動的に実施するための命令と、
をさらに含む、請求項８に記載の処理装置。
【請求項１０】
前記バスへの接続を有するリカバリーボタンであって、該リカバリーボタンが起動されると、信号が前記少なくとも１つのプロセッサーによって受信され、それによって該少なくとも１つのプロセッサーが前記処理装置を動作状態に復元するための命令を実行するような、リカバリーボタンをさらに備える、請求項８に記載の処理装置。
【請求項１１】
前記少なくとも１つのプロセッサー及び前記メモリーとは別個のチップセットであって、前記バスに接続され、少なくとも１つの第２のプロセッサーと、該少なくとも１つの第２のプロセッサーがバックアップサービス及び自動リカバリーサービスを実施するための命令とを含む、チップセットをさらに備える、請求項８に記載の処理装置。
【請求項１２】
前記メモリーは、アンチウィルス保護サービス、アンチマルウェア保護サービス、ファイアウォール保護サービス、又はセキュリティパッチ管理サービスのうちの少なくとも１つを提供するための命令をさらに含む、請求項８に記載の処理装置。
【請求項１３】
前記メモリーは、
セッション毎にファイル変更を監視するための命令と、
セッション中に行われたファイル変更を取り消すための命令と、
をさらに含む、請求項８に記載の処理装置。
【請求項１４】
前記メモリーは、
アプリケーション毎の単位でファイル変更を監視するための命令と、
ユーザーがアプリケーション毎の単位で前記ファイル変更の選択的ロールバックを引き起こすことを可能にするための命令と、
をさらに含む、請求項８に記載の処理装置。
【請求項１５】
処理装置の少なくとも１つのプロセッサーのための命令を有する有形機械可読媒体であって、
セッション中のファイル変更及び構成変更を自動的に監視及び記録する（図２Ａ、２１６）（図６Ａ、６０４）ための命令と、
セッション毎の単位で前記監視されたファイル変更及び前記監視された構成変更を持続するか又は破棄するかオプションをユーザーに提供する（図６Ｂ、６２４）ための命令と、
を含む、有形機械可読媒体。
【請求項１６】
前記ユーザーが前記監視されたファイル変更及び前記監視された構成変更を破棄するオプションを選択すると前記セッション中に行われた前記ファイル変更及び前記構成変更を取り消すための命令をさらに含む、請求項１５に記載の有形機械可読媒体。
【請求項１７】
前記処理装置の起動の失敗を検出するための命令と、
前記処理装置の前記起動の失敗を検出すると該処理装置を安定状態に復元しようと自動的に試みるための命令と、
をさらに含む、請求項１５に記載の有形機械可読媒体。
【請求項１８】
ユーザーが前記処理装置のリカバリーボタンを選択するのに応答して該処理装置を安定状態に復元しようと試みるための命令をさらに含む、請求項１５に記載の有形機械可読媒体。
【請求項１９】
前記処理装置の性能を監視すると共に、１つ又は複数の条件が発生すると、前記処理装置の前記性能を改善するための処置を取るための命令をさらに含む、請求項１５に記載の有形機械可読媒体。
【請求項２０】
前記処理装置をコンピューターウィルス及びマルウェアから保護するための命令と、
セッション中にアプリケーションによって行われたファイルシステム変更を常に破棄するように前記処理装置を構成する能力をユーザーに提供するための命令と、
をさらに含む、請求項１５に記載の有形機械可読媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、自己管理型処理装置に関する。
【背景技術】
【０００２】
たとえばパーソナルコンピューター（ＰＣ）のような幾つかの処理装置は、該処理装置を保守するための内蔵ツールを有する。通常、内蔵ツールは単独で基本処理の保守必要性を満たし、該内蔵ツールを適切に使用するのに高レベルのコンピューター専門知識を要求する場合がある。一般的に、処理装置のユーザーは、処理装置が故障するか又はデータが損失するかのいずれかが発生するまで内蔵ツールを構成することを考えない。さらに、処理装置のユーザーはオペレーティングシステムを不安定にさせるアプリケーションをインストールする場合がある。アプリケーションの不安定性、ハードウェア構成の問題、データ損失、ヒューマンエラー、又は他の問題に起因して、処理装置が不安定になるか又は適切に起動しなくなると、処理装置のユーザーは、処理装置製造者、アプリケーション開発者、又は技術サポート人員に連絡する場合があり、それによってサポートコストが増大する。さらに、サポート人員がその１つ若しくは複数の問題の対処に成功するか、又は処理装置が修理のために発送された後に戻ってくるまで、システム又は処理装置が利用可能でない場合があるため、システム稼働率が悪影響を受ける場合がある。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
この発明の概要は、詳細な説明において以下でさらに説明される概念を選抜したものを、単純化した形態で紹介するために提供される。この発明の概要は、特許請求される主題の主要な特徴又は重要な特徴を特定するように意図されるものでもなければ、特許請求される主題の範囲を限定するのに使用されるように意図されるものでもない。
【０００４】
今日処理装置のユーザーが直面する、ハードウェア故障を除くほとんど全ての問題は、処理装置のシステム状態に対する変更が不揮発性記憶装置に書き込まれることに起因して発生する場合がある。たとえば、処理装置は、後に変更が読み取られるときに正常に動作しなくなる場合がある。対照的に、揮発性記憶装置又は不揮発性読み取り専用記憶装置のみを有する処理装置は、変更を持続することができないため、通常、システム状態に対する変更に起因して正常に動作しなくなることはないだろう。本開示の主題と一致する実施の形態は、処理装置のシステム状態又は不揮発性記憶装置内の他の処理装置データに対する変更を保存することができる。
【課題を解決するための手段】
【０００５】
本開示の主題に整合する実施の形態では、自己管理型処理装置を提供することができる。処理装置は、パーソナルコンピューター（ＰＣ）、ラップトップコンピューター、又は他の処理装置とすることができる。処理装置は、該処理装置及び該処理装置に記憶されるデータを保護するための多数のサービスを提供することができると共に、該処理装置を故障後に動作状態に復元するためのサービスを提供することができる。
【０００６】
処理装置の実施の形態は、アンチウィルス保護サービス、アンチマルウェア保護サービス、ファイアウォール保護サービス、セキュリティパッチ管理サービス、又は他の保護サービスを含むがこれらに限定されない保護サービスを提供することができる。さらに、処理装置は、ユーザーファイル、システムファイル、構成情報、及び他の構成情報をバックアップ及び復元するためのバックアップサービスを提供することができる。処理装置は、性能状態を検査又は監視することができると共に、該検査又は監視された性能状態に基づいて性能を改善するための処置を実施することができる。処理装置は、構成変更及びファイル変更を監視することができると共に、アプリケーション毎の単位での構成変更及び／若しくはファイル変更、又はシステム全体としての構成変更及び／若しくはファイル変更を持続又は破棄する能力をユーザーに提供することができる。たとえば、幾つかの実施の形態では、システムブート時、ユーザーログイン時、ユーザーログオフ時、及びシステムシャットダウン時に構成変更及び／又はファイル変更を持続又は破棄する能力をユーザーに提供することができる。
【０００７】
処理装置の幾つかの実施の形態はリカバリーボタン又はリカバリースイッチを含むことができる。リカバリーボタン又はリカバリースイッチは、選択又は押下されると、処理装置に故障状態から動作状態へ復元させることができるか、又は処理装置に該処理装置が復元することになる１つ又は複数のタイプの情報に関してユーザーにプロンプトさせることができる。処理装置の様々な実施の形態は、自動的に不安定性を検出することができると共に、該不安定性の可能性のある原因を修復しようと自動的に試みることができる。処理装置のいくつかの実施の形態は、追加のチップセット又はファームウェアコード（たとえば基本入出力システム（ＢＩＯＳ）コード若しくは他のファームウェアコード）を含むことができ、それらは、処理装置が他の方法で故障からリカバリーすることができない可能性がある場合に、バックアップサービス及びリカバリーサービスを実施することができる。
【０００８】
上記で挙げた利点及び特徴並びに他の利点及び特徴を得ることができる方法を説明するために、以下でより詳細な説明が提供され、該説明は添付の図面において示されるその具体的な実施形態への参照によって与えられる。これらの図面は典型的な実施形態のみを示し、したがって本開示の範囲を限定するものとみなされるべきではなく、実施態様は、添付の図面の使用を通じてさらに具体的且つ詳細に記述及び説明される。
【図面の簡単な説明】
【０００９】
【図１Ａ】本開示の主題と一致する実施態様において使用することができる例示的な処理装置を示す機能ブロック図である。
【図１Ｂ】本開示の主題と一致する実施態様において使用することができる例示的な処理装置を示す機能ブロック図である。
【図２Ａ】保護サービス及び自動更新を提供すると共に変更を持続又は破棄するための例示的なプロセスのフローチャートである。
【図２Ｂ】保護サービス及び自動更新を提供すると共に変更を持続又は破棄するための例示的なプロセスのフローチャートである。
【図３】システム設定及びシステムファイルのバックアップを維持すると共に前回のセッションからファイルを復元する能力を提供するための例示的なプロセスのフローチャートである。
【図４】不安定性を検出し、該不安定性を修復しようと自動的に試みると共に、ファイルを復元する能力を提供するための例示的なプロセスのフローチャートである。
【図５】処理装置の性能を監視すると共に該性能を改善するための処置を自動的に実施するための例示的なプロセスのフローチャートである。
【図６Ａ】ファイル及びディレクトリに対して行われる変更を監視すると共に該監視された変化を持続又は破棄するための例示的なプロセスのフローチャートである。
【図６Ｂ】ファイル及びディレクトリに対して行われる変更を監視すると共に該監視された変化を持続又は破棄するための例示的なプロセスのフローチャートである。
【図７Ａ】リカバリーボタンスイッチが押下又は選択された後、リカバリー処置を実施するための例示的なプロセスのフローチャートである。
【図７Ｂ】リカバリーボタンスイッチが押下又は選択された後、リカバリー処置を実施するための例示的なプロセスのフローチャートである。
【発明を実施するための形態】
【００１０】
以下で実施形態が詳細に論考される。具体的な実施態様が論考されるが、これは例示の目的のみで行われることを理解されたい。当業者であれば、本開示の主題の精神及び範囲から逸脱することなく他の構成要素及び構成を使用することができることを認識するであろう。
概説
本開示の主題と一致する実施形態では、自己管理処理装置を提供することができる。処理装置は、パーソナルコンピューター（ＰＣ）、ラップトップコンピューター、又は他の処理装置とすることができる。様々な実施形態において、処理装置は、たとえばアンチウィルス保護サービス、アンチマルウェア保護サービス、ファイアウォール保護サービス、セキュリティパッチ管理サービスのような保護サービス、又は他の保護サービスを自動的に提供するように構成することができる。
【００１１】
幾つかの実施形態では、処理装置は、ユーザーファイル、たとえばドライバ及びオペレーティングシステムファイル並びに他のシステムファイルのようなシステムファイル、たとえば基本入出力システム（ＢＩＯＳ）設定のような構成情報及び他の構成情報、又は他の情報をバックアップ及び復元するためのバックアップサービスも含むことができる。
【００１２】
幾つかの実施形態では、処理装置は、１つ又は複数の性能状態を検査すると共に、該１つ又は複数の性能状態が検出されると、性能を改善する処理を実施するように構成することができる。たとえば、１つの実施形態では、処理装置は記憶装置のファイルフラグメンテーションを周期的に検査することができると共に、記憶装置が所定のフラグメンテーションレベルに達すると、デフラグメンテーションを自動的に実施することができる。さらに、幾つかの実施形態では、処理装置はページファイルサイズを自動的に設定することができる。処理装置は他の処理検査も実施することができ、１つ又は複数の性能状態が検出されると、他の実施形態における他の処置を引き続き実施することができる。
【００１３】
幾つかの実施形態では、処理装置は構成変更及びファイル変更を監視することができると共に、アプリケーションによって行われた構成変更及び／又はファイル変更を持続又は破棄する能力をユーザーに提供することができる。
【００１４】
幾つかの実施形態では、処理装置はリカバリーボタン又はリカバリースイッチを備えることができる。リカバリーボタン又はリカバリースイッチは、選択又は押下されると、処理装置を動作状態に復元させることができる。さらに、リカバリーボタンが選択又は押下されると、処理装置は、該処理装置が復元するべきである１つ又は複数のタイプの情報に関してユーザーにプロンプトすることができる。
【００１５】
本開示の主題と一致する実施形態では、幾つかの処理装置は、たとえばオペレーティングシステムを首尾よくブートすることの失敗のような不安定性、又は他の不安定性を自動的に検出することができると共に、処理装置がオペレーティングシステムを首尾よくブートすることができるように、それらの不安定性の可能性のある原因を修復しようと自動的に試みることができる。
【００１６】
さらに、幾つかの実施形態では、処理装置は追加のチップセット又はファームウェアコード（たとえばＢＩＯＳコード若しくは他のファームウェアコード）を含むことができ、それらは、処理装置が他の方法で故障からリカバリーすることができない可能性がある場合に、バックアップサービス及びリカバリーサービスを実施することができる。
例示的な処理装置
図１Ａは、本開示の主題と一致する処理装置の実施形態を実施するのに使用することができる、例示的な処理装置１００を示す機能ブロック図である。処理装置１００は、バス１０２、プロセッサー１０４、メモリー１０６、読み出し専用メモリー（ＲＯＭ）１０８、記憶装置１１０、入力装置１１２、出力装置１１４、及びリカバリーボタン又はリカバリースイッチ１１６を備えることができる。バス１０２は処理装置１００の構成要素間の通信を可能にすることができる。
【００１７】
プロセッサー１０４は命令を解釈及び実行する少なくとも１つの従来のプロセッサー又はマイクロプロセッサーを含むことができる。メモリー１０６は、ランダムアクセスメモリー（ＲＡＭ）、又は情報及びプロセッサー１０４が実行するための命令を格納する別のタイプの動的記憶装置とすることができる。メモリー１０６は、プロセッサー１０４が命令の実行中に使用する一時変数又は他の中間情報も格納することができる。ＲＯＭ１０８は、従来のＲＯＭ装置、又はプロセッサー１０４のための静的情報及び命令を格納する別のタイプの静的記憶装置を含むことができる。記憶装置１１０は、データ及び／又は命令を格納するための任意のタイプの媒体を含むことができる。幾つかの実施形態では、記憶装置１１０は不揮発性記憶装置とすることができる。
【００１８】
入力装置１１２は、たとえばキーボード、マウス、又は他の入力装置のような、ユーザーが処理装置１００に情報を入力することを可能にする１つ又は複数の従来の機構を含むことができる。出力装置１１４は、ディスプレイ又は他の出力装置を含む、ユーザーに情報を出力する１つ又は複数の従来の機構を含むことができる。
【００１９】
リカバリーボタン又はリカバリースイッチ１１６は、ユーザーが押下又は選択することができるハードウェアボタン又はハードウェアスイッチとすることができる。リカバリーボタン又はリカバリースイッチ１１６を、バス１０２を介してプロセッサー１０４に接続することができる。リカバリーボタン又はリカバリースイッチ１１６がユーザーによって押下又は選択されると、信号がプロセッサー１０４に送信され、プロセッサー１０４に、処理装置１００を安定状態に復元するための命令を実行させると共に、システム設定、システムファイル、又はユーザーファイル、及び他の情報を復元するための命令を実行させることができる。
【００２０】
処理装置１００は、プロセッサー１０４がたとえばメモリー１０６のような有形機械可読媒体又は他の媒体内に含まれる命令シーケンスを実行するのに応答して、そのような機能を実施することができる。そのような命令は、記憶装置１１０のような別の機械可読媒体から、又は通信インタフェース（図示せず）を介して別個の装置からメモリー１３０内に読み込むことができる。
【００２１】
図１Ｂは、本開示の主題と一致する幾つかの実施形態を実施するのに使用することができる、例示的な処理装置１２８を示す機能ブロック図である。処理装置１２８は、バス１３０、第１のプロセッサー１３２、第２のプロセッサー１３４、第１のメモリー１３６、第２のメモリー１３８、第１の読み出し専用メモリー（ＲＯＭ）１４０、第２のＲＯＭ１４４、第１の記憶装置１４２、第２の記憶装置１５２、入力装置１４６、出力装置１４８、及びリカバリーボタン又はリカバリースイッチ１５４を備えることができる。バス１３０は処理装置１２８の構成要素間の通信を可能にすることができる。
【００２２】
第２のプロセッサー１３４、第２のメモリー１３８、第２のＲＯＭ１４４、及び第２の記憶装置１５２は、幾つかの実施形態では別個のチップセット内に含めることができる。処理装置１２８が不安定性を経験するか、又は処理装置１２８が他の態様で、たとえばオペレーティングシステムのブートの失敗のような不具合若しくは他の不具合からリカバリーすることができない場合、第２のプロセッサー１３４、第２のＲＯＭ１４４、及び第２の記憶装置１５２は、処理装置１２８を安定状態に復元しようと試みることができ、且つ／又はシステム設定及びファイルを復元することができる。
【００２３】
第１のプロセッサー１３２及び第２のプロセッサー１３４は、命令を解釈及び実行する少なくとも１つの従来のプロセッサー又はマイクロプロセッサーを含むことができる。第１のメモリー１３６及び第２のメモリー１３８は、ランダムアクセスメモリー（ＲＡＭ）、又は情報及び第１のプロセッサー１３２又は第２のプロセッサー１３４がそれぞれ実行するための命令を格納する別のタイプの動的記憶装置とすることができる。第１のメモリー１３６及び第２のメモリー１３８は、第１のプロセッサー１３２及び第２のプロセッサー１３４がそれぞれ命令の実行中に使用する一時変数又は他の中間情報も格納することができる。第１のＲＯＭ１４０及び第２のＲＯＭ１４４はそれぞれ、従来のＲＯＭ装置、又はそれぞれ第１のプロセッサー１３２及び第２のプロセッサー１３４のための静的情報及び命令を格納する別のタイプの静的記憶装置を含むことができる。第１の記憶装置１４２及び第２の記憶装置１５２はそれぞれ、データ及び／又は命令を格納するための任意のタイプの媒体を含むことができる。幾つかの実施形態では、第１の記憶装置１４２及び第２の記憶装置１５２は不揮発性記憶装置とすることができる。
【００２４】
入力装置１４６は、たとえばキーボード、マウス、又は他の入力装置のような、ユーザーが処理装置１２８に情報を入力することを可能にする１つ又は複数の従来の機構を含むことができる。出力装置１４８は、ディスプレイ又は他の出力装置を含む、ユーザーに情報を出力する１つ又は複数の従来の機構を含むことができる。
【００２５】
リカバリーボタン又はリカバリースイッチ１５４は、ユーザーが押下又は選択することができるハードウェアボタン又はハードウェアスイッチとすることができる。リカバリーボタン又はリカバリースイッチ１５４を、バス１３０を介して第１のプロセッサー１３２に接続することができる。リカバリーボタン又はリカバリースイッチ１５４がユーザーによって押下又は選択されると、信号が第１のプロセッサー１３２に送信され、第１のプロセッサー１３２に、処理装置１２８を安定状態に復元するための命令を実行させると共に、システム設定、システムファイル、又はユーザーファイル、及び他の情報を復元するための命令を実行させることができる。幾つかの実施形態では、リカバリーボタン又はリカバリースイッチ１５４の機能を実施するソフトウェアオプションを提供することができる。代替的な実施形態では、リカバリーボタン又はリカバリースイッチ１５４がユーザーによって押下又は選択されると、信号がバス１３０を介して第２のプロセッサー１３４に送信され、第２のプロセッサー１３４に、処理装置１２８を安定状態に復元しようと試みるための命令を実行させると共に、システム設定、システムファイル、又はユーザーファイル、及び他の情報を復元しようと試みるための命令を実行させることができる。
【００２６】
幾つかの実施形態では、第２の記憶装置１５２は、処理装置１２８をいかなる他の既知の機能状態にも復元することができないときに処理装置１２８を復元するための工場出荷時の復元データを含むことができる。さらに、第２の記憶装置１５２は、たとえば数値メタデータ又は他の数値情報のような第１の記憶装置１４２に格納される監視された変更を持続又は破棄するための情報を格納することができる。第２の記憶装置１５２は、第１の記憶装置１４０を機能状態に修復しようと試みるときに使用するデータ及び／又は命令をさらに含むことができる。
【００２７】
処理装置１２８は、第１のプロセッサー１３２又は第２のプロセッサー１３４が、たとえば第１のメモリー１３６、第２のメモリー１３８、又は他の媒体のような有形機械可読媒体内に含まれる命令シーケンスを実行するのに応答して、そのような機能を実施することができる。そのような命令は、第１の記憶装置１４２、第２の記憶装置１５２のような別の機械可読媒体から、又は通信インタフェース（図示せず）を介して別個の装置から第１のメモリー１３６又は第２のメモリー１３８内に読み込むことができる。
例示的な処理
図２Ａ及び図２Ｂは本開示の主題と一致する一実施形態における例示的な処理を示すフローチャートである。このプロセスは、たとえば処理装置１００又は処理装置１２８のような処理装置にユーザーがログオンすることから開始することができる（動作２０２）。次に、処理装置は保護サービスが実行されているか否かを判断することができる（動作２０４）。保護サービスは、アンチウィルスサービス、セキュリティパッチ管理サービス、ファイアウォールサービス、又は他の保護サービスを含むことができるが、これらに限定されない。処理装置が、保護サービスのいずれも作動しておらず、実行もされていないと判断すると、処理装置は作動停止している保護サービスを自動的に開始することができる（動作２０６）。
【００２８】
次に、処理装置は、該処理装置がシステムソフトウェアに対する更新を自動的に受信するように構成されているか否かを判断することができる（動作２０８）。処理装置がシステムソフトウェアに対する更新を自動的に受信するように構成されていない場合、処理装置はシステムソフトウェアに対する更新を自動的に受信するように自身を構成することができる（動作２１０）。
【００２９】
次に、処理装置は、前回のセッションにおいて行われた前回の変更が持続されるべきか否かを判断することができる（動作２１２）。前回の変更は、処理装置によって監視されていることができ、前回のセッション中にユーザー又はアプリケーションによって行われたシステムファイル変更、ユーザーファイル変更、ＢＩＯＳ設定変更、又は他の変更を含むことができる。幾つかの実施形態では、第１の記憶装置に格納される、メタデータ、又はシステムファイル、ユーザーファイル、ＢＩＯＳ設定、若しくは他のデータに対する前回の変更を表す他の情報を、別個の記憶装置に格納することができる。代替的な実施形態では、メタデータを、別個の記憶装置に格納する代わりに第１の記憶装置の特定の領域内に格納することができる。
【００３０】
処理装置が、前回の変更が持続されるべきでないと判断する場合、処理装置は変更を取り消すことができ、それによって処理システムファイル、ユーザーファイル、ＢＩＯＳ設定、又は他の変更を、それぞれの変更前の状態に復元又はロールバックすることができる（動作２１４）。幾つかの実施形態では、処理装置は、前回の変更が権限のない変更、又は不安定性若しくは不良構成をもたらす場合がある変更を含む場合、前回の変更を持続しないことを決定することができる。幾つかの実施形態では、たとえばシステム管理者のようなユーザーは、ユーザーが再度ログインするとき、ユーザーがログオフするとき、処理装置がシャットダウンするとき、又は処理装置を起動若しくはブートするときに自動的に破棄される、システムファイル、ユーザーファイル、ＢＩＯＳ設定、又は他の設定に対する変更を可能にするように処理装置を構成することができる。
【００３１】
次に、処理装置は、たとえばシステムファイル変更、ユーザーファイル変更、ＢＩＯＳ設定変更、又は他の変更のような処理装置に対して行われる変更を監視することができる（動作２１６）。
【００３２】
幾らか後の時点で、ユーザーが処理装置からログオフされることを要求する場合があるか、又は処理装置がシャットダウンされる場合がある（図２Ｂ、動作２１８）。その場合、処理装置は監視された変更を持続するべきか否かを判断することができる（動作２２０）。処理装置が、監視された変更が持続されるべきでないと判断する場合、処理装置は変更を取り消すことができ、それによって処理システムファイル、ユーザーファイル、ＢＩＯＳ設定、又は他の変更を、それぞれの変更前の状態に復元又はロールバックすることができる（動作２２２）。
【００３３】
次に、処理装置は、ユーザーログオフ又は処理装置のシャットダウンが要求されたか否かを判断することができる（動作２２４）。ユーザーログオフが要求された場合、ユーザーをログオフすることができる（動作２２８）。処理装置のシャットダウンが要求された場合、処理装置をシャットダウンすることができる（動作２２６）。
【００３４】
図３は、本開示の主題と一致する実施形態における処理装置の安定性を維持するための例示的なプロセスを示すフローチャートである。このプロセスは、たとえば処理装置１００又は処理装置１２８のような処理装置がオペレーティングシステムをブートすることから開始することができる（動作３００）。次に、処理装置は、オペレーティングシステムのブートがオペレーティングシステムの１回目のブートであるか否かを判断することができる（動作３０２）。これがオペレーティングシステムの１回目のブートである場合、処理装置は、オペレーティングシステムの１回目のブートが成功したか否かを判断することができる（動作３０４）。オペレーティングシステムの１回目のブートが成功しなかった場合、処理装置は、工場出荷時の設定を含むことができる工場復元データを使用して処理装置を動作状態に復元しようと試みることができる。幾つかの実施形態では、工場復元データを、システムファイル、ユーザーデータ、及びＢＩＯＳ設定を格納する記憶装置とは別個の記憶装置内に格納することができる。
【００３５】
オペレーティングシステムの１回目のブートが成功した場合、処理装置は、たとえばＢＩＯＳ設定のようなバックアップシステム設定又は他のシステム設定を、たとえばバックアップ記憶装置のような記憶装置又は他の記憶装置にバックアップすることができる（動作３０６）。次に、処理装置は、たとえばシステムファイルのようなバックアップファイルを記憶装置にバックアップすることができる（動作３０８）。次に、処理装置は、任意のファイルシステム変更を追跡するために、ファイルシステム変更イベントを監視することができる（動作３１０）。次に、ユーザーはたとえば処理装置からログオフするか、又は処理装置をシャットダウンすることによって、セッションを終了することができる（動作３１２）。
【００３６】
処理装置は、動作３０２の間に、オペレーティングシステムのブートがオペレーティングシステムの１回目のブートでないと判断する場合、たとえばＢＩＯＳ設定のようなシステム設定又は他の設定を、機能するシステム設定の最後の既知のセットに同期させることができる（動作３１４）。このため、機能するシステム設定の最後の既知のセットを、新たなシステム設定を反映するように更新することができる。次に、処理装置はシステムファイルをバックアップファイルに同期させることができる（動作３１６）。このようにして、バックアップされたシステムファイルを更新することができる。
【００３７】
次に、ユーザーは処理装置にログオンすることができる（動作３１８）。処理装置は、ユーザーファイルが最後のセッションの開始時の該ユーザーファイルの状態に復元されるべきか否かに関してユーザーにプロンプトすることができる（動作３２０）。次に、処理装置は、プロンプトに対するユーザーの応答に基づいて、ユーザーファイルが復元されるべきであるか否かを判断することができる（動作３２２）。ユーザーファイルが復元されるべきでない場合、処理装置は、変更されたユーザーファイルのバックアップコピーを保存することができ（動作３２４）、任意のファイルシステム変更を追跡するためにファイルシステム変更イベントを監視することができる（動作３１０）。次に、ユーザーは、たとえば処理装置からログオフするか又は処理装置をシャットダウンすることによってセッションを終了することができる（動作３１２）。
【００３８】
処理装置は、動作３２２の間に、ユーザーファイルが最後のセッションの開始時の該ユーザーファイルの状態に復元されるべきであると判断する場合、最後のセッション中に変更されたユーザーファイルのリストを表示することができ（動作３２６）、ユーザーファイルをバックアップコピーから復元することができる（動作３２８）。次に、処理装置は動作３１０及び３１２を実施することができる。
【００３９】
図４は、本開示の主題と一致する処理装置が実行することができる例示的なプロセスのフローチャートである。図４に示される例示的なプロセスは、処理装置を安定状態に復元すると共に、変更されたユーザーファイルを前回の状態に復元するための復元サービスを提供することができる。
【００４０】
プロセスは、処理装置がオペレーティングシステムをブートすることから開始することができる（動作４０２）。次に、処理装置はオペレーティングシステムのブートが失敗したか否かを自動的に判断することができる（動作４０４）。オペレーティングシステムのブートが失敗した場合、処理装置は、バックアップから１つ又は複数の変更されたシステムファイルを自動的にコピー又は復元することができる（動作４０６）。次に、処理装置は、オペレーティングシステムをリブートしようと試みることができる（動作４０８）。次に、処理装置はオペレーティングシステムのリブートが失敗したか否かを自動的に判断することができる（動作４１０）。オペレーティングシステムのリブートが失敗した場合、処理装置は、バックアップから、たとえばＢＩＯＳ設定のようなシステム設定、システムファイル、又は他のシステム設定を自動的にコピー又は復元することができる（動作４１２）。次に、処理装置はオペレーティングシステムのリブートをもう一度試みることができる（動作４１４）。次に、処理装置は、オペレーティングシステムのその再度のリブートが失敗したか否かを判断することができる（動作４１６）。オペレーティングシステムの再度のリブートが失敗した場合、処理装置は全面的なシステム復元を実施する（動作４１７）。幾つかの実施形態では、全面的なシステム復元は、システム設定、システムファイル、及びユーザーデータを格納する記憶装置とは別個の記憶装置内に格納することができる工場復元データを使用して処理装置を復元することができる。
【００４１】
処理装置が、動作４０４、４１０、４１６において、オペレーティングシステムのブートが成功したと判断した場合、ユーザーは処理装置にログオンすることができる（動作４１８）。処理装置にログオンした後、処理装置は、ユーザーが最後のセッションからファイルを復元することを所望するか否かに関してユーザーにプロンプトすることができる（動作４２０）。次に、動作４２０の間にプロンプトされたときにユーザーによって提供された応答に基づいて、処理装置はユーザーがファイルを復元することを所望するか否かを判断することができる（動作４２２）。幾つかの実施形態では、全てのユーザーが、たとえばファイルの復元、又は他の操作のような全ての操作を実施する権限を与えられているわけではない場合がある。たとえば、管理者のような幾つかのユーザーは、工場復元データを使用して処理装置を復元する権限を与えられている場合があり、他のユーザーは、変更されるべきではないユーザー設定及びユーザーファイル及びシステムファイルを復元する権限を与えられている場合がある。そのような実施形態では、ファイルを復元する権限を与えられていないユーザーに、ファイルの復元に関してプロンプトしないことができる。
【００４２】
ユーザーがファイルが復元されるべきであることを指示しない場合、処理装置は、最後のセッション中に変更されたユーザーファイルをユーザーファイルのバックップコピーと同期させることができる（動作４２４）。次に、処理装置は、新規のファイルの作成、ファイルの削除、又はファイルの変更に関するイベントを含むことができるがそれらに限定されないファイルシステム変更イベントを監視することができる（動作４２６）。次に、ユーザーは、たとえば処理装置からログオフするか又は処理装置をシャットダウンすることによってセッションを終了することができる（動作４２８）。
【００４３】
処理装置は、動作４２２の間に、最後のセッションからファイルが復元されるべきであると判断する場合、最後のセッション中に変更されたユーザーファイルのリストを表示することができる（動作４３０）。次に、処理装置は、リストされたファイルをバックアップから復元することができる（動作４３２）。次に、処理装置は、たとえば新規のユーザーファイルの追加、既存のユーザーファイルの改訂、ユーザーファイルの削除のようなファイルシステム変更イベント、又は他のファイルシステム変更イベントを監視することができる（動作４２６）。ユーザーは、たとえば処理装置からログオフするか又は処理装置をシャットダウンすることによってセッションを終了することができる（動作４２８）。
【００４４】
図５は、本開示の主題と一致する処理装置の一実施形態において実施することができる別の例示的なプロセスを示すフローチャートである。まず、処理装置はオペレーティングシステムをブートすることができる（動作５０２）。オペレーティングシステムをブートした後、処理装置は性能を監視することができる（動作５０４）。たとえば、処理装置はディスクフラグメンテーションのレベル、構成されたページファイルサイズ、メモリー使用量、又は他の性能測定基準を監視することができる。次に、処理装置は１つ又は複数の性能条件が満たされているか否かを判断することができ（動作５０６）、１つ又は複数の性能条件が満たされている場合、処理装置は性能を改善するための処置を自動的に実施することができる（動作５０８）。処理装置は、１つ又は複数の性能条件が満たされていないと判断する場合、動作５０４及び５０６を繰り返すことができる。
【００４５】
例として、処理装置は、ディスクフラグメンテーションが、１０％又は別のパーセンテージのような一定のレベルを超えていることを判断することができる。ディスクフラグメンテーションが一定のレベルを超えている場合、処理装置は、デフラグメンテーションのような性能を改善するための処置を自動的に実施することができる。別の例として、処理装置は、メモリーの使用量が一定のレベルを超えていると判断する場合、１つ又は複数のアプリケーションがメモリー内の空間を占めており、且つそれらのアプリケーションがほとんど使用されていないと判断することができる。そのような場合、処理装置は、それらのアプリケーションをメモリーから自動的に除去することができるか、又はそれらのアプリケーションをメモリーから除去してもよいか否かに関してユーザーにプロンプトすることができる。
【００４６】
図６Ａ及び図６Ｂは、セッション中に、１つ又は複数のファイルに対して行われた変更をアプリケーション毎の単位で監視することができる処理装置の一実施形態において実施することができる例示的なプロセスを示すフローチャートである。まず、ユーザーは処理装置にログオンすることができる（動作６０２）。次に、処理装置は、アプリケーション毎の単位でファイルシステム変更を監視することができる（動作６０４）。処理装置が、ファイル又はディレクトリが削除されたと判断する（動作６０６）場合、削除されたファイル又はディレクトリを媒体の一時記憶領域内に保存することができると共に、削除されたファイル又はディレクトリに関する情報を格納する一時記憶領域内にエントリを記録することができる（動作６０８）。処理装置は、ファイル又はディレクトリが追加されたと判断する（動作６１０）場合、一時記憶領域内にそのファイル又はディレクトリへのパスを記録することができる（動作６１２）。処理装置は、データがファイルから削除されたと判断する（動作６１４）場合、削除されたデータを一時記憶領域に移動することができる（動作６１６）。処理装置は、データがファイルに追加されたと判断する（動作６１８）場合、ファイル内の新たに追加されたデータのオフセットを一時記憶領域に記録することができる（動作６２０）。
【００４７】
次に、ユーザーは、たとえば処理装置からログオフするか又は処理装置をシャットダウンすることによってセッションを終了することができる（図６Ｂ、動作６２２）。次に、処理装置は、セッション中に個々のアプリケーションによって行われた変更が破棄されるべきであるか否かに関してユーザーにプロンプトすることができる（動作６２４）。代替的な実施形態では、システム管理者又は他のユーザーは、セッション中に個々のアプリケーションによって行われた変更を常に破棄するように処理装置を構成することができる。次に、処理装置は、プロンプトに対するユーザーの応答に基づいて変更が破棄されるべきであるか否かを判断することができる（動作６２６）。変更が破棄されるべきでない場合、一時記憶領域内に記録されている、変更に関する情報を使用して変更を持続することができる（動作６４４）。
【００４８】
処理装置は、動作６２６の間に、セッション中に個々のアプリケーションによって行われた変更が破棄されるべきであると判断する場合、変更のうちのいずれかがファイル又はディレクトリの削除を含んでいたか否かを判断することができる（動作６２８）。変更がファイル又はディレクトリの削除を含む場合、処理装置は、一時記憶領域内に保存されているそのファイル又はディレクトリを、該ファイル又はディレクトリの元の位置に戻すことができる（動作６３０）。次に、処理装置は、変更がファイル又はディレクトリの追加を含むか否かを判断することができる（動作６３２）。含む場合、処理装置は、動作６１２の間に一時記憶領域内に記録されたエントリによって指し示されるファイル又はディレクトリを削除することができる（動作６３４）。次に、処理装置は、変更が、データがファイルから削除されることを含むか否かを判断することができる（動作６３６）。含む場合、処理装置は、一時記憶領域から、保存されている削除されたデータをファイル内に戻すことができる（動作６３８）。次に、処理装置は、変更が、データがファイルに追加されることを含むか否かを判断することができる（動作６４０）。含む場合、処理装置は、（動作６２０の間に）一時記憶領域に記録されたオフセットを使用して、ファイルに追加されたデータを削除することができる。
【００４９】
図７Ａ及び図７Ｂは、本開示の主題と一致する処理装置の一実施形態において実施することができる例示的なプロセスのフローチャートを示す。このプロセスは、リカバリーボタン又はリカバリースイッチが押下又は選択されるときに実施することができる。まず、ユーザーは処理装置にログオンすることができる（動作７０２）。ユーザーは処理装置のリカバリーボタン又はリカバリースイッチを選択又は押下することができる（動作７０４）。リカバリーボタン又はリカバリースイッチの押下又は選択によって、信号が処理装置のプロセッサーに送信され、それによって処理装置にリカバリーのタイプに関してユーザーにプロンプトさせることができる（動作７０６）。この例示的な実施形態では、リカバリータイプは、システムファイルリカバリー、データファイルリカバリー、工場出荷時の設定への処理装置の復元、及びセッション変更の破棄又は持続を含むことができる。他の実施形態では、付加的な又は異なるリカバリータイプを含むことができる。
【００５０】
次に、処理装置は、システムファイルがリカバリーされるべきであるか否かを判断することができる（動作７０８）。システムファイルがリカバリーされるべきである場合、処理装置は、バックアップコピーからシステムファイルを復元することができると共に、リブートすることができる（動作７１０）。
【００５１】
次に、処理装置は、データファイルがリカバリーされるべきであるか否かを判断することができる（動作７１２）。処理装置は、データファイルがリカバリーされるべきであると判断する場合、バックアップコピーからデータファイルを復元することができる（動作７１４）。
【００５２】
データファイルがリカバリーされるべきでない場合、処理装置は、該処理装置が、工場出荷時の設定を含むことができる工場復元データを使用して復元されるべきであるか否かを判断することができる（動作７１６）。処理装置は、該処理装置が工場復元データを使用して復元されるべきであると判断する場合、その工場復元データを使用してシステム復元を実施して、該処理装置を動作状態に復元することができる（動作７１８）。
【００５３】
処理装置が工場復元データを使用して復元されるべきでない場合、処理装置は、セッション中に行われた変更が破棄又は持続されるべきであるか否かを判断することができる（図７Ｂ、動作７２０）。処理装置は、セッション中に行われた変更が破棄又は持続されるべきであると判断する場合、セッション中に行われた変更を破棄又は持続することができる（動作７２２）。
【００５４】
処理装置は、リカバリータイプがセッション変更を破棄又は持続することを含まないと判断する場合、リカバリーを中止することができる。
結論
本主題は構造的特徴及び／方法論的動作に固有の言葉において説明されてきたが、添付の特許請求の範囲における本主題は上述した特定の機能又は動作に必ずしも限定されないことを理解されたい。そうではなく、上述した特定の機能及び動作は、特許請求の範囲を実施する例示的な形態として開示される。
【００５５】
上記の説明は具体的な詳細を含む場合があるが、それらは特許請求の範囲をいかなる形においても限定するものと解釈されるべきではない。説明した実施形態の他の構成も本開示の範囲の一部分である。さらに、本開示の主題と一致する実施態様は説明されたものよりも多くの動作又は少ない動作を有することができるか、又は示されたものとは異なる順序で動作を実施することができる。したがって、与えられた任意の特定の実施例ではなく、添付の特許請求の範囲及びそれらの法的均等物のみが本発明を規定するべきである。
【図１Ａ】
2010522400.tif 000003
【図１Ｂ】
2010522400.tif 000004
【図２Ａ】
2010522400.tif 000005
【図２Ｂ】
2010522400.tif 000006
【図３】
2010522400.tif 000007
【図４】
2010522400.tif 000008
【図５】
2010522400.tif 000009
【図６Ａ】
2010522400.tif 000010
【図６Ｂ】
2010522400.tif 000011
【図７Ａ】
2010522400.tif 000012
【図７Ｂ】
2010522400.tif 000013
【国際調査報告】
2010522400.tif 000014
2010522400.tif 000015