特許第5674730号(P5674730)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ ▲華▼▲為▼終端有限公司の特許一覧

特許5674730データカードとホストとの間の通信異常、及びデータカードの異常の回復のための方法
<>
  • 特許5674730-データカードとホストとの間の通信異常、及びデータカードの異常の回復のための方法 図000002
  • 特許5674730-データカードとホストとの間の通信異常、及びデータカードの異常の回復のための方法 図000003
  • 特許5674730-データカードとホストとの間の通信異常、及びデータカードの異常の回復のための方法 図000004
  • 特許5674730-データカードとホストとの間の通信異常、及びデータカードの異常の回復のための方法 図000005
  • 特許5674730-データカードとホストとの間の通信異常、及びデータカードの異常の回復のための方法 図000006
  • 特許5674730-データカードとホストとの間の通信異常、及びデータカードの異常の回復のための方法 図000007
  • 特許5674730-データカードとホストとの間の通信異常、及びデータカードの異常の回復のための方法 図000008
  • 特許5674730-データカードとホストとの間の通信異常、及びデータカードの異常の回復のための方法 図000009
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】5674730
(24)【登録日】2015年1月9日
(45)【発行日】2015年2月25日
(54)【発明の名称】データカードとホストとの間の通信異常、及びデータカードの異常の回復のための方法
(51)【国際特許分類】
   G06F 11/14 20060101AFI20150205BHJP
   G06F 9/445 20060101ALI20150205BHJP
【FI】
   G06F11/14 310L
   G06F9/06 610L
