JP2005535003A - 複数の独立コンピューティング環境をサポートすることができるコンピュータシステム - Google Patents

複数の独立コンピューティング環境をサポートすることができるコンピュータシステム Download PDF

Info

Publication number
JP2005535003A
JP2005535003A JP2003566718A JP2003566718A JP2005535003A JP 2005535003 A JP2005535003 A JP 2005535003A JP 2003566718 A JP2003566718 A JP 2003566718A JP 2003566718 A JP2003566718 A JP 2003566718A JP 2005535003 A JP2005535003 A JP 2005535003A
Authority
JP
Japan
Prior art keywords
data
software
computer
user
boot device
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2003566718A
Other languages
English (en)
Other versions
JP2005535003A5 (ja
Inventor
キーネス ラーグマン
アンソニー ビー モアー
ジェフリー ブレアー
Original Assignee
セルフ リペアリング コンピューターズ インコーポレイテッド
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
Priority claimed from US10/075,136 external-priority patent/US7096381B2/en
Priority claimed from US10/074,686 external-priority patent/US7100075B2/en
Priority claimed from US10/090,480 external-priority patent/US7111201B2/en
Priority claimed from PCT/US2002/007154 external-priority patent/WO2002099642A1/en
Priority claimed from US10/094,600 external-priority patent/US7137034B2/en
Application filed by セルフ リペアリング コンピューターズ インコーポレイテッド filed Critical セルフ リペアリング コンピューターズ インコーポレイテッド
Priority claimed from PCT/US2002/037125 external-priority patent/WO2003067435A2/en
Publication of JP2005535003A publication Critical patent/JP2005535003A/ja
Publication of JP2005535003A5 publication Critical patent/JP2005535003A5/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Retry When Errors Occur (AREA)
  • Hardware Redundancy (AREA)

Abstract

【課題】 独立したコンピューティング環境間のコンピュータハッキング及び破壊を防止するために複数の独立したコンピューティング環境をサポートすることができるコンピュータを提供する。
【解決手段】 作動中いつでもコンピュータが作動的状態に自己修復する方法。本方法は、コンピュータの主コンピュータハードウエアボックス内に配置された第1のハードディスクドライブブート装置からブートし、次に、ブート中又は任意の作動状態中にコンピュータの修復の必要性を示す信号に応答して、同じくコンピュータの主コンピュータハードウエアボックス内に修復の必要性を示す信号の前に配置された第2のハードディスクドライブブート装置からブートし、次に、第2のハードディスクドライブブート装置からブートされている間に第1のハードディスクドライブブート装置上のソフトウエアを修復し、選択的に、(i)第1のハードディスク装置上のソフトウエアの修復中にコンピュータの作動的状態を回復するために第2のブート装置からコンピュータの作動を維持するか、又は(ii)コンピュータの作動的状態を回復するために第2のブート装置から第1のブート装置にコンピュータの作動を変更するコンピュータ実行段階を含む。

Description

本発明は、一般的にコンピュータ及び情報家電に関し、より詳しくは、セキュリティ機能と故障防止及び回復機能とをサポートするコンピュータ及び情報家電に関し、更に詳しくは、独立したコンピューティング環境間のコンピュータハッキング及び破壊を防止するために複数の独立したコンピューティング環境をサポートすることができるコンピュータに関する。
関連出願
本出願は、各々が引用により組み込まれる以下の出願に対して、35U.S.C119(e)及び35U.S.C.120の1つ又はそれ以上の下での優先権を請求するものである。
ケネス・ラーグマン、アンソニー・B・モア、及びジェフリー・ブレアを発明者とする2001年11月19日出願の「コンピュータのオンザフライ修復」という名称の米国特許出願第10/075,136号、
ケネス・ラーグマン、アンソニー・B・モア、及びジェフリー・ブレアを発明者とする2002年2月11日出願の「コンピュータの外部修復」という名称の米国特許出願第10/074,686号、
ケネス・ラーグマン、アンソニー・B・モア、及びジェフリー・ブレアを発明者とする2002年2月27日出願の「コンピュータのバックアップ」という名称の米国特許出願第10/090,480号、及び
ケネス・ラーグマン、アンソニー・B・モア、及びジェフリー・ブレアを発明者とする2002年3月6日出願の「特殊目的サブシステムを有するコンピュータ」という名称の米国特許出願第10/094,600号。
本出願はまた、引用により組み込まれる以下の出願に対して35U.S.C.119(e)の下での優先権を請求するものである。
ケネス・ラーグマン、アンソニー・B・モア、及びジェフリー・ブレアを発明者とする2002年7月3日出願の「ウイルス、ハッキング、スパイソフトウエア、サイバーテロ、及び盗難に対して防御し、悪質なコードを無関係にするコンピュータ」という名称の米国特許仮出願第60/393719号。
パーソナルコンピュータ製造業者及び販売業者は、電話による修復サービス及びオンサイト修復サービスを提供することが多い。しかし、購入者、特に一般家庭、自宅兼オフィス、及び個人事業者である購入者は、サービス契約で行われるサービスは思ったよりも少ないとすぐに不満を持つものである。例えば、コンピュータ販売業者は、購入者がペルプセンターに電話し、ペルプセンターの指示に従っていくつかの試験を行い、電話ペルプセンターにおいて問題を拡大させ、多くの知識を持っているはずの電話ペルプセンター所員の指示に従って冗長又は追加の試験を行った後にのみ技術員を派遣する場合がある。購入者は、修復技術員が派遣される前に、問題を更に一層拡大させて追加の冗長な試験を行う必要があることもある。
ペルプセンターは、頻繁に、顧客に対してコンピュータの電源を入れ直したり、コンピュータをリブートさせたり、問題の周辺機器の取り外し及び再取り付けをしたり、アプリケーション及びオペレーティングシステムソフトウエアを再インストールするように指示する。ペルプセンターに電話する度に、また、問題拡大のレベル毎に、購入者は、電源の入れ直し、リブート、取り外し及び取り付けを要求されるであろう。
周辺機器器の取り外し及び取り付けは、極めて不便である可能性がある。例えば、USB装置は、一般的にコンピュータの裏面の手の届きにくい場所に取り付けられている。いずれにせよ、コンピュータに詳しくない購入者は、コンピュータの分解に尻込みし、コンピュータを更に壊してしまうのではないかと心配するであろう。
ペルプセンターは、購入者に対して、コンピュータのブートドライブを再フォーマットしてオペレーティングシステム及びアプリケーションソフトウエアを再インストールするように指示することさえある。再フォーマットは、いくつかの理由でやっかいなものである。第1に、一般家庭、自宅兼オフィス、及び個人事業者であるユーザは、コンピュータの通常作動時にドライブを再フォーマットすることは稀であり、その処理自体をよく知らない。第2に、再フォーマットするとドライブ上の全てのデータが壊れ、このようなユーザは、自分のデータの全てを失ってしまうと分ると不安になることはよく理解することができる。第3に、このようなユーザは、特に販売業者がソフトウエアを予めインストールする場合は、アプリケーション又はオペレーティングシステムインストール媒体を保持していない場合がある。ユーザは、どの媒体を保存したらよいのか、又は特定の媒体を保存しておくつもりであったことも不確かになっている場合があり、実際に、後で必要になった時にその媒体を探し当てることができないものである。
第4に、ユーザは、一般的に情報技術者が推奨するほど頻繁にドライブをバックアップしない。従って、自分のアプリケーションを回復する何らかの希望を持つために自分のバックアップ(もしあれは)に頼らなければならないということは、元気の出る考えではない。
従って、当業技術は、ユーザがペルプラインへの電話、インストール媒体の保持、及びポートでの周辺機器の取り外し及び取り付けを行う必要性を低減又は更に排除するコンピュータに対する必要性を明確に示している。実際に、ユーザが修復を達成するのに必要な技術的知識を低減又は排除するコンピュータは、望ましいものである。
本発明の上記及び他の目標は、上述の背景技術及び以下の説明を読むと当業者には容易に明らかであろう。
尚、図面は、必ずしも縮尺通りとは限らない。
米国特許出願第10/075,136号 米国特許出願第10/074,686号 米国特許出願第10/090,480号 米国特許出願第10/094,600号 米国特許仮出願第60/393719号
本明細書において、コンピュータが自己修復するための装置、方法、コンピュータプログラム、及びコンピュータプログラム製品が教示される。1つの態様では、本発明の実施形態は、作動中にいつでもコンピュータが作動的状態に自己修復する方法を提供し、本方法は、コンピュータの主コンピュータハードウエアボックス内に配置された第1のハードディスクドライブブート装置からブートし、次に、ブート中又は任意の作動的状態の間にコンピュータの修復の必要性を示す信号に応答して、修復の必要性を示す信号の前にコンピュータの主コンピュータハードウエアボックス内に同じく配置された第2のハードディスクドライブブート装置からブートし、次に、第2のハードディスクドライブブート装置からブートされる間に第1のハードディスクドライブブート装置上のソフトウエアを修復し、選択的に、i)第1のハードディスクドライブ上のソフトウエアの修復中にコンピュータの作動的状態を回復するために第2のブート装置からコンピュータの作動を維持するか、又は(ii)コンピュータの作動的状態を回復するために第2のブート装置から第1のブート装置にコンピュータの作動を変えるかのいずれかを行うコンピュータ実行段階を含む。
別の態様では、本発明の実施形態は、主コンピュータハードウエアボックス又はハウジングと、主コンピュータハードウエアボックス内に配置されたCPUと、主コンピュータハードウエアボックス内に配置されたメモリと、主コンピュータハードウエアボックス内に配置された各第1及び第2のハードディスクドライブデータ記憶装置に対する第1及び第2のコントローラと、CPU、メモリ、及び第1及び第2のコントローラを通信的に結合するバスと、第2のハードディスクドライブデータ記憶装置と通信的に結合され、ユーザが操作するために主コンピュータハードウエアボックスを通して又は主コンピュータハードウエアボックスの表面で露出した、CPUに対する第2のデータ記憶装置のアクセス可能性を変更するためのスイッチとを含む、コンピュータ、コンピューティングシステム、又は情報家電を提供する。
別の態様では、本発明の実施形態は、少なくとも1つの保護されたデータストアを含む複数のデータストアと、発信元がデータストア発信元であるデータストア切換システムと発信元が周辺装置発信元であるI/O切換システムとを含む、少なくとも1つの発信元を複数の宛先と通信的に結合するための複数の切換システムと、データストア切換システムとI/O切換システムとの間に結合され、複数の特性から選択された少なくとも1つの特性によって各々が識別される、別のコンピューティング環境とは独立して処理活動を実行するための複数のコンピューティング環境であって、宛先がコンピューティング環境であり、切換システムが特性に従って発信元と宛先を通信的に結合する環境と、処理活動と特性に従ってスイッチ構成を構成するために複数のコンピューティング環境から選択され、保護されたデータストアと通信的に結合した少なくとも1つの制御コンピューティング環境と、保護されたデータストア上で処理活動が実行されない、複数のコンピューティング環境から選択された少なくとも1つのユーザコンピューティング環境とを含む、コンピュータ、コンピュータシステム、又は情報家電を提供する。
別の態様では、本発明の実施形態は、複数のデータストアと、少なくともユーザデータを記憶するための、複数のデータストアから選択された保護されたデータストアと、複数のデータストアと結合され、1つ又はそれ以上のデータストアとの通信を構成するためにデータストアスイッチ構成と結合したデータストア切換システムと、少なくとも1つの周辺装置と結合され、周辺装置との通信を構成するために複数の特性を含むI/Oシステム構成と結合したI/O切換システムと、複数の特性から選択された少なくとも1つの特性によって各々が識別される複数のコンピューティング環境であって、データストアスイッチ構成に従って少なくとも1つのデータストアをコンピューティング環境と結合する、データストアスイッチと結合したデータストア切換通信経路と、I/O切換システム構成に従って周辺装置をコンピューティング環境と結合するための、I/O切換システムと結合したI/O切換通信経路とを含み、入力をI/O切換システムから受信する段階と出力をI/O切換システムに送信する段階とを含む処理活動を実行することができ、この処理活動が別のコンピューティング環境の処理活動と独立して実行される環境と、データストアスイッチ構成を構成するために複数のコンピューティング環境から選択された制御コンピューティング環境であって、データストアスイッチ構成が、I/O切換システム構成を構成するために、制御コンピューティング環境と保護データストアとの間の通信をサポートする環境と、複数のコンピューティング環境から選択された少なくとも1つのユーザコンピューティング環境とを含み、I/O切換システム構成が、受信した入力を特性に基づいてコンピューティング環境の少なくとも1つに向けるように構成され、I/O切換システム構成が、複数のコンピューティング環境の1つ又はそれ以上によって発生した出力を特性に基づいて周辺装置に向けるように構成されたコンピュータシステムを提供する。
別の態様では、本発明の実施形態は、第2のコンピュータシステムとの通信リンク上で通信するための通信装置と、複数のデータラインを有するバス上でコンピュータシステムと通信装置とを通信的に結合するためのポートと、通信装置を使用可能及び使用不可にするための、複数のデータラインから選択されたデータライン内に結合したスイッチとを含むコンピュータシステムを提供する。
別の態様では、本発明の実施形態は、複数のデータラインを有するバス上でコンピュータシステムと周辺装置とを通信的に結合するためのポートと、周辺装置を循環するための、複数のデータラインから選択された少なくとも1つのデータラインに結合したスイッチとを含むコンピュータシステムを提供する。
別の態様では、本発明の実施形態は、通信手段と、結合部材と、光を発するための機能とを含む1つ又はそれ以上の周辺装置と、周辺装置の結合部材と係合するための、コンピュータシステムと機械的に結合したコンセントと、コンピュータシステムとコンセントに結合した周辺装置とを通信的に結合するためのポートとを含むコンピュータシステムを提供する。
別の態様では、本発明の実施形態は、複数のデータストアと、データストアのアクセス可能性を変更するための、複数のデータストアと結合したデータストアスイッチと、データストアスイッチとコンピュータシステムとを通信的に結合するための周辺コントローラと、周辺コントローラと通信的に結合した複数のデータストアから選択されたアクセス可能なデータストアと、アクセス可能データストアを解析してアクセス可能データストアのヘルスを判断するための、コンピュータシステム上で実行することができる少なくとも1つの命令を含むコンピュータプログラムとを含み、ヘルスが、破壊ヘルス及び適正ヘルスから成るヘルスの群から選択され、破壊ヘルスと判断された場合は、データストアスイッチが作動されてアクセス可能データストアへのアクセス可能性を除去して第2のアクセス可能データストアを追加し、適正ヘルスの場合は、データストアスイッチが変更されないままであるコンピュータシステムを提供する。
他の態様では、本発明は、コンピュータ、コンピュータシステム、ネットワーク、及び情報家電を上述のように構成して作動する方法及び手順を提供する。他の態様では、本発明は、本発明の方法及び手順を全体的又は部分的に実施するコンピュータプログラム及びコンピュータプログラム製品を提供する。
本発明の選択された態様及び実施形態の概要
本発明を使用する一例を以下に説明する。ユーザは、本発明の実施形態を組み込んだコンピュータでアプリケーションを実行する。ある時点で、ユーザは、アプリケーション、オペレーティングシステム、又はその両方が使用不能になるまで、アプリケーション又は基本オペレーティングシステムを修正する。実際に、ユーザは、もはやオペレーティングシステムをブートすることさえできない場合がある。
コンピュータの修復が必要であると認識して、ユーザは、コンピュータ上のスイッチを押す。コンピュータは、誤作動しているソフトウエアを直してその旨をユーザに知らせる。
ユーザは、その後、コンピュータをリブートすることができる。リブートすると、ユーザは、再び正しく機能するオペレーティングシステム、アプリケーション、及びデータファイルにアクセス可能である。
自己修復コンピュータ
図1は、本発明の実施形態を組み込んだコンピュータ1を示す。コンピュータ1は、全て当業技術で公知のCPU10、揮発性メモリ11、周辺コントローラ17及び18、第1の不揮発性データストア12、及びバス15を含むことができる。
また、コンピュータ1は、スイッチ13及び19、第2の不揮発性データストア14、コントローラ1A、電源1B、出力装置1C、及び入力措置1Dを含むことができる。
バス15は、揮発性メモリ11及び周辺コントローラ17及び18を互いに、及びCPU10に通信的に結合することができる。周辺コントローラ17及び18は、それぞれデータストア12及び14と通信的に結合することができる。
スイッチ13及び19、コントローラ1A、電源1B、出力装置1C、及び入力装置1Dは、データストアスイッチ1Zを形成することができる。データ記憶装置スイッチは、スイッチの設定に従って、接続されたデータ記憶装置のアクセス可能性を変更することができる。
コントローラ1Aは、スイッチ13及び19、出力装置1C、及び入力装置1Dと通信的に結合することができる。電源1Bは、コントローラ1A(及び、他のスイッチ構成要素)に電力を供給することができる。更に詳しくは、電源1Bは、コンピュータ1の残りの構成要素への電力と独立して、コントローラ1Aに電力を供給することができる。
スイッチ1Zへの電力は、コンピュータの残りの構成要素(例えば、壁コンセント又はラップトップバッテリ)の電力と同じ電源から供給されるとすることができる。その後、スイッチ1Zには、コンピュータ1の残りの構成要素に電力が供給されていない時でもその電源から電力を供給することができる。図10は、本発明のこの実施形態を示す。
スイッチ13は、データストア12と通信することができる。このスイッチは、データストア12の識別設定を制御する(例えば、切り替える)ことができる。
スイッチ19は、データストア14と連結することができる。スイッチ19は、データストア14への電力を制御する(例えば、切り替える)ことができる。
揮発性メモリ11は、ランダム・アクセス・メモリとすることができる。データストア12及び14は、例えば、磁気ディスクとすることができる。
出力装置1Cは、例えば、コンピュータ1のモニタ、LED、又はモニタとは別個のLCDとすることができる。
図2は、本発明の実施形態によるデータストアスイッチ1Zの概略図である。図2においては、光遮断器U2及びU3は、それぞれ、スイッチ13及び19を実行する。「Basic Stamp II」マイクロコントローラU1(米国カリフォルニア州ロックリン所在のパララックス・インコーポレーテッド製)は、コントローラ1Aをインプリメントする。バッテリV3は、電源1Bをインプリメントする。LCDディスプレイポートJ1は、出力装置1Cを表し、スイッチS1及びS2は、入力装置1Dをインプリメントする。(光遮断器U4は、コンピュータ1が電力供給されているか否かを検出する。)
「通常モード」と本明細書でいう第1の作動モードにおいては、コンピュータ1は、所定のオペレーティングシステム及びアプリケーションを実行することができる。従って、データストア12は、そのソフトウエアの正しく機能しているコピーを含むことができる。CPU10は、データストア12にアクセスすることができ、オペレーティングシステムをブートし、その後、そのアプリケーションを実行することができる。
データストア12は、本明細書では「ブートデータ記憶装置」と呼ばれる。データストア12は、ブート可能かつ実行可能なオペレーティングシステム及び実行可能なアプリケーションを含むことができる。
データストアスイッチ1Zは、ブートドライブとしてデータストア12をコンピュータ1に対してアクセス可能にすることができる(例えば、スイッチ13によって)。また、データストアスイッチ1Zは、ブートドライブとしてデータストア14をコンピュータ1に対してアクセス不能にすることができる(例えば、スイッチ19によって)。そうでない場合は、データストアスイッチ1Zは、アイドル状態で装置1D上へのユーザ入力を待つことができる。
通常の段階においては、コンピュータ1は、従来のコンピュータとして作動することができる。ユーザは、コンピュータ1に組み込まれた本発明のアプリケーションソフトウエアを実行することができる。
「修復モード」と本明細書でいう第3の作動モードにおいては、CPU10は、データストア14上のソフトウエアを実行することができ、コントローラ1Aは、プログラムを並列に実行することができる。通常モードと修復モードの中間であるモードは、本明細書では「切換モード」というが、通常モードから修復モードへの移行を実行することができる。
切換モードにおいては、装置1Dなどの入力装置を使用して、ユーザは、データストア12上のソフトウエアを修復したいことを示すことができる。(図3A及び図3Bは、本発明の実施形態による切換/修復処理を示す)。入力に応答して、コンピュータ1は、段階310で通常の作動から修復に切り替わり、段階320でデータストア12上のソフトウエアを修復することができる。
データ記憶装置の切換は、論理的又は物理的なものとすることができる。論理的切換は、純粋にソフトウエアによって実行される切換である。例えば、ソフトウエアは、データ記憶装置が任意の所定時間にアクセス可能であるか否かを判断するために、そのソフトウエア又は他のソフトウエアが試験する1つ又はそれ以上の所定のビットを設定することができる。
物理的スイッチは、切り換えられる装置の所定の電気回路を開閉する。物理的スイッチは、例えば、データ記憶装置の識別ジャンパの開閉状態を変更することができる。物理的スイッチは、切り換えられる装置に対する電力をオン又はオフにすることができる。
図4は、本発明の一実施形態によるデータストアスイッチ1Zにおける制御の流れを示す。起動時に、データストアスイッチ1Zは、通常の作動モードに入ることができる。この段階では、スイッチ1Zは、段階4A3で、データストア12をブートドライブにするようにスイッチ13を設定することができる。また、スイッチは、テンプレートデータストア14を電力が供給されていない状態にするようにスイッチ19を設定することができる。
データストアスイッチ1Zは、その後アイドル状態になり、段階4A5でユーザが修復モードにスイッチを初期化するのを待つ。データストアスイッチ1Zは、段階4A1で、通常モードであることを示すメッセージを表示することができる。
データストアスイッチ1Zが、修復モードに切り換える表示を受信すると、スイッチ1Zは、段階4B5でユーザにこの表示を確認するように求めることができる。確認は、修復処理が建設的なものであるよりも破壊的なものである場合には好ましいものである。確認はまた、修復モードへの切り換えを示す入力装置の作動が偶発的なもの又は考え違いであった可能性があるために好ましいものである。
要求された場合に確認すると、データストアスイッチ1Zは、段階4B9で電力をデータストア14に切り換え、データストア14をコンピュータに対してアクセス可能にする。データストア14は、それがアクセス可能時に、ブートドライブとしてアドレス可能であるように永久的に構成することができる。従って、その後、データストア12のアドレスを変更することができる。
通常の作動においては、データストア12は、ブートドライブとしてアドレス可能とすることができる。しかし、切り換え中は、スイッチ1Zは、データストア12のアイデンティティ(例えば、アドレスジャンパ)をブートドライブのアイデンティティ以外の何かに変更することができる。
コンピュータ1は、ここで、修復段階に入る準備が完了した状態である。
修復モードに物理的に切り換えると、コンピュータ1は、テンプレートブートドライブからブートすることができる。ブートシーケンス中に実行されるブートされたプログラム又は何らかの他のプログラム(例えば、米国ワシントン州レッドモンド所在のマイクロソフト・コーポレーション製「ウィンドウズ(登録商標)」オペレーティングシステムを実行するマシン上の例えばautoexec.bat)は、ユーザに照会することができる。
本発明の一実施形態では、リブート時に、コンピュータ1は、データストア12を自動的に修復することができる。それは、ユーザからの更なる指示なしに、テンプレートデータストア14からデータストア12にソフトウエアをコピーする。しかし、これ以前に設定されたユーザのプリファレンスによって修復手順が指示される場合がある。
すなわち、テンプレートデータストア14が、アプリケーションソフトウエアのみを含む場合、修復処理は、テンプレートデータストア12からそのアプリケーションソフトウエアをコピーするか又は再インストールすることができる。テンプレートデータ記憶装置が、オペレーティングシステム及びアプリケーションソフトウエアを含む場合、修復処理は、まずオペレーティングシステム、次にアプリケーションソフトウエアをコピーするか又は再インストールすることができる。
アプリケーションのアンインストール又は削除は、そのソフトウエアの再インストール又はコピーに先行することができる。データストア12の再フォーマットは、オペレーティングシステムの再インストール又はコピーに先行することができる。ROM常駐パラメータのリセットは、オペレーティングシステム又はアプリケーションソフトウエアの再インストール又はコピーに先行することができる。
修復が完了すると、修復ソフトウエアは、ユーザに通常モードに戻ってコンピュータ1をリブートするように指示することができる。
代替的に、修復処理は、メニュー駆動式とすることができる。修復処理は、どの修復処理を実行すべきかを判断するために、ユーザに一連のオプションを呈示することができる。例えば、修復モードでリブートすると、修復ソフトウエアは、修復処理を実行する、修復処理設定を閲覧する、テンプレートソフトウエア(アプリケーション、オペレーティングシステム、又は修復処理ソフトウエア自体)を更新する、及び修復処理を止めるという選択肢を呈示することができる。
テンプレートデータストア14は、アプリケーションソフトウエア、オペレーティングシステムソフトウエア、及び修復処理ソフトウエアを含むことができる。アプリケーションソフトウエアは、実行可能なソフトウエア自体(.exe、.dll、.oなど)、又はアプリケーションによって作成されたファイル(例えば、「Corel WordPerfect」ワード処理ソフトウエアの.wpdファイル)を含むことができる。
テンプレートデータストア14上のソフトウエアは、一般的に、オペレーティングシステムであり、所定の構成を有するコンピュータ上でオペレーティングシステム(及び、任意の含まれたアプリケーション)を実行するための基本ソフトウエアと共に、1つ又はそれ以上のアプリケーションを含むことができる。基本ソフトウエアは、1つ又はそれ以上のブート記録、1つ又はそれ以上のパーティションテーブル、又は「BIOS」を含むことができる。
テンプレートソフトウエアは、ソフトウエアをデータ記憶装置上にインストールすることにより、インストールされたソフトウエアをデータ記憶装置上にコピーすることにより、又は、インストールソフトウエアをデータ記憶装置上にコピーすることによって作成される。(インストールされたソフトウエアには、データファイル及び他の既存ソフトウエアが含まれる。)
テンプレートデータ記憶装置ソフトウエアは、更新することができる。テンプレートソフトウエアがインストール準備完了ソフトウエアである場合、そのインストールソフトウエアは、異なる、通常はより最新のバージョンに更新することができる。テンプレートソフトウエアがデータストア12上のソフトウエアのバックアップである場合、データ記憶装置ソフトウエアの異なる、通常はより最近のバックアップがそのソフトウエアと入れ替わるか、又はそのバックアップによってそのソフトウエアが補充される。
修復処理設定には、データを回復すべきか、ウイルス検査を実行すべきか、データ記憶装置を再フォーマットすべきか、バックアップに戻るべきか、人間介入(すなわち、手動)修復又は自動修復を実行すべきか、診断(例えば、ソフトウエア又はハードウエア)を実行すべきか否かを挙げることができる。また、修復処理設定には、フォーマットすべきか及びどのレベルで行うべきか(例えば、迅速対低レベル)、どのソフトウエアを再インストールすべきか(例えば、オペレーティングシステム(OS)のみか、OS及び実行可能なアプリケーションソフトウエアか、OS、実行可能なアプリケーションソフトウエア、及びアプリケーションデータファイルか、データファイルのみか)、自動的に切り換えられるか(すなわち、プログラム又はハードウエア制御に基づいて)、どのレベルの修復を実行すべきか(一実施形態では、迅速、より良い、又は最良)、どこから設定すべきか(一実施形態では、バックアップ又はテンプレート)、どこからデータファイルを修復すべきか(例えば、修復前の最も最近のバックアップ、修復時のバックアップ、他の所定のバックアップ、照会/応答特異バックアップ)否かを挙げることができる。
修復処理は、適切なデータファイルの使用可能バージョンを回復することを伴う場合がある。コンピュータ修復のいくつかの事例においては、問題は、アプリケーションのうちの1つ又はそれ以上に関連したファイル(通常はデータファイル)に関してほど、オペレーティングシステム又は実行可能アプリケーションに関しては大きなものではない。問題のアプリケーションが「マイクロソフトアウトルック」である場合、回復すべきファイルは、メール/フォルダデータの.pstファイルとすることができる。アプリケーションがマイクロソフト製「インターネットエクスプローラ」である場合、回復すべきファイルは、お気に入りファイルとすることができる。
ウイルス検査を実行する段階は、まずウイルス検査/修復ソフトウエアが最新のものであるかを検査する段階を伴う場合がある。新しいソフトウエアの攻撃は毎日出現し、悪質なコードが新しいほどペイロードを配信する可能性が高いので、これは、取るに足らない段階ではない。ソフトウエアは、次に、悪質なコードがないかを検査し、デフォルトによるか又はユーザによって指示された通りにソフトウエアを修復することができる。
上述の処理は、データストア14が、データストア12上のオペレーティングシステム、アプリケーションソフトウエア、又はデータファイルの(1バージョンの)コピーを含むと仮定している。この意味において、この第2のデータストア14は、本明細書では「テンプレートデータ記憶装置」と呼ばれる。コンピュータ1がテンプレートデータストア14からブートされるように切り換えられた状態で、コンピュータ1は、テンプレートソフトウエアの本来のコピーをデータストア14上で実行することができる。(データストア14が読取専用媒体である場合、それは、予め書き込まれた状態でコンピュータ1に到着する。)
コンピュータ10の作動の一例を以下で説明する。データストア12は、ブート可能な「ウィンドウズ(登録商標)」オペレーティングシステム(米国ワシントン州レッドモンド所在のマイクロソフト・コーポレーション製)を含むと仮定する。また、データストア12は、「NaturallySpeaking(登録商標)」アプリケーションソフトウエア(ベルギー国イーパー及び米国マサチューセッツ州バーリントン所在のラーナウト・アンド・ハウスピー製)を含むと仮定する。
データストア12上のオペレーティングシステム及びアプリケーションソフトウエアは、各々、任意数の回数だけ実行されたと考えられ、ユーザは、オペレーティングシステム、アプリケーションソフトウエア、又はその両方を自分の好みに合わせてカスタム化した可能性がある。これとは対照的に、テンプレートデータストア14は、オペレーティングシステム及びアプリケーションソフトウエアのインストール時の状態のコピーを含むことができる。
コンピュータ1を使用するうちに、ユーザは、コンピュータ1を望ましくない状態にする。例えば、ユーザは、オペレーティングシステム又はアプリケーションのオプションの設定を、それらを使用可能な状態にリセットすることができないほどに壊す可能性がある。ユーザは、オペレーティングシステム、アプリケーション、又はその両方を変更するウイルス、つまり、「Trojan horse」又は他の悪質なコードをダウンロードする可能性がある。悪質なコードの詳細は未知であるが、明白な影響は、コンピュータ1が部分的又は完全に作動不能になるということである。ユーザは、ソフトウエアの正しい作動に極めて重要なファイルを取り除くことができる。当業者が認識するように、ソフトウエアを意図的に又はうっかり使用不能な状態まで変更し得る方法は、極めて多い。
コンピュータ1が望ましくない状態であると認識すると、ユーザは、段階300でスイッチ13を作動する。図3は、本発明の一実施形態による切換/修復処理を示すものであり、段階310は実際の切換を示す。段階300での切換作動に応答して、コンピュータ1は、段階320でデータ記憶装置上のソフトウエアを修復する。
修復処理は、テンプレートデータストア14からデータストア14にソフトウエアをコピーする段階を伴う。テンプレートデータストア14上のソフトウエアは、データストア12上のソフトウエアのマスターコピー、バックアップコピー、又はアーカイブコピーとすることができる。(アーカイブは、ソフトウエアのコピーであり、このコピーは、上書き又は削除することはできない。)
テンプレートソフトウエアがテンプレートデータストア14上にある状態で、コンピュータ1は、ソフトウエアをデータストア12に再インストール又はコピーすることができる。コンピュータ1は、データストア12上の任意のソフトウエアの全て又は一部に上書きすることができる。
コンピュータ1は、自己修復試行をどのくらい完全にすべきかに関してユーザにオプションを呈示することができる。一実施形態では、コンピュータ1は、「迅速な修復」、「より良い修復」、「最良の修復」、及び「試験」というオプションを呈示する。「迅速な修復」では、例えば、最初にデータストア12を再フォーマットすることなく、テンプレートソフトウエアをデータストア14からデータストア12にソフトウエアを再インストール又はコピーすることができる。「より良い修復」では、コピー又は再インストールの前にデータストア12の高レベルの再フォーマットを実行することができる。「最良の修復」では、コピー又は再インストールの前にデータストア12の低レベルの再フォーマットを実行することができる。
本発明の一実施形態では、第1の又は損傷したデータ記憶装置(故障磁気ハードディスクドライブなど)は、損傷していない又は第2のデータ記憶装置と入れ替わり、この第2のデータ記憶装置(作動可能な磁気ハードディスクドライブなど)は、故障が起こる前にコンピュータのハウジング内に情報を予め記憶している。第2の記憶装置は、故障した第1の記憶装置の引継ぎを完全に実行する。損傷した又は作動不能な第1の記憶装置は、その後、交換された記憶装置の手動による再設定を必要とすることなく、適切な時期に入れ替え又は交換することができる。第1の記憶装置が磁気ハードディスクドライブであり、コンピュータの作動に必要とされるコンピュータ内で実行するソフトウエア又はファームウエア(BIOSプログラム、オペレーティングシステム、又はアプリケーションプログラムのうちの1つ又はそれ以上を含む)の仮想メモリ又は他の記憶装置となる場合は、第2の記憶装置は、故障した装置(第1のハードディスクドライブ)と交換装置(第2のハードディスクドライブ)との間の切り換え後に通常作動が継続されるように、第2の磁気ハードディスクドライブのような同一種類の記憶装置であるように有利に選択することができる。2つの記憶装置の読取り及び/又は書込みのアクセス時間は、故障イベントが発生した場合に2つの記憶装置間の望ましい切り換えをもたらすために重要であることが認められるであろう。コンピュータシステムが必要とするか又は予期する読取り及び/又は書込みのアクセスを考慮しない、例えば、フロッピーディスク、磁気テープドライブ、CD−ROM、又は他の装置を利用すると、タイムアウトなどの他の故障モードになる場合がある。また、第1の記憶装置と比較すると第2の記憶装置の記憶容量は、回復した作動に対して問題となる場合がある。また、一般的な磁気テープドライブバックアップシステムによって実行される線形アクセスと比較すると、第2の記憶装置へのランダムアクセスは、第2の記憶装置からの通常モードでの作動の回復の妨げとなる場合がある。また、第2の装置が継続的に利用可能であってデータ及びソフトウエアに対して現行であるようにそれをコンピュータのメインボックス、容器、又はハウジング内に持たない点が、作動の望ましい回復の妨げになる場合がある。従って、第1の記憶装置が高速磁気ディスクドライブ(又は、例えば100メガバイト)である時、磁気テープドライブを第2の記憶装置として設置しても、第1の記憶装置のハードディスクドライブ故障時に切り換えることができる適切な第2の記憶装置には一般的にはならないということが認められるであろう。その理由は、テープドライブのアクセス時間がオペレーティングシステムが耐えられないほど遅いためにタイムアウトが発生する可能性があり、最新のオペレーティングシステム(「マイクロソフトウィンドウズ」95、98、98SE、2000、Linux、Unix、及び「Apple OS」など)によって一般的に利用されている仮想メモリ機能を実現する能力はテープ記憶装置内にはなく、テープドライブでは、テープの始めや途中のテープに記憶されたデータや指令にアクセスしたり、新しいデータ及び/又は指令をテープの未使用端部の未使用部分に書き込むために連続的に早送りや巻き戻しをしていることになるからである。5から10メガバイト程度、又は更に何十メガバイトの一時的又は仮想記憶装置が、オペレーティングシステムの一部をロードして中庸な実行能力を可能にするためにさえ必要であろう。フロッピーディスクドライブ装置(1.44MB又は類似の大きさの装置)は、コンピュータシステムの実際の作動に対して十分な記憶を提供するには一般的に小さすぎ、十分な記憶容量を有するとしても小さすぎて遅すぎるであろう。
他方、上述のように適切な組のソフトウエアと共に既にロードされている第2のハードディスクドライブは、第1のハードディスクドライブ記憶装置の作動を回復するためのオプションとなるばかりでなく、第1のディスクドライブ記憶装置から第2のディスクドライブ記憶装置へ作動を切り換えるというオプションとなり、更に、これは、単にソフトウエアのコピーを再ロードすることができるデータ記憶装置ではなく実際にコンピュータを作動することができる作動環境をもたらす。第1のハードドライブにヘッドクラッシュ、コントローラ故障、モータ故障などのハードウエアの故障が発生した場合、このようなテープドライブ又はフロッピードライブからの回復は不可能になることが更に認められるであろう。
これらの区別は、磁気ハードディスクドライブに注目して具体的に説明したが、本発明の他の実施形態では、第1及び第2の記憶装置が、必ずしも同一又は類似の記憶容量ではないが比較することができるほどの作動特性(読取り及び/又は書込みアクセス時間、ランダムアクセス特性、データ及び/又はソフトウエアを記憶するのに十分な容量など)を有し、プロセッサの任意の所要の記憶装置となる限り、ハードディスクドライブ以外の他の第1及び第2の記憶装置を利用することができる。従って、当業技術で公知のソフトディスクベルヌーイドライブ、「IOMEGA(登録商標)」式ドライブ、半導体RAMメモリ、及び他の高速アクセス媒体などの高速で中から高程度の容量を有する記憶装置を使用することができる。
図4は、本発明の一実施形態による切換/修復処理を更に詳細に示す。切換によってソフトウエアがテンプレートデータ記憶装置からデータ記憶装置上にコピーされることにより、データ記憶装置上の未使用ソフトウエアと入れ替わる。
コンピュータ1がリブートなしに修復することができる場合は、いくつかの状況が発生する。例えば、データファイル又は実行可能アプリケーションのみを修復する必要がある場合、特に「ウィンドウズ2000」(マイクロソフト製)などのより新しいオペレーティングシステム及びLinuxなどの最先端技術を駆使したオペレーティングシステムにおいては、データストア12からブートされたオペレーティングシステムのシャットダウンは、通常は不要である。
更に、オペレーティングシステムをシャットダウンすることなく、多くのオペレーティングシステムファイルを修復することができる(例えば、交換によって)。リブートなしのオペレーティングシステムの修復は、好ましい実施形態である。
更に、バックアップ(自動化したもの又はそうでないもの)については、既にブートされたデータ記憶装置からの実行継続は、好ましいと考えられる。データストア12からデータストア14へのバックアップがまだデータストア12からブートされている間に発生することができるほどコンピュータ1が静止した状態になることができる場合、このようなバックアップは、データストア14からブートされる間のデータストア12のシャットダウン及びバックアップよりも短時間に実行される。
データストア14が同時に利用可能である時にデータストア12がブートドライブのままである場合、データストア14は、ブートドライブ以外としてアドレス可能とすることができる。データストア14のアドレスは、同様にデータストア12のアドレス切換に切り換えることができる。
耐ウイルス及び耐ハッカーコンピュータ
図6Aは、本発明の実施形態を組み込んだコンピュータ6を示す。コンピュータ6は、当業技術で公知であるCPU60、揮発性メモリ61、周辺コントローラ67及び68、第1及び第2の不揮発性データストア62及び64、データポート69、通信リンク6A、及びバス65及び66を含むことができる。また、コンピュータ6は、ブート/記憶スイッチ6Zを含むことができる。
バス65は、揮発性メモリ61、周辺コントローラ67及び68、及びデータポート69を互いに及びCPU60に通信的に結合することができる。周辺コントローラ67及び68は、それぞれ、データストア62及び64と通信的に結合することができる。データポート69は、通信リンク6Aへのアクセスを仲介することができる。
バス66は、周辺コントローラ67をデータストア62とブート/記憶スイッチ6Zとに通信的及び電気的に結合することができる。更に詳しくは、ブート/記憶スイッチ6Zは、バス66の電力線661を切り換えることにより、データストア62の電力の増減を実行することができる。
同様に、バス67は、周辺コントローラ68をデータストア64とブート/記憶スイッチ6Zとに通信的及び電気的に結合することができる。ブート/記憶スイッチ6Zは、バス66の電力線671を切り換えることにより、データストア64の電力の増減を実行することができる。
ポート69は、通信リンク6Aによって示すように、コンピュータ6をモデムやネットワークなどの他の装置とリンクさせることができる。
コンピュータ6は、2つの状態、すなわち、接続及び切断状態で作動することができる。切断状態においては、コンピュータ6は、データポート69を使用して通信することはせず、データ記憶装置スイッチは、データストア62を使用可能にすることができる。
これとは対照的に、接続状態においては、コンピュータ6は、データポート69を使用して通信リンク6Aでデータを取得することができる。接続状態においては、スイッチは、第2のデータストア64を使用可能にすることができる。
すなわち、コンピュータ6は、任意の特定の時期に複数のデータストア62及び64の1つのみを使用可能にすることができ、これは、通信リンク6Aにアクセスしているか否かに依存する。これによってデータ記憶装置の1つ、すなわち、データストア64との通信リンク6Aで受信したデータが隔離される。受信したデータが悪意を有して作成された場合(ウイルス又は実行可能なハッカー行為)、このデータは、データストア64に閉じ込められる。
データストア62及び64の切り換えは、手動、ハードウエア、又はソフトウエアによる制御で実行することができる。ユーザが通信リンクにアクセス(又は、アクセスを中止)したいと思った時のユーザの切換による機械的な投入は、手動スイッチの良い例である。プログラム的にCPU60に応答するブート/記憶スイッチ6Zは、ソフトウエア制御式スイッチを示す。
例えば、ユーザがインターネットブラウザをブートし、通信リンク6Aがインターネットである場合、CPU60は、プログラムによってブラウザの(目標とする)起動を認識して、データストア62及び64の切り換えを開始する。スイッチは、第2のデータストア64のみを通信リンク6A使用中に利用可能とするために、コンピュータ6のリブートを伴うことができる。(データストア64上のブラウザは、データストア64からのブート時に自動的に立ち上がることができる。)
一実施形態においては、コンピュータは、ポート69及び第2のデータストア64を同期的に切り換えることができる。これは、ハッカー行為及び感染に対するコンピュータ6の耐性を向上させることができる。
図6Aは、通信リンク6Aへのアクセスの失敗に関連したデータストア62の使用可能化を示す。ブート/記憶スイッチ6Zを通る電力線661を継続する実線は、データストア62のアクセス可能性を示す。逆に、スイッチ6Zを通る点線は、データストア64のアクセス不能性を示す。
図6Bは、通信リンク6Aへのアクセスをサポートするために実行されるデータストア64の使用可能化を示す。ブート/記憶スイッチ6Zを通る電力線である実線は、データストア64のアクセス可能性を示す。逆に、スイッチ6Zを通る点線は、データストア62のアクセス不能性を示す。
データストア64は、リンク6Aで受信したデータを処理するためのアプリケーションソフトウエアを含むことができる。このような設定においては、データストア64上のデータをデータストア62に移動する必要性は、最小又は存在しないものとすることができる。
しかし、リンク6Aで受信したデータを処理するためのアプリケーションがデータストア62及び64上にある場合、移動の処理が必要である。リンク6Aで受信されて所定の時間が経過すると、コンピュータは、同時にデータストア62及び64を使用可能にして、そこで処理されるように受信したデータをデータストア62にコピーすることができる。この遅延により、例えば、アンチウイルスソフトウエア供給業者は、そのデータ受信の時点から明るみに出た脅威に対応するセキュリティソフトウエアを製造して販売することができる。
移動処理は、手動又は自動とすることができる。
ロック可能なネットワークコンピュータ
図7Aは、本発明の実施形態を組み込んだコンピュータ7を示す。コンピュータ7は、全て、当業技術で公知であるCPU70、揮発性メモリ71、周辺コントローラ77、不揮発性データストア72、データポート79、通信リンク7A、及びバス75及び77を含む。
バス75は、揮発性メモリ71、周辺コントローラ77、及びデータポート79を互いに及びCPU70に通信的に結合することができる。周辺コントローラ77は、データストア72と通信的に結合することができる。データポート79は、通信リンク7Aへのアクセスを仲介することができる。
バス77は、データポート79を通信装置7Bと通信的又は電気的に結合することができる。
ポート79は、他の通信装置7Bを通じて通信リンク7A上でコンピュータ7を他の通信者とリンクさせることができる。通信装置7B及び通信リンク7Aの例には、音響モデム7B及び「POTS」電話線7Aと、タップ7B及びイーサネット7Aと、無線モデム7B及び放射線透過型空間7Aとが含まれる。
スイッチ7Zは、バス77の電力線771を切り換えることにより、通信装置7Bの電力の増減を実行することができる。スイッチ7Zは、バス77のデータ線771(例えば、3つの状態)を切り換えることにより、データをデータポート79に転送する通信装置7Bの機能を中断又は使用可能にすることができる。
コンピュータ7は、2つの状態、すなわち、ネットワーク接続及びネットワーク切断状態で作動することができる。図7Aは、ネットワーク接続状態のコンピュータ7を示し、図7Bは、ネットワーク切断状態のコンピュータ7を示す。(スイッチ7Zを通る電力線761を継続する実線は、電力又はデータ線771の連続性を示し、スイッチ7Zを通る点線は、その線771の不連続性を示す。)
ネットワーク切断状態においては、スイッチ7Zは、データポート79での通信から通信装置7Bを切断することができる。従って、コンピュータ7上で実行されているソフトウエアの全ては、通信リンク7Aにアクセスすることはできない。
これとは対照的に、ネットワーク接続状態においては、スイッチ7Zは、データポート79で通信するように通信装置7Bを使用可能にすることができる。従って、コンピュータ7上のソフトウエアは、通信リンク7Aにアクセス可能である。
コンピュータ7の例示的な使用は、親がコンピュータ7を使用して、例えば、仮想専用網(VPN)を通じてインターネット7A上で雇用主のコンピュータネットワークにアクセスする場合である。親はまた、インターネット7Aにアクセスすることなく、子供が学校やレクリーションにコンピュータ7を使用することができることを欲する。従って、親は、自分(親)がコンピュータ7を使用したい時はコンピュータ7をネットワーク使用可能状態に切り換え、子供がコンピュータ7を使用する予定がある時はネットワーク切断状態にコンピュータ7を切り換える。
データストア72及び74の切り換えは、手動、ハードウエア、又はソフトウエア制御で実行することができる。ユーザが通信リンク7Aにアクセス(又は、アクセスを中止)したいと思った時のユーザによって投入された機械的切換は、手動スイッチの良い例である。例えば、キーでロックすることができる機械的スイッチは、好ましいものである。
CPU70にプログラム的に応答するスイッチ7Zは、ソフトウエア制御式スイッチ7Zを示す。(CPU70は、キーストローク、音声指令、生物測定データ、及びネットワークで受信したデータを含む任意の種類の入力に応答することができる。)ハードウエアスイッチ7Zは、アナログコンピュータと考えることができる。
ホットスワッピングをサポートするオペレーティングシステムを実行するコンピュータ7は、利点を有する。通信装置7Bの増設及びコンピュータ7からの除去は、周辺装置のホットスワッピングに対応していないOSを混乱させる場合がある。
多重データ記憶装置サーバ
図8は、本発明の実施形態を組み込んだコンピュータ8を示す。コンピュータ8は、全て、当業技術で公知であるCPU80、揮発性メモリ81、周辺コントローラ87、複数の不揮発性データストア82a、82a、...82α、データポート89、通信リンク8A、及びバス85を含むことができる。コンピュータ8はまた、データ記憶装置スイッチ8Zと、バス861又は862から成るバス86とを含むことができる。
バス85は、揮発性メモリ81、周辺コントローラ87、及びデータポート89を互いに及びCPU80に通信的に結合することができる。データポート89は、通信リンク8Aへのアクセスを仲介することができる。
周辺コントローラ87は、データ記憶装置スイッチ8Zと通信的に結合することができる。データ記憶装置スイッチ8Zは、データストア82と通信的又は電気的に結合することができる。バス861は、スイッチ8Zのデータパスをデータストア82のデータパスと通信的に結合することができ、バス862は、電源をスイッチ8Z内で又はそれを通じてデータストア82と電気的に結合することができる。
データポート89は、通信リンク6Aへのアクセスを仲介することができる。ポート89は、コンピュータ8を他の通信者と通信リンク7A上でリンクさせる。
コンピュータ8は、N個の状態のいずれかで作動することができ、ここで、Nは、データストア82の数である。第1の状態においては、データ記憶装置スイッチ8Zは、周辺コントローラ87と通信するように第1のデータストア82aを使用可能にする。第2の状態においては、スイッチ8Zは、周辺コントローラ87と通信するように第2のデータストア82bを使用可能にし、N番目の状態においては、スイッチ8Zは、周辺コントローラ87と通信するようにN番目のデータストア82αを使用可能にする。
周辺コントローラ87と現在通信しているデータストア82の破壊又は他の故障は、1つの状態から別の状態へ、従って故障したデータ記憶装置から別の稼動中のデータストア82への切換を促す。(故障したデータストア82は、その後、所定の場所で修復することができるか、又は、取り外して修復、取り外して交換、又は永久的に取り外すことができる。)
例えば、コンピュータ9がウェブサーバであり、通信リンク8Aがインターネットである場合、複数のデータストア82は、インターネット8Aの悪質なユーザによるウイルス感染及びハッカー行為に対する抵抗をもたらすことができる。ハッカーが周辺コントローラに現在取り付けられているデータ記憶装置を問題なく破壊させた場合、その破壊したデータストア82から別の適正なデータストア82への切換を実行することができる。この切換は、データストア82上のデータへのアクセスの損失を最小限に抑えるために非常に素早く(好ましくは、可能な限り素早く)発生させることができる。
この切換は、手動、ハードウエア、又はプログラム的とすることができる。例えば、現在アクセス可能なデータストア82のヘルスを判断するために、診断プログラムを定期的に実行することができる。
循環可能な周辺装置を有するコンピュータ
図9Aは、本発明の実施形態を組み込んだコンピュータ9を示す。コンピュータ9は、全て当業技術で公知のCPU90、揮発性メモリ91、コントローラ97及び98、不揮発性データ記憶装置92、ポート99、周辺装置9B、及びバス95及び97を含むことができる。コンピュータ9はまた、スイッチ9Zを含むことができる。
バス95は、揮発性メモリ91とコントローラ97及び98とを互いに及びCPU90に通信的に結合することができる。コントローラ97は、データ記憶装置92と通信することができる。コントローラ98は、周辺装置9Bと通信することができる。
バス97は、ポート99(従って、コントローラ98)を周辺装置9Bに通信的又は電気的に結合することができる。
周辺装置9Bは、任意のコンピュータ周辺装置とすることができる。この例には、プリンタ、USB装置、スキャナ、ファックス機械、データ記憶装置、及びキーボードが含まれる。
スイッチ9Zは、バス97の電力線971を切り換えることにより、周辺装置9Bの電力の増減を実行することができる。スイッチ9Zは、バス97の1つ又はそれ以上のデータ線972を切り換えることにより、データをポート99に転送するように使用不可又は使用可能にすることができる。
コンピュータ9のユーザは、予想されるように、周辺装置9Bを使用して装置9Bからデータを送受信していると考えられる。スイッチ9Zは、周辺装置9Bに電源を供給している。
ある時点で、コンピュータ9は、周辺装置9Bと通信することができなくなる。これは、周辺装置9Bのソフトウエア又は論理を含むコンピュータ9のソフトウエア又はハードウエアのエラーが原因と考えられる。
ユーザは、周辺装置9Bとの通信を復活させようとする。ユーザは、例えば、電力を周辺装置9Bに循環させる可能性がある。従って、ユーザは、スイッチ9Zが周辺装置9Bに電源供給する状態から周辺装置9Bに電源供給しない状態に、更に再度周辺装置9Bに電源供給する状態にスイッチ9Zの状態を変更する。この切換は、手動、ハードウエア、又はプログラム的に実行することができる。
周辺装置9Bの循環は、ユーザが体験していた通信上の問題を解決する場合がある。例えば、問題が周辺装置9Bのソフトウエア又は論理に関するものであった場合、電力循環は、周辺装置9Bのソフトウエア又は論理状態を消去する場合がある。問題がコンピュータ1のソフトウエア又は論理に関するものであった場合、電力の循環は、コントローラ97のソフトウエア又は論理状態、又は、メモリ91内で実行されているアプリケーションを消去する場合がある。
図9Bは、コンピュータ9の別の実施形態を示す。スイッチ9Zは、電力線及びデータ線の両方を切り換える。
マルチユーザコンピュータ
図5は、本発明の一実施形態を組み込んだコンピュータ5を示す。コンピュータ5は、全て、当業技術で公知であるCPU50、揮発性メモリ51、周辺コントローラ57、複数の不揮発性データストア52a、52a、...52α、及びバス85を含むことができる。コンピュータ5はまた、データ記憶装置スイッチ5Zとバス561又は562から成るバス56とを含むことができる。
バス55は、揮発性メモリ51、周辺コントローラ57、及びデータポート59を互いに及びCPU50に通信的に結合することができる。
周辺コントローラ57は、データ記憶装置スイッチ5Zと通信的に結合することができる。データ記憶装置スイッチ5Zは、データストア52と通信的又は電気的に結合することができる。バス561は、スイッチ5Zのデータパスをデータストア52のデータパスと通信的に結合することができ、バス562は、スイッチ5Z内で又はそれを通して電源をデータストア52と電気的に結合することができる。
コンピュータ5は、N個の状態のいずれかで作動することができ、ここで、Nは、データストア52の数である。第1の状態においては、データ記憶装置スイッチ5Zは、周辺コントローラ57と通信するように第1のデータストア52aを使用可能にする。第2の状態においては、スイッチ5Zは、周辺コントローラ57と通信するように第2のデータストア52bを使用可能にし、N番目の状態においては、スイッチ5Zは、周辺コントローラ57と通信するようにN番目のデータストア52αを使用可能にする。1つのデータストア52のみが、任意の所定時間に周辺コントローラ57にアクセス可能である。
一実施形態では、コンピュータ5は、複数の装置と共に1つのコントローラのみを有する。別の実施形態では、コンピュータ5’は、複数のコントローラを有し、各々は、それぞれの複数の周辺装置を有する。切換は、その後、第1の周辺装置の複数の周辺装置、第2のコントローラの複数の周辺装置などの間で切り替わる。(複数のコントローラは、同数の複数の周辺装置を有する必要はない。)
各データストア52は、それぞれのユーザ又はユーザグループに対して自己完結型のソフトウエアを含むことができる。各データストア52は、ブート可能オペレーティングシステム、及び、オプションとして、データストア52に対応するユーザが必要とするか又は望む場合があるアプリケーション又はデータファイルを含むことができる。
各ユーザ又はユーザグループは、データストア52のうちの所定の1つ(又はそれ以上)のみを使用してもよい。従って、コンピュータ5を使用する前に、ユーザは、そのユーザに対応するデータストア52がコントローラ57を通じて通信することを可能にする所定の位置にスイッチ5Zを設定する。
このようにして、第1のユーザのデータは、同一コンピュータ上で第2のユーザのデータから分離される。コンピュータ5は、マルチユーザオペレーティングシステムに一般的である論理(ソフトウエア強制)レベルではなく、物理的レベルでセキュリティを強制することにより、更に効果的にユーザのデータを分離する。
このシナリオでは、スイッチ間のリブートが望ましい。リブートにより、一人のユーザから別のユーザへの切換においてメモリ51が消去される。また、多重キーや多重位置ロックが望ましい。任意の1つのキーで、任意の1つの所定位置にロックすることにより、1つの対応するデータストア52を使用可能にすることができる。
本発明をここで十分に説明しているが、当業者は、特許請求の範囲から逸脱することなく本発明に行うことができる多くの変更及び修正を容易に認識するであろう。例えば、上述のようなソフトウエア、データ記憶装置、又は他の周辺装置の切換に加えて、コンピュータはまた、誤作動中のハードウエアに対して適正に機能しているハードウエアを置換することができる。実際に、複数のマザーボードを搭載したコンピュータにおいては、スイッチは、コンピュータの機能している構成要素を1つの基板から別の基板に切り換えることができる。
また、上記の説明では、データ記憶装置を切り換えるべき装置として普通に使用しているが、当業者は、論理基板、ROM、及びコントローラを含む他のコンピュータ構成要素を切り換えることができることがここで容易に分かるであろう。
いくつかの状況の下では、電源供給時に切り換えると危険であるか又は損傷が発生する場合がある。従って、このような危険又は損傷が発生し得る時は、スイッチを非通電状態にすることができる。コントローラ1Aなどの論理装置は、電力状態や装置アイデンティティなどを追跡することにより、また、例えば、切り換える装置に電流が流れていない時に切換を可能にすることにより、危険又は損傷を与える切換を防止することができる。
スイッチは、手の届きやすい場所に位置することが好ましい。これは、例えば、USB、キーボード、及び他のポートの一般的な位置とは対照的なものである。
本発明の実施形態のいくつかの追加又はオプションの特徴及び特性をここで説明する。
修復スクリプトにより、ユーザのデータ記憶装置のバックアップが行われ、必要に応じてデータ記憶装置が再フォーマットされ、その後、オペレーティングシステムデータ、及び/又は、他の設定及び/又はデータの一部又は全てが入れ替えられる。これらの修復スクリプト及びプログラムは、試作機にロードされ、いくらかの調節の後にこの新案は機能するようになった。
初めて、本発明の修復スクリプト及びプログラムの組合せと共に、ユーザがコンピュータ上のスイッチをただ回すだけで、コンピュータは自己修理するようになる。
以下は、誤作動中のハードドライブのバックアップ及び修復処理を実行するために、プログラム及び/又はスクリプトと共に本発明の切換システムを使用する異なる例である。
・2つのハードドライブは、「通常の」コンピュータに接続することができる。
・単一のトグルスイッチをコンピュータの前部又は任意の位置に取り付けることができる。
・両方のハードドライブは、「装置ID」、「マスター」及び「スレーブ」設定、及び電力を制御することができる専用の切換システムによって制御される。
・ハードドライブ1は、OS(回転式磁気ハードディスクドライブなどであるが、これに限定されない)、数種類のアプリケーション、文書及び電子メールを処理する「一般的なコンピュータユーザの」ハードドライブである。装置アイデンティティは、「マスター」ハードドライブとして設定される。
・ハードドライブ2は、3つのパーティション、すなわち、a)「起動」パーティション、b)「マスター」パーティション、及びc)「バックアップ」パーティションに区分けすることができる。パーティション「a」は、「ブート」パーティションであるように構成される。
・「通常の」使用中、切換システムは、ハードドライブ2の装置アイデンティティが「マスター」ハードドライブとなるように切り換えるが、切換システムはまた、ハードドライブ2の電源を切る。
・パーティション「a」には、完全に機能しているOS及び修復処理を制御するための関連のソフトウエアがある。パーティション「b」には、ハードドライブ1の同一OS及び同一アプリケーションがあり、「欠陥」なしの初期状態となっている。パーティション「c」は、機械が新しくて「バックアップ」がまだ行われていないために、処理のこの時点では無記入状態である。
・ハードドライブ1からハードドライブ2にデータをコピーするプログラムは、その後、ハードドライブ2のパーティションcに対して、ユーザのデータ(例えば、「マイドキュメント」フォルダ、電子メール)の定期的な「バックアップ」を実行することができる。これらのバックアップは、解凍、圧縮、又はアルゴリズムによって表現することができる。プログラムは、データを記憶する任意の装置(ハードドライブ1又はフラッシュROMチップは、2つの例である)に記憶することができる。
・このコピー手順は、例えば、ユーザの文書及び電子メールを「バックアップ」パーティション「c」にコピーするスクリプトと共に、定期的な間隔(ユーザが調節することができる)で切換処理(電源「オン」をハードドライブ2に切り換えて「スレーブ」装置IDを付ける)を開始するプログラムを利用することによって可能にすることができる。作成される各バックアップには、ユーザが自分のデータが必要な時に複数の「バックアップ」から選択することができるように、固有の時間/日付スタンプを付けることができる。
OS、アプリケーションソフトウエア、又はハードドライブ1上の他の任意のデータの様々な部分は、その後、損傷、削除、汚染、又は破壊されることがある。ハードドライブは、ハードドライブの表面上に「不良ブロック」及び/又はセクタ、及び/又は物理的な損傷さえもを有する可能性がある。ハードドライブ1の破壊が非常に大きく、コンピュータは、ブートさえもことができない可能性がある。その後、それを修復することができる。
・「トグルスイッチ」を「反転」すると、以下の切り換え処理が発生する:
・その後、切換システムは、ハードドライブ1が「スレーブ」ドライブになるように「装置ID」を切り換え、その後、ハードドライブに電力が接続され、ハードドライブ2は、「マスター」という新しい装置になるように切り換えられる。
・その後、「バックアップ」を作成するスクリプトが再度実行され、全て又は選択的なデータをハードドライブ1からハードドライブ2のパーティション「c」にコピーすることができる(この例では、「マイドキュメント」フォルダ及び/又は電子メールをコピーすることができる)。
・その後、ハードドライブ1を完全に再フォーマットするような別のスクリプトをハードドライブ2で実行することができる。また、「不良ブロック」をハードドライブにマップすることができる。
・その後、OS及びアプリケーションの「完全に機能している」コピーをハードドライブ1からコピーする別のスクリプトをハードドライブ2で実行することができる。
・オプションとして、その後、パーティション「c」からの「バックアップのどのコピー」にユーザが戻りたいのかをユーザに尋ねるスクリプトを実行することができる。特定のバックアップを選択すると、「マイドキュメント」フォルダ及び電子メール(ハードドライブ2のパーティション「c」からの)がハードドライブ1にコピーされる。
・コピーを終了すると、コンピュータ及びハードドライブをシャットダウンする別の新しいスクリーンを実行することができる。
・その後、ユーザは再度スイッチを反転することができ、ハードドライブ1については「装置ID」が「マスター」に再度切り換えられ、ハードドライブ2が「スレーブ」に切り換えられ、電源が切られる。
・その後、ユーザはコンピュータを再起動することができ、完全にブートすると、新たに再フォーマットされたハードドライブ1になり、新たにコピーされたOS及びアプリケーション、新たにコピーされた「マイドキュメント」フォルダが搭載されており、従って、誤作動中の挙動が修復されることになる。
データ記憶装置ID、及び/又は電力、及び/又はネットワーク接続、及び/又は他の手段を切り換えることにより、データ記憶装置は、データ記憶装置の1つ又はそれ以上が他のデータ記憶装置から隔離され、及び/又はネットワーク接続から隔離されるような方法でコンピュータに接続することができる。
従って、ハッカー又はウイルスがネットワークに接続されているデータ記憶装置に入ってきた場合、ハッカー又はウイルスは、残りのデータ記憶装置が切換システムによって「分離」されたために、データ記憶装置の1つにしかアクセスすることはできない。このデータ記憶装置には、ユーザデータがない可能性がある。
また、ユーザは、「専用」又はネットワークから「隔離」されていた(切換システムを使用して)1つのデータ記憶装置から、ネットワークに露出されていたがユーザの個人データが「空の」異なるデータ記憶装置に切り換えることができる。従って、ハッカーは、ユーザの専用のデータ記憶装置にアクセスすることはできず、ユーザデータが入っていないデータ記憶装置にしかアクセスできなくなる。
マスターテンプレート:マスターテンプレートは、オペレーティングシステム、アプリケーション、又は、テンプレートのユーザ及び/又は製造業者が搭載したいと思う他の任意のもの、及び/又は、デフォルト/ユーザプリファレンス及び設定のうちの1つ又はそれ以上から成るソフトウエアの集合である。それは、このソフトウエアをマスターテンプレート記憶装置として定められたデータ記憶装置(又はパーティション)上にコピーすることによって作成される。
修復処理は、いくつかの異なる方法で機能することができる。例えば、ユーザ制御とすることができ、スケジュールに基づいて及び/又は起動時やシャットダウン時などに必ず実行することができる。
マスターテンプレートは、コンピュータ/コンピューティング装置上にユーザが望むか及び/又は必要とされるか及び/又は望ましいシステム及びソフトウエア及び/又はデータの「完全な」インストールとすることができ、それはまた、矛盾及び/又はエラーに関して検査され、そのエラーは、その後IT専門家が訂正することができる。
マスターテンプレートを作成するいくつかの方法がある。例えば、元の「完全な」インストール(エラーが特定され、かつ訂正された可能性がある)をユーザデータ記憶装置上に行い、その後、それをマスターテンプレートを含む第2のデータ記憶装置にコピー又はインストールすることができる。
それは、他の場所の別のコンピュータ上に作成して、ネットワークを通じてユーザのコンピュータに搭載されるようにダウンロードすることができる。
それは、他の場所のコンピュータ上に位置するデータ記憶装置上で作成する、及び/又は搭載することができ、ネットワークを通じてユーザのコンピュータを修復するように実行することができる。
それは、マスターテンプレートを記憶するように使用されている記憶装置及び/又はパーティション上で作成することができる。
マスターテンプレートがネットワーク上の他の場所で作成されて実行されるか、又はインストールされるか、又はユーザデータ記憶装置と異なるデータ記憶装置で作成された時、ショートカット及び/又は別名は、ユーザデータ記憶装置にコピーされた時に適切に機能するように修正する必要があるであろう。この場合、コピー中は、コードにより、これらのショートカット及び/又は別名がユーザデータ記憶装置上の正しいアイテムを示すように直される。
切換処理は、データ記憶装置の電力をオン又はオフにすることにより、装置を「隠したり」又は「見せたり」、つまり、装置のアクセス不能とアクセス可能を切り換えることができる。
ネットワークでアクセス可能なデータ記憶装置は、通常は電源を部分的又は完全に切ることができるか、又はネットワーク接続の電源を切ることができるか、及び/又はネットワークでアクセス可能なデータ記憶装置を「取り付けられていない状態にする」ことができる。ネットワークでアクセス可能なデータ記憶装置は、1)ネットワークでデータを送受信するのに使用される時のみネットワークに取り付ける及び/又は接続する、及び/又は電源を入れることができるか、2)常時ネットワークにアクセス可能とすることができるか、又は3)時々ネットワークにアクセス可能とすることができる。
オプションとして、ネットワークでアクセス可能なデータ記憶装置は、非感応ソフトウエアのみ、及び/又はアップロード又は送信を待っている発信データを含むように限定することができる。
オプションとして、プログラムは、メールが送受信されるが開かれないことを可能にする、ネットワークでアクセス可能なデータ記憶装置上に存在することができる。
様々なアイデンティティを有する複数の通信カードを使用して、アイデンティティを切り換えたりデータを送受信することができる。コンピュータの送受信機能を手品のように設定することができ、この場合、アイデンティティは迅速に変化しており、データ記憶装置は、オンラインにいる時間が可能な限り短く、例えば、送受信するだけの長さであり、その後はオフラインとなる。データ閲覧には別個のドライブを使用するのではなく、ソフトウエアは、ドライブがオフラインになるまでデータ閲覧を可能にせず、その後、オンラインに戻る前に検閲すべき発信データを除く全てのデータを転送する。
娯楽センターは、電気的な接続部、ホルダ、取付部品などを、外側又は内側に構成し、及び/又は、コンピュータと対話することができる自分の望むものを接続することをユーザ(又は製造業者)ができるようにして娯楽、教育、芸術的価値などを与えるコンピューティング装置の本体に組み込む。例えば、コンピュータの外側は、ユーザが装置を取り付けることを可能にする電気的接続部で部分的又は完全に覆うことができる。
盗難防止システム:盗難防止システムは、携帯電話技術、全地球測位システム送信器/受信器、ユーザを識別する手段、特別なデータ記憶装置、シーケンス制御、及び切換処理のうちの1つ又はそれ以上を含むことができる。これらの装置の全て又は一部を使用し、任意の手段手段を使用して、ユーザを特定することができる。ユーザが許可されたユーザと適合しなかった場合、以下のイベントが発生することがある。
1)ユーザデータ記憶装置の電源が切られ、従って「隠される」。
2)「偽物」であるが通常の格好をしたデータ記憶装置の電源が入れられ、取り付けられる(オプションとしてIDを切り換えることができる)。オプションとして、消去から保護された隠されたパーティションを有することができる。隠されている、及び/又は違った名称を有する、及び/又はそうでなければユーザの注意を引かないことができるソフトウエアが実行され、マシンの位置を例えば警察、所有者の電子メールアドレス、セキュリティサービスに送る。また、情報は、任意の種類の送信器、例えば、携帯電話を使用して送信する、及び/又はネットワーク及び/又はインターネットで送ることができる。盗難防止処理はまた、通話でトリガすることができる。
ユーザアイデンティティが許可されたユーザと適合しなかった場合、装置は、ユーザデータ記憶装置を隠し、「偽装した」データ記憶装置に切り替わることができ、全地球測位システム送信器の電源を入れてコンピュータの位置を特定することができる。
コンピュータの位置が特定された時、移動中であっても追跡することができる。
修復処理では、(オプションとして)ユーザデータ記憶装置上のソフトウエアと完全なマスターテンプレートとを比較する比較法を利用することができる。ユーザ処理をモニタすることにより、ユーザテンプレートの状態をモニタし、変化を察知して(オプションとして、ユーザデータ記憶装置及びマスターデータ記憶装置間の変化及び/又は差異から成るデータベースを有する)、データベースに基づいて必要に応じてユーザデータ記憶装置(オンザフライ)を迅速に修復し、必要であれば、メモリをリセットすることができる。
オプションとして、システムは、ユーザの文書や電子メールなどを破棄する(及び/又は上書きする)必要はなく、従って、凍結又は破壊の問題がある場合、問題を抱えているシステムソフトウエア及び/又は目障りなソフトウエアを修復することができ、マスターと異なる構成要素のみを交換することができる。
オプションとして、ユーザオペレーティングシステム及び/又はアプリケーション、及び/又はデータ及びマスターテンプレート、及び修復処理は、揮発性メモリ内で実行することにより、発生時に問題を修復する比較修復処理が使用された場合遥かに素早く実行するように速い修復処理を可能にすることができる。従って、「プロセスウォッチャー」が問題を検出するために使用された場合、この速い修復処理は、ユーザでさえも気づかないほど素早く実行することができる。
アンチウイルス/アンチハッカーにおいては、ハードウエア及び/又はソフトウエア切換法を使用して、コンピュータのインターネットに接続された「側」とインターネットから隔離された「側」との間で相互に切り替わることができる。
1つのオプションは、「バックアップ及び/又は修復」システムが、ユーザデータ記憶装置の1つ又はそれ以上の完全なマスターテンプレートを保持及び/又は利用することであり、データをバックアップするか又は1つデータ記憶装置から別のデータ記憶装置にデータをコピーするソフトウエア又はスクリプト[例えば、「StorExecute」(定義を参照)上に位置することができる]を使用してユーザデータをバックアップして保管することができる。データ記憶装置が問題を抱えた時、「バックアップ及び/又は修復」システムは、切換機能を使用して完全なマスターテンプレート及び/又はバックアップ及び/又はアーカイブにアクセスすることができ、いくつかのスクリプト及び/又はプログラム[例えば、「StorExecute」(定義を参照)上に位置することができる]を使用して、コンピュータを機能時の状態に回復することができる。また、「バックアップ及び/又は修復」システムは、マスターテンプレートを使用するのではなく、別個のデータ記憶装置上のバックアップ及び/又はアーカイブから修復を実行することができる。
本発明の追加の実施形態及び態様についてここで説明する。本発明は、コンピューティング装置のバックアップ及び回復をサポートする装置及び方法を更に提供することが分かるであろう。コンピューティング装置は、一般的に、ユーザコンピューティング環境、及び、ユーザコンピューティング環境の安定性及び機能性を高めるサポート環境の両方を含むものである。
コンピュータのオンザフライの修復
処理、異なるコンピューティングシステム、データのスナップショット、モニタリング、修復、アプリケーション構成、及びアプリケーション出力の実施形態をここで順に説明する。
例示的処理
一実施形態においては、複数のコンピューティング処理を利用して、「オンザフライ」の発明を可能にすることができる。ここでは、個々のコンピューティング処理は、安定性をモニタ、追跡、及び予測し、ユーザコンピューティング環境内の属性をバックアップ、回復、又は修復することができる。属性は、ソフトウエア専用、データ専用、オペレーティングシステム専用、又はその任意の組合せとすることができる。複数のコンピューティング処理の利用は、ユーザコンピューティング環境の通常の作動を容易にすることができる。本発明の一実施形態では、ユーザにシャットダウン、再起動、ログオフ、ログオン、又はアプリケーションを終了させることを要求するなどのユーザ介入がなくても、ユーザコンピューティング環境を安定させることができる。本発明の一実施形態では、サポート環境は、ユーザコンピューティング環境と相互作用する機能を有することができる。本発明の一実施形態では、サポート環境は、シャットダウン、再起動、ログオフ、ログオン、又はアプリケーションを終了させることをユーザコンピューティング環境に開始させるか又は引き起こすことができるであろう。
異なるコンピューティングシステム
本発明の一実施形態では、ユーザコンピューティング環境及びサポート環境は、異なるコンピューティングシステムで機能する。2つのコンピューティングシステムは、共通のボックス内に搭載することができる。ユーザコンピューティングシステムは、データ記憶装置やコンピューティングシステムを容易にするために、RAM、プロセッサ、ビデオカード、及び当業技術で公知の他の属性から成ることができる。本発明の一実施形態では、例えばサポート環境からユーザ環境にデータをコピーする必要性など、修復を実行するためにデータ記憶装置を必要に応じてリンクさせることができる。
データのスナップショット
本発明の一実施形態では、本発明は、ユーザコンピューティング環境のスナップショットを撮る。このスナップショットをその後利用し、ユーザ環境の安定性を回復、解析、又は促進することができる。スナップショットは、ユーザ環境によって利用されるディスクドライブの理想化された又は安定したバージョン又は個々のパーティションなどのディスクドライブの部分集合を含むことができる。また、スナップショットには、ユーザシステムRAM、ユーザシステムディスクドライブ、ユーザシステムパーティション画像、ビデオカードのメモリ、又はユーザコンピューティング環境で記憶又は利用される任意の他のメモリを挙げることができる。これらのスナップショットは、関連のユーザ環境データ記憶装置に記憶することができる。
モニタリング
サポート環境は、ユーザ環境をモニタすることができる。モニタリングには、ユーザ環境内で実行されているか又は使用可能にされた処理のモニタリングを挙げることができる。モニタリングは、データ記憶装置、データ記憶装置上に含まれたデータの利用、及びユーザ環境の通常の作動に必要な他の側面のモニタリングを挙げることができる。このモニタリングは、望ましくない変化、潜在的な問題、及び潜在的なソリューションの識別を容易にすることができる。サポートシステムは、ユーザ環境内の凍結又は他の望ましくない変化を発見することができる。
回復
望ましくない変化がユーザ環境内で見出された時、サポート環境は、ユーザ環境の復旧又は回復又は修復を試行することができる。サポートシステムは、キーボードがユーザ環境とのキーストロークの通信をロックした場合に、キーボードをリセットするなどのいくつかの方法で、ユーザ環境を再度使用可能にすることができる。ユーザ環境の更なる修復は、「Freezebuster」による説明、必要に応じた装置のリセット及びクリア、必要に応じた欠陥ソフトウエアコンポーネントの交換、及び/又は必要に応じたハードウエア構成要素及び/又は装置の切換など、接続をリセットすることによってサポートすることができる。サポート環境及び/又はサポートシステムは、上述の理想化されたスナップショットの1つ又はそれ以上からデータの全て又は一部をコピーすることができる。これらのスナップショットは、それぞれの装置及び/又は位置にコピーすることができる。
アプリケーション構成
別の実施形態は、データ及びアプリケーションを互いに隔離することができるが出力及び/又は入力装置を共有することができる1つのコンピューティングシステム上で同時に2つ又はそれ以上の異なるプログラムを実行する機能をサポートするものである。本発明の一実施形態では、アプリケーションは、別個のアドレス空間でアプリケーションを実行することによって隔離することができる。アプリケーション及びデータは、更に、2つの分離されたデータ記憶装置を利用することによって隔離することができる。一方の隔離されたデータ記憶装置から他方の隔離されたデータ記憶装置に指令を安全に送るために、以下を利用することができる。本発明の一実施形態では、アイコン及びデスクトップアイコンをクリックした時に以下を発生させることができる。アイコンは、他方の隔離されたデータ記憶装置上の特定のアプリケーションを起動する指令を実行することができる。これは、その指令を他方の隔離されたデータ記憶装置に送る共有「ASIC」によって達成することができる。
別の実施形態は、合併された表示を伴うデータの隔離が実行される。この実施形態では、データを隔離するという目的のために2つのユーザ環境を分離することができる。「敏感な」データを含まないハードドライブは、隔離してネットワークに取り付けることができる。第2のハードドライブは、他方のハードドライブに取り付けてもそうでなくてもよく(方法を問わず)、「敏感な」ユーザデータのために利用することができるが、切換手段によって「隔離されている」ためにネットワークには露出されない。これらの2つのハードドライブから来る映像信号は、その後、同一のスクリーンに「合併」させることができる。換言すると、全てのコンピューティングは、1つのコンピュータ内の隔離された「安全な区域」内で実行されることになるが、ユーザには見えない。別の例:アンチウイルスシステムは、本方法を用いてウイルス感染の可能性があるデータを隔離することができる。
アプリケーション出力
アプリケーションは、出力を同一画面上に並列で表示させる、及び/又は別個に「コンピューティング」されている他のアプリケーション及びデータと同一画面上で重複させることができる。両方の計算処理は分離することができるが、その後、画面上で互いに「合併させる」ことができる。本発明の一実施形態では、これは、複数のビデオカードを使用することによって達成することができる。この概念は、例えば、修復システム、マルチユーザ、アンチハッカー、盗難防止、及びアンチウイルスに適用することができる。
別の実施形態では、ユーザコンピューティング環境及びサポート環境の両方は、単一のコンピュータシステム上に存在することができる。ユーザ環境の作動のスナップショットが撮られる。このスナップショットは、サポート環境と関連付けられる。サポート環境に関連した処理は、ユーザ環境の活動及び状態をモニタする。このモニタリング機能は、システム凍結のようなユーザコンピューティング環境の性能のいかなる劣化も察知する。モニタリング機能では、サポート環境の性能の劣化があれば通知される。サポート環境は、ユーザ環境を復旧又は回復するために必要に応じた任意の修復対策を実行する。回復には、スナップショットを利用したユーザ環境の復旧又は回復を挙げることができる。ユーザディスク全体を回復させることもできる。特定のアプリケーション又はソフトウエアパッケージ、又は特定のファイルを回復させてもよい。
コンピュータの外部修復の実施形態
本発明は、コンピューティング装置をバックアップ又は修復することができる。コンピューティング装置は、ユーザコンピューティング環境とユーザコンピューティング環境の機能性を安定化させるサポート環境とを含むことができる。本発明は、1つ又はそれ以上の外部装置又は取外し可能な媒体を含むことができる。
マスターテンプレート
マスターテンプレートは、コンピュータシステム又はコンピュータシステム構成要素の全ての理想的な状態を表すデータのコピーとすることができる。マスターテンプレートは、使用可能なコンピュータシステム又はコンピュータシステム構成要素からデータをコピーすることによって作成することができる。コンピュータシステムは、マスターテンプレートを作成する前は理想的な状態であると考えられる。コンピュータシステムの理想的な状態は、コンピュータシステムがアクセス可能なデータによって表すことができる。データとしては、この関連では、オペレーティングシステム(例えば、Linux、Unix、「ウィンドウズ98」)、アプリケーション(例えば、「WordPerfect」、マイクロソフトオフィス)、ユーザデータ(例えば、オペレーティングシステムプリファレンス、背景画像、作成済み文書)、及び構成要素データ(例えば、BIOS、PRAM、EPROM)を挙げることができる。また、データとしては、ローカル又はリモートデータ記憶装置を含むコンピュータシステムがアクセス可能な任意の情報を挙げることができる。
一例として、1つのコンピュータシステムのマスターテンプレートは、「ウィンドウズ98」オペレーティングシステム、「WordPerfect」アプリケーション、及びユーザによって作成された文書のようなそのコンピュータシステム上にインストールされた情報の全てを含むことができる。この情報は、コンピュータシステムがアクセス可能な複数のハードドライブにインストールすることができる。更に、マスターテンプレートとして、BIOS設定のコピー又は理想状態バージョンを挙げることができる。
マスターテンプレートは、新たに購入されたコンピュータシステムのスナップショットを表すことができる。システムは、一般的に、オペレーティングシステム及び様々なアプリケーションが予めインストールされた理想状態にあることにより、ユーザは、コンピュータシステムを利用し始めることができる。特定のユーザの場合、マスターテンプレートは、例えば、オペレーティングシステム、アプリケーション、及びユーザカスタム化したものを含むコンピュータシステムの理想状態を表すことができる。ユーザカスタム化したものとしては、ユーザのペットの写真のようなデスクトップ背景のための写真、つまり「.jpg」画像のユーザが事前に選択したものを挙げることができる。
オプションとして、マスターテンプレートは、第1のコンピュータシステムから作成することができ、その後、異なるコンピュータシステムのマスターテンプレートとして使用することができる。第1のコンピュータの理想状態は、結果的に、第2のコンピュータ又は任意の数のコンピュータシステムに転送される。
バックアップ
バックアップは、コンピュータシステム又はコンピュータシステム構成要素上の情報を表すデータのコピーである。バックアップは、使用可能なコンピュータシステム又はコンピュータシステム構成要素からデータをコピーすることによって作成することができる。コンピュータシステムのバックアップとしては、コンピュータシステムがアクセス可能であるデータを挙げることができる。データとしては、この関連では、オペレーティングシステム(例えば、Linux、Unix、「ウィンドウズ98」)、アプリケーション(例えば、「WordPerfect」、マイクロソフトオフィス)、ユーザデータ(例えば、オペレーティングシステムプリファレンス、背景画像、作成済み文書)、及び構成要素データ(例えば、BIOS、PRAM、EPROM)を挙げることができる。また、データとしては、ローカル又はリモートデータ記憶装置を含むコンピュータシステムがアクセス可能な任意の情報を挙げることができる。
一例として、1つのコンピュータシステムのマスターテンプレートは、「ウィンドウズ98」オペレーティングシステム、「WordPerfect」アプリケーション、及びユーザによって作成された文書のようなそのコンピュータシステム上にインストールされた情報の全てを含むことができる。この情報は、コンピュータシステムがアクセス可能な複数のハードドライブにインストールすることができる。更に、バックアップとしてBIOS設定のコピー又は理想状態バージョンを挙げることができる。
アーカイブは、一般的に消去することができないバックアップである。
データ記憶装置
データ記憶装置として、コンピュータシステムがアクセス可能なメモリ装置がある。コンピュータシステムは、様々なメモリ装置のデータにアクセスしたり、又はデータを様々なメモリ装置に記憶することができる。メモリ装置として、ハードドライブ、RAM、ROM、EPROM、又はBIOSを挙げることができる。メモリ装置は、データ(例えば、データ又はプログラム)を記憶する。ユーザデータは、一般的にディスクドライブに記憶されるが、潜在的には任意のメモリ装置上に記憶することができる。一般的に、コンピュータシステムは、様々なメモリ装置を利用する。例えば、オペレーティングシステム、アプリケーション、及びユーザデータは、ハードドライブに記憶することができ、BIOSプログラムは、ROMに記憶することができ、BIOSデータは、プロテクトされたメモリに記憶することができる。
データ記憶装置−DSD
「DSD」は、「データ記憶装置」を示す。
例示的な外付け方法
データ記憶装置(DSD)は、外部装置とすることができる。外部装置を利用するための様々なプロトコルが現在存在する。普及率が高いプロトコルのいくつかとしては、TCP/IP、USB、USB2、ファイアワイヤ、IEEE1394、PS/2、パラレル、シリアル、PCMCIA、及びSCSIがある。他のプロトコル及び外部装置をコンピュータシステムに接続する方法は当業者に明らかであろう。一例として、「SCSI」ハードディスク及び「SCSI CDROM」は、コンピュータシステムに取り付けることができるメモリ装置である。コンピュータシステムは、その後、外部装置に読取り又は書込みを実行することができる。
例示的な修復処理
自動化された処理により、コンピュータシステムのデータ記憶装置を修復することができる。修復処理としては、複数のプログラムを挙げることができる。自動化された処理は、特定のイベント又は一組のイベントによってトリガすることができる。修復処理は、ハードドライブの主ブートパーティションのような特定のデータ記憶装置専用とすることができる。修復処理は、修復の種類又はユーザのプリファレンスに基づいて修正、追加、又は省くことができる様々な機能に及ぶことができる。ユーザは、ユーザのプリファレンスを修正することができる。
一実施形態においては、修復処理は、機能のシーケンスを表す。一般的に、マスターテンプレートは、ユーザに提供されるか又はユーザによって作成される。バックアップは、間欠的に作成される。コンピュータシステムは、不安定になり、修復が必要になるものである。ユーザが修復処理を作動するか、又は、修復処理が、システムに関する不安定性又は問題を認識して修復処理を作動することができる。
修復の前は、マスターテンプレートは、一般的にコンピュータシステムのために存在する。マスターテンプレートは、いくつかの方法で作成されたと考えられる。コンピュータシステムに対して1つ又はそれ以上のマスターテンプレートを作成する1つ又はそれ以上の方法には、新しいコンピュータでの出荷、ソフトウエア(例えば、この処理をサポートするソフトウエア)インストールによる作成、ユーザ作動式プログラムによる作成、及びプログラムによるマスターテンプレートの定期的な作成がある。
バックアップは、一般的にコンピュータシステムのために存在する。バックアップとしては、コンピュータシステムがアクセス可能なデータ記憶装置上に記憶されたユーザデータ及びプログラムを挙げることができる。例えば、文書は、ユーザによって作成又は修正されたと考えられる。これらの文書は、バックアップとして記憶することができる。ユーザは、バックアップに記憶することができる更に別のプログラムをインストールしたかもしれない。
バックアップ処理中は、データは、コンピュータシステムのデータ記憶装置からバックアップデータ記憶装置にコピーされる。コンピュータシステムがアクセス可能な任意のデータをバックアップすることができる。バックアップは、圧縮することができる。圧縮により、バックアップを保持するために必要とされる記憶スペース容量を小さくすることができる。また、増分バックアップを使用することができる。増分バックアップにより、バックアップを実行するために必要とされる時間を短縮し、その記憶に必要とされる記憶スペースを小さくすることができる。バックアップは、アーカイブとして記憶することができる。
修復処理は、作動されて(オプションとして確認することができる)。
修復処理として、いくつかの機能を挙げることができる。修復処理は、ユーザ管理者、修復ソフトウエア、又は修復ハードウエアによって開始することができる。ユーザは、具体的に処理を開始する(例えば、グラフィックオペレーティングシステムのアイコンをダブルクリックする)ことができる。管理者は、「TCP/IP」などのインターネット接続でコンピュータシステムと通信することによって修復処理を開始することができる。修復ソフトウエアは、ブートディスケット又はハードドライブ上の別個のブートパーティションを利用することによって修復処理を開始することができる。修復ハードウエアは、オペレーティングシステム又はハードディスクの凍結状態を感知し、次に修復処理を開始することにより、処理を開始することができる。代替的に、ユーザは、マシンをシャットダウンするための処理を開始するハードウエアスイッチを押すか、ブートディスケットを切り換えることができ、その後の起動により、修復処理の続行を開始することができる。
修復処理は、ユーザがいくつかのシナリオで修復処理を確認することができるように構成することができる。例えば、DSDが再フォーマットされる前に、作動を確認するようにユーザに要請することができる。ユーザは、修復処理を止めることが許されるようにしてもよい。
修復処理は、コンピュータシステムを修復するためのマスターテンプレート、バックアップ、アーカイブ、及びオペレーティングシステムに関連した様々な指令、切換、及び他のプログラムを利用することができる。例えば、修復処理は、MS−DOS指令を使用するハードディスクをフォーマット設定及び区分けし、その後、マスターテンプレートをハードドライブの主ブートパーティションにコピーし、次に、最新のバックアップ又はアーカイブをコピーし、その後、主ブートパーティションをアクティブパーティションとしてマーク付けすることができる。
任意の数のバックアップ又はアーカイブを使用してユーザDSDを回復することができる。
オペレーティングシステムに付随する指令を使用して、コンピュータシステムのDSDをリセット又は更新することができる。DSD(例えば、PRAM、BIOS、又はCMOS)は、オペレーティングシステムに付随する指令を使用して更新することができる。一般的に、MS−DOS指令を使用して、BIOSバージョンをダウンロードし、保存し、リセットし、デフォルトにリセットし、又は更新することができる。例えば、修復処理の1つの段階は、ブートするとMS−DOSパーティションに入り、MS−DOS指令を実行してコンピュータシステムのBIOSを更新し、その後、ブート装置を変更し、更に、必要であれば修復処理を続行するためにコンピュータシステムをリブートする段階を含むことができる。代替的に、以前に保存した状態をマスターテンプレート、バックアップ、又はアーカイブの一部として含めることができる。
修復処理はまた、DSDを管理することができるとしてもよい。DSDの管理としては、試験、再フォーマット、解析、リセット、又は不良ブロックの判断を挙げることができる。代替的に、修復処理は、全て又は一部のDSDの管理上の機能性をもたらすために他のプログラムと対話することができる。例えば、修復処理は、DSD(例えば、ハードドライブ)をフォーマットするためにオペレーティングシステム指令に依存するが、別のDSD(例えば、BIOS、PRAM)と対話するためのプログラムと対話することができる。
修復処理は、コンピュータシステムの現状を評価することができる。解析の一環として、修復処理は、修復の種類を判断するか又は推奨することができる。例えば、DSD(例えば、ハードディスク)が応答していない場合、再フォーマットを推奨することができる。破壊していると思われるファイルが数点しかない場合、修復処理は、マスターテンプレート又はバックアップからコピーする必要があるファイルのみを判断することができる。マスターテンプレートからのデータの一部又は全てをDSD上にコピーすることができる。代替的に、修復処理は、マスターテンプレート全体をDSDにコピーすることができる。
修復処理は、コピーをする必要があるバックアップの量に関して類似の評価を実行することができる。バックアップからのデータの一部又は全てをDSD上にコピーすることができる。代替的に、修復処理は、マスターテンプレート全体をDSDにコピーすることができる。
コンピュータシステムのリブートは、修復処理に組み込むことができる。ブート装置間の切換も修復処理に組み込むことができる。修復処理は、ハードディスク1からハードディスク2にブートディスクを切り換えることができる。ハードディスク2がアクティブパーティションとしてブートするように電力を循環させることができる。デフォルトプログラムをブートシーケンスの一部として実行し、修復処理の一部を実行することができる。その後、修復処理は、ハードディスク1を変更し、ハードディスク1をアクティブパーティションに切り換え、次に、電源をリブート又は循環してハードディスク1のブートを開始することができる。
外部装置実施形態のいくつかの例示的実施形態
修復処理は、例えば、USB、ファイアワイヤ、パラレル、シリアル、PS/2、PCMCIA、又は赤外線を通じてコンピューティング装置と通信的に結合することができる外部に位置する装置によって開始又は管理することができる。この外部装置は、ブート装置とすることができる。
外部ブート装置は、修復処理を作動するブート装置を有するコンピュータシステムに結合することができる。修復プログラムは、ブート装置又は第2のデータ記憶装置に搭載することができる。第2のデータ記憶装置はまた、コンピュータシステムと通信的に結合することができる。第2のデータ記憶装置は、マスターテンプレート、バックアップ、又はアーカイブを含むことができる。また、第2のデータ記憶装置は、修復プログラム又は修復処理を容易にする他のプログラムを含むことができる。
例えば、内部SCSI装置「id 0」は、デフォルトブート装置とすることができる。修復処理は、SCSI装置「id 0」への電源を切ることができる。修復処理は、外部SCSI装置「id 0」への電源を入れることができる。修復処理は、リセット指令(例えば、機械的装置、論理回路)を作動することによってコンピュータシステムをリブートすることができる。コンピュータシステムがリブートする時、外部SCSI装置は、ブート装置とすることができる。その後、修復処理は、外部SCSIハードドライブ上の修復処理の一部の指示に従って続行することができる。
修復処理は、一次及び二次SCSIディスクの装置IDを切り換える段階を含むことができる。この第2の例においては、内部SCSIドライブは、「id 0」とすることができ、外部SCSIドライブは「id 0」とすることができる。修復処理は、内部SCSI装置を「id 5」に、外部SCSI装置を「id 0」に切り換えることができる。SCSI装置IDの切換は、修復処理によって行うことができる(例えば、修復処理によって作動される機械的装置又は論理回路)。
別の実施形態では、BIOSは、外部装置からのブートを可能にするように修正することができる。また、ブート装置は、BIOSを更新することによって切り換えることができる。一般的に、BIOSは、ブートシーケンスを定める。第1のブート装置がない場合、代替ブート装置をBIOSで定めることができる(例えば、ブート装置シーケンスは、CD−ROM、A:、C:である)。BIOSは、ダウンロード、修正、及び、アップロードすることができる。BIOSは、USB装置、IDE装置、又は他の装置のブート識別信号を変更するために更新することができる(例えば、ダウンロード−修正−アップロードを通じて所定の位置に)。修復処理は、様々な方法でBIOSのコピーをダウンロードすることができる。一例としては、MS−DOSモードへのブート、現在のBIOSをファイルに保存するためのプログラムの実行がある。代替的に、BIOSファイルは、ブートシーケンスを変更するために修復処理によって修正することができる。BIOSファイルが更新された場合、効力を発するためには、コンピュータシステムにロードすべきである。実際には、第2のハードドライブのようなブートシーケンスを別のDSDに変更することができる。特定の「ID」を有する外部SCSIディスクは、「ブート装置」となることができる。別のオプションは、各々が異なるブートシーケンスを有する複数のコピーを記憶する段階を伴う。適切なBIOSファイルをブートすると、特定のブート装置からのブートを可能にする場合がある(例えば、IDEハードドライブパーティション1、SCSI装置「id 0」、USBディスク、Jazドライブなど)。外部装置をブート装置として、修復処理を開始又は続行することができる。
別の実施形態では、二次的ブート装置を外部データ記憶装置としてコンピュータシステムに取り付けることができる(例えば、パラレルポートに接続)。この二次的ブート装置は、修復処理を作動又は管理することができる。二次的ブート装置は、別のデータ記憶装置(例えば、内部又は外部ハードドライブ)を再フォーマットする段階、データをマスターテンプレートからコピーする段階、データをバックアップ又はアーカイブからコピーする段階などの処理を行うプログラムを含むことができる。
コンピュータシステム(例えば、ユーザのメインドライブ)がアクセス可能なデータのマスターテンプレート、バックアップ、又はアーカイブを作成するための二次的ブート装置上の又は二次的ブート装置がアクセス可能なプログラムを作動させることができる。
コンピュータシステム上のデータ記憶装置を修復するための二次的ブート装置上又は二次的ブート装置がアクセス可能なプログラムを作動させることができる(例えば、修復する必要があるユーザのメインドライブ)。このシナリオにおいては、マスターテンプレート、バックアップ、又はアーカイブデータ記憶装置をUSBやファイアワイヤなどを通じて取り付けることができる。プログラムは、マスターテンプレート、バックアップ、又はアーカイブDSDをアクティブに検索して、ユーザにコンピュータシステムを回復するためのオプションリストを呈示することができる。代替的に、修復処理は、最良の回復オプションを判断及び選択して、修復処理を続行することができる。
別の実施形態では、修復処理は、フロッピー、CD、DVDの挿入によって開始するか、任意の他の形態の取外し可能な記憶装置/メモリ又は起動装置を使用してコンピュータシステムをリブートすることによって開始ことができる。取外し可能な記憶装置/メモリ又は起動装置は、ブート順序が取外し可能な媒体がブート装置として作動することを可能にするシーケンスをBIOSブートシーケンスが含む場合にブートすることができる。取外し可能な媒体からのブートは、自動化された修復処理をトリガ又は作動させることができる(例えば、取外し可能な媒体又は外部装置上に位置するプログラム)。取外し可能な媒体からのブートは、機械的装置又はプログラム論理を作動して修復処理を開始することができる(例えば、ハードディスクドライブIDを切り換え、別の装置からブートするためのリブートシーケンスを開始して修復処理を続行する)。
別の実施形態では、修復プログラム又は修復処理の一部は、「StorExecute」、マイクロコントローラ、ASICなどに搭載することができる。修復プログラムは、修復処理を作動させることができる。修復プログラムは、修復処理を管理する段階を含むことができる。実行することができる機能としては、データ記憶装置の再フォーマット、ブート装置間の切り換え、コンピュータシステム内の電気構成要素又は外部構成要素の切り換え、データ記憶装置へ/データ記憶装置からのデータのコピー、(例えば、マスターテンプレート、バックアップなど又は任意の一部分の別のデータ記憶装置へのコピー)、及び他の修復機能がある。修復処理はまた、外部装置内に配置、組込み、又は内蔵することができる。修復処理を作動させるスイッチトリガも、外部装置内に配置、組込み、又は内蔵することができる。
一実施形態では、起動装置は、「StorExecute」によって選択することができる。代替的に、装置アイデンティティは、「StorExecute」が割り当てることができる。例えば、修復処理がトリガされた場合、「StorExecute」は、装置アイデンティティをデータ記憶装置に割り当てることができ、又は、リブートが修復処理で利用される場合、どのデータ記憶装置が修復処理に使用されるべきか、及び、どのデータ記憶装置がブートデータ記憶装置に使用されるべきかを判断することができる。
「オンザフライ」修復中の一実施形態では、外部データ記憶装置は、マスターテンプレート又はバックアップ、又は修復処理に使用されるソフトウエアのようなものに利用することができる。
この実施形態では、外部データ記憶装置(DSD)は、内部データ記憶装置を含む一般的なパーソナルコンピュータに取り付けられる。内部DSDは、「メインユーザ」データ記憶装置と呼ぶことができる。外部DSDは、任意の利用可能な市販の外部接続を通じて取り付けることができる。
コンピュータを修復するための外部データ記憶装置(DSD)の例
この例においては、ユーザは、外部データ記憶装置(DSD)を任意の利用可能な外部接続(例えば、ファイアワイヤ、USB、SCSIなど)でコンピュータに取り付ける。外部接続としては、USB、USB2、ファイアワイヤ、IEEE1394、PS/2、パラレル、シリアル、PCMCIA、SCSI、及び外部装置と通信する他のプロトコル及び方法がある。
ユーザは、マスターテンプレートを作成するためのプログラムを開始するソフトウエアを「メインユーザ」DSD上にインストールし、毎週金曜日の朝に実行するようにバックアップを計画する。マスターテンプレートは、プログラムによって作成され、外部データ記憶装置に記憶される。毎週金曜日の朝に、修復処理が実行され、追加情報のバックアップを外部データ記憶装置に記憶する。
修復処理の一部を実行するために、マイクロコントローラ及びEPROMをコンピュータに取り付けることができる。取り付けは、利用可能な外部接続を通じて行うことができる。マイクロコントローラ及びEPROMは、外部データ記憶装置に組み込むことができる。
スイッチトリガをコンピュータに取り付けることができる。取り付けは、任意の利用可能な外部接続を通じて行うことができる。
別の例として、メインユーザデータ記憶装置は、偶然に消去又は損傷を受け、しかもコンピュータがブートしないことがある。ユーザは、コンピュータを修復することを決め、スイッチトリガを作動することによって修復処理を開始し、これによって以下の処理が開始される。
マイクロコントローラは、現在のブートシーケンスを判断するために、コンピュータシステムのBIOSに質問をすることができる。EPROMは、これを達成する方法のための命令を記憶することができる。
マイクロコントローラは、外付けデータ記憶装置がブート装置となるように、ブートシーケンスを修正する必要があると判断することができる。マイクロコントローラ及び関連のEPROMは、これを達成するためにBIOSをフラッシュすることができる。マイクロコントローラは、その後、指令をコンピュータに送ってコンピュータをリブートすることができる。コンピュータがリブートする時は、外部データ記憶装置からリブートすることになる。
ブート後に、外部データ記憶装置に搭載されているプログラムは、本明細書で規定するような修復処理を実行することができる。
ここで、本発明の更に別の実施形態及び態様を説明する。
コンピュータバックアップのための装置及び方法の実施形態
本発明は、バックアップ、バックアップの維持、又はコンピューティングシステムに関連したデータの修復を行うことができる。コンピューティングシステムは、ハードウエア及びソフトウエア、及びコンピューティングシステムがアクセス可能な任意のメモリを含む任意の数の構成要素を含むことができる。コンピューティングシステムは、ユーザコンピューティングシステム及び潜在的にユーザコンピューティングシステム(例えば、オペレーティングシステム、BIOSなど)の機能性を安定化するサポート環境を中心とすることができる。一般的に、コンピューティングシステムに関連したデータは、様々な特性によって識別され、データは、バックアップとして記憶され、その後、バックアップ内のデータは、回復されるか、又は既存のコンピューティングシステムを評価するために使用することができる。
バックアップ
データは、一般的に、コンピューティングシステムでの使用に対する利用可能性を含むいくつかの特性を有する。データとしては、オペレーティングシステム、アプリケーション、ユーザデータ、コンピューティングシステムにあるデータ(例えば、ハードディスク、ハードディスクパーティション、RAM、ROM、BIOS、CMOS、EPROM、電子シリアル番号など)、コンピューティングシステムに搭載されているアプリケーション(例えば、上述のサンプル)、作成されたバックアップ又はアクセス可能なバックアップのうちのいずれかの1つ又はそれ以上を挙げることができる。データという用語は、バックアップ処理に付随する情報の特定の側面を説明するために使用することができる。バックアップ処理としては、バックアップ、管理、又は回復のためにデータ及びデータの特性を識別する段階を挙げることができる。データはまた、バックアップ又はバックアップの組を示すことができる。デフォルトにより、バックアップすべきデータは、所定のディスクドライブ、所定のディスクパーティション、又はメモリ上の全てのデータを表すことができる。
データの特性としては、どのデータがバックアップの一部であるか、データにアクセスする方法、データをバックアップする場所、バックアップの頻度、及びバックアップの種類の指示を挙げることができる。これらの特性を使用して、バックアップ処理に関連した特定のデータを定義又は識別することができる。特定の実施例は、どの特性がバックアップ処理と関連するかに従って異なる可能性がある。
どのデータを含むべきかは、コンピューティングシステムに対するデータのアクセス可能性によって限定される。バックアップに含むための特定のデータは、予め決めるか又はバックアップ処理の一部として決めることができる。所定のバックアップに含めるべきデータの所定の識別は、ハードウエア又はソフトウエア製造業者又はユーザ(例えば、システム管理者)が行うことができる。所定の組のデータは、どのデータをバックアップすべかの初期の指示をもたらすことができる。オペレーティングシステムは、例えば、オペレーティングシステム機能性に関連したファイル及びディレクトリのリストを含むことができる。本明細書では、オペレーティングシステムは、オペレーティングシステムを代表するか又はバックアップすべき特定のデータを識別するファイル又は関連データの特定のリストを供給することができる。
ハードウエアシステムは、例えば、そのシステムのバックアップに有用と考えられるデータを表すメモリアドレス範囲(例えば、RAM、ROM、EPROM、BIOSなど)を含むことができる。ハードウエアシステムはまた、バックアップ処理で有用と考えられるコンピューティングシステム内の他のデータ(例えば、BIOSを抽出又は更新するためのアプリケーション)を識別することができる。一般的に、識別されたデータは、コンピューティングシステムの作動を理解するか、又は、故障又は破壊データ発生時にデータを回復するなどのバックアップ処理で有用である。バックアップ用に特定されたデータはまた、限定されたディスクスペースを有する場合があるコンピューティングシステムのクリーンアップ(例えば、現在のコンピューティングシステムにおけるデータの必要性を確認する)、及び特定されたデータの回復を含む様々な用途を有することができる。
代替的に、所定のバックアップにどのデータを含めるべきかは、コンピューティングシステムがユーザに納入された後に判断することができる。データは、ハードウエア又はソフトウエアのインストールで、又はコンピューティングシステムを通常利用する中で判断することができる。判断は、ハードウエア又はソフトウエアのインストールで行うことができる。インストール処理は、どのデータがバックアップ処理に有用であるかを特定する段階と積極的に相互作用することができる。インストール処理は、バックアップ処理又は所定のインストール専用のプログラムファイル及びデータを特定するためのツールと対話することができる。ユーザファイルの位置はまた、バックアップ処理の手助けとなることができる。ユーザディレクトリの内容は、定期的なバックアップに含めるためにバックアップ処理によってマーク付けすることができる。また、アプリケーションによるデータへのアクセスをバックアップ処理に組み込むことができる。一例として、機能性の追加があり、その結果、アプリケーションによるデータの保存として、その特定データをバックアップするためのバックアップ処理に対する表示がある。インストールされたアプリケーションは、保存されたユーザファイルをその後のバックアップで含められるべきファイルのリストに追加することができる。複数のユーザが同一のコンピューティングシステムにアクセスする場合、バックアップに含めるべきファイルは、所有者の表示を含むことができる。
含めるべきデータは、ディレクトリ又は特定のファイルに従って特定することができる。例えば、含めるべきデータは、記憶装置のファイルの種類、ファイルの位置、ディレクトリツリーによって識別することができる。選択的なバックアップでは、ディスクドライブ又はデータ記憶装置などの特定のシステム構成要素に関連したデータのみをバックアップすることができる。
データへのアクセス方法は、バックアップの重要な特性であると考えられる。コンピューティングシステムに関連した様々な構成要素のデータのアクセス、記憶、フォーマット設定、修正、回復、及び更新については、重要な考察が必要と考えられるハードドライブにアクセスする公知の処理に従って全てのデータに容易にアクセス可能であるわけではない。上述のように、データとしては、コンピューティングシステムがアクセス可能なデータを挙げることができる。一般的に、一片のデータは、所定の処理に従って固有にアクセス可能である。ディスクドライブから情報にアクセスする処理は、初心者ユーザでも容易に分かるものである。
例えば、バックアップのためにBIOSへのアクセスでは、ブートすると特定のオペレーティングシステム(DOS5.x)に入る段階、ハードウエアの適合性を確認するハードウエア専用のプログラムを実行する段階、データ(例えば、BIOSデータ)をフロッピーディスクにコピーすることができる第2のハードウエア専用のプログラムを実行する段階が行われるであろう。この例におけるBIOSの更新では、BIOSをフラッシュするために別のプログラムを実行する段階が行われると考えられる。BIOSの新旧バージョン、及び関連アプリケーションをバックアップ内のデータとして記憶することができる。その結果、旧BIOSの回復をバックアップ処理に組み込むことができる。同様に、コンピューティングシステム内の特定構成要素のデータを管理するための既存の処理を解析することにより、コンピューティングシステムがアクセス可能な他のデータをバックアップ処理内に組み込むことができる。
バックアップがどこに記憶されるかは予め判断するので、バックアップ処理の一部として決めることができる。ハードウエア又はソフトウエア製造業者は、初期の所定のバックアップ記憶装置又はバックアップが記憶されるべきである別の装置の表示を提供することができる。オペレーティングシステムは、ディスクドライブなどの第2のデータ記憶装置、第2のパーティション、又は予め割り当てられたファイル(例えば、スワップファイルと類似のもの)にアクセス可能である。ハードウエアシステムは、例えば、第2のメモリ、つまり、デフォルトバックアップ位置を表すメモリ(RAM、ROM、EPROM、BIOSなど)のアドレス範囲を含むことができる。オプションとして、バックアップ位置は、コンピューティングシステム内の、又はコンピューティングシステム(例えば、イーサネット、ファイアワイヤ、USBなど)がアクセス可能な別の記憶装置とすることができる。
バックアップの頻度は、データの不安定さ、コンピューティングシステムの不安定さ、重要性、更新スケジュール、ユーザプロジェクト、個人の快適性レベル、類似の環境での過去の経験、ユーザ参加度などを含むデータ及びコンピューティングシステムに関連したいくつかの要素のいずれかを基本とすることができる。バックアップは、これらの要素に基づいて、特定の時期及び間隔で計画することができる。バックアップは、ハードウエア、ソフトウエア、又はユーザが開始することができる。同様に、保守及び回復のようなバックアップ処理上の他の活動は、特定の頻度に基づいて行うことができる。
バックアップの典型的な種類
様々なバックアップをサポートすることができる。種類としては、完全バックアップ、選択的バックアップ、部分バックアップ、マスターテンプレート、依然のバックアップから修正されたか又は依然のバックアップとの比較に部分的に基づくデータ(例えば、依然のバックアップ、又は依然のバックアップの内容のリスト)の少なくとも1つを挙げることができる。バックアップの種類は、バックアップに含まれる全てのデータ又はバックアップ処理に関連したデータの一部について定めることができる。例えば、バックアップは、オペレーティングシステムを含むことができ、オペレーティングシステムに関連したファイル及び依然のバックアップから修正されたファイルのみが特定のバックアップに含まれる。特定のバックアップは、更に、バックアップ用に特定されたユーザデータディレクトリを含むことができる。
バックアップで表される典型的なデータ
バックアップで表されるデータは、上述の様々な特性によって特定することができる。一般的に、バックアップで表されるデータは、コンピューティングシステムで使用されるデータの回復の可能性など、バックアップ処理をサポートする。バックアップ又はバックアップに含まれる様々なデータは、圧縮又は暗号化することができる。バックアップ内の特定のデータは、正確な複製か、又はそのデータを再作成、訂正、又は確認することができる十分な情報であると考えられる。例えば、ファイルの相違点をバックアップ内に含めることにより、一組のバックアップをファイル又はデータを再作成又は訂正するのに利用することを可能にすることができる。また、データへアクセスする方法は、特定の種類のデータ(例えば、BIOS)に対してバックアップ内で表すことができ、他の種類のデータ(例えば、「c:\my docs\*.docs」)については、バックアップ内で表すことができない。
特定のバックアップに含めるべきデータは、ハードウエア、ソフトウエア、ユーザ、又はコンピューティングシステムの他の特性によって識別することができる。コンピュータ製造業者は、コンピューティングシステムに関連した様々な形態のデータを含むことができる標準的なインストールの初期のバックアップを作成することができる。製造業者は、ユーザにコンピューティングシステムを販売して、製造業者側の初期コンピューティングシステム構成を表すバックアップとしてマスターテンプレートを提供することができる。これによって、製造業者側の時間と経費が節約され、ユーザには安心感を与える。その後、ユーザは、追加のソフトウエアをインストールし、次に、コンピューティングシステムの変更内容の部分的なバックアップを作成することができる。マスターテンプレートと現在のコンピューティングシステムに関連したデータとを比較することができる。2つのデータ間の相違点は、バックアップ用データとして特定することができる。その結果、マスターテンプレート及びその後のバックアップは、この例に従って、コンピューティングシステムをその後のバックアップに関連した機能性レベルまで回復するために使用することができる。様々なシナリオが当業者には明らかであろう。
修復処理の例示的実施形態
典型的な回復
バックアップで表されるデータは、一般的にコンピューティングシステムに対して回復される。回復には、特定のバックアップ、バックアップのグループ、バックアップ内に含まれた特定のデータ、及びマスターテンプレートのうちの少なくとも1つの選択を含むことができる。回復は、最初に、現在のコンピューティングシステムと依然のバックアップとの相違点を判断することができる。特定されたデータに関連した特性は、バックアップ処理で使用することができる(例えば、バックアップに含まれていたと考えられるBIOSに関連した回復処理)。
マスターテンプレートの選択は、例えば、コンピューティングシステムをマスターテンプレートによって定められた理想化された状態に戻すことができる。マスターテンプレート及び他のデータを特定し、コンピューティングシステムを識別されたマスターテンプレートと組み合わせて最終バックアップに関連した状態に回復させることができる(例えば、マスターテンプレートは購入時の状態、及び、特定されたバックアップは、ユーザがいくつかのアプリケーションをインストールした後の状態を表す)。代替的に、マスターテンプレートは、コンピューティングシステムに対するアップグレードを表すことができる。このアップグレードは、他のユーザのバックアップと組み合わせてコンピューティングシステムの機能性を高め、既存のユーザデータを維持することができる。
データの選択
バックアップに関連したデータは、上述のように、バックアップ内に含めるためのデータの選択と同じように特定することができる。この情報はまた、どのデータ、又はデータのどの側面を回復すべきであるかを判断するのに利用することができる。
特定のファイルの種類、ファイルの位置、データ記憶装置、装置、構成要素、説明、日付、及びワイルドカード一致などと符合するデータを回復のために特定することができる。この選択は、ハードウエア、ソフトウエア、ユーザ、又はコンピューティングシステム内の任意の構成要素が行うことができる。オペレーティングシステム故障の場合、ハードウエア又はソフトウエアに回復すべきデータを選択させる方が適切であろう。
データの回復位置は、ユーザ、ハードウエア、ソフトウエア、デフォルト、データの当初の位置、一時的な位置、他の位置(例えば、更なる解析用)、又はコンピューティングシステムの任意の構成要素によって指定することができる。例えば、ユーザは、全てのバックアップから「*.doc」及び「*.txt」などのワイルドカードでデータを回復することを選択することができる。「*.doc」ファイルは、ユーザが指定するか又はデフォルトファイル位置に置かれ(例えば、「c:\documents folder\doc\」)、また、「*.txt」ファイルは、ユーザが指定するファイル位置(例えば、「c:\documents folder\txt\」)に置かれる。代替的に、データ(例えば、この例ではファイル)は、バックアップで特定することができる元の位置に回復させることができる。
プリファレンス
プリファレンスは、バックアップ処理に関連付けることができ、また、プリファレンスには、ハードウエア、ソフトウエア、ユーザ、又はコンピューティングシステムの他の構成要素のプリファレンスを挙げることができる。プリファレンスは、コンピューティングシステム、ハードウエア、ソフトウエア、又は特定ユーザに付随するデフォルト値の組と定義することができる。設定情報及び特性をコンピューティングシステムの各構成要素についてプリファレンスとして定めることができる。BIOSに関連したプリファレンスとしては、BIOSを抽出するために特定のプログラムを実行する「DOS 5.x」に対してブートするなど、特定の方法でBIOSにアクセスするための処理又はプログラムを挙げることができる。プリファレンスは、ハードウエア、ソフトウエア、又はユーザが変更することができる。
プリファレンスは、データ特性の定義、特性(バックアップを含む)の回復、及びデータ管理に使用することができる。プリファレンスは、バックアップ処理中(データの選択又はデータの回復)にユーザの必要な対話を制限することができる。新規ユーザは、バックアップ処理との対話を制限するためのプリファレンスを確立することができる。経験豊かなユーザは、バックアップ処理又はバックアップ処理の態様のより強固な制御を行うためのプリファレンスを確立することができる。
例えば、バックアップ処理がBIOS更新といかに対話するかに関する特定の特性は、初心者よりも経験豊かなユーザにとって非常に興味深いものと考えられる。別の例においては、ユーザによるプリファレンスは、ユーザと回復との間の対話を命令することができる。デフォルトにより、回復処理は、コンピューティングシステムが回復処理全体を制御するように、ユーザに押しボタン式の回復を提供することができる。代替的に、ユーザは、バックアップ処理の特定の態様が実行される前にユーザの応答を必要とするようにプリファレンスを修正することができる(例えば、ハードドライブのフォーマット又はBIOSのフラッシング)。
ソフトウエアはまた、インストール時に、ソフトウエア関連のデータ、シリアル番号、及び、恐らくはソフトウエアをバックアップ、管理、及び回復するための最良の方法の表示を識別することができるプリファレンスを有することができる。ハードウエア及びソフトウエアに関連したプリファレンスは、バックアップ処理でユーザが必要とする対話を最小限に抑えることが好ましい。
回復の開始
ハードウエア、ソフトウエア、又はユーザは、修復処理を開始することができ、又は修復処理を管理することができる。回復判断基準に適合するデータを回復することができる。回復の判断基準は、バックアップに記憶されたデータ(例えば、頻度、マスターテンプレート、圧縮、暗号化など)に基づくものとすることができる。回復の付加的な判断基準は、部分的に、バックアップの種類又はコンピューティングシステムの現在の状態(例えば、機能、ハードディスクの故障、BIOSの故障、OS応答なしなど)に基づくものとすることができる。現在の状態は、部分的に、コンピューティングシステムの健全性をモニタするためのハードウエア及びソフトウエアの利用を通じて判断することができる。例えば、ハードウエア又はソフトウエアは、キーボードの「凍結」の兆候をモニタし、コンピューティングシステムを通常の作動状態に戻すためにバックアップ処理の一部を作動させることができる。ハードウエア及びソフトウエアを利用して、コンピューティングシステムの健全性を維持することができる。コンピューティングシステムの健全性の維持としては、ユーザによるプリファレンスを基本とすることができるバックアップ処理特性の判断を挙げることができる。バックアップの頻度は、コンピューティングシステムの健全性確認の一助となる方法であろう。
例えば、コンピューティングシステムが、最初に一次ディスクドライブから、次に第2のドライブからのブートを試行するように、他のブートシーケンスをBIOS内に最初に確立することができる。第2のドライブは、マシンをブートしてコンピューティングシステムの現状を評価するように設計されたソフトウエアを含むことができる。修復の必要性が判断されると、ソフトウエアは、続いて、誤作動を修正してコンピューティングシステムを通常の作動状態に戻すことができる。ソフトウエアは、その後、コンピューティングシステムをリブートして通常の作動状態にすることにより、修復処理へのユーザの介入を最小限に抑えることができる。
データの除去
回復中に、処理データを除去することができ、これは、削除、移動、名前の付け替え、又は変更を含む。除去の方法は、データ特性として指定することができる。回復処理では、コンピューティングシステムが、バックアップに含まれたデータを反映しなければならず、従って、何らかのデータの除去を必要とする。例えば、オペレーティングシステムを表すデータを回復する場合、プリファレンスは、存在する矛盾したファイルが回復処理を意味する誤作動の背後にある原因を表すと規定することができる。この付加的なデータ(この例ではファイル)の除去は、正当化することができる。無関係なデータの除去は、部分的に、回復の種類、プリファレンス、バックアップ又はデータの特性、及びバックアップ処理の目標(最小のユーザの介入)に基づいて、いくつかの方法で行うことができる。例えば、目標がマスターテンプレートを回復することである場合、比較回復の一環として、マスターテンプレートと異なると判断された全てのデータをデフォルトフォルダのような指定されたデータ記憶装置又はメモリに対して除去することができる。
特定のデータの回復
コンピュータシステムのハードウエア、ソフトウエア、又はユーザは、データの回復を要求することができる。特定データの回復を容易にするために、ユーザは、部分的に、ファイルの種類、作成日付、ユーザID、修正データ、バックアップ日付、又はデータの任意の特性に基づいて、回復を実行することができる。例えば、完了した回復としては、コンピューティングシステム又は全てのデータの何らかの部分集合(例えば、プリファレンスに従って指定された)へのアクセスに現在利用可能なデータと異なる最終バックアップからの全てのデータを含むデフォルトフォルダを挙げることができる。代替的に、フォルダは、最終バックアップ及びマスターテンプレートのような2つのバックアップを比較する時に異なる全てのデータを含むことができる。「これは、恐らくのあなたのものです。2/25/03」、「この中のどれかはあなたのものですか?2/25/03」、及び「恐らくはあなたのものと違うでしょう。2/25/03」のような、そこに含まれる情報の表示をユーザに提供するために、ユーザの要求に合うデータを異なるディレクトリに分類することができる。
回復データの管理
プリファレンスはまた、回復データに何が起こるかを管理することができる。回復されたデータは、持続時間を制限してユーザ又はコンピューティングシステムに利用可能とし、コンピューティングシステムによって利用されるメモリの量を少なくすることができる。例えば、ユーザ定義可能なプリファレンスは、「この中のどれかはあなたのものですか?2/25/03」及び「恐らくはあなたのものと違うでしょう。2/25/03」という名称のフォルダが自動的に10日経過すれば削除され、ユーザがこれらのフォルダのデータを希望する場合は、データを期限切れ日前に移動すべきであるというダイアログ警告を示すことができる。オプションとして、プリファレンスは、10日経過後に特定のフォルダの内容を30日後の新規期限切れ日付をもって一時的な「ごみばこ」フォルダに移動することができると規定することができる。
回復データの配置
データの配置は、部分的に、バックアップ又はデータと共に記憶されたデータ特性、バックアップ処理に関連した特性、及びプリファレンスによって定めることができる。ユーザデータなどは元の位置に戻すことができ、他のデータは異なる位置に配置することができる。例えば、デスクトップに位置するユーザデータは、以前あった場所に戻すことができ、一方、システムフォルダ内に位置するユーザデータは、部分的にプリファレンスにより、元の位置に戻すことができる。代替的に、ユーザデータは、「文書」フォルダ、「あなたのものはここにあります」フォルダ、「提案ごみばこ」フォルダ、「ごみばこ」フォルダ、又は他の特別の位置のようなデフォルト又は指示された位置に入れることができる。
マスターテンプレート
マスターテンプレートは、理想的な状態によってコンピューティングシステムを表すデータのバックアップである。この理想的な状態は、一般的に、アプリケーション又はソフトウエアの集合であるオペレーティングシステムを含む。マスターテンプレートに含まれるデータは、特定のユーザ及び特定のハードウエア構成のために特に選択されたものと考えられる。
マスターテンプレートは、様々な手法に従って作成又は更新することができる。データ記憶装置を伴う1つの手法としては、1.時間と共に行われるデータ記憶装置によるデータのいくつかのバックアップの作成、2.修復処理がトリガされるなど、バックアップ処理に関連した活動、3.ユーザデータファイルのバックアップが行われる(例えば、ユーザの現在の作業を保存するために)、4.既設のデータ記憶装置(例えば、メモリ)を再フォーマット又は試験することができ、そのデータ記憶装置のプリファレンスに従って実行される、5.マスターテンプレートがユーザデータ記憶装置にコピーされる、6.ユーザデータファイルのバックアップがユーザデータ記憶装置に対して回復される、などを挙げることができる。
それによって、コンピューティングシステムは、最少のユーザ介入で通常の作動状態に回復される。
また、マスターテンプレートは、ユーザにより、更新へのアクセスにより(コンピュータ製造業者による漸進的なリリース)、又は交換マスターテンプレートへのアクセスによるなどを含む、様々な方法で更新、変更、又は修正することができる。マスターテンプレートに付随するプリファレンスは、これらの修正を行う方法を提供することができる。
マスターテンプレートは、コンピューティングシステムを回復するなどのバックアップ処理で予想されるマスターテンプレート及び修復処理機能を確保するために試験することができる。この試験は、マスターテンプレートや回復処理の機能性を確保する一助となり、また、ウィルス検査及び修復時に使用することができる。ウィルス発見、完全性の確認、又はマスターテンプレートの更新を行うためのオンラインサービスを行うことができる。
回復
バックアップをその完全性を確認するために試験することができる(例えば、チェックサム及び可読性の確認で)。バックアップを試験して不合格になった場合、ユーザは、プリファレンスを変更することができる。ユーザは、修復処理を再開始し、異なるプリファレンス(例えば、アプリケーション又はソフトウエア)を選択し、バックアップ(例えば、マスターテンプレート)を更新して、バックアップを再試験することができる。バックアップが確認試験に合格した場合、ユーザは、バックアップを容認して、回復作業を続行することができる。バックアップ(例えば、マスターテンプレート)が容認された場合、記憶位置から第2のバックアップ(例えば、新規マスターテンプレート)にコピーすることができる。旧マスターテンプレートは、依然のマスターテンプレートに戻ることが可能であるように保存することができる。ユーザテンプレートが容認された後、バックアップユーザデータは、ユーザデータ記憶装置に戻される。
一実施形態においては、マスターテンプレートは、マスターテンプレートに「ブートして入る」ように選択するユーザによって作成することができる。ユーザは、次に、変更し、新しいソフトウエアをインストールし、修正するなどし、その後で出る。この手法により、マスターテンプレートをユーザの文書及びマスターテンプレートに有用ではないと考えられる他のデータと独立して更新することができる。
異なる実施形態では、マスターテンプレートは、まずユーザがコンピューティングシステムの修復を行うことによって修正又は更新することができる。修復処理では、1.潜在的に特定のファイル種類(例えば、文書)を含むプリファレンスに従ったユーザファイルのバックアップ、2.ユーザの一次ディスクドライブの再フォーマット処理、又は、ユーザの一次ディスクドライブに対するマスターテンプレートの回復を自動化することができる。その後、ユーザは、新しいソフトウエアをユーザの一次ディスクドライブに搭載されているマスターテンプレートの基本的コピーにインストールすることができる。その後、バックアップをブートして、新しいマスターテンプレートバージョンを作成することができる。その後、ユーザデータのバックアップ(ユーザ専用の文書)をコンピューティングシステムに対して回復させることができる。ユーザ専用の文書の回復は、自動的に行われることが好ましい。
マスターテンプレートは、選択的なコピー処理によって作成することができる。例えば、使用中の特定のOSによっては、プログラムは、レジストリに質問してどのようなエントリーが特定のプログラム又はアプリケーションに関連があるかを判断した後に、特定のプログラム又はアプリケーションに関連したファイル又はエントリーのみを選択的にマスターテンプレートにコピーすることを選択することができる。
ここで、本発明の更に別の実施形態及び態様について説明する。
専用サブシステムを有する典型的なコンピュータ
切換機構
様々なイベントによって修復システムをトリガし、修復すべき一次システムに修復処理を実行することができる。スイッチトリガのようなイベントとしては、単一段階と複数段階を挙げることができる。各段階は、修復システム自体、ユーザ、外部システム、又は修復すべき一次システムによって開始される論理的又は物理的な措置を含むことができる。この段階としては、修復処理の論理的又は物理的な確認を挙げることができる。個々の段階は、修復システム、切換処理、又は一次システムによって自動化することができる。修復システムをトリガする複数の段階の一例としては、1)ボタンを押す段階、その後、2)修復処理の確認のためにスイッチをスライドさせる段階を挙げることができる。他の段階は、当業者には明らかと思われるので本明細書ではその説明を割愛する。
修復としては、一次システムを理想化された状態又は回復された状態にしようとする任意の処理を挙げることができる。修復システムは、切換処理を含む上述の様々な装置及び方法を含むことができる。一例として、修復システムは、トリガイベントの個々の段階又は複数の段階に関連した音声認識又は音声識別によってトリガすることができる。一実施形態では、物理的なボタンを押すと修復処理がトリガされる。
別の実施形態では、修復システムは、一次システムから独立したプロセッサ及び論理装置を含むことができる。様々なイベントは、一次システムから独立してトリガすることができる。修復システムは、修復すべき一次システムから独立して様々なイベントによってトリガすることができる。本明細書では、修復システムは、トリガイベントを受け取るか又は認識することができるものである。
例えば、一次システムは、一次システムを修復するユーザ要求のような修復処理をトリガするイベントを認識する機能を有し、修復システムが作動的のままでいる時に非作動的とすることができる。修復システムは、修復処理を実行することができ、又は、修復処理の一部又は全てを行うための別のシステム又はアプリケーションをトリガすることができる。他のアプリケーションとしては、「Virus Scan」、「Virex」、「Arcserve」、「Assimilator」、「Deep Freeze」、「Ever Dream」、「Filewave」、「Ghost」、「Goback」、「HddSheriff」、「PCRdist」、「Retrospect」、「RevRdist」、「Rewind」、「Hard disk toolkit」、「Anubus」、「Drivesetup」、及び「Charis Mac」などを挙げることができる。
修復システムは、他のアプリケーションによってサポートされた修復処理のためのトリガイベントの段階として使用される物理的スイッチを含むことができる。代替的に、トリガイベントは、他のアプリケーションによって実行される修復処理をブートすることができる。例えば、ボタン、音声指令、個人的な識別カード、網膜走査、又は、スライドボタン、キースイッチ、又は診断処理による確認を伴う押しボタンに関連した様々な段階を用いて、他のアプリケーションによる修復処理を作動させることができる。
別の実施形態では、コンピュータのような一次システムが起動された時、修復システムに関連したアプリケーションをトリガしてコンピュータに診断を行うことができる。第2のコンピュータが起動を試行しない場合、このアプリケーションを使用して、異なる装置に対して起動するように修復システムが第2のコンピュータのブートシーケンスを修正することができるように第2のコンピュータがブートを試行するかを判断することができる。また、このアプリケーションは、一次システムのリブートを開始することができる。第2のコンピュータが起動した場合、修復システムは、ブートシーケンスを解析するか又は記録することができる。ブートシーケンスが失敗した場合、修復システムは、ブートすべき異なるデータ記憶装置を使用して一次システムを自動的にリブートすることができ、一次システムの修復を開始することができる。修復システムはまた、上述のように、「オンザフライ」の修復処理を管理することができる。
一実施形態においては、ボタン(又は他のトリガイベント)を押すと診断処理を実行するように修復システムをトリガし、診断結果に基づいて、修復システムは、適切な修復を実行することができる。ボタンを物理的に押すことが、トリガイベントの唯一の段階とすることができる。修復処理の一環として、修復システムは、診断処理を実行することができる。修復処理としては、修復処理を判断するためのユーザとの対話を挙げることができる。例えば、ユーザには、「まもなくあなたのコンピュータには実行時間が60分の修復が必要です。代替的に、一時的な修復では実行時間は5分です。どちらの修復を行うべきですか?」のようないくつかの質問に回答するように促すことができる。ユーザの回答は、修復処理によって考慮することができる。
複数の専用サブシステムを有するコンピュータ
この節では、ハッキング、ウイルス、及びサイバーテロから、及び、スパイソフトウエアやキーストロークレコーダなどの潜在的な損傷又は侵入から、及び、ハッキング、ウイルス、ワーム、トロイの木馬、及び類似の脅威及び脆弱性による損傷からコンピュータ及びコンピューティング装置を保護する装置及び方法について説明する。サイバーテロは、コンピューティングシステムを不具にするか、又は打倒しようとするものである。本発明は、潜在的なサイバーテロに対するソリューションを提供する。従来技術のコンピュータシステムは、一般的に、プロセッサ、メモリ、ディスプレイ、ディスプレイ制御装置、I/O制御装置を含む。本発明は、複数のコンピュータシステム内に収納される複数の専用サブシステムを提供する。これらの専用サブシステムは、一般的に、限定された機能を実行するものであり、他の専用サブシステムとの制限された対話を実行する。
専用サブシステムは、情報の記憶、作業の実行、及び通信の手渡しをサポートするという目的を含む、多くの目的に対して設計することができる。記憶専用システムは、記憶されたデータへの制限されたアクセスを可能にしながら、データを記憶したりデータを検索するように設計することができる。作業専用サブシステムは、様々なアプリケーションを有する汎用コンピュータのように情報を処理するために設計することができる。通信専用サブシステムは、他の専用サブシステムとの間の通信を容易にするように設計することができる。
各専用サブシステムは、一般的に、処理機能、メモリ、論理回路、及びインタフェースを含む。処理機能は、コンピュータ処理ユニット又はASICとすることができる。処理機能は、コンピュータシステムCPU、又は複数の専用サブシステムによって共有されたCPUとすることができる。従って、専用サブシステムに関連した処理機能はまた、コンピュータシステム又は他の専用サブシステムによって使用することができる。
メモリとしては、専用サブシステムがアクセス可能な任意のデータ記憶装置を挙げることができる。更に、特定のメモリ領域を論理的に個別の領域に分割することができ、その各々は、異なる専用サブシステムと関連付けることができる。特定のメモリに関連した制御装置は、特定の論理メモリ領域の特定の専用サブシステムへのアクセスを制限するように構成することができる。それにより、各々の特定のメモリ領域は、専用サブシステムによって使用されるように実質的に隔離することができる。
専用サブシステムの論理回路は、記憶、作業、又は制御のようなシステムの目標とする機能をサポートする。論理機能は、ファイルを移動したり、ファイルを表示したり、必要に応じて専用サブシステム及び他の機能から利用可能な情報のディレクトリを呈示する能力を含むことができる。更に、論理回路は、専用サブシステムに関連したオペレーティングシステムを含むか、又はそのオペレーティングシステムに組み込むことができる。論理回路は、読取専用とするか、又は潜在的な攻撃を回避するために他の専用サブシステムからはアクセス不能とすることができる。例えば、論理回路は、ファイル読取り又は書込み時に、アクセス試行及びそれに付随するタイミングを解析して記録することができる。論理回路は、この情報を使用してユーザにアクションの確認を行うように促し、又は、専用サブシステムへのアクセスを拒否するなどの保護対策が必要であるかを判断することができる。
専用サブシステムのインタフェースは、目標とする機能をサポートする。記憶システムのインタフェースは、ファイルの読取り及び書込みを行う論理回路を含むことができる。作業システムのインタフェースは、一時的なファイルを記憶するなどのマスターテンプレートのコピーと情報の処理及び修正を行うためのアプリケーションとを含むことができる。制御システムは、作業システムからの要求を受信し、記憶システムにファイルを要求し、記憶システムからファイルを受信して、要求されたファイルを作業システムに送るためのインタフェースとなることができる。
また、インタフェースは、ディスプレイ、キーボード、又はマウスに関するようなコンピュータシステムの共通の制御装置との対話をサポートすることができる。代替的に、専用サブシステムは、共通の周辺装置にアクセスするための個別の制御装置を含むことができる。専用サブシステムに付随するインタフェースの各々は、専用サブシステムとの対話を停止するか又はインタフェースに付随する機能性の部分集合に制限するために、論理スイッチ又は物理的スイッチに従って使用可能又は使用不可にすることができる。
一実施形態によれば、2つの専用サブシステムがコンピュータシステム内に設けられ、一方は作業システムであり、他方は記憶システムである。コンピュータシステムは、ディスプレイ、ディスプレイ制御装置、及びI/O制御装置を含むことができる。両方の専用サブシステムは、コンピュータシステムディスプレイ制御装置及びコンピュータシステムI/O制御装置と対話することができる。コンピュータシステムディスプレイの個別の領域は、専用サブシステムの各々と関連付けることができる。ディスプレイ領域が選択されるか又はそれ以外にアクティブである場合、キーボード、マウス、又は他のI/Oコントローラ仲介入力装置は、関連の専用サブシステムからアクセス可能になるであろう。
別の実施形態は、作業システムと記憶されたデータの実行を許さない記憶システム(記憶システム論理回路を除き)とを含む。記憶システムは、記憶システムのメモリにユーザによって記憶された任意の情報のようなユーザデータの実行を禁止する。2つのシステムは互いに隔離されているので、作業システムで行われるイベントは、記憶システムに記憶された情報には影響を与えない。2つのシステム間のデータ通信は、記憶システムと作業システムとの間のファイルのようなデータの移動に付随するコピー処理を実行する通信コントローラを通じて行うことができる。
作業システム及び記憶システムのような専用サブシステム間の通信は、一実施形態によれば、通信コントローラを通じて行うことができる。記憶システムは、特定の情報を通信コントローラに通信し、特定の情報を作業システムに転送することができる。通信コントローラはまた、特定の情報を作業システムから記憶システムに転送することができる。
記憶システム内のファイルのユーザによる選択により、通信コントローラに対してファイルを記憶システムから作業システムにコピーするように促すことができる。ファイルは、作業システムで実行又は処理することができる。その後、ファイルを保存することにより、通信コントローラは、ファイルを作業システムから記憶システムにコピーすることができる。記憶システムにおいては、ファイルは実行可能ではなく、従って、ファイル自体がウイルスに感染つまり破壊している場合があるとしても、記憶システムに関連した他のファイル又はデータを破壊する可能性がない。作業システムは、一般的に、現在使用されているもの例えば一時的なファイルでない限り、ユーザデータ、例えば文書ファイルを作業システムに記憶することを可能にするものではない。
代替的に、通信コントローラは、記憶システムから利用可能な情報を表示するために共通のコントローラと対話することができる。通信コントローラとの対話を通じて、ユーザは、特定の情報を選択することができる。例えば、通信コントローラは、利用可能なファイルのリストを記憶システムに要求し、共通のディスプレイドライバを通じてそのリストを表示するように配置することができる。ユーザは、リストから、特定の作業システムで処理するためのファイルを選択することができる。その結果、通信コントローラは、記憶システムがアクセス可能なファイルを特定の作業システムにコピーさせることができる。作業システムがファイル処理を終了した後、ファイルは、通信コントローラとの作業システムの対話を通じて保存することができる。従って、記憶システム及び作業システムは、互いに直接に対話する必要はない。
更に、通信コントローラは、データの記憶又は転送に関連して脅威のレベルを判断するために、通信コントローラによってアクセス可能であるか又は転送されたデータに解析を行うことができ、部分的に脅威のレベルに基づいてデータの処理を拒否し、脅威と転送又は保存を確認する要求とを示す情報をユーザに呈示することができる。ユーザに呈示される情報としては、特定の時間フレーム内の要求件数、修正の程度、又は発信位置を挙げることができる。ユーザの応答は、通信コントローラが受信し、転送又は保存可能にすべきか否かを判断するために使用することができる。
作業システムは、オペレーティングシステムの理想化された状態を表すマスターテンプレートのコピーを含むことができる。作業システムは、オペレーティングシステムを実行することができ、既存のコンピュータシステム及び専用サブシステムと対話するための付加的な論理回路とすることができる。一般的に、作業システムは、記憶システムと直接に対話することはできない。一実施形態によれば、対話は、記憶システム又は制御システムによって開始することができる。
作業システムは、専用サブシステムであり、データの処理、編集、又は修正を行うために使用することができる。作業システムは、一般的に、コンピュータディスプレイに対するディスプレイコントローラを通じて情報をユーザに表示するための論理回路を含む。ユーザは、作業システムとそれがあたかも一次コンピュータシステムであるかのように対話することができる。ディスプレイコントローラ及びI/Oコントローラは、コンピュータシステムに関連した他の装置と対話するために作業システムを使用することができる。
記憶システムは、専用サブシステムであり、一般的に、データ記憶装置に記憶されているデータファイルを含む。データ記憶装置は、揮発性又は不揮発性とすることができる。記憶システムは、オペレーティングシステムを実行することができる既存のコンピュータシステム、及び作業システムと対話するための付加的な論理回路を表すことができる。
一実施形態によれば、記憶システムは、専用作業システムとの対話を開始する。代替的に、記憶システムは、通信コントローラを通じて他の専用サブシステムと対話する。記憶システムは、コンピュータディスプレイに結合したディスプレイコントローラを通じてユーザの情報を表示するための論理回路を含むことができる。
各専用サブシステムは、同一コンピュータディスプレイを利用することによって情報をユーザに呈示することができる。従って、コンピュータディスプレイで呈示された情報は、別の専用サブシステムによって表示されている他の情報に上書きすることができる。ユーザは、作業すべき特定の情報、例えば文書ファイルを選択することができる。ユーザの特定情報の選択は、マウス又はキーボードに接続されたシリアルI/Oコントローラのようなコンピュータシステムに付随する共通の装置を通じて記憶システムに通信することができる。シリアルI/Oコントローラは、記憶情報がユーザに呈示される時に利用することができる。特定の情報が要求された後、記憶システムは、特定情報の作業システムなどの別の専用サブシステムへの転送を開始することができる。本発明の一実施形態では、記憶システムは、作業システムインタフェースへの転送を開始する。代替的に、記憶システムは、作業システムによってアクセスされる共通メモリ領域への転送を開始する。別の実施形態は、通信コントローラに従って特定の情報を作業システムに転送する記憶システムを提供する。
作業システムは、その後、記憶システムによって供給された特定の情報にアクセス可能である。特定の情報の処理、修正、又は閲覧後に、変更後のバージョンを保存するか、又は記憶システムに返却することができる。特定の情報を保存する前に、作業システムは、その情報の保存に関連した脅威のレベルを判断するための解析を行うことができ、その情報の保存を拒絶することができ、又は、確認要求及び脅威を示す情報をユーザに呈示することができる。作業システムは、記憶システムに特定情報を保存することができ、つまり、作業システムは、記憶システムなどの別の専用サブシステムに特定情報を転送することができる。作業システムは、特定情報の転送を開始することができる。一実施形態では、作業システムは、記憶システムインタフェースへの転送を開始する。代替的に、作業システムは、記憶システムによってアクセスされる共通メモリ領域への転送を開始する。別の実施形態では、作業システムは、特定情報を通信コントローラを通じて記憶システムに転送する。
一実施形態では、記憶システムは、情報の保存によって呈示された脅威のレベルを判断するための解析を行うことができ、その情報の保存を拒絶することができ、又は、確認要求及び脅威を示す情報をユーザに呈示することができる。
直接的なメモリアクセスを利用するASCI又は論理コントローラのような別個の論理コントローラを使用して、専用サブシステム間でデータを移動することができる。データ移動の処理は、ハッキングやウイルスなどを可能する可能性があり得るデータの実行を許さないものである。更に、データは、その実行を防止するために暗号化、圧縮、又は符号化することができる。
制御システムは、付加的な種類の専用サブシステムであり、コンピュータ、コンピューティング装置、及び他の専用サブシステムの全体的な作動を実行することができる。更に、制御システムは、必要に応じてデータコピーの処理、ネットワーク通信切り換え、及び修復機能を統括することができる。制御システムは、読取専用とし、記憶システム又は作業システムなどの他の専用サブシステムと対話する時に必要に応じて読取専用アクセスを許可することができる。ネットワーク通信及び修復処理の両方は、制御システムが制御することができる。オプションとして、制御システムは、コピー処理を開始又は実施したり、他の専用サブシステムとの通信を作動及び終了する機能を維持しながら、他の専用サブシステムとの限定された通信を行うことができる。
専用サブシステムは、単一の専用サブシステムの機能が別個のスレッドとして機能を実行するように、個々の専用サブシステムに付随する機能を実行する1つの専用サブシステムに組み合わせることができる。本発明の一実施形態では、記憶システム、通信システム、及び作業システムを組み合わせて、コンピュータシステムによって実行される個々の処理の集まりとしてのコンピュータシステムにすることができる。コンピュータシステムは、当業技術で公知の技術を用いて個々の処理を隔離する任意の方法を利用することができる。
これとは対照的に、専用サブシステム又は一組の専用サブシステムは、そのシステム又は組に付随する機能性の一部が付加的な専用サブシステムによって実行されるように、いくつかの付加的な専用サブシステムに亘って拡散させることができる。
典型的な修復処理
オプションとして、専用サブシステムは、自動化された修復処理を使用して修復する、つまり理想的な状態に戻すことができる。このような修復は、「オンザフライ」、又は各トランザクション後、又はリブートなしに行うことができる。マスターテンプレートは、一般的に、専用サブシステムの理想的な状態を表すものであり、記憶システムに記憶することができる。トランザクションとしては、各々の個々の電子メールを開くことが個別のトランザクションを表す、電子メールを読むことを挙げることができる。オプションとして、修復処理中に1つ又はそれ以上のアイテムを無視することができる。例えば、電子メールが開かれた場合、修復処理は、開封電子メールを無視して実行し、問題を発見して修復し、その後、ユーザは、電子メールを止めずに電子メールに応答することができる。別の実施形態では、全てのダウンロード及び電子メールは、作業サブシステムでダウンロード又は電子メールを開く前に、直ちに記憶システムに保存することができる。
一実施形態では、作業システムのような専用サブシステムの論理回路は、修復処理に関連したイベントをトリガすることができる。修復処理は、作業システムのマスターテンプレートと現在の作業システムの状態との比較を行うことができる。相違点があれば、次の修復処理をトリガすることができ、異なる一部又は全てのデータが作業システムから削除される。更に、修復処理は、必要に応じてマスターテンプレートからデータをコピーすることができる。一実施形態では、修復処理は、作業システムをマスターテンプレートと同一にすることができる。
一実施形態では、修復処理は、1つ又はそれ以上の電子メールのトランザクションの後、又は1つ又はそれ以上のウェブページをサーフィンした後に実施することができる。従って、全ての既知又は未知のウイルス及びトロイの木馬を次のトランザクションの前に無力にすることができる。この処理では、ウイルス、ワーム、及びトロイの木馬は、コンピュータからは排除されないが(記憶システムに記憶される場合がある)、それらを非作動的状態に維持する。修復処理は、揮発性又は不揮発性メモリを修復し、揮発性メモリをクリアし、又は揮発性メモリを理想的な状態に設定することができる。
一実施形態では、ユーザが開くべき1つよりも多い電子メールを選択した場合、2つ又はそれ以上のメールを作業システムにコピーすることができ、また、同時に開くことができる。オプションとして、各電子メールは、独自の別々の隔離された作業システムへのコピー、開封、閲覧、及び作業を別々に行うことができる。ユーザが1つの隔離された電子メールから別の隔離された電子メールにデータをコピーする必要がある場合、コードの実行を不可能にするコピー処理を使用することができる。
一実施形態では、個々の記録又はトランザクションに特に必要とされる記録のコピーのみが記憶システムにコピーされ、利用された後に記憶システムのデータベースに再度コピーされ、各々のこのようなトランザクションの後に修復を実施することができるように、ウェブコマースソフトウエア、又は電子メールソフトウエア、又は任意のソフトウエアを修正することができる。オプションとして、データが、1つよりも多いデータベース、例えばCGIと対話するトランザクションにおいては、そのトランザクションは、個別のセグメントに分解され、データを必要に応じて隔離された記憶システム又は作業システムへ及びそれからコピーすることができ、修復は、トランザクションの各セグメント間、又はトランザクションのいくつかのセグメント間で実行することができる。オプションとして、ソフトウエアは、どの種類のデータがトランザクションを含むことができるかを定める命令を含み、コピー処理をある一定の判断基準に合うデータのみのコピーに限定することができる。
サイバーテロの例及び実施形態
サイバーテロは、いくつかの脅威を表すものである。1つのこのような脅威は、送信される各々の新しい電子メールと共にウイルスのコピーを送るように他の電子メールに感染する、つまり実行時に他の電子メールに感染し、また電子メールプログラムに感染する能力を有するウイルスを1通の電子メールが含む電子メールがダウンロードされた時に発生し、このウイルスは、2日後に実行された時に、任意のアクセス可能なデータ記憶装置上に含まれたフォーマット又はデータ構造又はデバイスドライバを破壊する隠れたアイテムをオペレーティングシステム又はアプリケーションに配置する。このようなウイルスは、未知である場合があり、保護又は識別方法は、ウイルス検出会社からは得られない。
一実施形態によれば、電子メール処理のための保護処理が説明されている。作業システムにダウンロードすると、未開封の電子メールは、その後、データを実行することができない方法を用いて記憶システムにコピーされる(又は、直接、記憶システムにダウンロードすることができる)。電子メール件名及び電子メールの送信元及び他の関連情報のリストを作成してユーザに表示することができる。例えば、このリストは、記憶システム又は制御システムが作成することができる。ユーザは、開きたい電子メールを選択する。その電子メールのコピーが作業システムにコピーされると、次に、自動的に開封することができる。オプションとして、電子メールのウイルス走査を行うことができる。ユーザは、電子メールを読んで応答すると、応答を記憶システムにコピーすることができる。修復処理を実行することができ、必要に応じて、揮発性又は不揮発性データ記憶装置を修復する。
更に、この例によれば、ユーザは、次に開きたい電子メールを選択する。この電子メールは、ウイルスを含む。それは、作業システムにコピーされて開封される。ウイルスが感染するための他の電子メールは得られないが、その電子メールは、その作業システム及び作業システムで使用されるいくつかのアプリケーションによって使用されるシステムフォルダに感染する。ユーザは、電子メールに応えることを決め、「応答」を選択する。オプションとして、応答前に修復処理を実行することができ、又は、比較処理をマスターテンプレートと作業システムとの間で行うことができる。修復処理又は比較処理中に、その作業システム又はアプリケーションに関連したオペレーティングシステムの変更内容に注を付けることができ、相違点に基づいてユーザの注意を引くようにウイルス警報を出し、電子メールを受信するコンピュータに悪影響を与える可能性があるのでその電子メールには応じないようにユーザに警告することができる。オプションとして、ダイアログは、ユーザがウイルス警戒センター(例えば、潜在的なウイルス警報を収集又は応答する国内又は国際ウイルス警戒センターなど)に連絡してセンターにウイルスについて通知するか、又は、潜在的なウイルス関して修復処理にウイルス警戒センターに通知させるように示唆することができる。
オプションとして、オペレーティングシステム又はアプリケーションに対して為された変更の種類に基づくウイルス脅威解析などのある一定の判断基準に基づいて、修復処理は、ネットワーク接続又は電子メールソフトウエアを使用不可にするか、又は電子メール処理を使用不可にするか、又はウイルス脅威解析の結果に基づいて、ユーザには電子メールに応じることが許可されず、その電子メールに応じる機能が使用不可にされたことを示すダイアログをユーザに与えるかの指令を開始することができる。その電子メールは、その後、破壊されるか、又は隔離されるか、又は分離された状態に保たれるか、又は記憶システムに保持することができる。オプションとして、このようなウイルスを記憶することができて削除は許可されないことになり、(例えば)ウイルスを破壊させるようなコードを供給することによってウイルスの破壊を許可することができるウイルス警戒センターのような何らかのエンティティからの承認を待つ。オプションとして、そのようなコードを受信すると、修復処理は、自動的にウイルスが入った電子メールを破壊することができる。オプションとして、ファイルを暗号化又は圧縮するか、又はそれを実行することができない方法で修正することができ、修復処理は、(ユーザからの許可の有無を問わず)それをウイルス警戒センターに送ることができる。
オプションとして、コンピュータ又はコンピューティング装置に対するこのような修正は、法律で要求することができ、潜在的なウイルスを処理する修復処理の部分を必要に応じて政府/民間ウイルス検査会社と対話するように修正することができる。例えば、ウイルスを処理するソフトウエアをアップグレードさせる方法やファイルを削除する許可などを要求することができる。このような場合、修復又はウイルス検査ソフトウエアのアップグレードを許可又は要求し、又は感染ファイルの破壊を許可又は拒否するなどの政府当局と対話するための特化されたコードを作成することができる。
修復処理を実行し、作業システムをマスターテンプレートと同一のものにし、その処理において全てのウイルス、ワーム、及び他の変更を破壊することができる。ユーザは、その電子メールを終了すると次の電子メールを選択する。修復を行うことができ、その後、この電子メールは、感染の危険なしに作業システムにコピーすることができる。
揮発性メモリ内へのマスターテンプレートのロード
一実施形態においては、修復処理を更に高速化するために、作業システムのマスターテンプレート及び作業システム内のソフトウエアは、各々、独自の別々の隔離された揮発性メモリの領域又はシェルにロードされ、修復処理の速度を上げることができる。従って、作業システム内のデータが揮発性メモリ内にあり、マスターテンプレートが揮発性メモリにある場合、修復の実施を高速化することができる。代替的に、新しい作業システムを利用することにより、修復の必要性を排除することができる。例えば、ユーザは、1つのシェルを使用して電子メールを開いてその電子メールを読むことができ、その電子メールに応じたい場合は、第2のシェルを応答に使用することができる。(オプションとして、ユーザが第2のシェルを使用して電子メールの応答を書き込んでいる間に、第1のシェルにウイルスがないかを検査することができる。)追加のシェルをすぐ使用できるようにすることができる。
別の実施形態では、データの実行を防止する暗号化又は圧縮又は他のコピーの方法を用いて、データを直接に記憶システムにダウンロードすることができる。ウイルス検査又は修復処理は、修復シーケンスの一環として、又は別途のシーケンスとして実行することができる。オプションとして、隔離されて隠されたバックアップ又はアーカイブシステムを本発明と共に利用することができ、これにより、必要に応じて、記憶システム又は作業システムの揮発性又は不揮発性のメモリ/複数メモリ又はデータの隠されたバックアップ又はアーカイブのアレイを作ることができ、かつ、タイムスタンプを押すことができる。このようなバックアップ又はアーカイブシステムへのデータのコピーはまた、ファイルの実行及びバックアップシステム上のデータの損傷を防止するために、本明細書で説明する技術を用いることができる。
データのコピー又は保存に関する任意的な情報
一実施形態においては、データをコピーする処理は、コピーされているデータを実行することができず、従ってそのデータ記憶装置上のデータが悪意なコードで損傷を受けることのないように、ダムであるか又は制限することができる。例えば、データを移動/コピーするために、それを暗号化することができ、又は、ASICを利用することができ、又は、直接的メモリ転送又はデータを実行させないデータ移動又はコピーの任意の他の方法を使用することができる。
オプションとして、隔離された作業システム及び隔離された記憶システムにアクセス可能な「StorExecute」/制御システムは、コピー処理を統括することができる。
記憶システムで開きたいファイルを選択すると、ファイルを記憶システムから作業システムにコピーして開く処理を開始することができる。ファイルを作業システムに保存すると、ファイルを記憶システムにコピーする処理を開始することができる。作業システムでファイルを終了すると、ファイルを記憶システムにコピーして記憶システムで削除する処理を開始することができる。
「コピー」又は「コピー処理」という語は、広い意味で使用することができ、アルゴリズム、スナップショット、圧縮データ、ビット単位、暗号化、符号化などを含むことができる。
システムに付随するデータ記憶装置の任意的な情報の説明
オプションとして、ユーザ作業システムに付随するデータ記憶装置は、1つ又は複数のファイルが必要であるか又はアクティブに作業されているか、又はシステム又はユーザによって必要とされている間に使用される一時的データ記憶装置とすることができる。例えば、ファイルが作業されていない時は、記憶システムに移動することができる(すなわち、記憶システムにコピーして作業システムから削除する)。従って、作業システムに位置するマスターテンプレートのコピーを除き、使用されていないデータは、潜在的に感染、損傷、破壊、ハッキング、又は何らかの方法による操作を受けると思われる作業システムのデータ記憶装置上には記憶されない。
インターネット、ネットワーク、又はウェブサイトでの任意的な使用
オプションとして、作業システムは、ウェブサイトをサポートすることができ、又は、コンピュータは、様々な機能をサポートすることができる1つよりも多い作業システム又は1つよりも多い記憶システムを含むことができる。例えば、1つの作業システムは、ウェブサイトを含むことができ、一方、別の作業システムは、ユーザによって使用される。
オプションとして、1つ又はそれ以上のネットロック装置(補遺で説明)を使用することができ、それは、自動的に切り換えられ、又は必要に応じてネットワーク接続を使用可能/使用不可にすることができる。
オプションとして、必要に応じて、作業システムに対して接続の切り換え、使用可能、又は使用不可を行うために1つ又はそれ以上のネットロック使用することができる。
オプションとして、ウェブソフトウエアの使用は、ネットロック装置に付随して処理を監視しているコントローラに対して作業システムへ及びそれからのネットワーク接続を使用可能にするように指示することができ、また、全てのネットワークソフトウエアの終了(又は、アクティビティー又は他のトリガの欠如)は、ネットロック装置に付随するコントローラに対してネットワーク接続を使用不可にするように指示することができる。
自動バックアップ又はアーカイブの任意的な説明
オプションとして、自動バックアップ又はアーカイブ処理を記憶システム又は作業システムに関連付けることができる。揮発性データ又は不揮発性データを保存、バックアップ、又はアーカイブすることができる。
一実施形態においては、外部装置を隔離して記憶システムとして使用することができる。代替的に、1つ又はそれ以上の外部装置を隔離して、1つ又はそれ以上の作業システムとして使用することもできる。外部ポートをスイッチに接続し、1つ又はそれ以上の隔離された作業システムへの接続に対して切り換え、使用可能にし、又は使用不可にして、その後、1つ又はそれ以上の隔離された記憶システムに接続するように切り換えることができる。このような切換は、手動、自動、又は、ハードウエア切換処理又はソフトウエア切換処理を使用して行うことができる。
オプションとして、一実施形態においては、作業システムで保存が行われる度にコピーを記憶システムに作ることができる。オプションとして、ウイルス又はトロイの木馬が、記憶システムに保存される何百万回もの保存を行うことによって大混乱を引き起こすことを防止するために、オプションとして、ファイルを保存することができる頻度に制限を課することができ、又は、作業システムにデータを保存する処理に他の制限を課することができる。(オプションとして、これは、ROM又は「StorExecute」プログラムの一部とすることができる。)
オプションとして、隔離データ記憶装置を使用することができ、又は、1つ又はそれ以上の共通データ記憶装置を使用することができる。オプションとして、このようなデータ記憶装置には、作業システムにより、記憶システムにより、又は、作業システム又は記憶システムに対してもアクセスを有することができる別の論理制御装置によってアクセスすることができる。
オプションとして、記憶システムは、1つ又はそれ以上のデータ記憶装置を利用することができる。作業システムは、1つ又はそれ以上のデータ記憶装置を利用することができる。作業システム及び記憶システムは、互いに隔離された場合に、データ記憶装置を共有することができる。例えば、データ記憶装置は、2つ又はそれ以上のパーティション、例えばパーティションA及びパーティションBに区分けすることができる。
オプションとして、作業システム「A」は、パーティション「A」に位置する隔離されたデータ記憶装置パーティションに付随する隔離されたコンピューティング処理から成ることができる。記憶システム「B」は、パーティション「B」に位置する隔離されたデータ記憶装置パーティションに付随する隔離されたコンピューティング処理から成ることができる。パーティション同士は、データ記憶装置を隔離することができる方法と類似の方法で隔離することができる。パーティションの制御は、オプションとして、隔離されたコンピューティング処理「C」に依存することができる。
オプションとして、隔離された作業システムに記憶されたアプリケーション及びプログラムは、必要に応じて、指令により又は自動的に修復することができる。オプションとして、マスターテンプレートと使用中のアプリケーション/ソフトウエアとの比較処理は、アプリケーション/ソフトウエアがどのように見えるべきかに関するベースとして使用することができ、これが異なる場合は、構成要素を必要に応じて交換することができる。
オプションとして、機能性を制限した別途のプロセッサを使用して、隔離された作業システム内のデータを処理することができ、又は、主プロセッサに制限された機能性を与えることができる。これは、複数のデータ記憶装置、又は隔離されたパーティションを有する1つのデータ記憶装置を用いて行うことができる。
オプションとして、ファイル(作業システムに付随する不揮発性データ記憶装置に位置する)を実行する機能を、必要に応じて使用可能/使用不可にすることができる。例えば、論理制御ソフトウエアは、記憶システムに付随する不揮発性データ記憶装置上に位置するファイルを実行するのに必要なコードを含まない場合があり、又は、ファイルを実行するのに必要なコードは、必要に応じて、使用不可/使用可能にされ、又はオン/オフを切り換えることができる。
オプションとして、記憶システムに付随する論理制御ソフトウエアは、読取専用か、又は、作業システム又は記憶システムからアクセス不能とすることができる(悪質なコードがソフトウエア及びプロセッサに影響を与えるか又は記憶システムにアクセス可能になることができないように)。オプションとして、第3の隔離された論理制御及びコンピューティング処理を使用して、そのコードにアクセスすることができる。論理制御及びコンピューティング処理は、別々の論理制御及び処理装置を通じて実行することができ、又は2つ又はそれ以上の論理制御処理を隔離する機能を有する単一の装置上にあるとすることができる。
オプションとして、作業システムに付随する揮発性又は不揮発性データ記憶装置から記憶システムにコピーされるデータは、必要に応じて、作業システム及び関連のデータ記憶装置から削除することができる。これは、ハッキングなどを防止する一助となると考えられる。
オプションとして、作業システム又は関連のデータ記憶装置、及び、記憶システム又は関連のデータ記憶装置は、コンピューティング装置上に共にある必要はない。それらは、ネットワーク上、外部、無線接続を有する、又は任意の場所にあるとすることができる。例えば、コンピューティング装置は、関連の不揮発性データ記憶装置が近くのサーバ内に位置する作業システムを有することができ、記憶システムは、ネットワーク上に位置して外部の無線データ記憶装置と関連付けることができる。
オプションとして、作業システムは、関連の不揮発性データ記憶装置を有していないとすることができる。作業システムは、揮発性記憶装置に限定することができる。更に、作業システムは、作業システムに付随する複数の処理機能又はプロセッサを有することができる。
一実施形態においては、制御システムによって制御することができる切換処理を使用して、どのシステムがネットワーク通信にアクセスを有するかを切り換えることができる。ネットワーク通信は、特定の作業システム又は記憶システムに専用とするか、又は必要に応じて切り換えることができる。
任意的なシェル
オプションとして、シェル手法の変形を用いれば、隔離されたシェルは、任意的に関連のデータ記憶装置を有する作業システムとして作動することができ、他の隔離されたシェルは、任意的に関連のデータ記憶装置を有する記憶システムして作動することができる。データは、データの実行を防止するコピー処理を使用して、作業システム及び記憶システムシェル関連の揮発性又は不揮発性メモリに又はメモリからコピーすることができる。
ソフトウエアの任意的な変更
オプションとして、上述の隔離された作業システム及び記憶システムの実施形態の効果を高めるために、以下の変更を行うことができる。ソフトウエアによって使用されるデータは、必要とされるまで記憶システムに保管することができる。データは、分解することができ、作業システムから引かれたデータのみが必要である。例えば、ボックス内の電子メールを1つのファイルとして処理するのではなく、電子メールを別個のファイルとして処理し、必要に応じて作業システムから特定のファイルを作業システムに又は作業システムからコピーして、他のデータの全てを隔離された状態に保つように電子メールプログラムを修正することができる。代替的に、データは、1つ又はそれ以上のファイルとして作業システムに記憶することができ、例えば、特定の電子メールが必要とされた時にファイルの特定の電子メール部分を作業システムにコピーすることができ、データを作業システムから記憶システムのその1つのファイルに保存することができる。
本明細書では電子メールを一例として使用した。オプションとして、ソフトウエア及び特にウェブ用に使用されるソフトウエアでは、記録を個々のファイルとして記憶するか又は1つ又はそれ以上のファイルに保管し、その時点で必要とされるか又は必要とされる可能性があるデータのみを作業システムに入れ込む手法を使用することができる。
オプションとして、ネットロック装置がインターネット接続を使用可能にする時、電子メール及び現在作業システム内にあるウェブ上で使用される他のソフトウエアを送信又は使用する必要があるデータのみに限定することにより、任意の他のデータにアクセスするハッカーの能力を制限することができる。ウェブコマースセッション中は、必要に応じてデータを記憶システムから頻繁に出入りさせ、要求されて使用中か又は使用に必要なできるだけ少ないデータ、好ましくはそのデータのみが作業システムにあることを保証することができる。
オプションとして、記憶システムに含まれるいくつかのデータ又はファイルの内容を含むインデックス又はデータベースを作業システムに移動するか、又は作業システムに配置することができる。このようなデータを使用するか又は開くために選択した時、それを必要に応じて作業システムにコピーし、必要でない時には、記憶システムにコピーして作業システムから削除することができる。
オプションとして、データ記憶装置又はデータ記憶装置コントローラと対話するソフトウエアを使用して、データ記憶装置アイデンティティの切換を行うことができる。このようなソフトウエアは、作業システム及び記憶システムから隔離することができる。例えば、修復処理を実施する隔離された「StorExecute」の一部とすることができ、又は専用の「StorExecute」上にあるとすることができる。これは、一部のデータ記憶装置コントローラがアイデンティティ/ブートシーケンスを変更するためのソフトウエア指令を受け入れることができるように、そのデータ記憶装置コントローラにおける変更を必要とするであろう。
オプションとして、データ記憶装置は、ホットスワップ可能であり、隔離されたバックアップイベント中に必要な時だけ電源を入れることができる。
オプションのネットロック
オプションとして、ネットロック装置は、ハードウエア又はソフトウエア処理によって自動的又は手動でトリガされる任意の種類の論理コントローラによって制御することができる。スイッチトリガとしては、タイマー/スケジューラーを含むか又は利用することができる。また、切換処理をトリガする方法を含むことができる。例えば、ネットロックをトリガするコイン式機構又はピンカード式機構を使用することができる。ネットロックの二重又は多重ラインバージョンは、1つよりも多いネットワーク接続(2つ又はそれ以上のネットワーク接続)を処理することができ、この場合、ネットロック装置は、オプションとして、必要に応じて付加的なネットワーク接続を増設するために本質的にモジュール式とすることができる。
オプションとして、1つ又はそれ以上のネットワーク接続(2つ又はそれ以上のネットワーク接続)を処理することができる二重又は多重ラインバージョンのネットロックは、オプションとして、必要に応じて付加的なネットワーク接続を増設するために本質的にモジュール式とすることができる。必要に応じて、多重ラインバージョンは、可能性としては1つの論理コントローラ又は切換処理によって制御することができるであろう。
本明細書で説明する本発明及び方法は、全体的なものとして見るか、又は、必要に応じて独立して使用するか又は混在及び適合させることができるいくつかの別々の発明として見ることができる。本明細書で説明する全ての発明、段階、処理、装置、及び方法は、必要に応じて混在及び適合させることができる。上述の特徴、機能、又は、本明細書又は引用文献で説明した発明は、必要に応じて混在及び適合させることができる。
オプションとして、インストーラーのように見える活動を探すことができる以下で「インストーラーウォッチャー」と呼ぶ処理を、コンピュータの背景において実行することができる。ユーザがソフトウエアのインストールを試行する場合、インストール試行を停止することができ、ダイアログは、ユーザに対してソフトウエアをインストール中か照会することができる。そうであれば、インストーラーウォッチャーは、ユーザにインストールの処理を行わせるか、又は、マスターテンプレートの更新前又はマスターテンプレートの実際の更新中にソフトウエアを試験させることができる。
ここで、本発明の追加の実施形態及び態様について説明する。
ウイルス、ハッキング、スパイソフトウエア、サイバーテロ、盗難に対して防御し、悪質なコードを無関係にするコンピュータの実施形態
本発明の実施形態は、ハッキング及び/又はウイルス及び/又はサイバーテロ及び/又は盗難に対してコンピュータ及びユーザの個人データ(限定はされないが、文書及び電子メールなどが含まれる)を防御し、既知及び未知の悪質なコードが有意な損害を引き起こすのを防止し、この技術を使用するコンピュータ上にある間にハッキングソフトウエアがハッキング又はスパイ行為を行うのを防止し、ハッカー及びサイバーテロリストの捕捉を可能にする一助となるものである。本技術は、ウイルスが感染したデータファイルからの悪質なコードの除去を支援することができるが(標準的なウイルスチェッカーをその目的に使用することができる)、その成功は、このようなコードの除去に依存しない。
コンピュータは、ユーザの個人データを隔離する。従って、ウイルスに感染したファイルが到着した場合、ユーザデータは、そのファイルから隔離され、従って、上述の悪質なコードによって悪影響を受けることから守られる。コンピュータシステムソフトウエア及びアプリケーションの損傷を修復するだけでなく、既知及び/又は未知のウイルスやハッキングソフトウエアを削除するか、及び/又はハードドライブなどを再フォーマットすることができる処理が実施される。ユーザの個人データは隔離されるので、ハッカー及びハッキングソフトウエアからアクセス不能である。未知及び既知のウイルス及びハッキングソフトウエアは、オプションとして、保存して実行することができない方法で記憶することができ、ハッカー又はサイバーテロに対する証拠として使用することができる。また、ハッカー、泥棒、及びサイバーテロリストの捕捉を支援するための本発明の使用を可能にする実施形態について説明する。
ウイルス及びハッキングに対する保護を試行する既存の方法は、失敗することが多いことが認められるであろう。新しいウイルス及びハッキング方法が発明され、既存の保護が幾度となく不適切であることが証明される。これは、年間数十億ドルもの損害となっている。廉価で信頼性のあるソリューションが必要とされてきた。本発明は、これらの問題を解決するものである。上述及び他の特徴及び利点に関する追加の実施形態についてここで説明する。
一実施形態の概要
ユーザデータは、以下に限定されるものではないが、RAM、及び/又はROM、及び/又は制御方法、及び/又は処理、及び/又はプロセッサ、及び/又は総称して保護記憶域という他のコンピューティング機能及び能力などの他のコンピューティングハードウエア及び/又はソフトウエアと関連付けることができる1つ又はそれ以上のデータ記憶装置を使用して記憶することができる。このデータ記憶装置及びオプションとして付随するコンピューティングハードウエア及び/又はソフトウエアは、隔離することができる。オプションとして、保護記憶域との通信は、アクティブ化/非アクティブ化、及び/又は、ロック/アンロック、及び/又は、読取専用/読取書込とすることができる。隔離された映像及び/又は入力/出力及び/又は制御方法、及び/又は他の機能を保護記憶域と関連付けることができる。
1つ又はそれ以上の付加的/二次的な隔離されたデータ記憶装置は、以下に限定されるものではないが、RAM、及び/又はROM、及び/又は制御方法、及び/又は処理、及び/又はプロセッサ、及び/又は、総称して爆発ルームと呼ぶ例えばユーザがデータ上で「作業」をしたりゲームなどをすることができ、ウイルスが保護記憶域内のデータに損害を引き起こすことなく「爆発」又は実行することができる隔離された環境である他のコンピューティング機能及び能力のような他のコンピューティングハードウエア及び/又はソフトウエアと関連付けることができる。オプションとして、1つ又はそれ以上のマスターテンプレートの全て又は一部のコピーを爆発ルームに含むことができる。1つ又はそれ以上の爆発ルームがあるとすることができる。隔離された映像及び/又は入力/出力及び/又は制御方法、及び/又は他の機能は、爆発ルームと関連付けることができる。
ユーザが文書の作業を終えた時、その文書は、オプションとしてコードを実行することができないコピーの方法を用いて、保護記憶域に保存することができる。
例えば、以下のうちの1つ又はそれ以上から構成することができる修復処理を実施することができる:
−爆発ルーム内のソフトウエアをマスターテンプレートの全て又は一部と同一にする、及び/又は部分的に同一にする。
−爆発ルームを削除及び/又は修復する、及び/又は第2の爆発ルームに切り換える。
−1つ又はそれ以上のデータ記憶装置を再フォーマット及び/又は修復する。
−1つ及び/又はそれ以上の修復処理を実行する。
修復処理は、例えば、ユーザが文書を「終了する」度に実行することができる(及び/又は、それをいつ実行することができるかについて他の判断基準を使用することができる)。従って、各々の新しい文書は、ウイルス及び/又はハッカーソフトウエア又は他の悪質なコードを含まないクリーンな環境で開くことができる。
一実施形態においては、1つ又はそれ以上の他の爆発ルーム及び/又は保護記憶域に付随する映像データを捕捉することができないように、爆発ルーム、及び/又は保護記憶域、及び/又はマスターテンプレート、及び/又は他のコンピューティング処理に付随する映像を隔離することができる。同様に、他のデータ記憶装置、及び/又は関連のRAM、及び/又は処理に付随する映像を隔離することができる。別の実施形態では、映像を隔離する必要はない。その代わり、装置との通信は、ウイルスが拡散されたりハッキングが起こらないように、修復が実行される後まで確立されない。
異なる実施形態では、ユーザが作業をする/ゲームをするなどの爆発ルームは、マスターテンプレートを含まないとすることができ、及び/又はオペレーティングシステムを含まないとすることができる。その代わり、マスターテンプレート及び/又はオペレーティングシステムのコピーは、オプションとして隔離することができる、及び/又は、オプションとしてネットワーク上に位置することができる、及び/又は、オプションとして例えばロック/アンロック、及び/又は読取専用/読取書込などの異なるモードに切り換えることができる異なる爆発ルームを利用することができる。
別の実施形態では、爆発ルームは、マスターテンプレートの一部のコピーのみを含むことができる。例えば、修正されるオペレーティングシステムの一部を含むことができるが、オペレーティングシステムの他の部分を含むことはできない。例えば、一実施形態においては、ユーザによって使用されている爆発ルームに含まれたオペレーティングシステムの一部のみを「プリファレンスフォルダ」とすることができる。オペレーティングシステムの残りは、異なるデータ記憶装置又は爆発ルームに位置することができ、通常はロックされるか又は読取専用とすることができる。同様に、オプションとして、爆発ルームに位置するアプリケーションの部分だけを、使用中に変化することができるアプリケーションの部分とすることができる。アプリケーションの残りは、異なるデータ記憶装置内(及び/又はネットワーク上)に位置することができ、オプションとして、通常はロックされる、及び/又は読取専用とすることができる。従って、爆発ルームにコピーすることが必要なデータが少なくなる。オペレーティングシステム及び/又はROM及び/又はアプリケーションの何らかの修正は、本実施形態をサポートする上で望ましいとすることができる。例えば、オペレーティングシステムに位置すべきプリファレンスフォルダを探すのではなく、コードを修正して爆発ルーム内部でプリファレンスフォルダを探すことができる。
同様に、アプリケーション及び他のソフトウエアを修正して、ソフトウエアの一部であってアプリケーション使用中に修正することができる1つ又はそれ以上のデータファイルを探すことができ、爆発ルームに位置すべきファイルを探すことができる。オプションとして、ソフトウエアは、オペレーティングシステムを利用してその各部と対話することができるので、ソフトウエア製造業者及びオペレーティングシステム製造業者、及び/又はコンピュータ製造業者は、全て、この機能性を使用可能にするために自社の設計仕様を調整する必要があるであろう。
以下のうちの1つ又は全ては、コンピューティング装置の一部として、及び/又はネットワーク上に位置することができる:
−爆発ルーム、マスターテンプレート、保護記憶域、バックアップ、アーカイブ、処理、RAM、ROM、コンピューティング、ネットワーク接続、制御装置、入力/出力、映像、本明細書で説明する及び/又は使用のために望ましい及び/又は必要とされる任意の他の構成要素及び/又は機能。
オプションとして、コンピュータ使用中に様々な時点でネットワーク接続を非アクティブ化及び/又はアクティブ化することができる。ネットワークと爆発ルーム間の通信をいつアクティブ化/非アクティブ化すべきかを判断するための様々な判断基準を使用することができる。例えば、一実施形態においては、ネットワーク接続は、爆発ルームと他の爆発ルームとの間に通信がなく、爆発ルームが新しい爆発ルームによって既に修復及び/又は交換されている時、その爆発ルームに対して確立することができる。別の判断基準として、ネットワーク接続は、爆発ルームと保護記憶域との間に通信がない時にその爆発ルームに対して確立することができる。これらは、判断基準の一例であり、判断基準を限定する意図はない。
従って、このような判断基準を用いて、保護記憶域内のユーザデータをネットワーク上でハッカーからアクセス不能なものにすることが可能である。
一実施形態においては、1つ又はそれ以上のマスターテンプレートが使用され、例えば、以下のうちの1つ又はそれ以上をマスターテンプレートとして使用することができる。
保護マスターテンプレート(オプション)
一実施形態においては、オプションとして隠すことができ、及び/又は通常はユーザには見えないものとすることができ、保護マスターテンプレート及び/又はマスターテンプレートと呼ぶことができるマスターテンプレートをデータ記憶装置に記憶することができる。オプションとして、それは、「読取専用」であり、及び/又はロックされ、及び/又は電源を切られ、及び/又は必要とされるまで使用不可にされ、及び/又は切断され、及び/又は非アクティブ化され、及び/又はそれとの通信を終了及び/又は非アクティブ化することができる。これらの(及び他の)技術を使用して、保護マスターテンプレートを悪質なコードから保護することができる。
マスターテンプレート記憶装置位置の例(オプション)
一実施形態においては、マスターテンプレート又はマスターテンプレートのコピーは、例えば、オプションとして、隠したり及び/又は通常はユーザには見えないものとすることができるRAM、及び/又はRAMディスク、及び/又はROM(例えば、フラッシュROM又は他のROM)などのデータ記憶装置上に保持することができる。それは、「読取専用」され、及び/又はロックされ(例えば、ハードウエア及び/又はソフトウエアを通じてロックすることができる)、及び/又は、隔離及び/又は他の方法で悪質なコードを通さないものにすることができる。オプションとして、保護マスターテンプレートからコピー又は交換することにより、必要に応じて、マスターテンプレートを修復及び/又は交換することができる。これは、この処理に必須のものではないが、いくつかの実施形態では望ましいとすることができるオプションの段階であることに注意すべきである。
自己修復ユーザ作業域又は爆発ルーム
別の実施形態では、1つ又はそれ以上のマスターテンプレートの全て又は一部の別のコピーはまた、データ記憶装置(例えば、一実施形態においては、いずれも隔離することができる揮発性メモリ、RAM及び/又はRAMディスク、関連の入力/出力、関連の映像を利用することができる)上に記憶することができる。1つ又はそれ以上のマスターテンプレートの全て又は一部のこのコピーは、マスターテンプレートと呼ぶことができ、また、それが記憶されているデータ記憶装置及び関連のRAM、ROM、処理、入力/出力、映像、コンピューティングなどを「爆発ルーム」と呼ぶことができる。
爆発ルームは、マスターテンプレートの1つ又はそれ以上のコピーの全て又は一部を含むことができ、例えば、ユーザがゲームをする、電子メールを検査する、インターネットをサーフィンする、文書に作業などを行うのに必要とされる1つ(又はそれ以上の)データファイルのためのデータ記憶及び/又はスクラッチディスクスペースのために使用することができる。ここに到着するウイルス、トロイの木馬、ワーム、ハッキング、スパイソフトウエア、及び「コンジットハッカー」などのソフトウエアは、永久的な損傷を与えることができず、ユーザの個人データを含むデータ記憶装置はアクセス不能である。一実施形態においては、既知及び未知のウイルス及び隠れたソフトウエアを爆発ルームから排除する高速修復処理を実行することができる。例えば、ユーザが文書を出る度に、及び/又は何らかの他のスケジュール又は条件に基づいて、この修復処理を実行することができる。これは、隔離された作業域とすることができ、また、毎回使用後(例えば)に修復することができるので、この爆発ルームは、ウイルスが「爆発する」又は損害を引き起こすことなく実行することができ、ハッキングソフトウエアが無益である場所になる。
保護記憶域
一実施形態においては、データ記憶装置は、ユーザの個人データ(ユーザによって作成された文書、電子メール、ブックマーク、お気に入りなど)を記憶するのに使用される。このデータ記憶装置は、「保護記憶域」と呼ぶことができる。ネットワーク接続及び/又は保護記憶域との通信は、潜在的なウイルス又はハッキングが処理される及び/又は存在する場合がある時に使用不可にする、及び/又は切断する、及び/又は電源を切る(論理的及び/又は物理的に)ことができ、判断基準を満足した後に、例えば修復が行われた後に、使用可能にする、及び/又は接続する、及び/又は電源を入れる(論理的及び/又は物理的に)ことができる。従って、ウイルス又はハッキングソフトウエアが保護記憶域上のユーザの個人データに悪影響を与えたり又はアクセスすることができる方法はない。一実施形態においては、保護記憶域は、例えば、それへ又はそれからデータをコピーする必要がある時を除き、通常は「読取専用」とすることができる。一実施形態においては、ネットワーク接続が確立される時に修復を実施することができ(任意のアクティブなウイルス又はハッキングソフトウエアを除去/使用不可/上書きする)、及び/又は保護記憶域との通信を使用不可にする、及び/又は切断する、及び/又は電力をオン又はオフにする(論理的又は物理的に)ことができる。
一時的な記憶域
一実施形態においては、データ記憶装置及び/又はパーティションを使用して、ユーザの個人データ(ユーザによって作成された文書、電子メール、ブックマーク、お気に入り、データベース成分など)を一時的に記憶することができる。このデータ記憶領域は、一時的な記憶域と呼ぶことができる。例えば、ユーザが文書を保存する時、一時的な記憶域に保存することができる。例えば、ユーザがデータベースを保存する時に、それ(及び、恐らくは関連の構成要素)は、一時的な記憶域に保存することができる。ユーザが電子メールをダウンロードした時に、一時的な記憶域に保存することができる。ブックマーク及びお気に入りなどのアイテムが作成された時、作成時及び/又はアプリケーションを終了した時に、一時的な記憶域に保存することができる。保護記憶域から文書を要求された時は(本明細書の他の箇所で説明)、最初に一時的な記憶域にコピーすることができる。例えば、ユーザがインターネットブラウザを開きたいと思った場合、お気に入り/ブックマーク、及び他のユーザ情報を保護記憶域から一時的な記憶域にコピーすることができる。これは、この処理に必須のものではないが、いくつかの実施形態では望ましいとすることができるオプションの段階であることに注意すべきである。
修復処理は、一時的な記憶域を修復するか、又は予め準備された新しいコピーと交換することができる。例えば、一実施形態においては、複数の一時的な記憶領域を隔離して準備することができる。その後、必要とされた時に、古い一時的な記憶域を削除して、例えば、RAM、RAMディスク、シェルなどを使用して作成された新しいものと交換することができる。
一実施形態においては、例えば、一時的な記憶域は、修復後又は爆発処理が停止された場合を除き、ユーザ個人データが爆発ルームから隔離されている記憶領域とすることができる。一時的な記憶域は、データが保護記憶域から一時的記憶域に「出入りする」時、また、文書が作業された後に一時的記憶域から保護記憶域に再度戻った時に使用することができる(オプションとして)データ記憶領域とすることができる。一時的な記憶域は、一実施形態においては、常に爆発ルームにアクセス可能とすることができる。この例においては、ユーザは、作業中にデータを一時的記憶域に保存することができ、その後、終了した時に、文書は一時的記憶域から保護記憶域にコピーされる。
バックアップ及び/又はアーカイブ記憶装置
オプションとして、一実施形態においては、バックアップシステムを使用して、全てのユーザの個人データ、例えば、文書、電子メール、お気に入りなどの連続的バックアップを維持することができる。オプションとして、ファイルがウイルス又は不正によって損傷した場合、ユーザは、過去のバージョンをバックアップシステムからコピーすることができる。連続的バックアップ及び/又はアーカイブは、ユーザがバックアップがいつ行われたかを容易に判断することができるように、タイムスタンプ又は日付スタンプを押すことができる。バックアップの頻度は、製造業者からのデフォルトとして予め決めることができるが、ユーザが変更することが可能とすることができる。オプションとして、バックアップシステムは、通常はユーザから隠すことができる。一実施形態においては、バックアップシステムをユーザが利用可能である時は、ユーザによって誤って修正されることがないように「読取専用」モードで維持される。オプションとして、バックアップは、別々のデータ記憶装置(及び、いくつかの実施形態ではパーティション)上にある、及び/又は、例えばネットワーク上のような他の場所に位置するとすることができる。これは、この処理に必須のものではないが、いくつかの実施形態では望ましいとすることができるオプションの段階であることに注意すべきである。
処理の制御
広範囲な制御の方法が可能であり、制御方法及び/又は複数の制御方法と呼ぶことができる。いくつかの例を以下に示す。
例えば、一実施形態においては、別々のROM装置及び/又はASIC及び/又はコントローラ及び/又はサブシステム、及び/又はオペレーティングシステムに記憶されたコードは、データ保存、及び/又は接続のアクティブ化/非アクティブ化、及び/又は通信のアクティブ化/非アクティブ化、及び/又は必要に応じた切換処理の実行、及び/又は修復処理のトリガ、及び/又は本明細書で説明する他の機能の実行する処理を制御することができる。
一実施形態においては、文書を閉じた時に「プロセスウォッチャー」を使用して、修復をトリガすべきか、及び/又は機能しているオペレーティングシステムがあるかを判断することができる。適切に機能しているオペレーティングシステムがないか、及び/又は修復が行われない場合、制御方法は、隔離された状態で準備完了体勢を保持するか、及び/又は必要に応じて作成することができる二次システムに切り換わることができる。オプションとして、二次システムに対してコンピュータをリブートしたり、修復処理を実施したり、コンピュータをリブートすることができる。オプションとして、リブートは必要でないとすることができる。一実施形態においては、二次的なオプションの隔離されたシステムは、修復処理及び/又はアンチウイルス/アンチハッキング処理、及び第1又は一次システムを修復及び/又は維持するために使用される他のソフトウエアを使用することができる。オプションとして、二次システムを使用して、第1のシステムが修復中であり、及び/又は、アンチウイルス、アンチハッキング、及び/又は診断及び/又は他の処理が実施されている間に、コンピュータを「実行」することができる。
別の実施形態では、一次オペレーティングシステムは、コンピュータを実行することができ、爆発ルーム及び/又は保護記憶域、及び/又は他の機能は、サブシステム及び/又は仮想システム及び/又はサブシステムとして作動することができる。
別の実施形態では、制御は、必要とされるまで隔離状態に維持することができ、及び/又は読取専用とすることができる揮発性メモリ及び/又はシェル内のコードによって提供することができる。揮発性メモリ「A」は、制御に使用することができ、一方、揮発性メモリ「B」は、隔離することができる。オプションとして、制御方法は、1つ又はそれ以上のマスターテンプレートからのコピー処理によって修復することができる。制御方法によって使用されるコードの全て又は一部、及び/又は制御方法は、隔離されて使用準備完了にすることができる1つ又はそれ以上のコピーと必要に応じて交換することができる。
一実施形態においては、隔離された揮発性メモリとの通信は、必要に応じて/必要な時に、隔離を行うために電力をオン又はオフにすることができる。オプションとして、複数の揮発性メモリを使用のために利用可能とすることができ、また、隔離することができる。修復中は、揮発性メモリとの通信は、新しい揮発性メモリ領域に切り換えることができる。
一実施形態においては、インターネット、イントラネット、又は保護記憶域との通信をアクティブ化/非アクティブ化する指令にウイルス又はハッカーが操作するのを防止するために、これらの指令をROM、及び/又は独立コントローラ、及び/又は他の制御方法によって制御することができ、必要に応じて隔離することができる。代替的に、制御方法は、修復後にこのような指令を行うことができる。一実施形態においては、悪質なコードが、例えば一度だけではなく何十億回もコピー指令を送るのを防止するために、コピーのためのROM及び/又は制御方法による命令により、実行可能なコピー要求の回数を制限することができる。オプションとして、コピー指令を何十億回も要求するなどの不当な要求により、その処理をクリアする、及び/又はRAMをクリアする、及び/又は修復処理を実行するコードをトリガすることができる。イベントを要求することができる回数及び他のこのような悪意の行為の回数に対して制限を課することができる。
一実施形態においては、トリガを使用して、本明細書で説明するイベントの1つ又はそれ以上を開始することができる。例えば、1つ又はそれ以上のボタンをユーザの好都合な場所に置くことができ、修復処理を物理的にトリガする、及び/又はデータ記憶装置を切り換えるため(例えば、保護記憶域及び/又はマスターテンプレート、及び/又は高速マスターテンプレート、及び/又は保護マスターテンプレートなどとの通信を開始するため)に使用することができる。オプションとして、音声指令、タッチ、ユーザを特定するための任意の手段、及び/又はイベントをトリガする、及び/又は、ハードウエア及び/又はソフトウエア切換処理を開始する任意の他の公知の手段のような任意の他の種類のトリガを利用することができる。
別の実施形態では、公開鍵及び専用鍵のシステムを利用して、制御方法によって実行されるすべき(すべきではない)命令の有効性を判断することができる。この検証システムは、ハードウエア及び/又はソフトウエアベースとすることができる。
修復処理の実施形態
修復処理の概要
修復処理及び修復処理が未知のウイルスを排除する方法
修復処理は、コンピュータを修復する及び/又はコンピュータを適切に作動する状態にするために使用される処理から成る。
例えば、修復処理は、比較処理及び/又はマスターテンプレートから爆発ルームへのコピー処理により、マスターテンプレートと同一でない爆発ルーム内のいずれも排除することができる。
修復処理の別の実施形態では、1つ又はそれ以上のマスターテンプレートの全て及び/又は一部のコピーを含み、揮発性メモリ、及び/又はシェル、及び/又はROM、及び/又はROMディスクをオプションとして利用することができる新しい爆発ルームとの通信を確立することができる。オプションとして、古い爆発ルームは、削除するか又は修復することができる(すなわち、マスターテンプレートからシェルへコピーすることにより)。
一実施形態においては、修復/アンチウイルス/アンチハッカー処理の機能方法の一例を示す。ウイルスに感染されている文書に作業するユーザを考察してみる。ウイルスがソフトウエア、オペレーティングシステム、様々な実行可能対象、電子メールソフトウエアの一部に感染し、大半のアプリケーションが有する「read me」ファイルの中に姿を隠していると仮定する。この実施形態では、ユーザが文書を終了すると、「閉じる」又は「終了する」指令は、一連のイベントを実施する及び/又は開始する制御方法内のコードをトリガする。
(注:このコードは、コンピュータの特定の実施形態の設計により、ROM、ASIC、制御システム、サブシステム、オペレーティングシステム,及び/又は他の場所にあると考えられる。一実施形態においては、コードは、読取専用か、ロックされるか、及び/又は他の方法でウイルス及び/又はハッキングソフトウエアから利用不能にすることができるので、このコードは、ウイルス又はハッキングソフトウエアが操作するのにアクセス不能と考えられる。)
1つの可能なイベントシーケンスを以下に示す(しかし、多くの他のイベントシーケンスが可能である)。
ユーザが文書を保存することを選択した場合、それは保存され、その後終了する(保存場所及び方法については、この文書のどこかに説明される)。プロセッサは、処理を完了させることができ、及び/又は「クリア」又はリセットされ、RAMは、クリア又はリセットされ(オプションとして、オプションとして利用不能及び/又は非アクティブ化することができる第2の隔離されたRAMを利用可能にし[例えば、プロセッサとの通信を確立することができる]、及び/又はアクティブ化して、第1のRAMがクリアされている間に利用することができるが、第2のRAMの使用は必要とされない)、プロセッサ及び/又はRAMは、ここで以下の修復処理に利用することができる(及び/又は、異なるプロセッサ及び/又はRAMを利用することができる)。
爆発ルームの修復
一実施形態においては、1つ又はそれ以上のマスターテンプレートの全て又は一部は、記憶装置位置から爆発ルームにコピーされる。コピー処理は、部分的なコピー又は完全なコピーとすることができる。比較処理を利用して、欠落、変更、又は修正のあるデータを必要に応じてコピー及び/又は交換することができる。マスターテンプレートと同一でないデータを除去することができる。(オプションとして、この処理では、データのコピー及び/又は比較、及び/又はマスターテンプレートの使用方法の説明に関連して本明細書の他の場所で説明した他の方法を利用することができる。)
一実施形態においては、マスターテンプレートと異なる爆発ルームにあるいずれも破壊することができる(例えば、上書きされる)。欠落しているアイテムをマスターテンプレートから爆発ルームにコピーすることにより、任意の欠落しているソフトウエア又はファイルを交換することができる。オプションとして、マスターテンプレートから爆発ルームにアイテムをコピーすることによって、全てのファイルを交換することができる。マスターテンプレートと同一でないファイルを削除する、及び/又は例えばデータ記憶装置(隔離することができる)にコピーすることができ、更に、暗号化、及び/又は圧縮、及び/又は他の方法で使用不可にすることができる。この修復処理は、ソフトウエア内に入れ込まれた及び/又は爆発ルーム上に隠されたであろういかなる既知及び未知のウイルス及びハッキングも破壊する。
別の実施形態では、各々が1つ又はそれ以上のマスターテンプレートの全て又は一部のコピーを含む爆発ルームの1つ又はそれ以上が作成され、及び/又は存在することができ、爆発ルーム内の1つ又はそれ以上のマスターテンプレートの全て又は一部の各コピーは、この例においては、隔離状態(オプション)で作成して必要に応じて使用準備完了にすることができる揮発性メモリ、及び/又はRAMディスク、及び/又はROM(及び/又は、他の形態のデータ記憶装置)内にあるとすることができる。例えば、各々が独自の揮発性メモリ内にあり、かつ各々がマスターテンプレートのコピーを含むいくつかの爆発ルームが作成され、待機状態又は「必要に応じて」使用準備完了にすることができる。使用された爆発ルームを削除することができ、及び/又は、必要に応じて及び/又は望ましい場合は修復することができる。ソフトウエア及び/又はハードウエア処理は、揮発性メモリ(又は他の形態のデータ記憶装置)内の新しい爆発ルームとの通信を作動させることができ、従って、ユーザによる使用に対して用意されている。ユーザが新しい爆発ルーム内のマスターテンプレートの新しいコピーを使用している間、古い爆発ルーム内の古いマスターテンプレートを修復することができるか、又は別のマスターテンプレートを新しい爆発ルーム内での使用のために準備することができる。爆発ルームにシェルを使用してもよい。
「使用済み」爆発ルームを新しい爆発ルームと交換する処理は、非常に迅速に行うことができるので、ユーザは、気付かない場合があり、又は、気付く程度の時間が掛かる場合もある。気付くほどの時間が掛かる場合、インタフェースは、ユーザに待機するように指示することができる。
修復及び/又は使用済み爆発ルームの交換が完了すると、ユーザは、次の文書又は電子メールを悪質なコードのない環境で開くことができる。
一実施形態においては、データを一時的記憶域から保護記憶域(又は、保護記憶域から一時的記憶域)にコピーする前に、RAM及び/又は処理をリセットする及び/又は潜在的な悪質コードを除去することができ、及び/又は、マスターテンプレートと比較時に異なる及び/又は欠落しているいかなるコードも削除(及び/又は上書き)及び/又は交換するために修復を爆発ルームで実行することができ、及び/又は爆発ルームを別の爆発ルームと交換することができ、その後、保護記憶域との通信をオンにする(又は、使用可能/アクティブ化する)ために切換処理又はコピー処理を制御方法によって実施することができ、保護記憶域から一時的記憶域にデータをコピーすることができ、及び/又は一時的記憶域から保護記憶域にデータをコピーすることができ、その後、保護記憶域との通信をオフにする(使用不可/非アクティブ化する)ことができる。一実施形態においては、一時的記憶域を使用する段階は省略することができ、代替的に、保護記憶域から爆発ルームに直接にデータをコピーすることができる。
一実施形態においては、ユーザが、例えば作業すべき文書を選択したいと思った時、メニューから文書フォルダを選択することができる。オプションとして、これは、最初に修復処理をトリガすることができる。今日存在するコンピュータと異なり、ROM及び/又はオペレーティングシステム内の命令(例えば)、及び/又はコンピュータに作動方法を指示する他のコードは、この例において以下に示す現在のソフトウエアと異なる場合がある。例えば、ユーザ文書又はフォルダを開く代わりにその文書又はフォルダを選択した時、本明細書で説明するように異なるイベントシーケンスが発生する。例えば、まだ修復が実行されていなかった場合は、修復を実行することができる。その後、データを一時的記憶域及び/又は爆発ルームにコピーすることができるように保護記憶域(ユーザデータが記憶されている場合)との通信を作動させることができる。その後、ユーザが選択した文書をユーザデータを含む保護記憶域から一時的記憶域(例えば、データ記憶装置上のパーティションとすることができる)及び/又は爆発ルームにコピーすることができる。オプションとして、この実施形態では、爆発ルームの映像を捕捉することができないように、別々の隔離された映像を使用することができる。
一実施形態においては、ユーザデータは、保護記憶域では実行する及び/又は開くことができない。データは、保護記憶域へ又はそれからコピーし、削除し、複製することができるが、実行する及び/又は開くことはできない。
尚、一実施形態においては、爆発ルームの修復はまた、爆発ルームと別の爆発ルームの入れ換えと定義することができる。これを達成する1つの方法は、第1の爆発ルームを削除し、第2の爆発ルームとの通信を作動させることである。代替的に、第2の爆発ルームの使用中に、第1の爆発ルームを修復することができる。
通信の同期アクティブ化及び非アクティブ化
ハッカーがユーザの個人データにアクセスするのを防止するために、ユーザが積極的に電子メールを送受信しているか、文書をダウンロードしているか、又はウェブサーフィンをしている時を除き、インターネットとの接続(ワールド・ワイド・ウェブ)を定期的に非アクティブ化することができる。インターネット及び/又はネットワーク通信をアクティブ化する要求により、保護記憶域との通信を非アクティブ化するコード及び/又は切換処理を自動的にトリガすることができる。保護記憶域へ保存する及び/又はアクセスする要求により、インターネットとの通信及び/又はネットワーク通信を非アクティブ化するコード及び/又は切換処理を自動的にトリガすることもできる。コードのこのような変更は、このような作動を実行するROM及び/又はオペレーティングシステム及び/又は他のソフトウエアに対する修正(例えば)の可能性がある。一実施形態においては、ウイルス及び/又はハッカーが命令を真似ないようにこの処理を保護するために、コードを隔離する及び/又は符号化や暗号化することができ、又は、コードを検証及び/又は安全にする任意の方法を使用することができる。オプションとして、隔離された処理装置、及び/又はRAM、及び/又は制御装置を利用してこれらの機能を実行することができる。例えば、隔離された制御装置は、これらの機能を実施し、及び/又はこの処理を安全にするために望ましい任意の修復及びセキュリティ機能を実施することができる。
オプションとして、イントラネットアクセス(ローカル企業ネットワークとの通信など)の作動はまた、電源を入切りし、アクティブ化/非アクティブ化し、使用可能/使用不可にすることができ、(一実施形態においては)修復が実施された後のみにアクセスすることができ、更にオプションとして、インターネットとの接続がアクティブな間は作動させることができない。これによって、イントラネットは、ハッカー、ウイルス、及びスパイソフトウエアから保護される。一実施形態においては、2つ(又はそれ以上)の通信ポートをこの目的に利用することができる。ネットワーク接続のアクティブ化/非アクティブ化は、ハードウエア及び/又はソフトウエア切換処理によって達成することができる。
別の実施形態では、ネットワークアクセスは、ユーザがデータに作業している間、及び/又は保護記憶域が爆発ルームと通信している間は作動的とすることができる。この実施形態では、オプションとして、隔離された映像及び/又は入力/出力などと共に第2の隔離された爆発ルームが利用される。このようにして、ユーザは、データがハッカーにアクセスされるのではないか、又はウイルスがデータまで拡散するのではないかと心配する必要がなく、文書に作業しながら同時にネットワークにアクセスすることができる。この爆発ルームはまた、保護された記憶域にアクセス可能である。
複数の文書を開く時のウイルス汚染の防止:電子メール、インターネットソフトウエア、データベース、及び/又は他のソフトウエアに対する修正
一実施形態においては、ユーザが開きたい文書又は電子メールを選択した時に未知のハッキングソフトウエア又はウイルスが広がる可能性を小さくするために、その1つの文書又は電子メールのみが開かれ、他の全てのデータは、汚染、ハッキング、コピー、損傷などが発生しないように安全に保護記憶域上に記憶される。
複数の文書及び/又は電子メールを開く場合の典型的な保護手段
オプションとして、一実施形態においては、開くように要求された文書のコピーを保護記憶域から一時的記憶域にコピーすることができる。データが一時的記憶域にコピーされ、かつ、ユーザが1つ又はそれ以上の文書の作業を終了した後、変更された文書は保存することができるが、修正されていない文書は、保護記憶域に再度コピーするのではなく、自動的に破壊することができる(例えば、制御方法により)。
オプションとして、複数の隔離された爆発ルームを作成することができる。一実施形態においては、各爆発ルームは、1つの文書のみを開く機能を有することができる(例えば、この制限をROM及び/又はオペレーティングシステム内のコードに含めることができる)。オプションとして、文書間のウイルスの拡散を防止するために、以下のように文書間でデータをコピーすることができる。コードを実行させないコピー処理が使用される。例えば、DMA(直接メモリアクセス)、及び/又は「ダム」コピー処理(すなわち、「copy to」指令以外のコードを実行する機能を有していない)を実行することができるASIC、及び/又は符号化を利用して、コピー処理中のコードの実行を防止することができる。
オプションとして、コピーの前にコードを閲覧する処理を実行することができる。コードが予め承認されたストリング又は要件に適合した場合は、コードをコピーすることができる。コードが予め承認されたストリング又は要件に適合しなかった場合、ユーザにウイルスが転送されている可能性があると警告し、継続したいかを尋ねることができる。例えば、公知の言葉及び/又は句読法の辞書と同等のコードをコピーすることができ、一方、それ以外のコードをコピーすることはできない。オプションとして、データコピーの許可又は拒否のために、変化を呈示して閲覧者の注意を引くことができる。
オプションとして、一実施形態においては、全てのファイルのバックアップを維持することができ、最初に修復を実施することなく複数のファイルが同一の作業域内で開かれた場合、また、未知のウイルスがファイル間で広がっている場合、バックアップコピーを使用することが可能である。ウイルスがこのようにして広がった場合、他のファイルには汚染又は損傷が発生せず、他の害は為されていないことに注意すべきである。
オプションとして、一実施形態においては、ユーザが1つ又はそれ以上の文書又は電子メールを終了した時、自動的な処理を行うことができる。例えば、文書を一時的記憶域に保存することができ、処理及び/又はRAMをクリアすることができ、爆発ルームの修復を実行することができ、オプションとしてバックアップ及び/又はアーカイブを作成することができ、ユーザによって作成及び/又は修正されたデータを保護記憶域に保存することができる。これらの段階は、列挙した順番で行われなくてもよく、全ての段階が必要とされるわけでもない。
一実施形態においては、複数の文書を開く要求が行われた時は常に、その処理を制御するコードにより、現在のウイルスチェッカーを自動的に更新して実行することができる。(尚、この自動アンチウイルス更新及び実行ウイルスチェッカー機能はまた、オプションとして、マスターテンプレートの更新のような他のイベント時、ウェブアクセスの開始又は完了時、スケジュール通りなどによりトリガすることができる。)
電子メール、データベース、及び、複合ドキュメント及び/又はソフトウエア
電子メールのインボックス及びアウトボックスは、通常、多くの個々のメッセージを含む大きなファイルとして記憶される。例えば、1つの「インボックス」は、ユーザに送られてきた全てのメッセージを含むことができる。従って、1つの電子メールが読み込まれるか又は送られた時、電子メールファイル全体がウイルス又はハッカーによる危険に曝される場合がある。
オプションとして、電子メールソフトウエアは、一度に1つの電子メールを一時的記憶域にコピーして使用することができるように修正することができる。これによって、他の電子メールが汚染から保護されることになる。次の電子メールを開く前に修復を実行することができる。
一実施形態においては、アドレスブック及び/又は他の電子メール構成要素を保護記憶域に記憶することができ、ユーザが選択する特定のアドレスを保護記憶域から使用したい作業域にコピーすることができる。従って、ウイルスは、ユーザのアドレスブック全体にアクセスすることができないことになる。オプションとして、修復処理を最初に実施する必要があるようにアドレスブックの更新を制限することができ、従って、アドレスブックを汚染から保護することができる。
オプションとして、データベース及び他のソフトウエアは、ちょうど大半の電子メールプログラムが個々の電子メールを1つのファイルとして扱うように、複数のファイルを1つの大きなファイル又はデータベースとして記憶することができる。このようなソフトウエアは、個々のファイル及び/又は個別の記録を一時的記憶域にコピーしてユーザが一度に1つだけ作業するように修正することができ、従って、データベース全体は危険に曝されない。その後、次のファイル又は記録を開く前に修復を実行することができる。例えば、電子メールのインボックス内の各電子メールは、個別のファイルとして記憶することができる。代替的に、データの位置は、ディレクトリ又はデータベースに入力することができ、保護記憶域内のいかなるファイルも開くことなく、そのデータのみを一時的記憶域及び/又は爆発ルームにコピーすることができる。
一実施形態においては、コードは、ユーザデータが保護記憶域内で開かれるのを防止することができる。
オプションとして、データベース、電子メール、及び他のソフトウエア内のこのような変更は、ソフトウエア製造業者が実行することができる。オプションとして、その時まで、電子メールファイル又はデータベースを入力し、ユーザ要求を構成するデータを抽出し、ユーザが終わった時に、改訂された場合はデータを再び保存し、データが改訂されなかった場合はユーザが閲覧したコピーを削除することができるコードを利用することができる。
別の実施形態においては、データベース及び/又は電子メールは、以下のように処理することができる。ここでは、電子メールを例として用いる。ユーザが電子メールを使用することを選択した場合、電子メールプログラム、インボックス、アウトボックスなどは、オプションとしてネットワーク接続がまだ作動されていない爆発ルームにコピーすることができる。その後、電子メールプログラムを開くことができ、例えば、インボックス内のフォルダのディレクトリをユーザに表示することができる。しかし、個々の電子メールは、この爆発ルーム内では開かれない。代わりに、ユーザが開きたい電子メールを選択した場合、オプションとして必要に応じてネットワーク接続がすでに作動された第2の爆発ルームにその電子メールをコピーすることができ、その後、第1の爆発ルームとの通信をオプションとして終了することができ、その後、電子メールを開くことができる。ユーザが電子メールの読取りを終了した時、また、例えばユーザが電子メールに応答する場合、応答のコピーを第1の爆発ルームにコピーし、電子メールアウトボックスに記憶し(又は、送り)、その後、ユーザがこのようにして電子メールとの対話を終了した時に、インボックス、アウトボックス、及び/又はアドレスブックを保護記憶域にコピーすることができる。データベースを1つの爆発ルームにコピーして、第2の爆発ルームでファイル及び/又はデータの制限された部分を開くこの同じ技術は、データベース及び/又は他のソフトウエアに使用することができる。
一実施形態においては、電子メール及び/又はデータベースを保護記憶領域から爆発ルーム及び/又は他のデータ記憶装置にコピーすることができ、1つ(又は、場合によってはそれ以上)の電子メール又はファイルに作業するために開くことができる。その1つの電子メール(又はデータベースファイル)を開いて作業することができ、電子メール及び/又はデータベースの残りを削除することができる(まだ保護記憶域にあるので)。
別の実施形態では、例えば、電子メールデータベース全体を開き、1つの電子メールを検査し、その1つの電子メールの検査完了後にデータベース全体を保護記憶域から削除し、再び保護記憶領域からコピーして次の電子メールを読み取ることができる。代替的に、データベースの修正及び/又は変更された部分のみを削除することができる。電子メール応答及び/又は新しい電子メールレターの開始を削除処理から除外することができ、保存することができる。(電子メール及び/又はデータベース情報、及び/又は他のソフトウエア情報、電子メールへの応答などの削除及び/又は作成などの情報は、ファイル及び/又はデータベースに記憶することができ、オプションとして、必要に応じて使用される保護記憶域にそのデータベースを保存することができる。)
一時的記憶領域に関する更なる説明
一実施形態においては、一時的記憶領域は、領域上のファイルを削除することによって「修復する」ことができ、その後、例えば、作業している1つ(又はそれ以上)のファイルを爆発ルームから後で保護記憶領域に保存される一時的記憶領域に再度保存することができる。イベントのシーケンスは、この順番で発生する必要はない。
一実施形態においては、一時的記憶領域は使用されず、代わりに、修復処理及び/又は制御方法により、爆発ルーム内で作業されている及び/又は利用されているファイルを追跡することができ、修復処理中のそのファイルの削除を省略する。データベース及び/又はファイル及び/又はディレクトリをその目的に使用することができる。
追加の態様及び実施形態
オプションとして、インターネットサーフィンソフトウエア、及び/又は電子メール、及び/又は他のソフトウエアは、ユーザが文書に作業したり、相互汚染なしに電子メールをサーフィン又は検査することができるように、独自の隔離された爆発ルームを有することができる。オプションとして、切換処理を使用して、これらの隔離された領域の間を交互に切り換え、及び/又は爆発ルームとの通信をアクティブ化/非アクティブ化することができる。別の実施形態では、2つ又はそれ以上の爆発ルームは、同時にアクティブになることができるが、オプションとして、通信を確立するのが安全になる時まで隔離することができる(例えば、修復が実施されるまで、及び/又は、ウイルス拡散の危険がない通信方法が使用されるまで)。
一実施形態においては、爆発ルーム、及び/又は一時的記憶域、及び/又は保護記憶域、及び/又は他の爆発ルーム間の通信は、修復を先に行なわなくても、ハッキング及び/又はウイルス拡散の危険なしに実行することができる。これは、以下の要領で達成することができる。1つのデータ記憶装置から別のデータ記憶装置へのデータのコピー、データ削除、データ移動などに関する判断は、上述の領域から独立した制御方法によって制御されるコピー処理を使用して行われることになり、従って、このコードは、ウイルスの影響を受けない。更に、オプションとして、通信処理では、コードを実行させないコピー処理を利用することができる。
一実施形態においては、作業域を閲覧する、及び/又は独立及び隔離された映像層として対話することができる。オプションとして、各領域では、隔離されたRAM及び/又は処理装置を利用することができ、及び/又は、RAM及び/又は処理装置は、隔離された側面間で共有され、切換が行われる前にクリアすることができる。
オプションとして、ブックマーク及びお気に入りのユーザプリファレンス、及び他のソフトウエアは、使用されていない時に保護記憶域に記憶することにより、このようなアイテムを可能な汚染及び/又はハッキングから保護することができる。オプションとして、これを達成するために、アプリケーション及び/又は他のソフトウエアの使用中に保護記憶域からコピーすべきで関連ファイルのリストを含むデータベース、及び/又はファイル、及び/又はディレクトリを作成することができる。更に、リストは、爆発ルームでコピーすべき方向及び/又は位置を含むことができる。その後、例えば、ソフトウエアを終了する時に、保護記憶域に再度コピーするもの及びデータが保護記憶域内で記憶される位置に関してデータベース及び/又はディレクトリを調べることができる。例えば、ユーザがネットスケープを開くことを選択した場合、制御方法は、保護記憶域から爆発ルームにコピーする必要があるもの及びこのようなファイルが位置する場所、及び爆発ルーム内でコピーされるべき場所に関するディレクトリを検査することができる。ネットスケープブックマークやユーザデータなどのファイルは、従って、爆発ルーム内に位置するマスターテンプレートの全て又は一部のコピー内の適切な位置にコピーすることができる。その後、ユーザがソフトウエアの使用を終了した時に、オプションとして、コピーすべきファイル及び/又はファイルを保護記憶域にコピーする位置を列挙したディレクトリを調べることができる。
一実施形態においては、ファイルの以前に保存したバージョンを交換するのではなく、古いファイルを保持することができる。例えば、更新されたネットスケープブックマーク及びユーザデータが保護記憶域にコピーされた時、ネットスケープブックマーク及び履歴の以前のバージョンと入れ替わることができない。従って、次にデータが使用される時、破壊されて適切に作動しない場合、制御方法及び/又はユーザは、修復を実行し、データの以前のバージョンの使用に切り換えることができる。オプションとして、破壊データに付随するファイルはまた、ディレクトリで参照することができ、使用することができず、及び/又はウイルスの有無を検査することができる。この例においては、ネットスケープが次に開かれた時、ブックマーク及びユーザデータの以前のバージョンを保護記憶域から爆発ルームにコピーすることができる。オプションとして、コードを修正し、ファイルが誤作動した場合は自動的にソフトウエアの以前のバージョンに戻る処理を自動化することができる。例えば、ネットスケープブックマークが適切に開かなかった場合、制御方法は、自動的に修復を実行し(又は、異なる爆発ルームに切り換え)、データの以前のバージョンの使用に切り替えることができ、従って、ネットスケープブックマークのそれよりも以前のバージョンを爆発ルームにコピーして使用することができる。
オプションとして、スケジュール通りに(例えば、1時間単位で)制御方法は、例えば、爆発ルームとの通信を作動させることができ、利用可能な新しいウイルスチェッカーがあるかを自動的に検査し、ある場合は、ウイルスチェッカーをダウンロードし、ネットワーク通信システムとの接続を解除し、修復を実行し、爆発ルーム及び/又は保護記憶域との通信を作動させ、ウイルスチェッカーを実行することができる。オプションとして、ウイルス検査をダウンロード全部に対して実行することもできる。この例においては、イベントは、列挙した順序で行われる必要がある。
一実施形態においては、複数の独立した爆発ルームを利用することができ、各々は、独自の揮発性メモリ及び/又はRAMディスク、及び/又はRAM、及び/又はシェル、及び/又は他の形態のデータ記憶装置を(オプションとして)有することができ、関連の処理装置、及び/又はRAM、及び/又はROM、及び/又は入力/出力、及び/又は映像、及び/又はコンピューティングを有することもできる。一実施形態においては、ユーザデータ実行中に爆発ルームを隔離することができ、一方、修復後に通信を例えば保護記憶域又はネットワーク接続に対して確立することができる。
爆発ルーム内のテンプレートのコピーを修復するのではなく、爆発ルームを削除することができ、次の爆発ルームを利用することができる。従って、修復時間は不要である。例えば、文書を終了した時に、修復を実行するのではなく、自己修復ユーザ作業域を削除するか又は修復のために「サービスから除去する」ことができ、新しい及び/又は修復された爆発ルームを利用ことができる。代替的に、複数のシェルを利用することができ、シェルの内容全体を削除することができ、次のシェルを使用することができる。揮発性メモリ内の複数のシェル及び/又はRAM及び/又は爆発ルームを作成し、必要に応じて準備して使用することができる。揮発性メモリ内のこれらのシェル及び/又はRAMディスク及び/又は爆発ルームは、相互汚染を防止するために互いに隔離することができる。
一実施形態においては、爆発ルームはユーザから隔離することができるが、それは、修復テンプレートと通信し、修復処理、及び/又は1つ又はそれ以上のマスターテンプレートの全て又は一部の新しいコピーを作成する処理を受けることができる。
一実施形態においては、修復処理後になんとか生き残ったウイルス又は他のソフトウエアがないことを確認するために、修復後に二次的な比較を実行することができる。生き残ったものがあった場合、オプションとして、RAMディスクの内容全体を削除し、読取専用保護マスターテンプレートパーティションから最初から再度作成することができる。
一実施形態においては、コピー処理中にデータの実行を防止する処理を使用することにより、データを保護記憶域と一時的記憶域との間で転送することができる。これは、例えば、直接メモリアクセス、及び/又はデータ符号化の処理、及び/又は例えば「ダム」コピー処理を実行することができる専用ASICの使用、及び/又はコピーされているデータを実行させない他の任意のコピー処理の方法によって達成することができる。
一実施形態においては、ユーザがその瞬間に使用したいと思うソフトウエアのみ(オプションとして、オペレーティングシステムを含む)が爆発ルームにコピーされる。従って、アプリケーション、ユーティリティー、ゲーム、及びインターネットソフトウエアの全てが爆発ルームにロードされた場合よりも修復中に比較及び/又はコピーするデータが遥かに少なくなるために、修復処理をより迅速に実行することができる。
代替的に、異なる実施形態では、ユーザによって頻繁に使用される1つ又はそれ以上の組のソフトウエアを爆発ルームにロードすることができる。オプションとして、他のソフトウエア、例えばより少なく使用されるソフトウエアを必要な時のみ爆発ルームにコピーすることができる。
ソフトウエア及び/又はテンプレートの全て又は一部のコピーの任意の混在又は適合の組合せを含む任意数の爆発ルームを作成することができる。一組のソフトウエアを含むことができる爆発ルームもあれば、同一組及び/又は他の組のソフトウエアを含むことができる他の爆発ルームもある。オプションとして、爆発ルームは、その時に使用中の爆発ルームから隔離された状態に保持することができ、従って、ウイルス及びハッキングから保護される。爆発ルームの1つ又はそれ以上との通信を必要に応じて確立することができる。
一実施形態においては、アプリケーションが必要とされる時に、使用中の爆発ルームが望ましいソフトウエアを含んでいない場合、必要とされるソフトウエアをマスターテンプレートからコピーすることができる。従って、例えば、コードは、ソフトウエアが爆発ルームに位置するか否かを確かめ、それがない場合は、必要とされるソフトウエアを求めて、データベース及び/又はディレクトリ及び/又はマスターテンプレートのファイル及び/又はその内容を検索することができる。
オプションとして、例えば、2つ又はそれ以上の爆発ルームを作成することができ、1つは、例えば、完全なマスターテンプレートを有し、もう一方は、例えば、頻繁に使用されるアプリケーション及びオペレーティングシステムの簡略化した組のみを含むものである。オプションとして、ソフトウエアが必要とされる時み爆発ルームがそのソフトウエアを含んでいなかった場合、所要のソフトウエアは、例えば、ユーザソフトウエアの完全な組を含むことができ、オプションとしてオペレーティングシステムを含むことができるマスターテンプレートからそれをピーすることにより、爆発ルームに追加することができる。
オプションとして、必要とされるソフトウエアが爆発ルームに含まれていない場合、例えば、ユーザアプリケーション及びオペレーティングシステムの完全な組を含むことができる第2の爆発ルームとの通信を確立することができ、プログラムを開くことができる。
一実施形態においては、保護記憶域から爆発ルームにコピーする前に修復を実行し、全てのウイルス及びハッキングソフトウエアを排除することができ、その後、保護記憶域及び爆発ルーム間の通信を確立することができ、データを保護記憶域から爆発ルームにコピーすることができ、爆発ルーム及び保護記憶域間の通信を終了することができる。オプションとして、RAM、RAMディスク、ROM、シェル、及び/又は他のデータ記憶装置が複数の爆発ルームとして使用される場合、ユーザが必要とするソフトウエアを含む新しい爆発ルームを予め作成することができる。イベントは、必ずしもこの順番で行われる必要はない。
オプションとして、爆発ルームは、通信に必要な時には読取専用から読取書込に、及び/又はロックからアンロックに切り換えることができる。
一実施形態においては、保護記憶域及び/又は爆発ルームをサブシステムとして実行することができる。
オプションとして、制御システム及び/又は制御方法(オペレーティングシステムを含むことができる)は、隔離された及び/又は読取専用の一次システムとして実行することができ、爆発ルームは、サブシステムとして実行することができる。オプションとして、制御方法は、サブシステムとして実行することができる。
一実施形態においては、ハッカー及びサイバーテロリストを捕らえるために使用されるシステムを以下のように含めることができる。
ハッカー/サイバーテロリストがネットワーク上で見ることができるがコンピュータユーザには見えない及び/又はユーザから隔離することができる情報を含む爆発ルーム、及び/又はパーティション、及び/又はデータ記憶装置を含めることができる。爆発ルームは、興味をかき立てるユーザデータ、パスワードなどに見えるものを含むことができる。爆発ルームはまた、セキュリティソフトウエアと見えるものを含むことができ、このようなソフトウエアは、意図的に「ハッキング可能」であるように設計することができる。爆発ルームは、コピーされ、及び/又はアクセスされ、及び/又は適正なIDなしにコピー及び/又はアクセスされた時に、その位置、ユーザ電子メールアドレス、インターネットサービスプロバイダ設定、及び他の関連情報のような適切な情報をもたらす情報を送る(例えば捜査当局に)ソフトウエアを含むことができる。本明細書では、この目的に使用されるデータ記憶装置、パーティション、及び/又はソフトウエアは、「盗難防止/サイバーテロ防止」システムと呼ぶことができる。一実施形態においては、使用中の爆発ルームに対してネットワーク通信が非アクティブ化された時、通信は、盗難防止/サイバーテロ防止システムと共にアクティブに維持することができる。
オプションとして、コンピュータユーザを識別するための手段(すなわち、パスワード、網膜走査、指紋、音声IDなど)を使用することができ、ユーザアイデンティティが正しくない場合は、盗難防止/サイバーテロ防止パーティション及び/又は爆発ルームをユーザに対して利用可能にすることができ、保護データは、ロックされ、及び/又は暗号化され、及び/又は利用不能にされ、及び/又は破壊することができる。オプションとして、無許可のユーザが盗難防止データ記憶装置及び/又はパーティション及び/又は爆発ルーム上の偽ファイルにアクセスしている間に、ネットワーク上及び/又は電話システム上で警報を当局に送ることができる。
オプションとして、修復処理及び/又は制御方法は、データをバックアップし、作動起動データ記憶装置に対してコンピュータをリブートし、必要に応じてデータ記憶装置を再フォーマットし、必要に応じてデータを再度コピーすることができる。オプションとして、修復処理は、これらの処理を実行する専用コントローラ及びコードを利用することができる。
オプションとして、ネットワーク通信を作動させる前に、送られる電子メールの一部又は全てを暗号化することができる。オプションとして、キーストロークレコーダ及び他の悪質なコードを排除するような修復を実施することができる。これらの段階は、ハッカーがネットワーク上でデータへのアクセスを得ることをより困難にすることができると考えられる。
一実施形態においては、制御方法は、パーティションを可視及び/又は不可視にすることができる。オプションとして、パーティションの可視性は、パスワード保護式、ハードウエア切換式、又はソフトウエアで改ざんすることができない可視性を変更する他の手段とすることができる。制御方法は、必要に応じて隔離することができ、例えば、ユーザデータが実行されている時に爆発ルームから隔離することができる。制御方法は、隔離された映像信号を有する。オプションとして、映像信号は、隔離される方法でモニタ上の1つ又はそれ以上の他の映像データの上に重なることができ、従って、映像データをハッキングすることはできない(例えば、ネットワークから、及び/又は爆発ルームで実行されるコードから)。オプションとして、両方の映像信号(一次及び/又は二次、及び/又は他のもの)のスナップショットを撮る、及び/又はアクセスする機能を使用不可にすることができる。
オプションとして、一実施形態においては、保護記憶域は、制御方法がデータを爆発ルームに移動する指令を受信するまで読取専用にする、及び/又はロックすることができる。従って、この例においては、ユーザが保護記憶域内で開きたい文書を選択する場合、コード(例えば、ROM及び/又はオペレーティングシステム内の命令とすることができる)は、制御方法に修復を実施するように指示することができる。次に、修復後に、制御方法は、保護記憶域を読取書込及び/又はアンロックに切り換えることができる。データは、保護記憶域から一時的記憶域及び/又は爆発ルームにコピーすることができる。これらのイベントは、他の順序で行われてもよく、追加及び/又は他の段階を含むこともでき、及び/又はこれらの段階のいくつかを含まなくてもよい。
オプションとして、コンピュータによって使用される1つ又はそれ以上のオペレーティングシステムは、1つ又はそれ以上の自己修復ユーザ作業域上、及び/又は隔離されたデータ記憶装置上、及び/又はサブシステム上、及び/又はネットワーク上、又は他の場所に位置することができる。
オプションとして、オペレーティングシステム及び/又はデータ記憶装置フォーマットが損傷し、及び/又はコンピュータが適正に作動するのを妨げる他の損傷が発生した場合は、二次システムを利用して、コンピュータを作動する及び/又は修復処理を実施及び/又は開始することができる。第1のシステムは、必要に応じて修復/交換することができる。
オプションとして、マスターテンプレート及び/又はオペレーティングシステムの1つ又はそれ以上のコピーは、隔離された状態に準備することができ、必要な時にそれらとの通信を作動させることができ、使用中だったものとの通信を非アクティブ化することができる(または、使用中だったものを削除する、及び/又は非アクティブ化する、及び/又は使用不可にすることができる)。
一実施形態においては、1つ又はそれ以上の一次オペレーティングシステムを使用して、1つ又はそれ以上の二次オペレーティングシステムを実行することができる。オプションとして、爆発ルームは、二次オペレーティングシステムを含むことができる。
オプションとして、一次オペレーティングシステムは、読取専用にする、及び/又は保護された処理装置及び/又は保護メモリを使用する、及び/又は使用中の爆発ルームから隔離することができる。
オプションとして、一次オペレーティングシステムは、コンピュータの基本的作動を保護する隔離された及び/又は独立した方法で、コンピュータの一般的作動を実行することができる。オプションとして、一次オペレーティングシステムはまた、二次システムの制御システムとして使用することができ、及び/又は別の制御システムを利用することができる。
オプションとして、爆発ルームは、一次、及び/又は二次、及び/又は追加のオペレーティングシステムを実行することができる。
オプションとして、複数の爆発ルームが同時に作動することができ、従って、1つが「クラッシュ」し、及び/又は終了し、及び/又は閉じられ、及び/又はもはや必要でない場合、別の爆発ルームは、使用中であった爆発ルームの代わりをする準備ができている。例えば、制御方法は、二次爆発ルームに切り換え、及び/又は二次爆発ルームとの通信を作動させることができる。
ユーザ及び/又はソフトウエアは、一度に1つ又はそれ以上の爆発ルームと対話することができる。オプションとして、これらの爆発ルームは、ユーザデータの実行中は隔離することができるが、修復/交換の後で作業域との通信を確立することができる。
別の実施形態では、爆発ルームは、通信することはできないであろう。代わりに、制御方法は、爆発ルーム、保護記憶域、及び/又は他の位置との間でデータをコピーすることになる。従って、例えば、ウイルスは、保護記憶域にウイルス自体をコピーする指令を送ることは決してできないであろう。代わりに、例えば、制御方法は、データが保存された及び/又は終了した時に、保護記憶域にデータをコピーすることができる。一実施形態においては、これを達成するために、制御方法は、例えば、ファイル及び/又はデータベース及び/又はディレクトリを検査し、どのファイルが保護記憶域から爆発ルームにコピーされたか、及びどの新しいファイルがユーザによって作成されたかを判断することができる。オプションとして、1つ又はそれ以上の新しいファイルが爆発ルーム内で作成された場合、制御方法は、ファイルを保護記憶域及び/又は一時的記憶域に保存すべきであることをユーザに確認することができる。
一実施形態においては、保護記憶域に付随するコードは、データを実行させない及び/又は保護記憶域のデータの実行をサポートしない場合がある。従って、この実施形態では、どのユーザデータも保護記憶域において実行することができない。オプションとして、保護記憶域の通信は、修復前、及び爆発ルームとの新しいネットワーク接続の前、及び/又は任意のユーザ文書を開く前には爆発ルームとは決して確立することができない。すなわち、保護記憶域は、ハッキング及びウイルスの実行の影響を受けない。
一実施形態においては、二次オペレーティングシステムは、保護メモリ、及び/又は無保護メモリ、及び/又は処理装置を利用することができる。保護メモリを利用する場合、二次オペレーティングシステムの1つ又はそれ以上を互いに隔離することができる。従って、1つのシステムがクラッシュし、及び/又はそれ以上利用しない時、コンピュータは、別の二次的な隔離及び/又は保護オペレーティングシステムに切り換えることができる。
一実施形態においては、爆発ルームは、各々、互いに同一であり、及び/又は互いに相違点を有し、及び/又は「時間遅延式」ミラーとして機能することができる。一実施形態においては、二次爆発ルームは、同一とすることができるが、キーストローク及び/又は入力は、複数の爆発ルームに遅延して送ることができる。従って、いくつかの爆発ルームは、時間遅延させることができ、従って、爆発ルームがクラッシュした場合に、制御システムは、時間遅延した爆発ルームに切り換えることができる。
オプションとして、ユーザは、クラッシュを回避するために、自分が行ったことをしないように警告を受けることができる。オプションとして、コンピュータが再度クラッシュした場合、オペレーティングシステムは、クラッシュを引き起したイベントのシーケンスを回避することを期待して、更に時間遅延した爆発ルームに切り換えることができる。オプションとして、必要に応じて、制御システムは、クラッシュが無事に回避されるまで連続的に古い爆発ルームに切り換えることができる。オプションとして、クラッシュが発生した場合、揮発性メモリ内のデータは、不揮発性メモリに保存することができる。
一実施形態においては、制御方法は、プロセスウォッチャー及び/又はクラッシュ検出システムを利用して、二次システムの爆発ルームに切り換えるべきか否かを判断することができ、オプションとして、順により古い爆発ルームに切り換えた時に問題を回避することができるように、その問題を診断することができる。
オプションとして、爆発ルームがクラシッシュし、及び/又は閉じられ、及び/又は終了し、及び/又はもはや必要でない時、爆発ルームに付随する揮発性メモリの内容の一部又は全てをその後の爆発ルームに使用するために維持することができ、及び/又は削除することもできる。オプションとして、制御システムは、揮発性メモリの内容を削除し、及び/又はクリアし、及び/又は交換し、及び/又は修正し、及び/又は修復することができる。
オプションとして、一実施形態においては、制御システムは、1つ又はそれ以上のRAMディスク、及び/又はROM、及び/又はRAM、及び/又は揮発性メモリ、及び/又はシェル、及び/又は他のデータ記憶装置及び関連処理装置及び/又はメモリを利用することができる。制御システムは、二次制御システムに切り換えることにより、必要に応じて交換することができる。二次制御システムは、第1の制御システムを誤作動していないかモニタし、必要に応じて切り換えることができる。オプションとして、制御システムは、爆発ルームと類似の方法で機能することができ、及び/又は爆発ルームを利用することができる。
一実施形態においては、揮発性メモリ内のデータは、指令を実行する前に、別のメモリ領域及び/又は論理制御装置にコピー及び/又は保存し、及び/又はバックアップすることができる。指令実行前の連続的なバックアップを記憶することもできる。その後、指令が実行された時、及び、凍結などの問題が発生した場合は、新しい二次システム及び/又は二次自己修復ユーザ作業域を使用することができ、及び/又は、オプションとして揮発性メモリのバックアップを揮発性メモリにロードすることができる。これによって、使用する良好な揮発性メモリのコピーを得ることができる。問題又は凍結が再度発生した場合、保存された揮発性メモリの古い方のバージョンを利用することができる。オプションとして、ユーザは、その問題を通知され、入力したもの、及び/又はデータの入力方法、及び/又は他の挙動を変更するように求められる場合がある。オプションとして、プロセスウォッチャー及び/又はエラー検出システムを使用して、問題を特定することができる。オプションとして、二次爆発ルームが使用される時、制御方法は、揮発性メモリの以前のバックアップを利用することを選択し、及び/又は、クラシッシュを回避するために、異なる方法でデータを処理するように二次システムに指令することができる。
一実施形態においては、制御方法は、爆発ルーム内の悪質なコードによって影響を受けないように、コピー及び/又はバックアップ処理を実施することができる。
一実施形態においては、一次オペレーティングシステムを使用して、コンピュータの基本的作動を実行することができ、二次オペレーティングシステムを爆発ルームとして使用することができる。
揮発性及び/又は不揮発性データ記憶装置への言及は一例に過ぎない。本明細書では、任意の形態のデータ記憶装置を使用することができ、データ記憶装置は、必要に応じて混在及び適合させることができる。また、データ記憶装置は、ハードウエア及び/又はソフトウエア、及び/又はその両方の組合せから成ることができることに注意すべきである。全てのハードウエア装置及び機能は、必要に応じて、ソフトウエア及び/又は「仮想ハードウエア」によって実行することができる。
1つの特定実施形態の例
以下は、この例における概念のいくつかの重要な部分である。
ユーザは、通常、ユーザデータ(電子メール、文書など)が記憶されているデータ記憶装置(保護記憶域)から隔離された(修復が実行されるまで)爆発ルームを利用して作業を実行する(又は、プログラムと対話する)。修復後に、爆発ルームとの通信を確立することができる。
爆発ルームにコピーされる唯一の文書は、ユーザがそのセッションで作業する予定の文書(又は、場合によっては複数の文書)である。(セッションとは、爆発ルームの修復が実行されるまでのコンピュータ使用の期間である。)アクセス可能な他のユーザデータはなく、つまり、ユーザ作業域にコピーされる他のデータはない。
すなわち、ウイルスが仮にトリガされた場合、又はハッカーソフトウエアが存在していた場合、ウイルス又はハッキングソフトウエアは、その時にユーザが作業していた文書、一般的には1つの文書のみへのアクセスを有するのみであろう。
オプションとして、ユーザが文書を終了する度に保護記憶域に保存される。オプションとして、データを実行することができないコピー処理の方法を利用することができる。
一実施形態においては、ユーザが文書を終了する度に、全ての既知及び未知のウイルス及びハッキングソフトウエアを削除する方法で爆発ルームを修復することができる。
オプションとして、この修復は、1つ又はそれ以上の方法を用いて実行することができる。例えば、マスターテンプレートを使用して、爆発ルームを1つ又はそれ以上のマスターテンプレートの一部又は全てと同一にすることができる。欠落、修正、又は変更のある全てのデータは、データをマスターテンプレートからコピーすることによって交換することができる。
オプションとして、修復を実行する別の方法は、例えば、隔離状態で複数の爆発ルームを作成することである。これらの爆発ルームは、RAMディスク、RAM、シェル、揮発性メモリ、又は他のデータ記憶装置の形態とすることができ、付随するRAM、及び/又は処理装置、及び/又はコンピューティング装置を有することができ、1つ又はそれ以上のマスターテンプレートの全て又は一部を含むことができる。隔離は、例えば、爆発ルームを隔離されたバックアップから現在の爆発ルームに切り換える通信をアクティブ化及び/又は非アクティブ化することによって作り出すことができる。
データの追跡
一実施形態においては、ファイル、フォルダ、データ、データベース、ディレクトリ、位置、サイズ、修正日付に関する情報及び/又は他の情報を隔離状態で爆発ルームから記憶することができる。例えば、これらのデータは、ユーザがどの電子メールを開いて送ったか、ユーザ「イン」ボックス及び「アウト」ボックスの内容、どのファイルが爆発ルームにコピーされたか、どのファイルをファイルの保存先である爆発ルームにコピーする必要があるかなどに関する情報を含むことができる。このデータは、隔離することができる1つ又はそれ以上のメモリ領域に記憶することができ、及び/又は、例えば保護記憶領域に記憶し、及び/又は制御方法によって使用されるデータの一部として記憶し、及び/又は任意のデータ記憶装置に記憶することができる。
一般的なコンピュータにおいては、通常はハードドライブ及び/又はオペレーティングシステムに記憶されているファイル及び/又はデータをコンピュータ、例えば「マッキントッシュ」コンピュータ使用中に更新又は変更することができ、つまり、デスクトップデータベースを更新することができる。一実施形態においては、従来技術のコンピュータと異なり、この実施形態では、更新されたファイルは、例えば、保護記憶域及び/又は制御方法によって使用される記憶装置のような保護された及び/又は隔離された記憶装置に記憶することができる。これら及び他のファイルは、オプションとして、必要に応じて保護された及び/又は隔離された記憶装置へ及びそれからコピーすることができ、及び/又はそのデータの一部又は全てを保護記憶域に保存することができる。従って、これらのファイルの破壊を回避するために、それらは、オプションとして保存することができ、修復処理によって破壊されない。また、必要に応じて再作成することができる。例えば、オプションとして、デスクトップデータベースは、1つ又はそれ以上のマスターテンプレートの全て及び/又は一部のコピーを含む新しい爆発ルームが作成された時に作成することができる。
オプションとして、一実施形態においては、1つ又はそれ以上の予想外及び/又は未確認ファイルが一時的記憶領域に現れた場合(例えば、どのデータが一時的記憶領域にあるべきかに関する保護情報データベース内に現れない1つ又はそれ以上のファイル)、例えば制御方法及び/又はオペレーティングシステム及び/又はROM内のコードは、このようなファイルに関してユーザの注意を喚起することができる。ユーザには、そのファイルを破壊及び/又は保存する、及び/又は、ファイルにマーク付けしてファイルが何らかの点で疑わしい及び/又は更に別の検査及び/又は確認を必要とすることを示すというオプションを与えることができる。別の実施形態では、未確認ファイルを削除する、及び/又はデータ記憶装置に保存する、及び/又は更なる検査のためにマーク付けすることができ、及び/又は、自動的及び/又は手動で更なる検査のためにどこかに、例えばネットワーク管理者及び/又はウイルス検査エンティティに送ることができる。
一実施形態においては、「典型的な」コンピュータを以下のように修正することができる。
一実施形態においては、不揮発性データ記憶装置上の保護マスターテンプレートは、揮発性メモリ内のロックされた又は読取専用の高速マスターテンプレートを修復するために必要に応じて使用される。例えば、保護マスターテンプレートを不揮発性データ記憶装置上に置くが、高速マスターテンプレートは、揮発性データ記憶装置上に置くことに決めると想定する。
オプションとして、保護マスターテンプレートはロックされ、及び/又は読取専用とすることができる。オプションとして、保護マスターテンプレートは、通常は電源を切るか又はスリープモードにすることができる。オプションとして、制御方法によって制御される切換処理を使用し、保護マスターテンプレートに電源を切り換える機能を実行し、及び/又は必要に応じてデータ記憶装置をロック/アンロックし、及び/又は読取/書込を実行することができる。オプションとして、ROM及び/又はハードドライブコントローラ上のコード、及び/又は制御方法を修正し、この処理をサポートすることができる。
一実施形態においては、「典型的な」コンピュータは以下のように修正される。
爆発ルームには、マスターテンプレートからのコピーを通じて爆発ルームを修復及び/又は交換するための手段、RAM及び/又は揮発性メモリをリセット及び/又はクリア及び/又は消去するための手段、一時的記憶域をリセット及び/又はクリア及び/又は消去するための手段、データ記憶装置をアンロック及び/又はロックし、及び/又は読取専用及び/又は読取書込にするための手段(データ記憶装置との通信を切り換えるための手段)、及び/又はコンピュータシステム及び/又は外部に収納することができる記憶装置上のデータを保護するための手段が含まれる。
一実施形態においては、保護記憶域は、通常は修復処理の前に任意の手段によってアクセス不能にされ、それは、例えばユーザデータが実行されている時、ユーザデータが実行された修復の前、ネットワーク接続が行われた修復の前である。例えば、一実施形態においては、データ記憶装置は、読取専用に切り換えるか、電源を切るか、非アクティブに切り換えることができ、通信を非アクティブ化させることなどができる。
一実施形態においては、1つ又はそれ以上のデータ記憶装置は、一時的にデータを記憶するために使用することができ、及び/又はスクラッチディスクとして作用することができ、及び/又は必要に応じてアプリケーション、ソフトウエア、プログラム、及び/又はオペレーティングシステムによって利用することができる。この一時的データ記憶装置は、揮発性及び/又は不揮発性メモリから成ることができる。
オプションとして、テンプレートのコピーを一時的記憶域及び/又は他のデータ記憶装置上に記憶することができる。このテンプレートコピーは、必要に応じて、ユーザが必要とするアプリケーション、及び/又はソフトウエア、及び/又は修復ソフトウエア、及び/又は1つ又はそれ以上のオペレーティングシステムを含むことができる。
一実施形態においては、1つ又はそれ以上のデータ記憶装置は、読取専用及び読取/書込モード、及び/又はロック及び/又はアンロックモード、及び/又はアクセス可能及び/又はアクセス不能モード間でハードウエア及び/又はソフトウエアを切り換えることができる。一例においては、ユーザは、ファイルを読取専用データ記憶装置から開き、そのファイルに作業を行い、ユーザがファイルを保存する時には一時的記憶領域に保存される。オプションとして、いくつかの又は全てのファイルを閉じる時、論理回路及び/又は制御方法は、RAMをクリア及び/又はリセットする、プロセッサをクリア/リセットする、及び/又は1つ又はそれ以上のデータ記憶装置をアンロック及び/又はロックし、及び/又は読取/書込にし、及び/又は読取専用にする、データを一時的記憶域からデータ記憶装置に移動する、1つ又はそれ以上のデータ記憶装置を閉じる/ロックする/読取専用にする、オプションとして一時的記憶領域をクリアする/リセットする、(オプションとして修復処理を実行する、)次のユーザ指令を待つ段階のうちの1つ又はそれ以上を実行することができる。一実施形態においては、一時的記憶域は、揮発性及び/又は不揮発性メモリから成るとすることができる。一例においては、ランダムアクセスメモリ及び/又はフラッシュROM、及び/又は他のデータ記憶装置を使用してもよい。
一実施形態においては、データを文書間でコピーするために、RAM及び/又は揮発性メモリ内の1つ又はそれ以上の特定アドレスにコピーしたい文書をロードすることができる。ペースト指令を受信した時、データは、データを実行させないコピー処理を用いて通信することができる。
一実施形態においては、制御方法は、1つ又はそれ以上のデータ記憶領域をロックし、及び/又はアンロックし、及び/又は読取専用にする処理を制御することができる。オプションとして、制御方法の機能は、コンピューティング装置によって使用される一次論理回路によって実行することができ、また、オプションとして、隔離された方法で実行することができる。オプションとして、制御方法は、読取専用及び読取/書込間で必要に応じて切り換えることができ、及び/又は、それとの通信は、例えば修復処理が実行された後ということに制限することができる。
一実施形態においては、修復を実行する前に(及び/又は、他の判断基準を使用してもよい)、保護記憶領域をロック及び/又は読取専用にすることができる。
関連データは、関連ファイル及び/又はデータのデータベースを使用して、及び/又はデータをファイルに関連付ける任意の方法によって、特定のファイルに関連付けることができる。
一実施形態においては、1つ又はそれ以上のトランザクションの後に修復を実行することができる。一実施形態においては、新しい爆発ルームは、1つ又はそれ以上のトランザクションの後に使用することができる。一実施形態においては、爆発ルームは、マスターテンプレートとして使用することができる。
別の実施形態では、制御方法及び/又は例えばROMは、爆発ルーム内の全てのデータ処理を停止及び/又は中断させることができる。その後、クリーンオペレーティングシステム(爆発ルームで使用中であったものではなく)及びデータをコピーするためのコードを使用して、データをコピーすることができる。例えば、作業域で処理が中断されている間、ROM及び/又は制御方法などの別のメモリを使用して、保護記憶域との通信を可能にし、及び/又は保護記憶域へ及び/又はそれからデータをコピーし、及び/又は第2の爆発ルームによる他の作動を可能にするような機能を実行することができる。例えば、別の爆発ルームに電子メールを検査するなどの処理を実施させる。その後、制御方法は、第2の爆発ルームの活動を中断して、第3及び/又は第1の爆発ルームにデータの処理を続行させることができる。
一実施形態においては、制御方法は、どの爆発ルームのデータが処理されているか、及び/又はRAMを利用しているか、及び/又はコンピューティング機能を利用しているかに関して「レフリー」を務めることができる。制御方法は、様々な判断基準により、コンピューティング及び/又は処理を用いる権利を異なる爆発ルームに対して交互に与えるように切り換えることができる。例えば、ユーザが爆発ルームでワード処理文書に作業しており、その後、突然電子メールソフトウエアを選択した場合、処理は、ワード処理文書を開いている爆発ルームについては中断し、電子メールソフトウエアを含む爆発ルームについては作動させることができる。その後、ユーザは、電子メールの一部を入力した後で再びワード処理文書を選択することができる。その後、例えば、制御方法は、電子メールソフトウエアを含む爆発ルームについては処理を中断し、ワード処理文書を含む爆発ルームについては処理を作動させることができる。
一実施形態においては、ファイルは、保護記憶域では開くことができないが、ファイルには、例えば、以下に限定されるものではないが、コピー、移動、削除、フラグ付け、バックアップ、アーカイブ、及び他のこのような機能を実行することができる。オプションとして、付加的なデータ記憶装置、及び/又はバックアップ及び/又はアーカイブデータ記憶装置を取り付ける、及び/又は保護記憶域と通信しているとすることができる。この場合、ファイルは、このようなデータ記憶装置へ及び/又はそれからコピー、及び/又はバックアップ、及び/又はアーカイブすることができる。一実施形態においては、このようなデータ記憶装置がネットワーク上にあり、及び/又は保護記憶域に危険を与えかねないイベントにおいては、このような潜在的に危険な装置を保護記憶域に直接接続するのではなく、それらを爆発ルームに接続することができ、オプションとして、修復後に、データは、保護記憶域から爆発ルームに、その後、爆発ルームからネットワークに取り付けられた記憶装置、及び/又は他の潜在的に危険な取り付けられた装置、及び/又は爆発ルームと通信することができる他の装置にコピーすることができる。
一実施形態においては、ユーザが積極的に電子メールを送受信しているか、ウェブサーフィンをしているか、文書をダウンロード/アップロードしているか、及び/又は他のネットワークアクセスを必要としている時を除き、ネットワーク通信を使用不可にすることができる。
オプションとして、ネットワーク通信が使用可能にされた時、保護記憶域とネットワークに接続されている爆発ルームとの間の通信を使用不可にすることができる。
これらの技術を使用すると、ネットワークからコンピュータへの侵入を試行しているハッカーは、非常に限られた時間中のみにハッキングする機会かあり、かつ、その時間中は、保護ハードディスク上に位置するユーザデータにアクセスすることができない。オプションとして、その時間以外は、ハッカーが閲覧してハッキングすることができるのは、オプションの盗難防止/サイバーテロ防止爆発ルームのみである。
一実施形態では、例えば、文書がユーザによって受信され、保護ハードディスクに保存されたそれが悪質なコードに感染されていたと仮定する。文書が感染しているということは重要なことではなく、その理由は:1)ユーザが感染した文書を開いたとしても、ユーザデータが「保護された」例えば電源を切ることができる及び/又は通信リンクを「オフ」に切り替えた保護記憶域に記憶されているために、ウイルスは、ユーザデータにアクセスしてそれを損傷又は感染させることはできない、2)悪質なコードは、修復処理のためにシステムソフトウエア又はアプリケーションに永久的な損害を与えることができない、3)未知のウイルスが実行されないようにするデータのコピー方法が使用されている、4)保護記憶域にある間、保護記憶域に付随するコードがデータを開くことを可能にできないために保護記憶域ではそれを開く及び/又は実行することができず、悪質なコードが損害を与えることができないからである。このようにして、公知及び未知のウイルス、及び未知のハッキングソフトウエアは無力化される。
オプションとして、ブックマーク/お気に入りの変更及び他の変更は、自動的に一時的及び/又は保護記憶域に保存することができる。
一実施形態において、以下はボタンを押した時の1つの可能なダイアログの一例である。
−高速(1〜3分)の修復が20秒すると開始されます。
−ボタンをもう一度押して、修復を取り消すか又は以下の機能のいずれかを選択してください:
修復を取り消す、
プリファレンスを設定する、
マスターテンプレートを変更、除去、又はそれからコピーする、
バックアップを作成するか、それからコピーするか、又はそれを削除する、
修復の品質を変更する(診断のみ、高速、良い、最良)、及び
終了。
勿論、このダイアログの変形を予想することができ、これは例示的なものに過ぎない。
一実施形態においては、このダイアログ及び関連機能の制御は、爆発ルームから隔離されたコントローラによって行うことができるので、どのウイルスもこれらの機能に影響を与えることができない。
別の実施形態では、隔離されたコントローラは必要とされない。代わりに、例えば、パスワードで保護する方法、暗号化する方法、又は安全な通信を提供する及び/又は通信の有効性を確認する他の方法による主コンピュータ及びコントローラ間の通信が存在する可能性がある。この実施形態においては、コントローラは、主コンピュータと対話することができ、オプションとして、主コンピュータは、コントローラから指令を受け取り、及び/又は、コントローラは、主コンピュータから指令を受け取ることができる。
別の実施形態では、例えば、マスターテンプレートを修正したりバックアップを削除するためなどのような他の指令を受け入れる前に修復を必要とするであろう(ウイルス及びハッキング削除)。
オプションとして、プリファレンスの変更、マスターテンプレートの修正、バックアップの削除などを行う指令を実行するために、修復を必要とする場合があり、及び/又は、ウイルス又はハッキングプログラムが処理に影響を与えたり又はデータを収集するのを防止するために、RAM内の及び/又は処理中の機能をクリア及び/又は終了及び/又は中断することができる。
本明細書では、隔離という用語は、説明中のものが時には隔離され、本明細書で説明するような特定の他の時間では隔離されない場合があるという概念を伝えるために使用することができる。例えば、ユーザデータが実行されている時、かつ修復処理が実行されるまで、爆発ルームを隔離することができる。その後、修復処理を実行するために、例えば読取専用マスターテンプレートとの通信を確立することができ、修復を実施することができ、その後、ネットワークとの通信のような他の通信を爆発ルームで確立することができる。隔離は、ハッキング及びウイルス拡散を防止するために、必要に応じてかつ必要な時に利用される。
セッション:セッションとは、爆発ルームの修復又は交換が実行されるまでのコンピュータ使用の期間である。例えば、一実施形態においては、ユーザが文書を終了した場合に文書を保存することができ、そのセッションは終了する。爆発ルームの修復又は交換が行われ、ユーザは次の文書を開く。
文書の保存は、実施形態により、修復の前及び/又は後、及び/又は修復中に行うことができる。例えば、一実施形態においては、文書は、一時的記憶領域に保存することができ、使用された爆発ルームの修復及び/又は交換を行うことができ、その後、文書を一時的記憶領域から保護記憶領域に保存することができる。
別の実施形態の一例においては、ウイルスの実行を防止するコピー処理を使用することができ、従って、文書を修復前に保護記憶域に保存することができる。
別の実施形態の一例においては、ユーザデータの処理を中断することができ、その後、データを爆発ルームにコピーすることができる。
爆発ルームで使用されたマスターテンプレートの「使い捨てコピー」は、多くの方法かつ様々な判断基準を用いて作成することができる。一実施形態においては、爆発ルーム内の様々なマスターテンプレートを作成することができる。マスターテンプレート作成の判断基準を確立することもできる。例えば、1つの判断基準は、コンピュータ/コンピューティング装置に一般的に使用されるプログラムの選択を基本にすることができる。例えば、コンピュータユーザが、1)ワード処理プログラム、2)電子メールプログラム、3)2つのインターネットブラウザ、ポップアップを防止するユーティリティー、及びオンラインオークションを追跡するプログラムを最も一般的に使用し、それよりも程度が落ちるが、様々な他のアプリケーション、ゲーム、ユーティリティー、及び/又は他のプログラムを使用すると仮定する。この例を用いて、これらの必要性の各々を判断基準としてマスターテンプレートを作成することができる。すなわち、1つのマスターテンプレートは、オペレーティングシステム及びワード処理プログラムを含むことができ、別のマスターテンプレートは、オペレーティングシステム及び電子メールプログラムを含むことができる。別のマスターテンプレートは、オペレーティングシステム、2つのインターネットブラウザ、ポップアップを防止するユーティリティー、及びオンラインオークションを追跡するプログラムを含むことができ、更に別のマスターテンプレートは、ユーザソフトウエアの全てを含むことができる。
別の実施形態では、1つ(又はそれ以上)のマスターテンプレートを作成することができ、判断基準を満足することが必要とされるマスターテンプレートの部分のみをコピーして1つ又はそれ以上の爆発ルームを作成することができる。例えば、1つのマスターテンプレートがある可能性があるが、それを使用して1つ又はそれ以上の爆発ルームにおいてマスターテンプレートの各部分を作成することができるであろう。例えば、上述の判断基準を用いると、1つのマスターテンプレートを使用して、ユーザによって使用される可能性に備えて準備された爆発ルームを作成することができる。これらの爆発ルームの一例として、以下が考えられる。
−オペレーティングシステムとワード処理プログラムを開くために必要とされるマスターテンプレートの部分とを含む2つの爆発ルーム。
−オペレーティングシステムと電子メールプログラムを開くために必要とされるマスターテンプレートの部分とを含む2つの爆発ルーム。
−オペレーティングシステムと、2つのインターネットブラウザ、ポップアップを防止するユーティリティー、及びオンラインオークションを追跡するプログラムを開くために必要とされるマスターテンプレートの部分とを含む2つの爆発ルーム。
−オペレーティングシステムと、全てのアプリケーション、ゲーム、ユーティリティー、及び/又は他のプログラムを開くために必要とされるマスターテンプレートの部分とを含む2つの爆発ルーム。
次に、この実施形態では、例えば、ユーザが開きたいワード処理文書を選択した場合、オペレーティングシステムとワード処理プログラムを開くために必要とされるマスターテンプレートの部分とを含む爆発ルームの1つと通信を確立することができる。
オプションとして、例えば、ユーザがワード処理をしている間にインターネットで調査を実施したいと思った場合、第2の爆発ルームを利用して、ユーザが同時に第1の爆発ルームでワード処理をしている間にウェブをサーフィンすることができる。この場合、2つの爆発ルーム、処理、RAM、映像などを隔離することができる。この場合は、別の及び/又は共有の保護記憶域を利用してもよい。
データベース及び/又はディレクトリは、どのプログラムが正しく作動するためにはマスターテンプレートのどの成分が必要であるかを追跡するソフトウエアによって維持することができる。このデータベース/ディレクトリは、例えば、インストール処理中にソフトウエアによって自動的に作成することができ(既に市場には、ソフトウエアインストール中に何がインストールされているかを追跡する様々なプログラムが出回っている)、及び/又はこのようなデータベース/ディレクトリは、製造業者及び/又は他のサービス及び/又はエンティティの提供によって列挙することができる。例えば、このようなデータベースは、ウェブからのダウンロードとして提供することができ、また、ソフトウエアの販売時及び/又は他の手段を通じて含めることができる。
実施形態の別の例においては、コンピュータの複数のユーザ、及び/又は異なる状況及び/又は用途に対して異なるソフトウエア設定の要望が存在すると仮定する。様々なテンプレートを作成することができ、及び/又は、異なるユーザのために爆発ルーム内のマスターテンプレートの完全又は部分的コピーを作成するのに、1つ又はそれ以上のテンプレートの各部分を選択することができる。
一実施形態においては、ユーザを特定することができ、そのユーザを基本として様々なテンプレート及び/又はテンプレートの各部分を含む爆発ルームのデータベースを作成することができる。すなわち、例えば「マリー」がログインし、及び/又はユーザと特定された時、マスターテンプレートの1つ又はそれ以上のコピーのコピー及び/又はマリーにとって有用及び/又は適切な1つ又はそれ以上のマスターテンプレートの部分のコピーを各々が含む1つ又はそれ以上の爆発ルームを作成することができる。マリーがログアウトし、及び/又は去り、「フレッド」がログインし、及び/又はユーザとして特定された時、1つ又はそれ以上のマスターテンプレートのコピー及び/又はフレッドにとって有用及び/又は適切な1つ又はそれ以上のマスターテンプレートの部分のコピーを各々が含む1つ又はそれ以上の爆発ルームを作成することができる。例えば、この実施形態では、フレッドがユーザと特定された時は、各々がオペレーティングシステム及び写真編集ソフトウエアを含むマスターテンプレートの全て及び/又は一部のコピーを含む爆発ルームと、オペレーティングシステム及び電子メールソフトウエアを含む他の爆発ルームとを作成することができ、一方、マリーがユーザと特定された時は、フレッドが使用するのとは異なる電子メールプログラム及び音楽編集ソフトウエアを含む爆発ルームと、ラテン語ワード処理プログラム及びラテン語辞典を含む更に他の爆発ルームとを作成することができる。
爆発ルームは、一次システム及び/又はサブシステムとすることができ、及び/又はサブシステムを収容することができ、及び/又は、複数のシステム及び/又はサブシステムの1つ及び/又は一部を含むことができる。
いくつかの実施形態では、マスターテンプレートの一部としてのオペレーティングシステムの使用は不要とすることができる。
一実施形態においては、ユーザは、どの爆発ルームを利用する/開くかを選択することができ、データを爆発ルームにコピーすることができる。オプションとして、爆発ルーム及び/又は使用するマスターテンプレートのコピーの選択は、自動的に行うことができ、コードによって統括することができる。例えば、ユーザが開きたいワード処理文書を選択する場合、文書が選択された時に、適切なワード処理ソフトウエアを含む爆発ルームを検索するコードを実行することができ、及び/又は適切なソフトウエアの位置を特定するためのデータベース及び/又はディレクトリを検査し、及び/又は利用すべき正しいソフトウエア及び/又は爆発ルームを特定する他の手段を用いることができる。
入力/出力(I/O)を隔離することができ、映像を隔離することができ、画面スナップショット及び/又は画面捕捉を行う機能を使用不可にすることができ、及び/又は隔離データの画面捕捉を防止するために映像の隔離を利用することができる。
一実施形態においては、データ記憶装置及び/又はコントローラを修正することができ、それによって、それらは、ハードウエア内で物理的に切り換えることができ、及び/又は、ソフトウエアを使用して読取専用から読取/書込へ、及び/又は読取/書込から読取専用にデータ記憶装置をアクティブ化/非アクティブ化することができ、ロックからアンロック及びアンロックからロック、オン/オフ、スリープモード/非スリープモードなどに切り換えることができる。オプションとして、ピンアウト及び/又はジャンパ、及び/又は爆発ルームから隔離されたソフトウエアをこの目的に使用することができる。
証拠及び文書化
一実施形態においては、ハッキングソフトウエア、ウイルス、スパイソフトウエア、ユーザの知識又は許諾なしにメッセージを送るソフトウエア、及び他の望ましくないソフトウエアを証拠として保持することができる。このようなソフトウエアを修復中に破壊するのではなく、それは、代わりに、隔離されたデータ記憶装置及び/又はストレージルームを使用して隔離状態に置くことができる。
一実施形態においては、ユーザが開きたい文書、例えばワード処理文書を選択した場合、制御方法は、オプションとして、どれ/どこに文書を開くために必要なアプリケーションを含む爆発ルームが存在するかを見るために、データベース及び/又はディレクトリを検査/検索することができる処理をトリガすることができるであろう。代替的に、爆発ルームの内容を判断するために爆発ルームの検索を行うことができる。付加的な判断基準を利用して爆発ルームを選択することもできる。
一実施形態においては、使用する爆発ルームが選択され、ユーザがその爆発ルームを利用する作業を開始し、その後、その時に使用中の爆発ルームに含まれていないソフトウエアを必要とする追加の文書を開くことを決めた場合、様々なソリューションが可能である。例えば:
別の隔離された爆発ルームを開き、オプションとして、コードを実行することができないコピーの方法を使用して、ルーム/文書間のデータ間でコピーする。
必要な両方のアプリケーションを含む爆発ルームに切り換える。
修復処理中に必要に応じて、及び/又はコピー処理中に必要に応じてRAMをクリアする。
文書を開く正しいアプリケーションを含む爆発ルームを特定すると、1つ又はそれ以上のマスターテンプレートの一部又は全てのコピーを含むその爆発ルームとの通信を作動させることができる。
一実施形態においては、通信をアクティブ化すべき正しい爆発ルームを特定してその爆発ルームをアクティブ化すると、オプションとして、ユーザによって選択されていたワード処理文書を爆発ルームにコピーし、その後、オプションとして、保護記憶域との通信を非アクティブ化することができる。次に、文書を開くことができる。次に、ユーザは、文書を修正することができ、ユーザが文書を終了した時、それは、自動的及び/又は手動で一時的記憶域(一実施形態において)及び/又は保護記憶域(一実施形態において)に保存することができる。それが一時的記憶域にコピーされた場合、修復処理の実施及び/又は爆発ルームの非アクティブ化及び新しい爆発ルームのアクティブ化の前に、爆発ルーム及び/又は関連RAMの修復を実施することができる。
ユーザは、次に、例えば、開きたい別の文書を選択することができる。
コンピュータシステムと複数の独立コンピューティング環境をサポートすることができる方法との実施形態
図15は、ディスプレイ、キーボード、及びマウスを含むいくつかの周辺装置と結合したコンピュータシステム内の専用サブシステム及び共通コントローラを含む本発明の実施形態を示す。図示のように、別の論理制御装置1180は、第1及び第2の専用サブシステムの間に結合することができる。
図16は、ディスプレイ、キーボード、及びマウスを含むいくつかの周辺装置と結合したコンピュータシステム内の専用サブシステム及び共通コントローラを含む本発明の実施形態を示す。図示のように、コントローラシステムは、第1及び第2の専用サブシステムの間に結合することができる。
図17は、従来技術によるラップトップコンピュータシステムを示す。
図18は、本発明の一実施形態を組み込んだラップトップコンピュータシステムを示す。
図19は、複数の独立コンピューティング環境をサポートすることができるコンピュータシステムを含む、複数の独立コンピューティング環境をサポートするための概略システムを使用してコンピュータハッキングを防止することができることを示す。このようなコンピュータシステムは、複数のデータストア、切換システム、I/Oシステム、及び1つ又はそれ以上のコンピューティング環境を含むことができる。
1つ又はそれ以上のデータストアをコンピュータシステムに結合させることができる。データストアは、メモリ領域を表すものである。データストアは、ディスクドライブ及び/又は1つ又はそれ以上のディスクドライブの一部分に対応するメモリ領域を表すことができる。本発明の一実施形態によれば、データストアは、マスターテンプレートのコピーを含むことができる。マスターテンプレートの一例は、「ウイルス、ハッキング、スパイソフトウエア、サイバーテロ、盗難に対して防御し、悪質なコードを無関係にするコンピュータ」とした節で説明されている。
保護されたデータストアは、一般的にストア情報の内容に基づいて処理を行う所定の処理環境とは独立に情報を記憶するために使用されるデータストアを表す。本発明の一実施形態によれば、ユーザファイル(例えば、ユーザの文書など)を保護データストア上に保管することができる。理想的には、対応する文書のユーザによる編集は、保護データストア上に保管されている文書の元のバージョンから独立して実行される。
1つ又はそれ以上のデータストアを用いて、保護データストアを形成することができる。本発明の一実施形態によれば、保護データストアを用いてユーザファイルを修正する処理環境から独立してユーザデータファイルを保管することができる。本発明の1つの配置によれば、文書を編集するユーザの決定により、文書の元のバージョンは、保護データストアから第2のデータストアにコピーされる。元の文書を編集するための第2のデータストアと結合することができるユーザコンピューティング環境を使用して、文書の第2のバージョンを作成することができる。例えば文書の第2バージョンの保存のようなユーザによるアクションにより、文書の第2バージョンを第2のデータストアから保護データストアに再度コピーする一連の命令が作成される。保護データストアに文書の第2バージョンを再度コピーすることにより、文書の元のバージョンに上書きすることができる。
一般的な切換システムを使用して、1つ又はそれ以上の発信元、及び1つ又はそれ以上の宛先を結合し、発信元及び宛先間の通信をサポートすることができる。この通信は、発信元及び宛先間の双方向通信をサポートすることができる。一般的な切換システムは、どの発信元がどの宛先と結合されるかを判断するために使用されるスイッチ構成と結合することができる。一般的な切換システムは、ハードウエア、ソフトウエア、及び/又はハードウエア及びソフトウエアの組合せで実施することができる。
本発明の一実施形態によれば、一般的な切換システムは、物理的スイッチとしてハードウエア内で実施することができる。発信元は、IDEドライブとして表すことができ、宛先は、コンピューティング環境として表すことができる。各発信元は、IDEケーブルを使用して一般的な切換システムと結合することができる。各宛先はまた、IDEケーブルを使用して一般的な切換システムと結合することができる。本発明の一実施形態によれば、スイッチ構成は、スイッチの物理的機能と、IDEケーブルがスイッチと物理的に結合される場所とによって表すことができる。これによって、物理的スイッチの物理的な操作及び/又は捻りは、発信元と宛先の通信をサポートするために、発信元に対応する所定のIDEケーブルを宛先に対応する所定の第2のIDEケーブルに接続させることができる。発信元及び宛先間の通信は、双方向通信をサポートすることができる。本発明の一実施形態によれば、スイッチは、手動及び/又は1つ又はそれ以上のコンピューティング環境の指示及び/又は制御の下で作動することができる。
各発信元及び宛先を表すために、少なくとも1つの特性が使用される。この特性は、物理的識別子及び/又は論理的識別子を表すことができる。上述のIDEの例によれば、各IDEケーブルは、物理的スイッチとの物理的な結合によって識別することができる。IDEドライブ情報(例えば、マスター及び/又はスレーブ指定、ドライブサイズなどのような)を使用して、ドライブ及び/又はドライブに結合したデータストアを識別することができる。
同様に、例えばコンピューティング環境のような各宛先を表すために少なくとも1つの特性が使用される。コンピューティング環境が別の物理的コンピューティング環境を表す場合、それは、例えば一般的なスイッチに結合した固有のインタフェースのような別の物理的コンピューティング特性によって識別することができる。本発明の一実施形態によれば、コンピューティング環境は、別のコンピューティング環境に対応する物理的コンピューティング特性の一部又は全てを共有することができる論理コンピューティング環境として表すことができる。論理コンピューティング環境は、例えば固有の処理識別子のような様々な方法で特定することができる。
本発明の別の実施形態によれば、一般的な切換システムは、例えば一般的切換システムと結合したコンピュータシステムの使用を通じてなどハードウエアとソフトウエアの組合せで実施することができる。コンピュータシステムは、1つ又はそれ以上のコンピュータ命令を実行することができ、一般的な切換システムを構成するために使用することができる。いくつかの例示的な命令には、構成命令、通信命令、及びアクセス命令を含むことができる。構成命令は、所定の発信元及び宛先間の通信の使用可能又は使用不可をサポートするために通信を構成するのに使用することができる。通信命令は、1つ又はそれ以上の構成に関連した情報を受信、送信、及び/又は確認するために使用することができる。例えば、通信命令は、後で構成命令によって使用することができる情報を受信するために使用することができる。アクセス命令は、スイッチ構成に関連した情報の読取/書込のために使用することができる。しかし、他の命令及び/又は命令の組を使用することができることを認めるべきである。
データストア切換システムは、発信元がデータストアを表し、宛先がコンピューティング環境を表すことができる一般的切換システムの機能性を含む。一般的な構成を使用して、どのデータ記憶装置がどのコンピューティング環境と結合されているかを特定することができる。上述のように、IDE装置は、1つ又はそれ以上のコンピューティング環境との通信をサポートするように構成することができるデータストアの一実施形態を表すことができる。
本発明の一実施形態によれば、データストア切換システムは、一般的な構成に対応する特性の数及び/又は種類を拡張することができるデータストア切換システム構成と結合することができる。データストア切換システムの特性は、更に、発信元及び宛先間の通信の構成をサポートすることができる。
I/O切換システムは、発信元が周辺装置を表すことができ、宛先がコンピューティング環境を表すことができる一般的切換システムの機能性を含む。一般的構成を使用して、どのデータストアがどのコンピューティング環境と結合されているかを特定することができる。キーボード装置は、1つ又はそれ以上のコンピューティング環境との通信をサポートするように構成することができる周辺装置の一実施形態を含むことができる。
本発明の一実施形態によれば、I/Oシステムは、一般的構成に対応する特性の数及び/又は種類を拡張することができるI/Oシステム構成と結合することができる。I/O切換システムの特性は、発信元及び宛先間の通信の構成をサポートする。
1つ又はそれ以上の特性は、例えば、コンピュータモニタ及び/又はコンピュータグラフィックカードのような出力装置に対応することができる。一実施形態においては、特性は、コンピュータモニタの潜在的なビューエリアに関連したディスプレイ領域に対応することができる。発信元からのディスプレイ出力は、1つのコンピューティング環境からの出力が領域特性に関連する領域内のディスプレイに向けられるように、ディスプレイ領域の特性に従って位置決めすることができる。領域特性には、コンピュータモニタの潜在的ビューエリアに関連した矩形ディスプレイ領域を形成する一対のxy座標を含むことができる。従って、特定のコンピューティング環境からのディスプレイ出力は、別の領域ではなく対応する領域内の1つ又はそれ以上の特性に従って表すことができる。
1つ又はそれ以上の特性は、入力装置に対応することができる。上述のように、潜在的ビューエリアに関連した領域特性は、いつ入力が特定のコンピューティング環境に通信されるかを特定するために更に拡張することができる。マウスの動き及びマウス指令はまた、矩形ディスプレイ領域に対応する入力が対応するコンピューティング環境に向けられるように、矩形ディスプレイ領域と相互に関連付けることができる。この結果、領域内のマウスの動きは、同じ領域に対応するコンピューティング環境と通信することができる。
コンピューティング環境は、1つ又はそれ以上のコンピュータプログラム命令を実行することができる。1つ又はそれ以上のコンピューティング環境は、コンピュータシステムと結合することができる。コンピューティング環境は、物理的表現、論理的表現、及び/又は物理的及び論理的表現の組合せで表すことができる。物理的表現においては、コンピューティング環境は、例えば、中央演算処理装置(CPU)、1つ又はそれ以上のメモリ、及び1つ又はそれ以上の周辺装置のようないくつかの物理的コンピュータ構成要素を組み込むことができる。論理的コンピューティング環境表現では、第1のコンピューティング環境は、1つ又はそれ以上の共通コンピューティング構成要素を利用することによって他のコンピューティング環境と共存することができると規定される。第1のコンピューティング環境は、第1のコンピューティング環境と他のコンピューティング環境との間の直接の通信がサポートされないように、他のコンピューティング環境から隔離される。
一実施形態によると、論理的コンピューティング環境と他の論理的コンピューティング環境とは、コンピュータシステムに対応する異なるアドレス空間に存在することができる。この結果、各論理的コンピューティング環境は、他の論理コンピューティング環境の各々の作動から隔離される。更に、複数の論理的コンピューティング環境の作成及び作動の管理に様々な構成を使用することができることを認めるべきである。更に、オペレーティングシステム(例えば、Linux、マッキントッシュ、マイクロソフトウィンドウズ(R)、及び/又は他のオペレーティングシステム)は、論理的コンピューティング環境、物理的コンピューティング環境、及び/又は、論理的及び物理的コンピューティング環境の組合せに対応することができることも認めるべきである。
各コンピューティング環境は、コンピューティング環境の1つ又はそれ以上を独特に特定するために使用することができる広範な潜在的な特性から選択された少なくとも1つの特性によって特定することができる。
1つ又はそれ以上のコンピューティング環境の特性を使用して、コンピューティング環境を特定することができる。コンピューティング環境の特性は、コンピューティング環境を独特に特定するのに使用することができる。特性は、対応する物理的属性、論理的属性、又は属性の組合せを通じてコンピューティング環境を特定することができる。例えば、特性は、1つ又はそれ以上のコンピューティングシステム構成要素の物理的アドレスを特定することができる。代替的に、特性は、論理的コンピューティング環境に対応する論理的アドレスを特定することができる。更に、特性は、所定のコンピューティング環境のいくつかの特徴を特定することができ、対応する特性の数及び種類は、本発明によって変動することができることも認めるべきである。
コンピューティング環境特性を使用して、1つ又はそれ以上の出力がそのコンピューティング環境から発生したと特定することができる。コンピューティング環境特性はまた、1つ又はそれ以上の入力、及び入力の指定受信先である対応するコンピューティング環境を特定するのに使用することができる。
データストア切換通信経路は、コンピューティング環境をデータストアスイッチと結合するのに使用される。データストア切換通信経路は、上述のように、データストアスイッチ構成に従って少なくとも1つのデータストアとの通信をサポートするために使用される。一実施形態によれば、コンピューティング環境と結合したデータストアの1つは、コンピューティング環境がコンピュータブート装置として使用することができるオペレーティングシステムを含む。
I/O切換通信経路は、コンピューティング環境をI/O切換システムと結合するために使用される。I/O切換通信経路を使用して、1つ又はそれ以上の周辺装置を1つ又はそれ以上のコンピューティング環境と結合することができる。I/O切換システムを使用して、出力を1つ又はそれ以上のコンピューティング環境から単一の出力装置に向けることができる。同様に、I/O切換システム構成を使用して、入力を単一の周辺コンピューティング装置から1つ又はそれ以上のコンピューティング環境に向けることができる。
各コンピューティング環境は、一般的に、I/O切換システムを通じて行われる1つ又はそれ以上の周辺装置からの入力の受信と、I/O切換システムを通じて行われる1つ又はそれ以上の周辺装置への出力の送信とを含む処理活動を実行することができる。コンピューティング環境によって行われる処理活動は、一般的に、他のコンピューティング環境の処理活動から独立したものである。本発明の一実施形態によれば、1つのコンピューティング環境の潜在的に悪意のある処理活動は、別のコンピューティング環境の処理活動を直接に妨げるものではない。
制御用コンピューティング環境は、データストア切換システム構成及び/又はI/O切換システム構成を構成及び/又は再構成するためのコンピューティング環境から選択することができる。データストア切換システム構成は、上述のように、制御コンピューティング環境と保護データストアとの間の通信をサポートすることができる。本発明の一実施形態によれば、制御用コンピューティング環境や保護データストアを特定して、データストア切換システム構成及び/又はI/O切換システム構成の構成を開始するために、最初のブートシーケンスは、コンピュータCMOSデータ内の最初の構成情報を識別することができる。
制御用コンピューティング環境及び他のユーザコンピューティング環境から隔離状態でコンピュータ処理を行うために、1つ又はそれ以上のユーザコンピューティング環境をコンピューティング環境から選択することができる。データ(コンピュータファイルなど)は、ユーザコンピューティング環境と通信的に結合することができるデータストアを通じてユーザコンピューティング環境によって受信することができる。一実施形態によれば、制御用コンピューティング環境は、ユーザ情報を含むことができる第1のデータストア、及びユーザ情報も含むことができる保護データストアと通信的に結合することができる。制御用コンピューティング環境は、保護データストアと第1のデータストアとの間で情報のコピーをサポートするように構成される。制御用コンピューティング環境が第1のデータストアを初期化した後に、第1のデータストアは、制御用コンピューティング環境から通信的に切り離され、その後、他のコンピューティング環境と独立して使用するためにユーザコンピューティング環境に取り付けることができる。ユーザコンピューティング環境が活動(例えば、ファイル編集、電子メール受信など)を完了した後に、第1のデータストアは、通信的にユーザコンピューティング環境から切り離され、制御用コンピューティング環境に取り付けることができる。ここでもまた、制御用コンピューティング環境は、保護データストアと第1のデータストアとの間で情報のコピーをサポートするように構成される。この結果、ユーザコンピューティング環境の処理活動から独立してデータを保存することができる。従って、ユーザコンピューティング環境内で処理されている悪質なコードは、保護データストアに記憶された他のファイル及び/又はデータを破壊しない。
I/O切換システム構成は、対応する特性に基づいて、受信入力をコンピューティング環境の少なくとも1つに向けるように構成することができる。また、I/O切換システム構成は、対応する特性に基づいて、コンピューティング環境の1つ又はそれ以上によって発生した出力を周辺装置に向けるように構成することができる。
図20、図21、及び図22に示す複数の独立したコンピューティング環境をサポートすることができるコンピュータシステムを使用する方法をここで説明する。
1つの方法によれば、複数の独立したコンピューティング環境を使用する段階(1508−N)は、システム起動を開始する段階(1602)、1604でI/O切換システム構成(1512)、及び1604でデータストアスイッチ構成1506を構成する段階、通信をサポートするためにI/O切換システム1510を構成する段階、通信をサポートするためにデータストア切換システム1504を構成する段階、1623で制御処理を実行する段階、及び、1631でユーザが処理する段階を含むことができる。一般的に、制御処理はまた、1615での制御設定処理、及び1621での制御保存処理を含むことができる。
1602でシステム起動を開始する段階は、コンピュータシステムの公知のブートシーケンスと類似の初期ブートシーケンスを含むことができる。ブートシーケンスは、更に、1604での例えばデータストアスイッチ構成及び/又はI/Oスイッチ構成のような1つ又はそれ以上のスイッチ構成の形成及び/又は修正のサポートを含むことができる。対応するスイッチ構成に従って、1つ又はそれ以上の発信元と1つ又はそれ以上の宛先との間に1つ又はそれ以上の通信経路を確立するために、各切換システムの初期の構成を開始することができる(1604)。
本発明の一実施形態によれば、システム起動を開始するために、物理的スイッチ1704を通じて電源を入れることができる。システム起動時に、CMOSメモリ1708を使用して、初期化処理及び/又はブートシーケンスの1つ又はそれ以上の段階を形成することができる。ブートシーケンス1706は、CMOS1708に接続された情報を使用して切換システム構成を確立し、その後、対応する切換システムを初期化してその構成を付加及び/又は修正し、発信元と宛先を通信的に結合することができる。また、1602で、1つ又はそれ以上のコンピューティング環境をシステム起動によって開始することができる。
1608及び1622でのコンピューティング環境を確立する段階は、I/O切換システム構成及びデータストアスイッチ構成を構成する段階、通信をサポートするためのI/O切換システムを構成する段階、及び通信をサポートするためのデータストア切換システムを構成する段階を含むことができる。
一実施形態によれば、2つのデータストア(例えば、データストア1502−1、1502−N)をコンピューティング環境と結合することができる。第1のデータストアは、コンピューティング環境の処理活動をサポートするためのオペレーティングシステムを含むことができる。第2のデータストアは、コンピューティング環境によって使用又は作業することができる様々な情報を含むことができる。様々な情報としては、例えば、特定ユーザ情報及び/又は構成情報を含むことができる。特定ユーザ情報は,ユーザが編集する文書を含むことができる。構成情報は、データストアスイッチ構成、及び/又はI/Oスイッチ構成を設定するために、制御用コンピューティング環境に使用することができる。
一般的に、制御コンピューティング環境は、どのユーザコンピューティング環境が確立される前にも1608で確立される。第1の制御コンピューティング環境は、上述のように、ブートシーケンスによって確立することができる。第1のデータストアは、コンピュータオペレーティングシステムをサポートすることができる。第2のデータストアは、保護データストアを表すことができる。データストアがコンピューティング環境に結合した後、ユーザがコンピューティング環境と対話することを可能にするためにコンピューティング環境をブートすることができる。ユーザ入力は、制御コンピューティング環境の特性(例えば、領域特性及びコンピューティング環境識別特性)に対応する入力を制御コンピューティング環境に通信するように構成されたI/O切換システム1510を通じて受信することができる。同様に、制御コンピューティング環境からの出力は、制御コンピューティング環境に対応する特性に基づいて、周辺装置(例えば、周辺装置1514−1、...、1514−N)に送ることができる。従って、制御コンピューティング環境は、第1のデータストアからブートして保護データストアにアクセス可能である。この結果、ユーザは、制御コンピューティング環境と対話することができる。
理想的には、切換システムを構成することができる唯一の種類のコンピューティング環境は、制御コンピューティング環境である。制御コンピューティング環境は、データストアスイッチ構成及びI/Oスイッチ構成などの切換システム構成を再構成することができる。対応する切換システムの構成は、例えば、サポートスイッチ構成に対するいずれかの変更が為された及び/又は決められた時にスイッチを通じて通信を構成及び/又は再構成するなどの様々な方法で作動させることができる。更に、制御コンピューティング環境と切換システム及び/又は切換システム構成との間の通信は、制御コンピューティング環境のみが切換システムを構成することができることを保証する助けとなるように暗号化することができる。
制御コンピューティング環境内のユーザ処理は、保護データストアに対応する情報(例えば、ファイルなど)の破壊の可能性を小さくするために最小限に抑えられる。本発明の一実施形態によれば、ユーザがユーザによって一般的に行うことができる活動のようなユーザ作業を開始した場合、ユーザ作業は、別のコンピューティング環境で処理することができる。
制御コンピューティング環境は、ユーザ作業を開始するためにユーザ入力を受信することができる。コンピュータマウス入力は、I/O切換システム構成に従ってI/O切換システムによって受信し、制御コンピューティング環境に向けることができる。他の周辺装置からの他の入力も、I/O切換システムを通じて制御コンピューティング環境によって受信することができる。
制御コンピューティング環境のユーザは、ユーザ作業を開始することができる。一例において、ユーザは、モニタの領域内に表示された特定のアイコンをダブルクリックすることができる。マウスのアクションは、制御コンピューティング環境によって受信され、例えばワード処理のようなユーザ処理を1631で実行するために、1612での別のコンピューティング環境の初期化をもたらすことができる。
制御コンピューティング環境は、既存及び/又は新しい文書に対応するワード処理を実行するために別の処理環境の作成を初期化することができる。これが既存の文書である場合、制御コンピューティングセッションは、ユーザコンピューティング環境によってその後に使用されるように、文書のコピーを第3のデータストアにコピーする必要がある場合がある。
制御コンピューティング環境は、ユーザ環境をサポートするように切換システムを構成することができる。データストア切換システムは、第3のデータストア及び第4のデータストアをユーザコンピューティング環境と結合させるように構成することができる。I/O切換システムは、例えば、ディスプレイの領域をユーザコンピューティング環境と結合することができるなど、周辺装置をユーザコンピューティング環境と結合させるように構成することができる。ユーザコンピューティング環境はまた、1つ又はそれ以上のスイッチ構成の変更によってトリガされる信号又はイベントによって開始することができる。ユーザコンピューティング環境を初期化するために、様々な代替手法を使用することができる。
1606でのユーザコンピューティング環境の初期化の一部として、編集したいと思うファイルをユーザコンピューティング環境がブートされた後に起動することができる。別の実施形態によれば、既存のユーザコンピューティング環境は、ファイルをユーザコンピューティング環境内での処理に対して利用可能にするために、対応するデータストアと結合することができる。本発明の一実施形態によれば、対応するファイルを開く及び/又はユーザの活動をサポートするために対応するアプリケーションを起動することができるように、編集したいと思う1つ又は複数のファイルは、所定の位置に配置することができる。
制御処理は、制御コンピューティング環境によって実行することができ、1つ又はそれ以上のスイッチ構成を設定する段階、1つ又はそれ以上の切換システムの再構成を初期化する段階、1つのデータストアと他のデータストアとの間で情報をコピーする段階、保護データストアと他のデータストアとの間で情報をコピーする段階を含むことができる。
ユーザ処理としては、制御用コンピューティング環境及びユーザコンピューティング環境との対話を含むことができる。一般的にユーザが実行することができる機能と関連したいかなる処理も、独立したユーザコンピューティング環境で処理することができるように構成することができる。従って、ユーザ処理活動は、制御コンピューティング環境の処理活動及び他のユーザコンピューティング環境の処理活動を直接的に妨げる恐れはない。例えば、編集されるユーザファイルへのアクセスを必要とするであろうワード処理活動などの特定のユーザ処理活動をサポートするのに必要なコンピュータ情報に依存して1つのデータストアから別のデータストアにコンピュータ情報にコピーすることにより、情報をユーザコンピューティング環境に対してアクセス可能にすることができる。
一般的に、制御コンピューティング処理は、1615での制御設定処理、及び1628での制御保存処理を含むことができる。制御設定を用いて、例えばワード処理活動などの少なくとも1つの処理活動を実行するために使用されるユーザコンピューティング環境の確立をサポートすることができる。制御保存処理としては、ユーザ情報を保護データストアに保存する段階を含むことができる。ユーザ処理活動が完了した状態で、ユーザコンピューティング環境に保護データストア内への保存機能を直接実行させることなく、1618でユーザ処理活動に関する情報を保護データストアに保存することができる。
本発明の一実施形態によれば、制御用コンピューティング環境は、1つ又はそれ以上のファイルを一時的データストアにコピーすることができる。制御用コンピューティング環境は、ユーザコンピューティング環境による一時的データストアへのアクセスを可能にするために、データストアスイッチ構成を1616で更新することができる。一実施形態によれば、制御用コンピューティング環境は、ユーザコンピューティング環境が通信的に一時的データストアと結合されていることを確認することができる。その後、制御用コンピューティング環境は、1つ又はそれ以上のユーザコンピューティング環境に対応する1614での処理が完了するのを待つことができる。ユーザコンピューティング環境が完了するのを待つ間に、制御用コンピューティング環境は、一般的なデスクトップ機能性に対応する機能を実行することができる。デスクトップ機能性は、データストアの管理、データストアの構成、及び、例えば1つ又はそれ以上のデータストアからコンピュータウイルスを除外するなどのためのデータストア間のコンピューティング情報のコピーに対応するであろう。一般的に、デスクトップ機能性に相当する機能性は、保護データストア内に記憶されたコンピューティング情報を破壊する可能性を小さくするために限定される。
ユーザ処理活動完了時に、様々な異なる通知手法に従って、制御コンピューティング環境に通知することができる。1つのこのような手法によれば、ユーザコンピューティング環境は、対応する切換システムによって終了が感知されるように終了することができる。切換システムは、データが保護データストアに入れるべきユーザ情報を含む場合があることを制御コンピューティング環境にアクティブに通知することができる。
ユーザ活動の完了に応答して、制御コンピューティング環境は、ユーザコンピューティング環境によって行われたかもしれないどの処理からも独立してユーザ情報及び/又はファイルを保護データストアにコピーすることができるように、ユーザデータストアを制御用コンピューティング環境に結合させることができる。従って、保護データストアで記憶された他のファイルは、独立したユーザコンピューティング環境の作動によっては破壊されないであろう。
本発明の一実施形態によれば、ファイル保存指令をトリガイベントとして使用することができ、これは、ユーザコンピューティング環境のコンテキスト内で実行することができる他の作動から独立して、制御コンピューティング環境に、ユーザファイルを保護データストアに記憶させるものである。
本発明の一実施形態によれば、一時的データストアは、ユーザコンピューティング環境が制御コンピューティング環境に結合した他のファイルを破壊することができないように、ユーザコンピューティング環境と制御コンピューティング環境とに結合することができる。ユーザコンピューティング環境は、一時的データストアにファイルを保存することができ、制御コンピューティング環境は、ファイルを保護データストア及び/又は中間データストアにコピーする機能を含むことができる。その後、中間データストアを使用して、例えばユーザアプリケーションが閉じられた時に、対応するファイルを保護データストアに保存することができる。ユーザコンピューティング環境が保護データストアに記憶されたファイルを破壊することができないことを保証するのを助けるために、ユーザコンピューティング環境との間の通信をパッシブに実施することができる。
ユーザファイルは、ファイル保存指令の結果、一時的データストアに保存することができる。保存指令の開始の後に、データストア切換システムは、データストアが保存されたファイルと結合されていることを確認することができる。ファイルが存在した場合、一連の命令を実行して、ファイルを一時的データストアから保護データストアにコピーすることができる。
本発明の一実施形態によれば、制御用コンピューティング環境は、対応するユーザコンピューティング環境がユーザ活動、例えばファイルの保存などを完了するのを待つことができる。その後、データストアスイッチは、ユーザコンピューティング環境から一時的データストアを切り離すように構成することができる。一時的データストアは、次に、制御用コンピューティング環境に結合することができる。保護されたデータもまた、制御用コンピューティング環境と結合される。ファイルは、ユーザコンピューティング環境から独立して一時的データストアから保護データストアにコピーすることができる。一時的データストアは、その後、制御コンピューティング環境から切り離してユーザコンピューティング環境と再び結合することができる。
本発明の代替実施形態によれば、保存処理は、制御用コンピューティング環境と通信する切換システムに対応するフラグをトリップ及び/又は設定することができる。1つ又はそれ以上のファイルの存在を確認することができる。ファイルの確認がファイルの存在を示す場合、一連のコンピュータ命令を実行して、1つ又はそれ以上のファイルを一時的データストアから保護データストアにコピーすることができる。
本発明の代替実施形態によれば、キーボード指令(例えば「コントロール S」など)を使用してファイルを保存することができる。I/O切換システムは、指令シーケンスをユーザコンピューティング環境及び制御コンピューティング環境に通信するように構成することができる。その結果、制御コンピューティング環境は、ユーザコンピューティング環境に保存されたファイルを保護データストアにコピーするのをサポートするようにデータストアスイッチ及び/又はI/O切換システムを再構成することができる。
本発明の代替実施形態によれば、ユーザコンピューティング環境が閉じられ、及び/又はシャットダウンされた時、ファイルを保護データストアに転送することができる。切換システムの1つ又はそれ以上は、閉鎖及び/又はシャットダウンを感知することができる。本発明の一実施形態によれば、データストア切換システムにより、ユーザコンピューティング環境によって電力供給されたであろうデータストアに対応する変更された電力状態によって閉じたユーザコンピューティング環境を確認することができる。
本発明の代替実施形態によれば、コンピュータディスプレイモニタに対応するグラフィカル領域を使用して、特定のコンピューティング環境に対応するユーザ入力がいつ受信されたかを識別することができる。ユーザ入力は、特定の実施に依存して、I/O切換システム内、及び/又は制御用コンピューティング環境内で解析することができる。一実施形態によれば、ユーザコンピューティング環境に対応する保存指令及び/又は閉じる指令を使用して、ユーザ情報を保護データストアに保存する必要があることを特定し、及び/又は保護データストアへのコンピュータ情報の保存をトリガすることができる。
ユーザコンピューティング環境を閉じる段階は、電力スイッチを切る段階を含むことができる。切換システムは、電力消費量の変化及び/又は中断を感知することができる。ユーザがアプリケーション及び対応するユーザコンピューティング環境を閉じた場合、制御用コンピューティング環境は、変化を感知し、いかなる対応するユーザデータも保護データストアに保存することができる。データストアを再構成する前に、対応する切換システムは、ユーザデータを含むデータストアへの電力が使用不可されている、及び/又はオフ状態であることを確認することができる。制御用コンピューティング環境は、その後、ユーザ情報を含むデータストアをユーザ制御環境から切断し、上述のように、ユーザ情報を保護データストアにコピーすることができる。
本発明の一実施形態によれば、データストアは、ユーザコンピューティング環境と結合した後にクリーンにすることができる。制御用コンピューティング環境は、ユーザコンピューティング環境がデータストアを使用した後に、1つ又はそれ以上のデータストアを再フォーマットし、及び/又はクリーンにすることができる。また、マスターテンプレートデータストアを使用して、データストアをユーザコンピューティング環境と結合する前にデータストアを初期化することができる。別の実施形態によれば、制御用コンピューティング環境は、1つ又はそれ以上のデータストアを再フォーマットし、及び/又はクリーンにすることをサポートするように形成された別のユーザコンピューティング処理を開始することができる。
本開示で使用される用語は、本明細書で開示された1つ又はそれ以上の他の用語を使用することができ、又はそれに対応することができる。他のものに対応し、及び/又はその上に構築することができる用語のいくつかの例をここで説明する。付加的な用語は、何らかの潜在的な変形を開示するものとする。制御コンピューティング環境は、例えば、ROM、メモリ、及び論理コントローラの組合せ、BAR切換システム、及び共通コントローラと類似の機能性に対応することができる。ユーザコンピューティング環境は、データ記憶装置、爆発ルーム、MAW、ネットワークアクセス可能データ記憶装置、作業システムと関連付けることができる。I/O切換システムは、切換処理、ネットロック装置、及び/又はネットロックシステムと関連付けることができる。「Freez−B」は、フリーズバスターと関連付けることができる。データストア切換システムは、切換システムと関連付けることができる。一般的な切換システムは、切換処理及び/又は「DRAMUS」スイッチと関連付けることができる。データストアは、データ記憶装置と関連付けることができる。これらの付加的な説明は、本発明を限定しないものとする。
本発明の態様及び特徴に関する追加の開示が補遺に提供されている。
特定の実施形態の以上の説明及び本発明の最良の実施形態は、例証及び説明の目的で示したものである。それらが網羅的であること又は本発明を開示された正確な形態に限定することは意図しておらず、多くの修正及び変形が上述の教示内容に照らして可能であることは明らかである。実施形態は、本発明の原理及びその実際的な用途を最も良く説明し、それによって本発明及び想定される特定の用途に適するように様々に修正された様々な実施形態を当業者が最も良く利用することができるように選択して説明したものである。本発明の範囲は、本明細書に添付の特許請求の範囲及びその均等物によって規定されるものとする。
本発明の実施形態を組み込んだコンピュータを示す図である。 本発明の実施形態によるデータ記憶装置スイッチの概略図である。 本発明の一実施形態による切換/修復処理を示す図である。 本発明の一実施形態による切換/修復処理を示す図である。 本発明の一実施形態によるデータ記憶装置スイッチ内の制御の流れを示す図である。 本発明の実施形態を組み込んだコンピュータを示す図である。 本発明の実施形態を組み込んだコンピュータを示し、通信リンクへのアクセス失敗に関連したデータ記憶装置の使用可能化を示す図である。 本発明の実施形態を組み込んだコンピュータを示し、通信リンクへのアクセスをサポートするためのデータ記憶装置の使用可能化を示す図である。 本発明の実施形態を組み込んだコンピュータを示し、ネットワーク切断状態におけるコンピュータを示す図である。 本発明の実施形態を組み込んだコンピュータを示し、ネットワーク接続状態におけるコンピュータを示す図である。 本発明の実施形態を組み込んだコンピュータを示す図である。 本発明の実施形態を組み込んだコンピュータを示す図である。 本発明の実施形態を組み込んだコンピュータを示す図である。 本発明の実施形態を組み込んだコンピュータを示す図である。 本発明の実施形態を組み込んだコンピュータの別の実施形態を示す図である。 本発明の実施形態を組み込んだコンピュータの別の実施形態を示し、主コンピュータ/コンピューティングハードウエアボックス又はハウジングを示す図である。 磁気ハードディスクドライブを回転させる「IBM Travelstar」20GN、30GT、及び32GHのハードドライブケーブルピンアウトを示す図である。 切換回路基板、チップ、装置、装置アイデンティティ、データ記憶装置、回路、全地球測位送受信機及び発信器盗難防止及び位置決めシステム、コンピューティングハードウエアシステム、ROM、バックアップ記憶装置、アイデンティティ表示器、リモートトリガ及び/又はスイッチ、及び任意の記憶実行装置のような他の処理と共に修復に使用される時のバックアップ及び修復システムの切換処理の例を示す図である。 本発明の実施形態を示す図である。 本発明の実施形態を示す図である。 従来技術によるラップトップコンピュータシステムを示す図である。 本発明の一実施形態を組み込んだラップトップコンピュータシステムを示す図である。 本発明の一実施形態により複数の独立したコンピューティング環境をサポートするための概略システムを示す図である。 本発明の実施形態を使用する方法を示す図である。 図20のコンピューティング環境を開始する方法を示す図である。 図19の1つ又はそれ以上の切換システムを構成する方法を示す図である。
符号の説明
1 コンピュータ
1Z データ記憶装置スイッチ
10 中央演算処理装置
11 揮発性メモリ
12 第1の不揮発性データ記憶装置
13、19 スイッチ
14 テンプレートデータ記憶装置
15 バス

Claims (71)

  1. 作動中いつでもコンピュータが作動的状態に自己修復する方法であって、
    コンピュータの主コンピュータハードウエアボックス内に配置された第1のハードディスクドライブブート装置からブートし、
    次に、前記ブートする段階中又は任意の作動状態中に前記コンピュータの修復の必要性を示す信号に応答して、同じく前記コンピュータの前記主コンピュータハードウエアボックス内に該修復の必要性を示す信号の前に配置された第2のハードディスクドライブブート装置からブートし、
    次に、前記第2のハードディスクドライブブート装置からブートされている間に前記第1のハードディスクドライブブート装置上のソフトウエアを修復し、選択的に、(i)該第1のハードディスク装置上の該ソフトウエアの修復中に前記コンピュータの作動的状態を回復するために該第2のブート装置から該コンピュータの作動を維持するか、又は(ii)該コンピュータの作動的状態を回復するために該第2のブート装置から該第1のブート装置に該コンピュータの作動を変更する、
    コンピュータ実行段階を含むことを特徴とする方法。
  2. 前記ソフトウエアを修復する段階は、
    ソフトウエアを前記第1のブート装置以外の装置から該第1のブート装置上にコピーする段階、
    を更に含むことを特徴とする請求項1に記載の方法。
  3. 前記ソフトウエアをコピーする段階は、
    アプリケーション、オペレーティングシステム、及び修復処理ソフトウエアのいずれかをコピーする段階、
    を更に含むことを特徴とする請求項2に記載の方法。
  4. 前記ソフトウエアをコピーする段階は、
    ブート記録、パーティション表、及び基本入力/出力システム(BIOS)のいずれかをコピーする段階、
    を更に含むことを特徴とする請求項2に記載の方法。
  5. 前記ソフトウエアを修復する段階は、
    ソフトウエアを前記第2のブート装置から前記第1のブート装置上にコピーする段階、
    を更に含むことを特徴とする請求項2に記載の方法。
  6. 前記ソフトウエアを修復する段階は、
    テンプレート、バックアップ、及びアーカイブソフトウエアのうちの1つを前記第1のブート装置以外の装置から該第1のブート装置上にコピーする段階、
    を更に含むことを特徴とする請求項5に記載の方法。
  7. 前記修復する段階は、
    テンプレート、バックアップ、及びアーカイブソフトウエアのうちの1つを前記第2のブート装置から前記第1のブート装置上にコピーする段階、
    を含むことを特徴とする請求項6に記載の方法。
  8. 前記第2のブート装置からブートする段階は、
    前記第2のブート装置を切り換え、それによって該第2のブート装置をブート可能にする段階、
    を含むことを特徴とする請求項1に記載の方法。
  9. 前記切り換える段階は、
    前記修復の必要性を示す信号を発生させる段階、
    を含むことを特徴とする請求項8に記載の方法。
  10. 前記第2のブート装置からブートする段階は、
    前記第2のブート装置を論理的に切り換える段階、
    を含むことを特徴とする請求項8に記載の方法。
  11. 前記第2のブート装置からブートする段階は、
    前記第2のブート装置を物理的に切り換える段階、
    を含むことを特徴とする請求項8に記載の方法。
  12. 前記物理的に切り換える段階は、
    切り換えられるデータ記憶装置の識別ジャンパを変更する段階、
    を含むことを特徴とする請求項11に記載の方法。
  13. 前記物理的に切り換える段階は、
    切り換えられるデータ記憶装置の電力をオン又はオフにする段階、
    を含むことを特徴とする請求項11に記載の方法。
  14. 前記信号は、前記コンピュータの前記主コンピュータハードウエアボックスの外部表面上に露出した、該コンピュータのオンオフスイッチと異なる物理的スイッチの状態をユーザが変更することによって生成されることを特徴とする請求項1に記載の方法。
  15. 前記ソフトウエアを修復する段階は、
    前記第1のブート装置上のソフトウエアを自動的に修復する段階、
    を含むことを特徴とする請求項1に記載の方法。
  16. 前記ソフトウエアを自動的に修復する段階は、
    前記ユーザからの更なる指示なしに前記第1のブート装置上のソフトウエアを自動的に修復する段階、
    を含むことを特徴とする請求項15に記載の方法。
  17. 前記ソフトウエアを自動的に修復する段階は、
    予め設定されたプリファレンスに従って前記第1のブート装置上のソフトウエアを修復する段階、
    を含むことを特徴とする請求項15に記載の方法。
  18. 前記予め設定されたプリファレンスに従って修復する段階は、
    データを回復する、
    ウイルス検査を実行する、
    前記第1のブート装置を再フォーマットする、
    バックアップに戻る、又は
    診断を実行する、
    か否かに従って修復する段階、
    を含むことを特徴とする請求項17に記載の方法。
  19. 前記ソフトウエアを修復する段階は、
    前記第1のブート装置を再フォーマットする段階と、
    次に、ソフトウエアを前記第1のブート装置上にコピーする段階と、
    を含むことを特徴とする請求項1に記載の方法。
  20. 前記ソフトウエアを修復する段階は、
    永続メモリ内のパラメータをリセットする段階と、
    次に、ソフトウエアを前記第1のブート装置上にコピーする段階と、
    を含むことを特徴とする請求項1に記載の方法。
  21. ユーザに前記第1のブート装置からリブートするように指示する段階、
    を更に含むことを特徴とする請求項1に記載の方法。
  22. 前記第2のブート装置からブートする段階の前に、ソフトウエアを該第2のブート装置上にインストールする段階が実行されることを特徴とする請求項1に記載の方法。
  23. 前記ソフトウエアを第2のブート装置上にインストールする段階は、
    a.ソフトウエアを前記第2のブート装置上にインストールする、
    b.インストールされたソフトウエアを前記第2のブート装置上にコピーする、
    c.インストールソフトウエアを前記第2のブート装置上にコピーする、及び
    d.前記第1のブート装置からのブートの結果として実行されている作動環境のバージョンを前記第2のブート装置上に書き込む、
    方法のうちの1つの方法を含むことを特徴とする請求項22に記載の方法。
  24. 前記ソフトウエアを第2のブート装置上にインストールする段階は、
    a.ソフトウエアを前記第2のブート装置上にインストールする、
    b.インストールされたソフトウエアを前記第2のブート装置上にコピーする、
    c.インストールソフトウエアを前記第2のブート装置上にコピーする、及び
    d.前記第1のブート装置からのブートの結果として実行されている作動環境のテンプレートを前記第2のブート装置上に書き込む、
    方法のうちの1つの方法を含むことを特徴とする請求項22に記載の方法。
  25. 前記インストールする段階の後、かつ、前記第2のブート装置からブートする段階の前に、
    前記第2のブート装置上にインストールされた前記ソフトウエアを更新する段階、
    が実行されることを特徴とする請求項22に記載の方法。
  26. 前記インストールする段階の後、かつ、前記第2のブート装置からブートする段階の前に、
    前記第2のブート装置を更なる修正から保護する段階、
    が実行されることを特徴とする請求項22に記載の方法。
  27. 前記保護する段階は、
    前記第2のブート装置を利用不能の状態に切り換える段階、及び
    前記第2のブート装置を読取専用の状態に切り換える段階、
    のうちの一方を含むことを特徴とする請求項26に記載の方法。
  28. 前記ソフトウエアを修復する段階の前に、
    ユーザに修復の完全さの選択肢を提供する段階、
    が実行されることを特徴とする請求項1に記載の方法。
  29. 前記第2のブート装置からブートする段階の前に、
    前記第1のブート装置からブートする段階の結果として実行されている作動環境を自動的にモニタする段階、
    が実行されることを特徴とする請求項1に記載の方法。
  30. 前記作動環境内の望ましくない変化を検出する段階と、
    前記検出に応答して前記修復の必要性を示す信号を生成する段階と、
    を更に含むことを特徴とする請求項29に記載の方法。
  31. 前記第2のブート装置からブートする段階の前に、
    ブート装置を自動的に検索する段階、
    が実行されることを特徴とする請求項1に記載の方法。
  32. 前記ソフトウエアを修復する段階は、ソフトウエアを前記第2のブート装置から前記第1のブート装置上にコピーする段階を更に含み、
    前記ソフトウエアをコピーする段階は、アプリケーション、オペレーティングシステム、及び修復処理ソフトウエアのいずれかをコピーする段階と、ブート記録、パーティション表、及び基本入力/出力システム(BIOS)のいずれかをコピーする段階とを更に含み、
    前記ソフトウエアを修復する段階は、テンプレート、バックアップ、及びアーカイブソフトウエアのうちの1つを前記第1のブート装置以外の装置から該第1のブート装置上にコピーする段階を更に含み、
    前記修復する段階は、テンプレート、バックアップ、及びアーカイブソフトウエアのうちの1つを前記第2のブート装置から前記第1のブート装置上にコピーする段階を含み、
    前記第2のブート装置からブートする段階は、該第2のブート装置をブート可能にするために該第2のブート装置を切り換える段階を含み、
    前記切り換える段階は、前記修復の必要性を示す信号を生成する段階を含み、
    前記第2のブート装置からブートする段階は、該第2のブート装置を論理的に切り換える段階、及び該第2のブート装置を物理的に切り換える段階のうちの一方を含み、
    前記物理的に切り換える段階は、切り換えられるデータ記憶装置の識別ジャンパを変更する段階、又は切り換えられるデータ記憶装置の電力をオン又はオフにする段階を含み、
    前記信号は、前記コンピュータの前記主コンピュータハードウエアボックスの外部表面上に露出した、該コンピュータのオンオフスイッチと異なる物理的スイッチの状態をユーザが変更することによって生成され、
    前記ソフトウエアを修復する段階は、(i)データを回復するか否か、(ii)ウイルス検査を実行するか否か、(iii)前記第1のブート装置を再フォーマットするか否か、(iv)バックアップに戻るか否か、(v)診断を実行するか否か、及び(vi)その組合せに従って修復する段階から成る組から選択された予め設定されたプリファレンスに従って、前記ユーザからの更なる指示なしに前記第1のブート装置上のソフトウエアを自動的に修復する段階を含む、
    ことを特徴とする請求項1に記載の方法。
  33. 前記ソフトウエアを修復する段階は、
    前記第1のブート装置を再フォーマットする段階と、
    次に、ソフトウエアを前記第1のブート装置上にコピーする段階と、
    を更に含むことを特徴とする請求項32に記載の方法。
  34. 前記ソフトウエアを修復する段階は、
    永続メモリ内のパラメータをリセットする段階と、
    次に、ソフトウエアを前記第1のブート装置上にコピーする段階と、
    を更に含むことを特徴とする請求項32に記載の方法。
  35. 前記ソフトウエアを修復する段階の前に、最初に再フォーマットすることなくテンプレートソフトウエアを再インストール又はコピーする迅速な修復、前記ソフトウエアのコピー又は再インストールの前に高レベルの再フォーマットを実行するより良い修復、及びソフトウエアをコピー又は再インストールする前に低レベルの再フォーマットを実行する最良の修復から成る修復の組から選択される修復の完全さの選択肢をユーザに提供する段階が実行されることを特徴とする請求項1に記載の方法。
  36. 主コンピュータハードウエアボックスと、
    該主コンピュータハードウエアボックス内に配置されたCPUと、
    該主コンピュータハードウエアボックス内に配置されたメモリと、
    該主コンピュータハードウエアボックス内に配置されたそれぞれの第1及び第2のハードディスクドライブデータ記憶装置に対する第1及び第2のコントローラと、
    前記CPU、メモリ、及び、第1及び第2のコントローラを通信的に結合するバスと、
    前記第2のハードディスクドライブデータ記憶装置に通信的に結合され、ユーザによる操作のために前記主コンピュータハードウエアボックスを通じて又は該主コンピュータハードウエアボックスの表面で露出した、前記CPUに対する前記第2のデータ記憶装置のアクセス可能性を変更するためのスイッチと、
    を含むことを特徴とするコンピュータ。
  37. 前記第2のデータ記憶装置は、バックアップ及びマスターテンプレートのうちの一方を収容することを特徴とする請求項36に記載のコンピュータ。
  38. 前記CPU及び前記スイッチに電力供給するための電源、
    を更に含むことを特徴とする請求項36に記載のコンピュータ。
  39. 前記電源は、
    前記CPUに電力供給しない時に前記スイッチに電力供給するための電源、
    を含むことを特徴とする請求項38に記載のコンピュータ。
  40. 前記スイッチは、機械式であることを特徴とする請求項36に記載のコンピュータ。
  41. 前記スイッチは、少なくとも部分的にはソフトウエアであることを特徴とする請求項36に記載のコンピュータ。
  42. 前記スイッチは、
    前記第2のデータストアの識別設定を切り換えるためのスイッチ、
    を含むことを特徴とする請求項36に記載のコンピュータ。
  43. 前記スイッチは、
    前記第2のデータストアに電力を切り換えるためのスイッチ、
    を含むことを特徴とする請求項36に記載のコンピュータ。
  44. 出力装置、
    を更に含むことを特徴とする請求項36に記載のコンピュータ。
  45. 前記出力装置は、CRT、LED、及びLCDを含む組からの1つを含むことを特徴とする請求項41に記載のコンピュータ。
  46. 前記第2のデータ記憶装置は、
    読取専用データ記憶装置、
    を含むことを特徴とする請求項36に記載のコンピュータ。
  47. 前記第2のデータ記憶装置は、
    外付けのデータ記憶装置、
    を含むことを特徴とする請求項36に記載のコンピュータ。
  48. 前記第2のデータ記憶装置は、
    ネットワーク上に配置されたデータ記憶装置、
    を含むことを特徴とする請求項36に記載のコンピュータ。
  49. 前記第2のデータ記憶装置は、
    前記第1のデータ記憶装置と同一場所に配置されたデータ記憶装置、
    を含むことを特徴とする請求項36に記載のコンピュータ。
  50. 前記スイッチは、
    切り換え中の前記第1又は第2のデータ記憶装置への損傷を防止するために該第1及び第2のデータ記憶装置をモニタするためのコントローラ、
    を含むことを特徴とする請求項36に記載のコンピュータ。
  51. 少なくとも1つの保護されたデータストアを含む複数のデータストアと、
    発信元がデータストア発信元であるデータストア切換システムと発信元が周辺装置発信元であるI/O切換システムとを含む、少なくとも1つの発信元を複数の宛先と通信的に結合するための複数の切換システムと、
    前記データストア切換システムと前記I/O切換システムとの間に結合され、複数の特性から選択された少なくとも1つの特性によって各々が識別される、別のコンピューティング環境とは独立して処理活動を実行するための複数のコンピューティング環境であって、前記宛先が該コンピューティング環境であり、前記切換システムが前記特性に従って前記発信元と前記宛先を通信的に結合する環境と、
    前記処理活動と前記特性に従って前記スイッチ構成を構成するために前記複数のコンピューティング環境から選択され、前記保護データストアと通信的に結合した少なくとも1つの制御コンピューティング環境と、
    前記保護データストア上で前記処理活動が実行されない、前記複数のコンピューティング環境から選択された少なくとも1つのユーザコンピューティング環境と、
    を含むことを特徴とするコンピュータシステム。
  52. 前記コンピューティングシステムは、
    主コンピュータハードウエアボックスと、
    該主コンピュータハードウエアボックス内に配置されたCPUと、
    該主コンピュータハードウエアボックス内に配置されたメモリと、
    を更に含み、
    前記データストア切換システムは、前記メモリと前記CPUとの間に結合され、前記I/O切換システムは、前記周辺装置と前記CPUとの間に結合され、前記複数の切換システムは、前記主コンピュータハードウエアボックス内に配置され、
    前記CPU、メモリ、データストア切換システム、及びI/O切換システムを通信的に結合するバス、
    を更に含む、
    ことを特徴とする請求項51に記載のコンピュータシステム。
  53. 前記コンピューティングシステムは、
    主コンピュータハードウエアボックスと、
    制御コンピューティングCPUと複数のユーザコンピューティングCPUとを含む、前記主コンピュータハードウエアボックス内に配置された少なくとも3つのCPUと、
    該主コンピュータハードウエアボックス内に配置された少なくとも3つのメモリと、
    を更に含み、
    前記データストア切換システムは、前記メモリと前記CPUとの間に結合され、前記I/O切換システムは、前記周辺装置と前記CPUとの間に結合され、前記複数の切換システムは、前記主コンピュータハードウエアボックス内に配置され、
    前記制御コンピューティング環境が、制御コンピューティングCPUと結合され、前記ユーザコンピューティング環境が、前記ユーザコンピューティングCPUから選択された第2のCPUに結合される、前記CPU、前記メモリ、前記データストア切換システム、及び前記I/O切換システムを通信的に結合するバス、
    を更に含む、
    ことを特徴とする請求項51に記載のコンピュータシステム。
  54. 複数の磁気回転可能ディスクドライブを含む複数のデータストアと、
    少なくともユーザデータを記憶するための、前記複数のデータストアから選択された保護データストアと、
    前記複数のデータストアと結合され、1つ又はそれ以上のデータストアとの通信を構成するためにデータストアスイッチ構成と結合したデータストア切換システムと、
    少なくとも1つの周辺装置と結合され、該周辺装置との通信を構成するために複数の特性を含むI/Oシステム構成と結合したI/O切換システムと、
    前記複数の特性から選択された少なくとも1つの特性によって各々が識別される複数のコンピューティング環境であって、
    前記データストアスイッチ構成に従って少なくとも1つのデータストアを前記コンピューティング環境と結合する、前記データストアスイッチと結合したデータストア切換通信経路と、
    前記I/O切換システム構成に従って前記周辺装置を前記コンピューティング環境と結合するための、前記I/O切換システムと結合したI/O切換通信経路とを含み、
    入力を前記I/O切換システムから受信する段階と出力を該I/O切換システムに送信する段階とを含む処理活動を実行することができ、該処理活動が別のコンピューティング環境の処理活動と独立して実行される環境と、
    前記データストアスイッチ構成を構成するために前記複数のコンピューティング環境から選択された制御コンピューティング環境であって、該データストアスイッチ構成が、前記I/O切換システム構成を構成するために、該制御コンピューティング環境と前記保護データストアとの間の通信をサポートする環境と、
    前記複数のコンピューティング環境から選択された少なくとも1つのユーザコンピューティング環境と、
    を含み、
    前記I/O切換システム構成は、前記特性に基づいて、受信した入力を前記コンピューティング環境の少なくとも1つに向けるように構成され、かつ、該特性に基づいて、前記複数のコンピューティング環境の1つ又はそれ以上によって生成された出力を前記周辺装置に向けるように構成される、
    ことを特徴とするコンピュータシステム。
  55. 第2のコンピュータシステムとの通信リンク上で通信するための通信装置と、
    複数のデータラインを有するバス上で前記通信装置と通信的に結合するためのポートと、
    前記通信装置を使用可能及び使用不可にするための、前記複数のデータラインから選択されたデータライン内に結合したスイッチと、
    を含むことを特徴とするコンピュータシステム。
  56. 前記通信装置は、主コンピュータハードウエアボックス内に配置されたネットワークインタフェースカードであり、
    前記スイッチは、前記ネットワークインタフェースカードに固定される、
    ことを特徴とする請求項55に記載のコンピュータシステム。
  57. 複数のデータラインを有するバス上で周辺装置と通信的に結合するためのポートと、
    前記周辺装置を循環するための、前記複数のデータラインから選択された少なくとも1つのデータラインに結合したスイッチと、
    を含むことを特徴とするコンピュータシステム。
  58. 前記ポートは、シリアルコントローラであり、
    前記周辺装置は、シリアルマウスであり、
    前記バスは、前記シリアルマウスと前記ポートとを結合するシリアルバスであり、
    前記循環は、前記周辺装置との前記結合をリセットするための前記データラインの一時的な接地を含む、
    ことを特徴とする請求項57に記載のコンピュータシステム。
  59. 複数のブート可能なデータストアと、
    前記複数のブート可能なデータストアから選択された、システムをブートするためのブートドライブと、
    前記ブート可能なデータストアのアクセス可能性を変更し、前記ブートドライブを識別するための、前記複数のブート可能なデータストアに結合した物理的データストアスイッチと、
    を含むことを特徴とするコンピュータシステム。
  60. 主コンピュータハードウエアボックスと、
    該主コンピュータハードウエアボックス内に配置されたCPUと、
    該主コンピュータハードウエアボックス内に配置されたメモリと、
    前記CPUと、前記メモリと、該CPUに対する前記ブート可能なデータストアの識別を変更するための前記物理的データストアスイッチとを通信的に結合するバスと、
    を更に含み、
    前記物理的データストアスイッチは、ユーザによる操作のために前記主コンピュータハードウエアボックスを通じて又は該主コンピュータハードウエアボックスの表面で露出される、
    ことを特徴とする請求項59に記載のコンピュータシステム。
  61. 通信手段と、結合部材と、光を発するための機能とを含む1つ又はそれ以上の周辺装置と、
    前記周辺装置の前記結合部材と係合するための、システムと機械的に結合したコンセントと、
    コンセントに結合した前記周辺装置と通信的に結合するためのポートと、
    を含むことを特徴とするコンピュータシステム。
  62. 複数のデータストアと、
    前記データストアのアクセス可能性を変更するための、前記複数のデータストアと結合したデータストアスイッチと、
    前記データストアスイッチと通信的に結合するための周辺コントローラと、
    前記周辺コントローラと通信的に結合した前記複数のデータストアから選択されたアクセス可能なデータストアと、
    前記アクセス可能データストアを解析して該アクセス可能データストアのヘルスを判断するためのシステム上で実行することができる少なくとも1つの命令を含むコンピュータプログラムと、
    を含み、
    前記ヘルスは、破壊ヘルス及び適正ヘルスから成るヘルスの群から選択され、
    前記破壊ヘルスと判断された場合は、前記データストアスイッチが作動され、前記アクセス可能データストアへのアクセス可能性を除去して第2のアクセス可能データストアを追加し、前記適正ヘルスの場合は、前記データストアスイッチは変更されないままである、
    ことを特徴とするコンピュータシステム。
  63. 主コンピュータハードウエアボックスと、
    該主コンピュータハードウエアボックス内に配置されたCPUと、
    該主コンピュータハードウエアボックス内に配置されたメモリと、
    を更に含み、
    前記データストアの各々は、コンピュータハードディスクドライブを表し、前記複数のデータストアは、前記主コンピュータハードウエアボックス内に配置された8つのデータストアを含み、
    前記ヘルスは、前記複数のデータストアにおける1つのデータストアに関して判断され、該ヘルスが前記破壊ヘルスの場合は、次のデータストアのヘルスが判断され、
    前記CPU、メモリ、及び複数のデータストアを通信的に結合するバス、
    を更に含むことを特徴とする請求項62に記載のコンピュータシステム。
  64. 作動中いつでもコンピュータが作動的状態に自己修復する方法であって、
    コンピュータの主コンピュータハードウエアボックス内に配置された第1のハードディスクドライブブート装置からブートし、
    次に、前記ブートする段階中又は任意の作動状態中に前記コンピュータの修復の必要性を示す信号に応答して、同じく前記コンピュータの前記主コンピュータハードウエアボックス内に該修復の必要性を示す信号の前に配置された第2のハードディスクドライブブート装置からブートし、
    次に、前記第2のハードディスクドライブブート装置からブートされている間に前記第1のハードディスクドライブブート装置上のソフトウエアを修復し、選択的に、(i)該第1のハードディスク装置上の該ソフトウエアの修復中に前記コンピュータの作動的状態を回復するために該第2のブート装置から該コンピュータの作動を維持するか、又は(ii)該コンピュータの作動的状態を回復するために該第2のブート装置から該第1のブート装置に該コンピュータの作動を変更する、
    コンピュータ実行段階を含むことを特徴とする方法。
  65. 前記ソフトウエアを修復する段階は、
    (i)ソフトウエアを前記第1のブート装置以外の装置から該第1のブート装置上にコピーする段階、
    を更に含み、
    前記ソフトウエアをコピーする段階は、アプリケーション、オペレーティングシステム、及び修復処理ソフトウエアのいずれかをコピーする段階を更に含み、このようなコピーする段階は、ブート記録、パーティション表、及び基本入力/出力システム(BIOS)のいずれかをコピーする段階を含むことができ、
    (ii)ソフトウエアを前記第2のブート装置から前記第1のブート装置上にコピーする段階と、テンプレート、バックアップ、及びアーカイブソフトウエアのうちの1つを前記第1のブート装置以外の装置から該第1のブート装置上にコピーする段階、及びテンプレート、バックアップ、及びアーカイブソフトウエアのうちの1つを前記第2のブート装置から前記第1のブート装置上にコピーする段階のいずれか又は両方の段階と、
    を更に含み、
    前記第2のブート装置からブートする段階は、該第2のブート装置を切り換え、それによって該第2のブート装置をブート可能にする段階を含み、前記切り換える段階は、前記修復の必要性を示す信号を生成する段階を含み、
    前記信号は、前記コンピュータのオンオフスイッチと異なり、かつ、該コンピュータの前記主コンピュータハードウエアボックスの外部表面上に露出した物理的スイッチの状態をユーザが変更することによって生成され、
    前記ソフトウエアを自動的に修復する段階は、予め設定されたプリファレンスに従って前記第1のブート装置上のソフトウエアを修復する段階を含む、前記ユーザからの更なる指示なしに該第1のブート装置上のソフトウエアを自動的に修復する段階を含み、前記予め設定されたプリファレンスに従って修復する段階は、データを回復する、ウイルス検査を実行する、前記第1のブート装置を再フォーマットする、バックアップに戻る、及び診断を実行するか否かに従って修復する段階を含み、
    前記ソフトウエアを修復する段階は、永続メモリ内のパラメータをリセットする段階と、次にソフトウエアを前記第1のブート装置上にコピーする段階とを更に含み、
    前記第2のブート装置からブートする段階の前に、ソフトウエアを該第2のブート装置上にインストールし、前記ソフトウエアを第2のブート装置上にインストールする段階は、ソフトウエアを該第2のブート装置上にインストールし、インストールされたソフトウエアを該第2のブート装置上にコピーし、インストールソフトウエアを該第2のブート装置上にコピーし、前記第1のブート装置からの前記ブートの結果として実行される作動環境のバージョンを前記第2のブート装置上に書き込む手順の組からの1つの手順を含む、
    ことを特徴とする請求項64に記載の方法。
  66. 主コンピュータハードウエアボックス又はハウジングと、
    該主コンピュータハードウエアボックス内に配置されたCPUと、
    該主コンピュータハードウエアボックス内に配置されたメモリと、
    該主コンピュータハードウエアボックス内に配置されたそれぞれの第1及び第2のハードディスクドライブデータ記憶装置に対する第1及び第2のコントローラと、
    前記CPU、メモリ、及び、第1及び第2のコントローラを通信的に結合するバスと、
    前記第2のハードディスクドライブデータ記憶装置に通信的に結合され、ユーザによる操作のために前記主コンピュータハードウエアボックスを通じて又は該主コンピュータハードウエアボックスの表面で露出した、前記CPUに対する前記第2のデータ記憶装置のアクセス可能性を変更するためのスイッチと、
    を含むことを特徴とするコンピュータ。
  67. データをデータポートに転送する通信リンクの機能を中断するか又は使用可能にするために該通信リンクのデータラインを切り換える手段。
  68. 周辺装置の電力をオン又はオフにするためにバスの電力ラインを切り換える手段。
  69. いかなる他のユーザ作成データも含まず、リセット又は修復することもできるデータ記憶装置に潜在的に悪質なコードを閉じ込めるように、個々のユーザデータファイルを隔離する方法。
  70. ユーザ認証が失敗した場合に起動装置を切り換えるための盗難防止セキュリティ手段。
  71. 娯楽及び/又はユーザとの通信の目的でコンピューティング装置のボックス内に組み込むことができる電気接続又は他の要素を使用するための手段。
JP2003566718A 2001-11-19 2002-11-19 複数の独立コンピューティング環境をサポートすることができるコンピュータシステム Pending JP2005535003A (ja)

Applications Claiming Priority (8)

Application Number Priority Date Filing Date Title
US10/075,136 US7096381B2 (en) 2001-05-21 2001-11-19 On-the-fly repair of a computer
US10/074,686 US7100075B2 (en) 2000-05-19 2002-02-11 Computer system having data store protected from internet contamination by virus or malicious code and method for protecting
US10/090,480 US7111201B2 (en) 2000-05-19 2002-02-27 Self repairing computer detecting need for repair and having switched protected storage
PCT/US2002/007154 WO2002099642A1 (en) 2001-05-17 2002-03-06 A computer with fault-tolerant booting
US10/094,600 US7137034B2 (en) 2000-05-19 2002-03-06 Self repairing computer having user accessible switch for modifying bootable storage device configuration to initiate repair
US0209638 2002-03-27
US39371902P 2002-07-03 2002-07-03
PCT/US2002/037125 WO2003067435A2 (en) 2001-11-19 2002-11-19 Computer system capable of supporting a plurality of independent computing environments

Publications (2)

Publication Number Publication Date
JP2005535003A true JP2005535003A (ja) 2005-11-17
JP2005535003A5 JP2005535003A5 (ja) 2006-01-19

Family

ID=35474759

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003566718A Pending JP2005535003A (ja) 2001-11-19 2002-11-19 複数の独立コンピューティング環境をサポートすることができるコンピュータシステム

Country Status (1)

Country Link
JP (1) JP2005535003A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008047123A (ja) * 2006-08-11 2008-02-28 Beijing Kingsoft Software Co Ltd 実時間コンピュータウィルス感染防止装置及びそのアップデート方法
JP2017062697A (ja) * 2015-09-25 2017-03-30 日本電気株式会社 情報処理装置、情報処理システム、情報処理方法およびプログラム
KR20200119814A (ko) * 2018-02-14 2020-10-20 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 클라우드 컴퓨팅에 사용 가능한 신뢰 상태로의 베어 메탈 리소스의 클리어런스
CN113535554A (zh) * 2021-07-12 2021-10-22 青岛中科英泰商用系统股份有限公司 一种Android系统设备的自动测试系统及其方法

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008047123A (ja) * 2006-08-11 2008-02-28 Beijing Kingsoft Software Co Ltd 実時間コンピュータウィルス感染防止装置及びそのアップデート方法
JP2017062697A (ja) * 2015-09-25 2017-03-30 日本電気株式会社 情報処理装置、情報処理システム、情報処理方法およびプログラム
KR20200119814A (ko) * 2018-02-14 2020-10-20 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 클라우드 컴퓨팅에 사용 가능한 신뢰 상태로의 베어 메탈 리소스의 클리어런스
JP2021513711A (ja) * 2018-02-14 2021-05-27 マイクロソフト テクノロジー ライセンシング,エルエルシー クラウド・コンピューティングにおいて使用可能な信頼できる状態へのベア・メタル・リソースのクリアランス
JP7299903B2 (ja) 2018-02-14 2023-06-28 マイクロソフト テクノロジー ライセンシング,エルエルシー クラウド・コンピューティングにおいて使用可能な信頼できる状態へのベア・メタル・リソースのクリアランス
KR102607127B1 (ko) * 2018-02-14 2023-11-27 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 클라우드 컴퓨팅에 사용 가능한 신뢰 상태로의 베어 메탈 리소스의 클리어런스
CN113535554A (zh) * 2021-07-12 2021-10-22 青岛中科英泰商用系统股份有限公司 一种Android系统设备的自动测试系统及其方法
CN113535554B (zh) * 2021-07-12 2024-03-12 青岛中科英泰商用系统股份有限公司 一种Android系统设备的自动测试系统及其方法

Similar Documents

Publication Publication Date Title
US7536598B2 (en) Computer system capable of supporting a plurality of independent computing environments
US7788699B2 (en) Computer and method for safe usage of documents, email attachments and other content that may contain virus, spy-ware, or malicious code
US7137034B2 (en) Self repairing computer having user accessible switch for modifying bootable storage device configuration to initiate repair
US20110145923A1 (en) Computer having special purpose subsystems and cyber-terror and virus immunity and protection features
US7392541B2 (en) Computer system architecture and method providing operating-system independent virus-, hacker-, and cyber-terror-immune processing environments
US6880110B2 (en) Self-repairing computer having protected software template and isolated trusted computing environment for automated recovery from virus and hacker attack
US7111201B2 (en) Self repairing computer detecting need for repair and having switched protected storage
US7849360B2 (en) Computer system and method of controlling communication port to prevent computer contamination by virus or malicious code
US7096381B2 (en) On-the-fly repair of a computer
US20100005531A1 (en) Isolated multiplexed multi-dimensional processing in a virtual processing space having virus, spyware, and hacker protection features
US7100075B2 (en) Computer system having data store protected from internet contamination by virus or malicious code and method for protecting
AU2005248713A2 (en) Isolated multiplexed multi-dimensional processing in a virtual processing space having virus, spyware, and hacker protection features
WO2003067435A2 (en) Computer system capable of supporting a plurality of independent computing environments
WO2002099642A1 (en) A computer with fault-tolerant booting
JP2005535003A (ja) 複数の独立コンピューティング環境をサポートすることができるコンピュータシステム
EP1875662A2 (en) Computer and method for safe usage of documents, email attachments and other content that may contain virus, spy-ware, or malicious code
AU2002359425A2 (en) Computer system capable of supporting a plurality of independent computing environments
AU2002254149B2 (en) A computer with fault-tolerant booting
KR20060135757A (ko) 바이러스, 스파이웨어, 및 해커 보호 특성을 갖는 가상처리 공간에서의 분리된 멀티플렉싱 다차원 처리
EP1390849A1 (en) A computer with fault-tolerant booting
CA2447000A1 (en) A computer with fault-tolerant booting
Allen et al. Windows XP cookbook
AU2002254149A1 (en) A computer with fault-tolerant booting
Kleiman et al. Winternals defragmentation, recovery, and administration field guide

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20051121

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20051121

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090525

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20091026