【請求項の数】5
【全頁数】22
(21)【出願番号】特願2012-183105(P2012-183105)
(22)【出願日】2012年8月22日
(65)【公開番号】特開2013-45464(P2013-45464A)
(43)【公開日】2013年3月4日
【審査請求日】2012年8月22日
(31)【優先権主張番号】201110242792.X
(32)【優先日】2011年8月23日
(33)【優先権主張国】CN
(73)【特許権者】
【識別番号】512165101
【氏名又は名称】▲華▼▲為▼終端有限公司
【氏名又は名称原語表記】HUAWEI DEVICE CO., LTD.
(74)【代理人】
【識別番号】100107766
【弁理士】
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【弁理士】
【氏名又は名称】伊東 忠彦
(74)【代理人】
【識別番号】100091214
【弁理士】
【氏名又は名称】大貫 進介
(72)【発明者】
【氏名】桂 永林
(72)【発明者】
【氏名】▲韓▼ ▲偉▼
(72)【発明者】
【氏名】朱 光▲澤▼
(72)【発明者】
【氏名】王 ▲長▼亮
【審査官】 ▲高▼橋 正▲徳▼
(56)【参考文献】
【文献】 米国特許出願公開第2007/0288936(US,A1)
【文献】 特開2011−008402(JP,A)
【文献】 中国特許出願公開第101916238(CN,A)
【文献】 米国特許出願公開第2012/0054384(US,A1)
【文献】 特開2006−185012(JP,A)
【文献】 中国特許出願公開第102063320(CN,A)
【文献】 欧州特許出願公開第02474913(EP,A1)
【文献】 米国特許出願公開第2002/0042911(US,A1)
【文献】 米国特許出願公開第2013/0031277(US,A1)
【文献】 米国特許出願公開第2012/0179845(US,A1)
【文献】 特開2005−092392(JP,A)
【文献】 特開2007−156921(JP,A)
【文献】 国際公開第2007/088967(WO,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 11/14,
G06F 11/22−11/34,
G06F 13/00,
G06F 13/10−13/14,
G06F 9/445
(57)【特許請求の範囲】
【請求項1】
データカードが、該データカードとオペレーティングシステムを有するホストとの間の通信異常を回復する方法であって、
前記データカードと前記ホストとの間の通信に異常が発生した場合、前記ホストのオペレーティングシステムを回復するために、前記データカードの回復データを実行するステップと、
前記データカードをリセットし、かつ光ディスクディスクリプタを報告するステップと、
前記データカードを用いて、受信されたミニコンピュータシステムインターフェース命令に従って、前記ホストの前記オペレーティングシステムのタイプを検出するステップと、
を有し、
前記データカードと前記ホストとの間の前記通信に発生した異常が、前記データカードが予め設定された期間において前記ホストによって送られたミニコンピュータシステムインターフェース命令を受信することに失敗したことを、含む場合、前記ホストの前記オペレーティングシステムを前記回復することは、前記ホストの前記オペレーティングシステムのレジストリにすでに記録された前記データカードの情報を削除することを含み、
前記データカードと前記ホストとの間の前記通信に発生した前記異常は、前記データカードのデバイス情報ファイルが前記ホストに正しくインストールされることに失敗すること、又は前記データカードがネットワークカードモードに切替えられた後に、前記ホストによって送られたネットワークカードブロードキャストパケットを受信することに失敗することを含む場合、前記ホストの前記オペレーティングシステムを前記回復することは、前記ホストの前記オペレーティングシステムのレジストリにすでに記録されている前記データカードの情報を削除すること、及び、前記ホストの前記デバイス情報ファイルを削除することを含み、前記デバイス情報ファイルは前記データカードから前記ホストにインストールされる、
方法。
【請求項2】
前記ホストの前記オペレーティングシステムを回復するために、前記データカードの前記回復データを実行するステップは、
前記データカードをリセットし、記憶デバイスディスクリプタを報告し、データカードを記憶デバイスとしてマップするステップと、
前記ホストの前記オペレーティングシステムを回復するために記憶デバイスとしてマップされる前記データカードの前記回復データを実行するステップと、
を有する、請求項1記載の方法。
【請求項3】
前記ホストの前記オペレーティングシステムのタイプの検出が成功した後に、前記ホストはデータカードドライバをロードし、かつ前記データカードは前記ホストによって配信されたネットワークカードブロードキャストパケットを受信する、
請求項1又は2に記載の方法。
【請求項4】
データカードであって、受信ユニット、判断ユニット、検出ユニット、及び回復ユニットを有し、
前記受信ユニットは、ホストによって配信される情報を受信するように構成され、前記情報は、前記ホストによって配信された、ミニコンピュータシステムインターフェース命令、又は、前記ホストによって配信されたデバイス情報ファイルが正しくインストールされることに失敗した情報、又は前記ホストによって配信されたネットワークカードブロードキャストパケットを含み、
前記判断ユニットは、前記データカードと前記ホストとの間の通信に異常が発生したか否かを判断し、かつ前記データカードが、予め設定された期間において、前記ホストによって送られたミニコンピュータシステムインターフェース命令を受信することに失敗した場合に、前記データカードと前記ホストとの間の前記通信に異常が発生したこと、又は、前記データカードの前記デバイス情報ファイルが前記ホストに正しくインストールされることに失敗したこと、又は、前記データカードがネットワークカードモードに切り替えられた後に、前記ホストによって送られた前記ネットワークカードブロードキャストパケットを受信することに失敗したことを判断するように構成され、
前記検出ユニットは、前記ホストから受信されるミニコンピュータシステムインターフェース命令に従って前記ホストのオペレーティングシステムのタイプを特定するように構成され、オペレーションコード0XA2を含むミニコンピュータシステムインターフェース命令が受信された場合、前記オペレーティングシステムはWindows VISTA(登録商標)、又は、Windows 7(登録商標)と特定され、オペレーションコード0XBBを含むミニコンピュータシステムインターフェース命令が受信された場合、前記オペレーティングシステムはMAC OS(登録商標)、又は、Linux(登録商標)と特定され、かつ、2つのタイプの前記ミニコンピュータシステムインターフェース命令のいずれも受信されない場合、前記オペレーティングシステムはWindows XP(登録商標)と特定され、かつ、
前記回復ユニットは、前記データカードと前記ホストとの間の前記通信に発生した異常が、前記データカードが予め設定された期間において前記ホストによって送られたミニコンピュータシステムインターフェース命令を受信することに失敗したことを、含む場合、前記ホストの前記オペレーティングシステムのレジストリにすでに記録された前記データカードの情報を削除することによって、前記データカード内の回復データを実行し、前記データカードと前記ホストとの間の前記通信に発生した前記異常が、前記データカードのデバイス情報ファイルが前記ホストに正しくインストールされることに失敗すること、又は前記データカードがネットワークカードモードに切替えられた後に、前記ホストによって送られたネットワークカードブロードキャストパケットを受信することに失敗することを含む場合、前記ホストの前記オペレーティングシステムの前記レジストリに、すでに記録された前記データカードの前記情報を削除すること及び前記ホストの前記デバイス情報ファイルを削除することによって、前記データカード内の回復データを実行するよう構成され、前記デバイス情報ファイルが、前記データカードから前記ホストにインストールされる、
データカード。
【請求項5】
請求項記載のデータカードであって、記憶ユニット、リセットユニット、スイッチングユニット、及びネットワークアクセスユニットを有し、
前記記憶ユニットは、前記回復データを記憶するように構成され、
前記リセットユニットは、前記データカードをリセットするように構成され、
前記スイッチングユニットは、前記データカードを前記ネットワークカードモードに切り替えるように構成され、かつ、
前記ネットワークアクセスユニットは、ワイヤレスネットワークアクセス機能を実行するように構成される、
データカード。
【発明の詳細な説明】
【技術分野】
【0001】
本発明の実施例は、電子通信の分野に関する、より詳細には、データカードとホストとの間の通信異常及びデータカードの異常を回復する方法に関する。
【背景技術】
【0002】
データカードは、プラグアンドプレイをサポートするUSBデータカードであってもよい。3G通信技術の開発及び3Gネットワークユーザの増加につれて、データカードは、ますます広く市場において利用されている。第1の及び第2世代のデータカードは、いずれもLinux(登録商標)及びMAC(登録商標)のオペレーティングシステムのプラグアンドプレイをサポートしていない。第3世代のデータカード製品はドライバーレスなグリーンHOST−LESS解決案を採用する。その結果、データカードのプラグアンドプレイの特徴は、3つのオペレーティングシステムであるWindows(登録商標)、MAC及びLinuxにおいてサポートされる。HOST−LESS解決案を採用することによって、ドライバ及びデーモンはホストサイドでインストールされる必要はなく、かつ、オペレーティングシステムのデフォルトドライバは、良好に互換性の特徴要件を満たすよう使用さ得る(ドライバーレスグリーンでかつ安定である)。
【発明の概要】
【発明が解決しようとする課題】
【0003】
しかしながら、データカードを使用する一部のプロセスにおいて、ウイルス撃退ソフトウェア、システム保護ソフトウェア、又は、他の要因のために、データカードとホストとの間の通信に異常が発生し得る。このために、データカードがもはや使用できないことがある。この場合、データカードがプラグアウトされ、かつ再度プラグインされ、又は、コンピュータが再起動される場合であっても、データカードはまだ正常な使用に戻ることができず、回復するにはオペレーティングシステムの再インストールを実行することのみで、可能となり、回復方法は極めて複雑で、かつ長い時間がかかる。
【0004】
前述の課題に鑑み、本発明の実施例は、データカード及び対応するデータカードの異常から回復する方法を提供する。データカードとホストとの間の通信に異常が発生した場合、異常を自動的に回復することが可能である。
【課題を解決するための手段】
【0005】
本発明の実施例は、データカードとホストとの間の通信異常を回復する方法を提供する。本方法はデータカードとホストとの間の通信に異常が発生した場合、ホストのオペレーティングシステムを回復するために、データカードの回復データを実行するステップとデータカードをリセットし、かつ光ディスクディスクリプタを報告するステップとデータカードによって、受信されたミニコンピュータシステムインターフェース命令に従ってホストのオペレーティングシステムのタイプを検出するステップとを有する。
【0006】
更なる本発明の実施例は、データカードを提供する。そして、それは、受信ユニット、判断ユニット、検出ユニット、及び回復ユニットを有する。受信ユニットは、ホストによって配信される情報を受信するように構成され、情報は、ホストによって配信された、ミニコンピュータシステムインターフェース命令、又は、ホストによって配信されたデバイス情報ファイルが正しくインストールされることに失敗した情報、又はホストによって配信されたネットワークカードブロードキャストパケットを含む。判断ユニットは、データカードとホストとの間の通信に異常が発生したか否かを判断し、かつデータカードが、予め設定された期間において、ホストによって送られたミニコンピュータシステムインターフェース命令を受信することに失敗した場合に、データカードとホストとの間の通信に異常が発生したこと、又は、データカードのデバイス情報ファイルがホストに正しくインストールされることに失敗したこと、又は、データカードがネットワークカードモードに切り替えられた後に、ホストによって送られたネットワークカードブロードキャストパケットを受信することに失敗したことを判断するように構成される。検出ユニットは、ホストから受信されるミニコンピュータシステムインターフェース命令に従ってホストのオペレーティングシステムのタイプを特定するように構成され、オペレーションコード0XA2を含むミニコンピュータシステムインターフェース命令が受信された場合、オペレーティングシステムはWindows VISTA(登録商標)、又は、Windows 7(登録商標)と特定され、オペレーションコード0XBBを含むミニコンピュータシステムインターフェース命令が受信された場合、オペレーティングシステムはMAC、又は、Linuxと特定され、かつ、前記2つのタイプのミニコンピュータシステムインターフェース命令のいずれも受信されない場合、オペレーティングシステムはWindows XP(登録商標)と特定される。回復ユニットは、データカードとホストとの間の通信に異常が発生した場合、前記ホストの前記オペレーティングシステムを回復するように、前記データカード内の回復データを実行する。ホストのオペレーティングシステムの回復はホストのオペレーティングシステムのレジストリに、すでに記録されたデータカードの情報を削除すること、又は、ホストのオペレーティングシステムのレジストリに、すでに記録されたデータカードの情報を削除すること、及びホストのデバイス情報ファイルを削除すること、を特に含み、デバイス情報ファイルが、データカードからホストにインストールされる。
【発明の効果】
【0007】
本発明の実施例によれば、データカードを使用するプロセスの間、データカードとホストとの間の通信に異常が発生した場合、したがって、データカードがウイルス撃退ソフトウェア、又は、システム保護ソフトウェア、又は、他の要因により、もはや使用することができない場合、異常は自動的に回復され、このことにより非常に回復効率を改善し、かつ回復時間及び回復の複雑度を減少させることが可能である。
【0008】
本発明の実施例に従って、本発明及び従来技術の技術的解決策を図示するために、本実施例又は従来技術の図面が示されており、以下にその概要を説明する。明らかに、添付の図面は以下の本発明の実施例の幾つかのみのためのものであり、当業者は、創造的な努力なしに、添付の図面から、他の図面を導出することができるものである。
【図面の簡単な説明】
【0009】
図1】データカード及び従来技術のホスト間の通信の方法のフローチャートを示す図である。
【0010】
図2】本発明の一実施例に従った、データカードとホストとの間の通信異常から回復する方法のフローチャートである。
【0011】
図3A】本発明の一実施例に従った、データカードとホストとの間の通信異常から回復する方法のフローチャートである。
図3B】本発明の一実施例に従った、データカードとホストとの間の通信異常から回復する方法のフローチャートである。
【0012】
図4】本発明の一実施例に従った、データカードとホストとの間の通信異常から回復する方法のフローチャートである。
【0013】
図5】本発明の一実施例に従ったデータカードとホストとの間の通信異常から回復する方法のフローチャートである。
【0014】
図6】本発明の一実施例に従った、データカードの構成のブロック図である。
【0015】
図7】本発明の一実施例に従った、データカードの模式的な構造図である。
【発明を実施するための形態】
【0016】
本発明の実施例の技術的な解決案は、本発明の実施例の添付の図面を参照して、以下に明確にかつ完全に記載されている。後述する実施例が本発明の実施例の全てではなく、一部であることは明らかである。本発明の実施例に基づいて当業者が得た他の実施例は、本発明のほごの範囲に属する。
【0017】
図1は、データカード及び従来技術のホストの間で通信をインプリメントする方法のフローチャートである。データカードがホストに接続されたあと、ホストはデータカードを列挙(enumerate)し、かつデータカードはホストのオペレーティングシステムのタイプを検出し、かつ、検出タイプのオペレーティングシステムに従って、オペレーティングシステムのタイプに対応するデバイスディスクリプタをホストに報告する。その結果、ホストは、データカードを、デバイスディスクリプタに記述されているデバイスとして、マップする。そして、ディスクリプタに記述されているデバイスに対応するドライバをロードする。これによって、データカードによって仮想化されているネットワークカードは、ホストに対し、正常に通信を行うことができるようになる。具体的なステップは以下の通りである。
【0018】
101:ホストにデータカードを接続する。ホストはデータカードを列挙する。そして、データカードは光ディスクディスクリプタをホストに報告する。
【0019】
データカードがホストのUSBインターフェースに挿入されたあと、データカード及びホストはUSBインターフェースで相互に接続される。ホストは、新規なデバイスがホストに接続されていることを検出する。そして、データカードの情報を得るよう、データカードを列挙する。データカードは、光ディスクディスクリプタをホストに報告する。光ディスクディスクリプタは、ホストがデータカードを光ディスクとしてマップすることを可能にする。光ディスクディスクリプタに従ってホストはデータカードを光ディスクとしてマップする。ホストは、ミニコンピュータシステムインターフェース命令をデータカードに配信する。データカードは、ホストによって配信されたミニコンピュータシステムインターフェース命令を受信する。
【0020】
102:ホストのオペレーティングシステムのタイプを検出する。
【0021】
データカードは、ホストから受信されるミニコンピュータシステムインターフェース命令に従って、ホストのオペレーティングシステムのタイプを検出する。オペレーションコード0XA2を含むミニコンピュータシステムインターフェース命令が受信された場合、オペレーティングシステムはWindows VISTA、又は、Windows 7と特定され、かつデータカードはRNDISデバイスディスクリプタをホストに報告する。ディスクリプタはホストがデータカードをRNDISデバイスとしてマップすることを可能にするために使用される。オペレーションコード0XBBを含むミニコンピュータシステムインターフェース命令が受信された場合、オペレーティングシステムはMAC、又は、Linuxと特定され、かつデータカードはCDC−ECMデバイスディスクリプタをホストに報告する。ディスクリプタはホストがデータカードをCDC−ECMデバイスとしてマップすることを可能にするために使用される。ミニコンピュータシステムインターフェースが命令する上述の2つのタイプのうち、いずれも受信されない場合、オペレーティングシステムはWindows XPと特定され、かつデータカードは光ディスクディスクリプタをホストに報告する。光ディスクディスクリプタはホストが、データカードを光ディスクとしてマップすることを可能にするために使用される。
【0022】
103:ホストのオペレーティングシステムのタイプがWindows VISTA、又は、Windows 7である場合、データカードはRNDISデバイスディスクリプタをホストに報告する。
【0023】
オペレーションコード0XA2を含むミニコンピュータシステムインターフェース命令が受信された場合、オペレーティングシステムはWindows VISTA、又は、Windows 7と特定され、かつデータカードはRNDISデバイスディスクリプタをホストに報告する。ディスクリプタはホストがデータカードをRNDISデバイスとしてマップすることを可能にするために使用される。それから、手順は、ステップ107に移る。
【0024】
104:ホストのオペレーティングシステムのタイプがMAC、又は、Linuxである場合、データカードはCDC−ECMデバイスディスクリプタをホストに報告する。
【0025】
オペレーションコード0XBBを含むミニコンピュータシステムインターフェース命令が受信された場合、オペレーティングシステムはMAC、又は、Linuxと特定され、かつデータカードはCDC−ECMデバイスディスクリプタをホストに報告する。ディスクリプタはホストがデータカードをCDC−ECMデバイスとしてマップすることを可能にするために使用される。それから、手順は、ステップ107に移る。
【0026】
105:ホストのオペレーティングシステムのタイプがWindows XPである場合、データカードは光ディスクディスクリプタをホストに報告する。
【0027】
オペレーションコード0XA2を含むミニコンピュータシステムインターフェース命令、又は、オペレーションコード0XBBを含む命令が受信されない場合、オペレーティングシステムはWindows XPと特定され、かつデータカードは光ディスクディスクリプタをホストに報告する。光ディスクディスクリプタはホストがデータカードを光ディスクとしてマップすることを可能にするために使用される。
【0028】
106:ホストは、データカードを、光ディスクとしてマップする。そして、光ディスクとしてマップされるデータカードのデバイス情報ファイルとしてのautorunデバイス情報ファイルがホストにインストールされる。
【0029】
受信された光ディスクディスクリプタに従って、ホストはデータカードを光ディスクとしてマップする。光ディスクとしてマップされたデータカードは、デバイス情報ファイルautorunデバイス情報ファイルを含む。ホストは、自動的にautorunデバイス情報ファイルを実行する。そして、autorunデバイス情報ファイルをホストにインストールする。
【0030】
107:ホストのオペレーティングシステムは対応するドライバをロードし、かつデータカードによって仮想化されたネットワークカードはホストによって配信されるネットワークカードブロードキャストパケットを受信する。
【0031】
102において受信されるディスクリプタに従って、ホストは、ディスクリプタに対応するデバイスとしてデータカードをマップする。ホストのオペレーティングシステムは、ディスクリプタに対応するデバイスのネットワークカードドライバをロードし、かつネットワークカードブロードキャストパケットをデータカードに配信する。データカードによって仮想化されたネットワークカードがネットワークカードブロードキャストパケットを受信した場合に、データカードとホストとの間の通信が正常であることを示す。
【実施例】
【0032】
実施例1
データカードを使用する一部の方法において、ウイルス撃退ソフトウェア、又は、システム保護ソフトウェア、又は、他の要因のために、データカードとホストとの間の通信に異常が発生し、データカードは、もはや使用することができない。この場合、データカードがプラグアウトされ、そして、プラグインされても、又は、コンピュータが再起動された場合であっても、データカードは依然として正常な使用に戻すことができない。図2に示すように、本発明のこの実施例は、データカードの異常から回復する方法を提供する。
ステップは、以下を含む
【0033】
201:データカードとホストとの間の通信に異常が発生した場合、ホストのオペレーティングシステムを回復するために、データカードの回復データを実行する。
【0034】
図1において示されるデータカード及びホストの間で通信を実行する方法において、以下の異常が発生し得る。
【0035】
第1の異常として、データカードは、予め設定された期間において、ホストによって送られたミニコンピュータシステムインターフェース命令を受信することに失敗する。データカードが、予め設定された期間で、ホストによって送られたミニコンピュータシステムインターフェース命令を受信することに失敗したか否かが判断される。「はい」の場合は、データカードとホストとの間の通信に異常が発生したと判断される。データカードがホストに接続されたあと、ホストはデータカードを列挙する。データカードは光ディスクディスクリプタをホストに報告し、かつホストは光ディスクディスクリプタに従ってデータカードを光ディスクとしてマップする。ホストは、ミニコンピュータシステムインターフェース命令を、光ディスクとしてマップされるデータカードに配信する。データカードは、ホストによって配信されるミニコンピュータシステムインターフェース命令を受信する。データカードが、予め設定された期間において、ホストによって送られたミニコンピュータシステムインターフェース命令を受信することに失敗した場合に、ホストのオペレーティングシステムのタイプがうまく検出されないために、異常が発生したと考えられる。
【0036】
第2の異常において、データカードのデバイス情報ファイルは、ホストに正しくインストールされることに失敗する。データカードの自動実行(autorun)プログラムの異常終了が発生したか否かが判断される。「はい」の場合は、データカードとホストとの間の通信異常が発生したと判断される。ホストのオペレーティングシステムのタイプがWindows XPであることが検出された場合に、データカードは光ディスクディスクリプタをホストに報告し、かつホストは光ディスクディスクリプタに従って光ディスクとしてデータカードをマップする。光ディスクは、デバイス情報ファイルautorunデバイス情報ファイルを含む。ホストは、自動的にautorunデバイス情報ファイルを実行し、autorunデバイス情報ファイルをホストにインストールする。autorunデバイス情報ファイルの実行のプロセスが失敗し、ホストにインストールされなかった場合、異常が発生したと考えられる。
【0037】
第3の異常において、ネットワークカードモードに切り替えられた後に、データカードは、ホストによって送られたネットワークカードブロードキャストパケットを受信することに失敗する。ネットワークモードに切り替えられた後に、データカードがホストによって送られたネットワークカードブロードキャストパケットを受信したか否かが判断される。「はい」の場合(受信できない場合)は、データカードとホストとの間の通信に異常が発生したと判断される。ホストがすでに対応するデータカードのネットワークドライバをロードし、かつデータカードがこの時点でネットワークカードモードにすでに切り替えられているときに、通常のケースで、ネットワークカードはホストによって配信されるネットワークカードブロードキャストパケットを受信しなければならない。ネットワークカードがホストによって配信されるネットワークカードブロードキャストパケットを受信することに失敗した場合、異常が発生したと考えられる。
【0038】
上述の異常のうちいかなる一つでも発生した場合、データカードの回復データが、ホストのオペレーティングシステムを回復するために実行される。
【0039】
具体的には、上述の異常のうちいかなる一つでも発生した場合、データカードは自動的にデータカードの回復データを実行する。例えば、自動実行プログラムautorunは、データを回復するために使用されてもよい。或いは、ホストのオペレーティングシステムを回復するように、ユーザが手動でデータカードの回復データを実行してもよい。
【0040】
ホストのオペレーティングシステムを回復するデータカードの回復データの実行は、データカードをリセットすること、記憶デバイスディスクリプタを報告すること、記憶デバイスとしてデータカードをマップすること及び、ホストのオペレーティングシステムを回復するために、記憶デバイスとしてマップされるデータカードの回復データを実行することを任意に含んでもよい。
【0041】
具体的には、データカードは、ホストがデータカードを列挙するようトリガをかけるために、リセットされる。データカードは、光ディスクディスクリプタをホストに報告する。光ディスクディスクリプタはデータカードを光ディスクとしてマップする。ホストのオペレーティングシステムは、光ディスクとしてマップされるデータカードの回復データに従って回復される。或いは、データカードの命令レジスタがUSBモジュールをリセットし、かつデータカードが光ディスクディスクリプタをホストに報告する。光ディスクディスクリプタはホストが、データカードを光ディスクとしてマップすることを可能にするために使用される。光ディスクとしてマップされたデータカードは、回復データを含む。回復データを実行するための方法は、自動実行プログラムautorunにより回復データを実行してもよく、又は、手動で回復データを実行してもよい。
【0042】
任意に、データカードは、ホストがデータカードを列挙するようトリガするためにリセットされる。データカードは、USB記憶デバイスディスクリプタをホストに報告する。USB記憶デバイスディスクリプタはデータカードをUSB記憶デバイスとしてマップする。ホストのオペレーティングシステムは、USB記憶デバイスとしてマップされたデータカードの回復データに従って回復される。或いは、データカードの命令レジスタはUSBモジュールをリセットし、かつデータカードはUSB記憶デバイスディスクリプタをホストに報告する。USB記憶デバイスディスクリプタはホストがデータカードをUSB記憶デバイスとしてマップすることを可能にするために使用される。USB記憶デバイスとしてマップされたデータカードは、回復データを含む。回復データを実行するための方法は、自動的に自動実行プログラムautorunによる回復データを実行してもよく、又は手動で回復データを実行してもよい。
【0043】
回復データは、ホストのオペレーティングシステムを回復させる。これによって、オペレーティングシステムは、異常が発生する前の状態にリストアされる。データカードとホストとの間の通信を実行するプロセスにおいて、異なる異常が発生したあと、ホストのオペレーティングシステムは異なる状態となる。例えば、第2の異常、又は、第3の異常が発生した場合、データカードの情報はホストのオペレーティングシステムのレジストリにすでに記録され、かつデバイス情報ファイルはインストールされている。この場合、回復オペレーションにおいて、ホストのオペレーティングシステムのレジストリにすでに記録されているデータカードの情報及びホストのデバイス情報ファイルは、削除されることが望ましい。第1の異常が発生した場合、データカードの情報だけがホストのオペレーティングシステムのレジストリに記録され、かつデバイス情報ファイルはまだホストにインストールされないので、回復オペレーションにおいて、ホストのオペレーティングシステムのレジストリにすでに記録されたデータカードの情報だけが削除されることが望ましい。任意に、実際のオペレーションで、便宜のためにオペレーションの中で、ホストのオペレーティングシステム及びホストのデバイス情報ファイルのレジストリにすでに記録されたデータカードの情報を同時に削除する方法が通常採用される。
【0044】
202:データカードをリセットし、かつ光ディスクディスクリプタを報告する。
【0045】
ホストのオペレーティングシステムを回復するように、回復データがうまく実行されたあと、データカードはリセットされ、かつデータカードは光ディスクディスクリプタを報告する。光ディスクディスクリプタはホストがデータカードを光ディスクとしてマップすることを可能にするために使用される。
【0046】
具体的には、データカードの自動命令レジスタ(automatic instruction register)が、USBモジュールをリセットするために使用されてもよく、或いは、データカードをリセットするために、データカードをユーザが手動でプラグアウトし、かつプラグインしてもよい。
【0047】
203:データカードは、受信されたミニコンピュータシステムインターフェース命令に従って、ホストのオペレーティングシステムのタイプを検出する。
【0048】
データカードがホストによって光ディスクとしてマップされたあと、ホストはミニコンピュータシステムインターフェース命令をデータカードに送信し、かつデータカードは受信されたミニコンピュータシステムインターフェース命令に従ってホストのオペレーティングシステムのタイプを検出する。
【0049】
具体的には、オペレーションコード0XA2を含むミニコンピュータシステムインターフェース命令が受信された場合、オペレーティングシステムはWindows VISTA、又は、Windows 7と特定され、かつデータカードはRNDISデバイスディスクリプタをホストに報告する。ディスクリプタはホストがデータカードをRNDISデバイスとしてマップすることを可能にするために使用される。オペレーションコード0XBBを含むミニコンピュータシステムインターフェース命令が受信された場合、オペレーティングシステムはMAC、又は、Linuxと特定され、かつデータカードはCDC−ECMデバイスディスクリプタをホストに報告する。ディスクリプタはホストがデータカードをCDC−ECMデバイスとしてマップすることを可能にするために使用される。上述の2つのタイプのミニコンピュータシステムインターフェース命令のうちいずれも受信されない場合、オペレーティングシステムはWindows XPと特定され、かつデータカードは光ディスクディスクリプタをホストに報告する。光ディスクディスクリプタはホストがデータカードを光ディスクとしてマップすることを可能にするために使用される。
【0050】
さらに、ホストのオペレーティングシステムのタイプがうまく検出されたあと、ホストはデータカードドライバをロードし、かつデータカードはホストによって配信されるネットワークカードブロードキャストパケットを受信する。
【0051】
具体的には、ホストは、受信されたディスクリプタに従って、ディスクリプタに対応するデバイスとしてデータカードをマップする。ホストのオペレーティングシステムは、ディスクリプタに対応するデバイスのネットワークカードドライバをロードし、かつネットワークカードブロードキャストパケットをデータカードに配信する。データカードによって仮想化されたネットワークカードがネットワークカードブロードキャストパケットを受信した場合に、データカードとホストとの間の通信が正常であることを示す。具体的インプリメンテーションは、図1におけるステップ104〜107に記載されており、再度ここに記載しない。
【0052】
本発明のこの実施例によれば、データカードを使用するプロセスの間、データカードとホストとの間の通信に異常が発生し、したがって、データカードがウイルス撃退ソフトウェア、又は、システム保護ソフトウェア、又は、他の要因のためにもはや使用することができなくなった場合、異常は自動的に回復され、このことにより非常に回復効率を改善し、かつ、回復時間及び回復の複雑度を減少させることが可能である。
実施例2
【0053】
図3は、本発明の実施例においてデータカードの異常から回復する方法を示している。回復する方法は、データカードとwindows xpのオペレーティングシステムのタイプのホストとの間のインプリメントの通信のプロセスにおいて発生した異常に対して提供される。具体的なステップは以下のステップを含む。
【0054】
301:ホストにデータカードを接続する。ホストはデータカードを列挙し、かつデータカードは第1の光ディスクディスクリプタをホストに報告する。
【0055】
データカードがホストのUSBインターフェースに挿入されたあと、データカード及びホストはUSBインターフェースで相互に接続される。ホストは、新規なデバイスがホストに接続されたことを検出する。そして、データカードの情報を得るようにデータカードを列挙する。データカードは、第1の光ディスクディスクリプタをホストに報告する。ディスクリプタは、ホストがデータカードを第1の光ディスクとしてマップすることを可能にする。ホストは、第1の光ディスクディスクリプタに従って第1の光ディスクとしてデータカードをマップする。ホストは、ミニコンピュータシステムインターフェース命令を、第1の光ディスクとしてマップされるデータカードに送信する。データカードは、ホストによって配信されたミニコンピュータシステムインターフェース命令を受信する。
【0056】
302:ホストは、データカードを第1の光ディスクとしてマップし、かつデータカードはホストのオペレーティングシステムのタイプを検出する。
【0057】
データカードは、ホストによって第1の光ディスクとしてマップされる。そして、データカードは、ホストから受信されるミニコンピュータシステムインターフェース命令に従って、ホストのオペレーティングシステムのタイプを検出する。オペレーションコード0XA2を含むミニコンピュータシステムインターフェース命令が受信された場合、オペレーティングシステムはWindows VISTA、又は、Windows 7と特定される。オペレーションコード0XBBを含むミニコンピュータシステムインターフェース命令が受信された場合、オペレーティングシステムはMAC、又は、Linuxと特定される。上述の2つのタイプのミニコンピュータシステムインターフェース命令のうちのいずれも受信されない場合、オペレーティングシステムはWindows XPと特定される。
【0058】
303:ホストのオペレーティングシステムのタイプがうまく検出されたか否か判断する。オペレーティングシステムのタイプがうまく検出され、かつ検出結果がWindows XPである場合、ステップ304に移る。オペレーティングシステムのタイプの検出に失敗した場合、ステップ310に移る。
【0059】
304:ホストのオペレーティングシステムのタイプがWindows XPである場合、データカードは第2の光ディスクディスクリプタをホストに報告する。
【0060】
ホストのオペレーティングシステムのタイプがうまく検出され、かつホストのオペレーティングシステムのタイプがWindows XPである場合、データカードは第2の光ディスクディスクリプタをホストに報告する。ディスクリプタはホストがデータカードを第2の光ディスクとしてマップすることを可能にするために使用され、かつ第2の光ディスクとしてマップされたデータカードは、デバイス情報ファイルautorun.infを含む。
【0061】
305:ホストは、データカードを第2の光ディスクとしてマップし、かつ、第2の光ディスクとしてマップされるデータカードのデバイス情報ファイルautorunデバイス情報ファイルがホストにインストールされる。
【0062】
ホストは、受信された第2の光ディスクディスクリプタに従って、データカードを第2の光ディスクとしてマップする。第2の光ディスクとしてマップされたデータカードは、デバイス情報ファイルautorun.infを含み、デバイス情報ファイルは、ホストにインストールされる。
【0063】
306:autorunデバイス情報ファイルのインストールが正常に終わったことを判断する。
【0064】
autorunデバイス情報ファイルをインストールするプロセスにおいて、アンチウィルスソフトウェアは、autorun.infに対して自動実行を妨げることがある。或いは、システム保護ソフトウェアが動作して自動的にautorun.infの自動実行を妨げることがある。或いは、他の理由で、autorun.infは、インストールを妨げられることがある。これによって、デバイス情報ファイルがホストに正常にインストールされることが失敗に終わる。
【0065】
autorunデバイス情報ファイルのインストールが正常に終わったと判断された場合には、ステップ307に移る。インストールが正常に終わらなかった場合には、ステップ310に移る。
【0066】
307:ホストのオペレーティングシステムは対応するドライバをロードし、かつデータカードによって仮想化されたネットワークカードは、ホストによって配信されるネットワークカードブロードキャストパケットを受信する。
【0067】
autorunデバイス情報ファイルがホストに正常にインストールされたのち、ホストのオペレーティングシステムは対応するデータカードドライバをロードする。この場合には、データカードは、ネットワークカードを仮想化し、かつネットワークカードモードにすでに切り替える。ホストはネットワークカードブロードキャストパケットをデータカードに配信し、かつデータカードはホストによって配信されるネットワークカードブロードキャストパケットを受信する。
【0068】
308:ホストによって配信されるネットワークカードブロードキャストパケットが受信されるか否かが判断される。
【0069】
ステップ307の後、通常のケースで、ネットワークカードとして仮想化されたデータカードは、ホストによって配信されるネットワークカードブロードキャストパケットを受信しなければならないネットワークカードが、ホストによって配信されるネットワークカードブロードキャストパケットを受信することに失敗した場合、異常が発生したと考えられる。
【0070】
ホストによって配信されるネットワークカードブロードキャストパケットが受信されたか否か判断する。「いいえ」の場合は、ステップ310に移る。「はい」の場合は、ステップ309に移る。
【0071】
309:データカードは、正常にホストと通信する。
【0072】
ホストはネットワークカードブロードキャストパケットをデータカードに配信し、かつデータカードはホストによって配信されるネットワークカードブロードキャストパケットを受信する。この場合、データカードは、ホストと正常に通信している。
【0073】
310:命令によって、データカードをリセットする。ホストは再びデータカードを列挙し、かつデータカードは第3の光ディスクディスクリプタをホストに報告する。
【0074】
ステップ303、306及び308で、3つのタイプの異常が発生した後、ステップ310に移る。この場合、データカードの命令レジスタはUSBモジュールがデータカードをリセットすることを可能にする。ホストは再びデータカードを列挙し、かつデータカードは第3の光ディスクディスクリプタをホストに報告する。第3の光ディスクディスクリプタはホストがデータカードを第3の光ディスクとしてマップすることを可能にするために使用され、かつ第3の光ディスクとしてマップされたデータカードは回復データを含む。任意に、データカードは、また、USB記憶デバイスディスクリプタをホストに報告してもよい。USB記憶デバイスディスクリプタはホストがデータカードをUSB記憶デバイスとしてマップすることを可能にするために使用され、かつUSB記憶デバイスとしてマップされたデータカードは回復データを含む。
【0075】
311:ホストはデータカードを第3の光ディスクとしてマップする。ホストのオペレーティングシステムを回復するために、第3の光ディスクとしてマップされたデータカードの回復データを実行する。
【0076】
ホストは、データカードによって報告された第3の光ディスクディスクリプタに従って、データカードを第3の光ディスクとしてマップし、第3の光ディスクとしてマップされたデータカードは、回復データを含む。或いは、ホストは、データカードによって報告されたUSB記憶デバイスディスクリプタに従って、データカードをUSB記憶デバイスとしてマップし、USB記憶デバイスとしてマップされたデータカードは回復データを含む。
ホストのオペレーティングシステムを回復するために、回復データは、実行されることが望ましい。回復データを実行するための方法は、自動実行プログラムにより回復データを自動的に実行してもよく、又は手動で回復データを実行してもよい。ホストのオペレーティングシステムを回復する目的は、ホストのオペレーティングシステムのレジストリにすでに記録されたデータカードの情報を削除し、かつホストのデバイス情報ファイルを削除することである。デバイス情報ファイルは、データカードからホストにインストールされる。
【0077】
ホストのオペレーティングシステムは、オペレーティングシステムをリストアするために、異常が発生する前の状態に回復される。データカードとホストとの間の通信をインプリメントするプロセスにおいて、異なる異常が発生したあと、ホストのオペレーティングシステムは異なる状態に置かれ得る。例えば、第2の異常、又は、第3の異常が発生した場合、データカードの情報はホストのオペレーティングシステムのレジストリにすでに記録され、かつデバイス情報ファイルはインストールされている。この場合、回復オペレーションにおいて、ホストのオペレーティングシステムのレジストリにすでに記録されたデータカードの情報及びホストのデバイス情報ファイルは、削除されることが望ましい。第1の異常が発生した場合、データカードの情報だけがホストのオペレーティングシステムのレジストリにすでに記録され、かつデバイス情報ファイルはまだホストにインストールされていないため、回復オペレーションにおいて、ホストのオペレーティングシステムのレジストリにすでに記録されたデータカードの情報だけが削除されることが望ましい。任意に、実際のオペレーションで、便宜のためにオペレーションとして、ホストのオペレーティングシステム及びホストのデバイス情報ファイルのレジストリにすでに記録されたデータカードの情報を同時に削除する方法が通常採用される。
【0078】
312:回復オペレーションが正常に終わったかが判断される。
【0079】
311における回復オペレーション311が正常に終わったか否かが判断される。「いいえ」の場合は、もう一度ホストのオペレーティングシステムを回復するために回復データを実行するべくステップ311に移る。「はい」の場合は、ステップ313に移る。
【0080】
313:命令により、データカードをリセットし、又は、プラグアウト及びプラグインにより、データカードをリセットする。
【0081】
回復ソフトウェアがデータカードをリセットするためにうまく実行されたあと、データカードはデータカードに命令を出すことによってリセットされてもよく、又は、データカードを手動でプラグアウトしプラグインすることによってデータカードをリセットしてもよい。
【0082】
データカードがリセットされたあと、データカードとホストとの間の通信を確立する新たなプロセスに入るために、ステップ301に移る。
【0083】
本発明のこの実施例によって、データカードとWindows XPのタイプのオペレーティングシステムを持つホストとの間の通信のプロセスにおいて、データカードとホストとの間で異常が発生した場合であって、ウイルス撃退ソフトウェア又はシステム保護ソフトウェアのために、データカードがもはや使えなくなった場合、この異常は、自動的に回復することができる。これによって、回復の効率を改善し、かつ回復時間及び回復の複雑度を低減することが可能である。
実施例3
【0084】
さらにまた、図4は、本実施例における本発明のデータカードの異常から回復する他の方法を示す。回復する方法は、データカードとWindows XPであるオペレーティングシステムのタイプを有するホストとの間の通信に発生した異常に提供される。
具体的なステップは以下を含む。
【0085】
401:ホストにデータカードを接続する。ホストはデータカードを列挙し、かつデータカードは光ディスクディスクリプタをホストに報告する。
【0086】
データカードがホストのUSBインターフェースに挿入されると、データカードとホストとはUSBインターフェースで相互に接続される。ホストは、新たなデータカードがホストに接続されたことを検出する。そして、データカードの情報を得るためにデータカードを列挙する。データカードは、光ディスクディスクリプタをホストに報告する。ディスクリプタはホストがデータカードを光ディスクとしてマップすることを可能にする。ホストは、光ディスクディスクリプタに従ってデータカードを光ディスクとしてマップする。ホストは、ミニコンピュータシステムインターフェース命令をデータカードに送信する。データカードは、ホストによって配信されるミニコンピュータシステムインターフェース命令を受信する。
【0087】
光ディスクは、デバイス情報ファイルautorun.infを含み、かつデバイス情報ファイルがホストにインストールされる。データカードとホストとの間の通信を確立するプロセスにおいて、データカードがネットワークカードとして仮想化される前に、データカードは光ディスク状態として存在する。
【0088】
402:ホストはデータカードを光ディスクとしてマップし、かつデータカードはホストのオペレーティングシステムのタイプを検出する。
【0089】
このステップは、ステップ302と同じようにインプリメントされる。
【0090】
403:このステップはステップ302と同様に実行される。ホストのオペレーティングシステムのタイプがうまく検出されたか否かが判断される。オペレーティングシステムのタイプがうまく検出され、かつ検出結果がWindows XPである場合、ステップ404に移る。
オペレーティングシステムのタイプの検出に失敗した場合、ステップ407に移る。
【0091】
404:データカードのデバイス情報ファイルautorun.infデバイス情報ファイルをホストにインストールする。
【0092】
光ディスクとしてマップされたデータカードがデバイス情報ファイルautorun.infを含み、かつ、デバイス情報ファイルがホストにインストールされる。
【0093】
405:autorunのインストールのプロセスにおいて、デバイス情報ファイルのインストールが正常に終わったか否かが判断される。
【0094】
autorunデバイス情報ファイルをインストールするプロセスにおいて、アンチウィルスソフトウェアがautorun.infの自動的な実行を妨げることがある。或いは、システム保護ソフトウェアがautorun.infの自動的な実行を妨げることがある。或いは、他の理由で、autorun.infのインストールが不成功になることがある。これによって、ホストに対してデバイス情報ファイルの正常なインストールが失敗に終わる。
【0095】
autorunデバイス情報ファイルが正常に終わったと判断された場合には、ステップ405に移る。インストールが正常に終わらなかった場合、ステップ407に移る。
【0096】
406:ホストのオペレーティングシステムは対応するドライバをロードし、データカードによって仮想化されたネットワークカードは、ホストによって配信されるネットワークカードブロードキャストパケットを受信する。
【0097】
このステップは、ステップ307と同様に実行される。
【0098】
407:ホストのオペレーティングシステムを回復するために、データカードの回復データを実行する。
【0099】
データカードは常に光ディスク状態にあり、かつ光ディスクとしてマップされたデータカードは回復データを含む。ホストのオペレーティングシステムを回復するために、回復データが実行されることが望ましい。回復データを実行するための方法は、自動実行プログラムにより回復データを自動的に実行してもよく、又は手動で回復データを実行してもよい。ホストのオペレーティングシステムを回復する目的は、ホストのオペレーティングシステムのレジストリにすでに記録されたデータカードの情報を削除し、かつホストのデバイス情報ファイルを削除することである。デバイス情報ファイルは、データカードからホストにインストールされる。
【0100】
ホストのオペレーティングシステムはオペレーティングシステムを、異常が発生する前の状態にリストアさせるために回復される。データカードとホストとの間の通信を実行するプロセスにおいて、異なる異常が発生したあと、ホストのオペレーティングシステムは異なる状態となり得る。例えば、実施例1の第2の異常が発生した場合、データカードの情報はホストのオペレーティングシステムのレジストリにすでに記録され、かつデバイス情報ファイルはインストールされている。この場合、回復オペレーションにおいて、ホストのオペレーティングシステムのレジストリにすでに記録されたデータカードの情報及びホストのデバイス情報ファイルは、削除されることが望ましい。実施例1の第1の異常が発生した場合、データカードの情報だけがホストのオペレーティングシステムのレジストリにすでに記録され、かつデバイス情報ファイルはまだホストにインストールされていないため、回復オペレーションにおいて、ホストのオペレーティングシステムのレジストリにすでに記録されたデータカードの情報だけが削除されることが望ましい。任意に、実際のオペレーションで、便宜のためにオペレーションにおいて、ホストのオペレーティングシステム及びホストのデバイス情報ファイルのレジストリにすでに記録されたデータカードの情報を同時に削除する方法が、通常採用される。
【0101】
ステップ408及び409は、ステップ312及び313と同様に実行される。
【0102】
さらに、データカードとホストとの間の通信のプロセスの進行中に、データカードは複合デバイスとして常にマップされる。そして、複合デバイスとしてマップされたデータカードは、光ディスクとして常にマップされる。複合デバイスとしてマップされたデータカードは、常に光ディスクを含み、かつ、データカードがネットワークカードとして切り替わった後も、光ディスクは依然として存在する。光ディスクは、回復データを含む。回復データは、ホストのオペレーティングシステムを回復するために使用される。ユーザは、いつでも光ディスクに含まれる回復データによって、システムを回復してもよい。回復データがうまく実行されたあと、データカードはデータカードに命令を出すことによってリセットされる。或いは、データカードは、手動でプラグアウト及びプラグインすることによってリセットされる。
【0103】
本発明のこの実施例によって、データカードとWindows XPのタイプのオペレーティングシステムを有するホストとの間の通信中において、データカードとホストとの間の通信に異常が発生した場合であって、したがって、データカードが、ウイルス撃退ソフトウェア、又は、システム保護ソフトウェア、又は、他の要因のためにもはや使用することができない場合、異常は、自動的に回復される。このことにより回復効率を大きく改善し、かつ、回復時間及び回復の複雑度を減少させることが可能である。
実施例4
【0104】
図5は、本発明の実施例においてデータカードの異常から回復する他の方法を示している。回復する方法は、データカードとオペレーティングシステムとしてWindows VISTA、又は、Windows 7のタイプを有するホストとの間の通信に発生した異常に対して提供される。具体的なステップは以下のとおりである。
【0105】
501−503:ステップ501〜503はステップ301〜303と同様に実行される。
【0106】
504:ホストのオペレーティングシステムのタイプがWindows VISTA、又は、Windows 7である場合、データカードはRNDISデバイスディスクリプタをホストに報告する。
【0107】
ホストのオペレーティングシステムのタイプがうまく検出され、かつオペレーティングシステムのタイプがWindows VISTA、又は、Windows 7である場合、データカードはRNDISデバイスディスクリプタをホストに報告する。RNDISデバイス、ディスクリプタはホストがデータカードをマップすることを可能にするために使用される。
【0108】
505:ホストはデータカードをRNDISデバイスとしてマップする。ホストのオペレーティングシステムは対応するドライバをロードし、かつデータカードによって仮想化されたネットワークカードは、ホストによって配信されるネットワークカードブロードキャストパケットを受信する。
【0109】
ホストは、受信されたRNDISデバイスディスクリプタに従って、データカードをRNDISデバイスとしてマップする。そして、ホストのオペレーティングシステムは、対応するデータカードドライバをロードする。この場合には、データカードは、成功裏にネットワークカードを仮想化しており、すでにネットワークカードのモードにスイッチしている。ホストはネットワークカードブロードキャストパケットをデータカードに配信し、かつデータカードはホストによって配信されたネットワークカードブロードキャストパケットを受信する。
【0110】
506−508:ステップ506〜508はステップ308〜310と同様に実行される。
【0111】
509:ホストはデータカードを光ディスクとしてマップする。ホストのオペレーティングシステムを回復するために光ディスクとしてマップされたデータカードの回復データを実行する。
【0112】
ホストは、データカードによって報告された光ディスクディスクリプタに従って、データカードを光ディスクとしてマップし、かつ光ディスクは回復データを含む。或いは、ホストは、データカードによって報告されたUSB記憶デバイスディスクリプタに従って、データカードをUSB記憶デバイスとしてマップし、かつUSB記憶デバイスは回復データを含む。ホストのオペレーティングシステムを回復するために、回復データは、実行されることが望ましい。回復データを実行するための方法は、自動実行プログラムにより回復データを自動的に実行してもよく、又は手動で回復データを実行してもよい。ホストのオペレーティングシステムを回復する目的は、ホストのオペレーティングシステムのレジストリにすでに記録されたデータカードの情報を削除することである。
【0113】
510−511:ステップ510及び511はステップ312及び313と同様に実行される。
【0114】
本発明のこの実施例によって、データカードとWindows VISTA、又は、Windows 7のオペレーティングシステムのタイプを有するホストとの間の通信中の異常が、データカードとホストとの間の通信に発生した場合、したがって、データカードがウイルス撃退ソフトウェア、又は、システム保護ソフトウェア、又は、他の要因のためにもはや使用することができない場合、異常は、自動的に回復され、このことにより大いに回復効率が改善され、かつ、回復時間及び回復の複雑度を減少させることが可能である。
【0115】
実施例による方法のステップの全て、又は、部分は、関連したハードウェアに命令するプログラムによって実行されてもよい。プログラムは、計算機可読の記憶媒体に記憶されてもよい。プログラムが動作するときに、実施例による方法のステップが実行される。記憶媒体は、プログラムコードを記憶することが可能ないかなる媒体、例えばROM、RAM、磁気ディスク、又は、光ディスクであってもよい。
実施例5
【0116】
図6は、本発明の実施例によって開示されるデータカードとホストとの間での通信異常から回復する方法に対応する本発明の実施例によって提供されるデータカードの模式的な構造図である。データカードは、受信ユニット601、判断ユニット602、検出ユニット603、及び回復ユニット604を有する。
【0117】
受信ユニット601は、ホストによって配信される情報を受信するように構成される。情報は、ホストによって配信された、ミニコンピュータシステムインターフェース命令、又は、ホストによって配信されたデバイス情報ファイルを正しくインストールされることに失敗した情報、又はホストによって配信されたネットワークカードブロードキャストパケットを含む。
【0118】
判断ユニット602は、データカードとホストとの間の通信に異常が発生したか否かを判断し、かつデータカードが、予め設定された期間において、ホストによって送られたミニコンピュータシステムインターフェース命令を受信することに失敗した場合に、データカードとホストとの間の通信に異常が発生したこと、又は、データカードのデバイス情報ファイルがホストに正しくインストールすされることに失敗したこと、又は、データカードがネットワークカードモードに切り替えられた後に、ホストによって送られたネットワークカードブロードキャストパケットを受信することに失敗したことを判断するように構成される。
【0119】
検出ユニット603は、ホストから受信されるミニコンピュータシステムインターフェース命令に従ってホストのオペレーティングシステムのタイプを特定するように構成される。オペレーションコード0XA2を含むミニコンピュータシステムインターフェース命令が受信された場合、オペレーティングシステムはWindows VISTA、又は、Windows 7と特定される。オペレーションコード0XBBを含むミニコンピュータシステムインターフェース命令が受信された場合、オペレーティングシステムはMAC、又は、Linuxと特定される。前記2つのタイプのミニコンピュータシステムインターフェース命令のいずれも受信されない場合、オペレーティングシステムはWindows XPと特定される。
【0120】
回復ユニット604は、データカードとホストとの間の通信に異常が発生した場合、前記ホストの前記オペレーティングシステムを回復するように、前記データカード内の回復データを実行する。ホストのオペレーティングシステムの回復はホストのオペレーティングシステムのレジストリに、すでに記録されたデータカードの情報を削除すること、又は、ホストのオペレーティングシステムのレジストリに、すでに記録されたデータカードの情報を削除すること、及びホストのデバイス情報ファイルを削除すること、を特に含み、デバイス情報ファイルが、データカードからホストにインストールされる。
【0121】
本発明のこの実施例によれば、データカードとホストとの間の通信のプロセスの進行中に、データカードとホストとの間の通信に異常が発生した場合、したがって、データカードがウイルス撃退ソフトウェア、又は、システム保護ソフトウェア、又は、他の要因のためにもはや使用することができない場合、異常は自動的に回復され、このことにより非常に回復効率を改善し、かつ回復時間及び回復の複雑度を減少させることが可能である。
実施例6
【0122】
図7は、本発明のこの実施例によって提供されるデータカードの模式的な構造図である。データカードは、受信ユニット601、判断ユニット602、検出ユニット603、及び回復ユニット604を含む。
【0123】
受信ユニット601は、ホストによって配信される情報を受信するように構成される。情報は、ホストによって配信されたミニコンピュータシステムインターフェース命令、又は、ホストによって配信されたデバイス情報ファイルが正しくインストールされることに失敗した情報、又はホストによって配信されたネットワークカードブロードキャストパケットを含む。
【0124】
判断ユニット602は、データカードとホストとの間の通信に異常が発生したか否かを判断し、及びデータカードが、予め設定された期間において、ホストによって送られたミニコンピュータシステムインターフェース命令を受信することに失敗した場合に、異常がデータカードとホストとの間の通信に発生したこと、又は、データカードのデバイス情報ファイルがホストに正しくインストールされることに失敗したこと、又は、データカードがネットワークカードモードに切り替えられた後に、ホストによって送られたネットワークカードブロードキャストパケットを受信することに失敗したことを判断するように構成される。
【0125】
検出ユニット603は、ホストから受信されるミニコンピュータシステムインターフェース命令に従ってホストのオペレーティングシステムのタイプを特定するように構成される。オペレーションコード0XA2を含むミニコンピュータシステムインターフェース命令が受信された場合、オペレーティングシステムはWindows VISTA、又は、Windows 7と特定される。オペレーションコード0XBBを含むミニコンピュータシステムインターフェース命令が受信された場合、オペレーティングシステムはMAC、又は、Linuxと特定される。前記2つのタイプのミニコンピュータシステムインターフェース命令のいずれも受信されない場合、オペレーティングシステムはWindows XPと特定される。
【0126】
回復ユニット604は、データカードとホストとの間の通信に異常が発生した場合、前記ホストの前記オペレーティングシステムを回復するように、前記データカード内の回復データを実行する。ホストのオペレーティングシステムの回復はホストのオペレーティングシステムのレジストリに、すでに記録されたデータカードの情報を削除すること、又は、ホストのオペレーティングシステムのレジストリに、すでに記録されたデータカードの情報を削除すること、及びホストのデバイス情報ファイルを削除すること、を特に含み、デバイス情報ファイルが、データカードからホストにインストールされる。
【0127】
さらにまた、データカードは、記憶ユニット605、リセットユニット606、スイッチングユニット607、及びネットワークアクセスユニット608を含む。
【0128】
記憶ユニット605は、回復データを記憶するように構成される。
【0129】
リセットユニット606は、データカードをリセットするように構成される。
【0130】
スイッチングユニット607は、データカードをネットワークカードモードに切り替えるように構成される。
【0131】
ネットワークアクセスユニット608は、ワイヤレスネットワークアクセス機能を実行するように構成される。
【0132】
上述の装置におけるユニット間の情報交換及びインプリメンテーションのプロセスは、本発明の実施例の方法のコンセプトと同様である。したがって、本発明の方法の実施例の詳細な記載を参照することができ、ここでは、同じ記載を繰り返さない。
【0133】
本発明のこの実施例によれば、データカードとホストとの間の通信のプロセスにおいて、データカードとホストとの間の通信に異常が発生し、したがって、データカードがウイルス撃退ソフトウェア、又は、システム保護ソフトウェア、又は、他の要因のためにもはや使用することができない場合、異常は自動的に回復され、このことにより非常に回復効率を改善し、かつ、回復時間及び回復の複雑度を減少させることが可能である。
【0134】
上述の説明は単に本発明の例示的実施形態のみであり、したがって、本発明の保護範囲は本願明細書に制限されない。あらゆる変更態様(均等物)、又は、直ちに考えられる改善は、本発明の技術的な範囲から逸脱することなく、当業者のための本発明の保護範囲に包含される。したがって、本発明の保護範囲は、請求項の保護範囲に依存する。
図1
図2
図3A
図3B
図4
図5
図6
図7