IP Force 特許公報掲載プロジェクト 2022.1.31 β版

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

▶ 富士通クライアントコンピューティング株式会社の特許一覧

特開2024-6704情報処理装置、情報処理方法及び情報処理プログラム
<>
  • 特開-情報処理装置、情報処理方法及び情報処理プログラム 図1
  • 特開-情報処理装置、情報処理方法及び情報処理プログラム 図2
  • 特開-情報処理装置、情報処理方法及び情報処理プログラム 図3
  • 特開-情報処理装置、情報処理方法及び情報処理プログラム 図4
  • 特開-情報処理装置、情報処理方法及び情報処理プログラム 図5
  • 特開-情報処理装置、情報処理方法及び情報処理プログラム 図6
  • 特開-情報処理装置、情報処理方法及び情報処理プログラム 図7
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024006704
(43)【公開日】2024-01-17
(54)【発明の名称】情報処理装置、情報処理方法及び情報処理プログラム
(51)【国際特許分類】
   G06F 3/00 20060101AFI20240110BHJP
【FI】
G06F3/00 F
【審査請求】未請求
【請求項の数】5
【出願形態】OL
(21)【出願番号】P 2022107843
(22)【出願日】2022-07-04
(71)【出願人】
【識別番号】518133201
【氏名又は名称】富士通クライアントコンピューティング株式会社
(74)【代理人】
【識別番号】110002147
【氏名又は名称】弁理士法人酒井国際特許事務所
(72)【発明者】
【氏名】山本 茂樹
(57)【要約】
【課題】情報処理装置に接続される可搬型装置を適切に管理することができる情報処理装置、情報処理方法及び情報処理プログラムを提供することにある。
【解決手段】情報処理装置は、情報処理装置に接続される装置に関する情報を示す装置情報を生成する装置情報生成部と、前記装置情報生成部が生成した前記装置情報に基づいて、前記装置が接続される可搬型装置が前記装置情報に含まれているか否かを判定する装置情報判定部と、前記装置情報判定部が判定した判定結果に基づいて、前記可搬型装置がデバイスロスト状態であることを示すデバイスロスト情報を出力する出力部と、を備える。
【選択図】図3
【特許請求の範囲】
【請求項1】
情報処理装置に接続される装置に関する情報を示す装置情報を生成する装置情報生成部と、
前記装置情報生成部が生成した前記装置情報に基づいて、前記情報処理装置に接続される可搬型装置が前記装置情報に含まれているか否かを判定する装置情報判定部と、
前記装置情報判定部が判定した判定結果に基づいて、前記可搬型装置がデバイスロスト状態であることを示すデバイスロスト情報を出力する出力部と、
を備える情報処理装置。
【請求項2】
前記装置情報は、前記装置を識別する識別子と、前記装置の名称を示す装置名称と、前記装置が前記情報処理装置から取り外し可能であることを示す取り外し情報と、を少なくとも含む、
請求項1に記載の情報処理装置。
【請求項3】
前記装置情報生成部が生成した前記装置情報に基づいて、前記情報処理装置に接続される前記装置が特定できない場合、前記装置を再読み込みする装置再読込部と、
を備える、請求項1または2に記載の情報処理装置。
【請求項4】
情報処理装置に接続される装置に関する情報を示す装置情報を生成する装置情報生成過程と、
前記装置情報生成過程が生成した前記装置情報に基づいて、前記装置が接続される可搬型装置が前記装置情報に含まれているか否かを判定する装置情報判定過程と、
前記装置情報判定過程が判定した判定結果に基づいて、前記可搬型装置がデバイスロスト状態であることを示すデバイスロスト情報を出力する出力過程と、
を備える情報処理方法。
【請求項5】
コンピュータに、
情報処理装置に接続される装置に関する情報を示す装置情報を生成する装置情報生成手段と、
前記装置情報生成手段が生成した前記装置情報に基づいて、前記装置が接続される可搬型装置が前記装置情報に含まれているか否かを判定する装置情報判定手段と、
前記装置情報判定手段が判定した判定結果に基づいて、前記可搬型装置がデバイスロスト状態であることを示すデバイスロスト情報を出力する出力手段と、
して機能させる情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明の実施形態は、情報処理装置、情報処理方法及び情報処理プログラムに関する。
【背景技術】
【0002】
従来、情報処理装置に接続される可搬型装置(一例として、USB(Universal Serial Bus)デバイス等)が物理的には正しく接続されていているにもかかわらず、何かしらの障害が発生すると、元々認識していたはずの可搬型装置が認識されなくなる障害事象(以下、デバイスロストともいう)が発生してしまうことがある。
【0003】
上記障害事象において、例えば、ホストPCあるいは電源からハードリセットをUSBデバイスに対して実行し、該USBデバイスに対して内部初期化を実行する技術が開示されている(例えば、特許文献1)。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2003-208395号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、上記の障害事象は、複数の原因が起因する場合も多く、障害事象を解消できない場合がある。また、特定のUSBデバイスの処理の問題が起因となり、他のUSBデバイスに影響する場合もあるため、更なる改善の余地がある。
【0006】
したがって、本発明が解決する課題の一例は、情報処理装置に接続される可搬型装置を適切に管理することができる情報処理装置、情報処理方法及び情報処理プログラムを提供することにある。
【課題を解決するための手段】
【0007】
本発明の第1態様は、情報処理装置に接続される装置に関する情報を示す装置情報を生成する装置情報生成部と、前記装置情報生成部が生成した前記装置情報に基づいて、前記装置が接続される可搬型装置が前記装置情報に含まれているか否かを判定する装置情報判定部と、前記装置情報判定部が判定した判定結果に基づいて、前記可搬型装置がデバイスロスト状態であることを示すデバイスロスト情報を出力する出力部と、を備える情報処理装置である。
【0008】
また、前記装置情報は、前記装置を識別する識別子と、前記装置の名称を示す装置名称と、前記装置が前記情報処理装置から取り外し可能であることを示す取り外し情報と、を少なくとも含んでもよい。
【0009】
さらに、前記装置情報生成部が生成した前記装置情報に基づいて、前記情報処理装置に接続される前記装置が特定できない場合、前記装置を再読み込みする装置再読込部と、を備えてもよい。
【0010】
また、本発明の第2態様は、情報処理装置に接続される装置に関する情報を示す装置情報を生成する装置情報生成過程と、前記装置情報生成過程が生成した前記装置情報に基づいて、前記装置が接続される可搬型装置が前記装置情報に含まれているか否かを判定する装置情報判定過程と、前記装置情報判定過程が判定した判定結果に基づいて、前記可搬型装置がデバイスロスト状態であることを示すデバイスロスト情報を出力する出力過程と、を備える情報処理方法である。
【0011】
さらに、本発明の第3態様は、コンピュータに、情報処理装置に接続される装置に関する情報を示す装置情報を生成する装置情報生成手段と、前記装置情報生成手段が生成した前記装置情報に基づいて、前記装置が接続される可搬型装置が前記装置情報に含まれているか否かを判定する装置情報判定手段と、前記装置情報判定手段が判定した判定結果に基づいて、前記可搬型装置がデバイスロスト状態であることを示すデバイスロスト情報を出力する出力手段と、して機能させる情報処理プログラムである。
【発明の効果】
【0012】
本発明によれば、情報処理装置に接続される可搬型装置を適切に管理することが可能となる。
【図面の簡単な説明】
【0013】
図1図1は、実施形態に係る情報処理システムの概略的な構成の一例を示す図である。
図2図2は、実施形態に係る情報処理装置のハードウェア構成の一例を示すブロック図である。
図3図3は、実施形態に係る情報処理装置の機能構成の一例を示すブロック図である。
図4図4は、実施形態に係る情報処理装置が生成する装置情報の一例を示すテーブルである。
図5図5は、実施形態に係る情報処理装置で実行される処理の一例を示すフローチャートである。
図6図6は、実施形態に係る情報処理装置で実行される処理の一例を示すフローチャートである。
図7図7は、実施形態に係る情報処理装置で実行される処理の一例を示すフローチャートである。
【発明を実施するための形態】
【0014】
以下、本発明の実施形態を図面に基づいて説明する。以下に記載する実施形態の構成、並びに当該構成によってもたらされる作用及び効果は、あくまで一例であって、以下の記載内容に限られるものではない。
【0015】
図1は、実施形態に係る情報処理システム10の概略的な構成の一例を示す図である。本実施形態に係る情報処理システム10は、情報処理装置1に接続される可搬型装置2を管理するシステムである。
【0016】
情報処理システム10は、情報処理装置1と、情報処理装置1と接続I/F(図示せず)を介して接続する可搬型装置2とを備える。接続I/Fは、USB(Universal Serial Bus)を含む。
【0017】
情報処理装置1は、可搬型装置2を接続して、可搬型装置2にアクセス可能な装置である。情報処理装置1は、例えば、パーソナルコンピュータ等である。可搬型装置2は、情報処理装置1に接続し、情報処理装置1からアクセス可能な不揮発性の記憶装置である。可搬型装置2は、例えば、USBデバイス(USB Flash drive)等である。
【0018】
図2は、実施形態に係る情報処理装置1のハードウェア構成の一例を示すブロック図である。ここで例示する情報処理装置1は、汎用コンピュータと同様の構成を有し、CPU(Central Processing Unit)11、RAM(Random Access Memory)12、ROM(Read Only Memory)13、補助記憶装置14、ユーザI/F(Interface)15及び接続I/F16がバス17により相互に接続されている。
【0019】
CPU11は、ROM13や補助記憶装置14に記憶されたプログラムに従いRAM12をワーキングエリアとして所定の演算処理を行う。補助記憶装置14は、不揮発性メモリであり、CPU11の処理に必要な各種データを記憶する。補助記憶装置14は、例えば、HDD(Hard Disc Drive)やSSD(Solid State Drive)等で構成される。ユーザI/F15は、ユーザと情報処理装置1との間で情報の送受を可能にするデバイスであり、液晶ディスプレイ、キーボード等であり得る。
【0020】
接続I/F16は、外部機器と接続するためのデバイスであり、例えば、例えば、SATA(Serial Advanced Technology Attachment)やUSB(Universal Serial Bus)、PCI Express(Peripheral Component Interconnect-Express)等であり得る。なお、情報処理装置1の構成は上記に限定されるものではない。
【0021】
図3は、実施形態に係る情報処理装置1の機能構成の一例を示すブロック図である。本実施形態に係る情報処理装置1は、装置情報生成部31、記憶部41、装置情報取得部42、装置情報判定部43、装置再読込部44、BIOS判定部45、ハブ判定部46、取り外し判定部47及び出力部48を備える。
【0022】
これらの機能的構成要素31、41~48は、例えば、図2に例示するような情報処理装置1のハードウェア要素とソフトウェア要素(ROM13や補助記憶装置14に記憶されたプログラム等)との協働により構成され得る。なお、情報処理装置1の機能構成は上記に限定されるものではない。
【0023】
装置情報生成部31は、情報処理装置1に接続される装置に関する情報を示す装置情報を生成する。具体的には、装置情報生成部31は、接続I/F16と協働して、情報処理装置1に接続される装置に関する情報を示す装置情報を生成する。また、装置情報生成部31は、装置情報収集部32、通し番号割当部33、装置判定部34、ハブ番号割当部35、上位ハブ番号割当部36、取り外しフラグ割当部37、ポート番号割当部38、識別子取得部39及び装置名称取得部40を備える。
【0024】
装置情報収集部32は、情報処理装置1に接続される装置に関する情報を収集する。具体的には、装置情報収集部32は、情報処理装置1が備える接続I/F16のポート(接続口)を収集する。また、装置情報収集部32は、情報処理装置1が備える接続I/F16に接続される装置に関する情報を収集する。
【0025】
情報処理装置1(接続I/F16)に接続される装置は、例えば、eXtensibleホストコントローラ、USBホストコントローラ(USB Route HUB)、Finger(指紋認証デバイス)、Camera、汎用HUB、KeyBoard、USBデバイス等である。なお、情報処理装置1に接続される装置は、これに限定されない。
【0026】
通し番号割当部33は、情報処理装置1が備える接続I/F16のポートに対して、通し番号を割り当てる。具体的には、通し番号割当部33は、装置情報収集部32が収集した情報処理装置1が備える接続I/F16のポートに対して、接続I/F16に接続される装置を管理するための通し番号を割り当てる。通し番号は、収集したポートに対して、全て割り当てられる。また、通し番号は、例えば、1から始まる数字で、数字を割り当てると、次の数字に繰り上げて(昇順で)割り当てる。
【0027】
装置判定部34は、装置情報収集部32が取得した装置がハブか否かを判定する。また、装置判定部34は、装置情報収集部32が取得した装置がハブであると判定し、ハブ番号割当部35がハブ番号を割り当てたハブの上位にハブ(上位ハブ)はあるか否かを判定する。
【0028】
ここで、ハブ及び上位ハブの関係について説明する。例えば、ハブが汎用HUBの場合、汎用HUBは、USBホストコントローラに接続される関係にあるため、上位ハブは、USBホストコントローラとなる。また、例えば、ハブがUSBホストコントローラの場合、USBホストコントローラは、eXtensibleホストコントローラに接続される関係にあるため、上位ハブは、eXtensibleホストコントローラとなる。
【0029】
さらに、例えば、ハブがeXtensibleホストコントローラの場合、eXtensibleホストコントローラは、バス17に接続されるため、上位ハブはないとなる。つまり、ハブ及び上位ハブの関係は、装置が備えるポートに他の装置が接続される関係にある場合は、上位ハブがあるとなり、装置が備えるポートに他の装置が接続される関係にない場合は、上位ハブがないとなる。
【0030】
さらに、装置判定部34は、装置情報収集部32が取得した装置が取り外しできるか否かを判定する。また、装置判定部34は、装置情報収集部32が取得した装置にポートがあるか否かを判定する。
【0031】
ハブ番号割当部35は、情報処理装置1に接続される装置に対してハブ番号を割り当てる。具体的には、ハブ番号割当部35は、装置判定部34により、装置情報収集部32が取得した装置がハブであると判定された場合に、ハブ番号を割り当てる。ハブ番号は、例えば、1から始まる数字で、数字を割り当てると、次の数字に繰り上げて(昇順で)割り当てる。また、ハブ番号割当部35は、装置判定部34により、装置情報収集部32が取得した装置がハブでないと判定された場合に、ハブ番号として数字「0」(ゼロ)を割り当てる。
【0032】
上位ハブ番号割当部36は、情報処理装置1に接続されるハブに対して上位ハブ番号を割り当てる。具体的には、上位ハブ番号割当部36は、装置判定部34により、装置情報収集部32が取得した装置がハブであると判定し、さらに該ハブの上位にハブ(上位ハブ)があると判定された場合に、上位ハブ番号を割り当てる。
【0033】
上位ハブ番号は、例えば、1から始まる数字で、数字を割り当てると、次の数字に繰り上げて(昇順で)割り当てる。また、上位ハブ番号割当部36は、装置判定部34により、装置情報収集部32が取得した装置が上位ハブでない(すなわち、装置がeXtensibleホストコントローラ)と判定された場合に、ハブ番号として数字「0」(ゼロ)を割り当てる。
【0034】
取り外しフラグ割当部37は、情報処理装置1に接続される装置に対して取り外しフラグを割り当てる。具体的には、取り外しフラグ割当部37は、装置判定部34が、装置情報収集部32が取得した装置が取り外しできると判定すると、取り外しフラグとして、例えば、数字「1」を割り当てる。取り外しフラグが数字「1」と割り当てられる装置は、例えば、USBデバイス等である。
【0035】
また、取り外しフラグ割当部37は、装置判定部34が、装置情報収集部32が取得した装置が取り外しできないと判定すると、取り外しフラグとして、例えば、数字「0」(ゼロ)を割り当てる。取り外しフラグが数字「0」と割り当てられる装置は、例えば、
eXtensibleホストコントローラ、USBホストコントローラ、Finger、Camera、汎用HUB、KeyBoard等である。情報処理装置1は、取り外しフラグ割当部37により、情報処理装置1に接続される装置に対して取り外しフラグを割り当てられることで、可搬型装置2を識別することができる。
【0036】
さらに、取り外しフラグ割当部37は、後述する取り外し判定部47により、装置情報判定部43が判定した一致しない装置が取り外し可能である(可搬型装置2である)と判定された場合、例えば、数字1(ゼロ)を割り当てる。取り外しフラグ割当部37は、後述する取り外し判定部47により、装置情報判定部43が判定した一致しない装置が取り外し不可能である(可搬型装置2ではない)と判定された場合、例えば、数字0(ゼロ)を割り当てる。また、取り外しフラグは取り外し情報の一例である。なお、取り外しフラグはこれに限定されない。
【0037】
ポート番号割当部38は、情報処理装置1に接続される装置に対してポート番号を割り当てる。具体的には、ポート番号割当部38は、上位ハブ番号割当部36が割り当てた上位ハブ番号に加え(例えば、ハブ番号の後にハイフンをつける)、通し番号を割り当てる。また、ポート番号の通し番号は、例えば、1から始まる数字で、数字を割り当てると、次の数字に繰り上げて(昇順で)割り当てる(一例として、1-1、1-2等)。
【0038】
また、ハブ番号割当部35は、上位ハブ番号が繰り上がった場合、例えば、再度1から始まる数字で、数字を割り当てると、次の数字に繰り上げて(昇順で)割り当てる(一例として、2-1、2-2等)。
【0039】
識別子取得部39は、情報処理装置1に接続される装置から識別子を取得する。具体的には、識別子取得部39は、装置情報収集部32が収集した装置に関する情報から装置を識別する識別子を取得する。識別子は、例えば、装置の製造番号である。なお、識別子はこれに限定されない。
【0040】
装置名称取得部40は、情報処理装置1に接続される装置から装置名称(デバイス名)を取得する。具体的には、装置名称取得部40は、装置情報収集部32が収集した装置に関する情報から装置名称を取得する。なお、装置名称取得部40は、装置に関する情報から装置名称を取得できない場合、記憶部41に記憶される装置名称は、取得できていないため、空白となる。
【0041】
装置情報生成部31は、上述した機能を構成することで、情報処理装置1に接続される装置に関する情報を示す装置情報を生成することができる。図4は、装置情報生成部31が生成した装置情報の一例を示すテーブルである。装置情報4は、例えば、通し番号(通しNo.)、ハブ番号(HUBNo.)、上位ハブ番号(AttHUBNo.)、取り外しフラグ(Remove)、ポート番号(PortNo.)、識別子及び装置名称(デバイス名)の項目からなる。なお、装置情報4に関する項目はこれに限定されない。
【0042】
装置情報生成部31が装置情報4を生成することで、情報処理装置1は、情報処理装置1が初期状態(一例として、ユーザが使用する前や情報処理装置1の出荷前等)時に、接続I/F16に接続される装置の一覧を管理することができる。
【0043】
記憶部41は、装置情報生成部31が生成した情報処理装置1に接続される装置に関する情報を示す装置情報4を記憶する。また、記憶部41は、装置情報取得部42が取得した装置情報4を記憶する。さらに、記憶部41は、装置情報判定部43が判定した結果を記憶する。記憶部41は、装置再読込部44が再読み込みした結果を記憶する。
【0044】
また、記憶部41は、BIOS判定部45が判定した結果を記憶する。さらに、記憶部41は、ハブ判定部46が判定した判定結果を記憶する。記憶部41は、取り外し判定部47が判定した判定結果を記憶する。また、記憶部41は、出力部48が出力した出力結果を記憶する。記憶部41は、例えば、情報処理装置1が備える補助記憶装置24等で実現される。
【0045】
装置情報取得部42は、装置情報4を取得する。具体的には、装置情報取得部42は、記憶部41が記憶する装置情報4を取得する。また、装置情報取得部42は、記憶部41が記憶する装置情報4に含まれる取り外しフラグが1である装置を取得する。さらに、装置情報取得部42は、後述するBIOS判定部45装置情報が正常ではない装置がBIOSで無効化されていない(有効化されている)と判定した場合、当該装置の上位ハブ番号を取得する。
【0046】
装置情報判定部43は、装置情報4が一致するか否かを判定する。具体的には、装置情報判定部43は、装置情報生成部31が生成した装置情報4に基づいて、情報処理装置1に接続される可搬型装置2が装置情報4に含まれているか否かを判定する。例えば、装置情報判定部43は、装置情報収集部32が収集した情報処理装置1に接続される装置に関する情報と、装置情報取得部42が取得した装置情報4に含まれる取り外しフラグが1である装置と、が一致するか否かを判定する。
【0047】
ここで、装置情報判定部43は、装置情報収集部32が収集した情報処理装置1に接続される装置に関する情報と、装置情報取得部42が取得した装置情報4に含まれる取り外しフラグが1である装置と、が一致しないと判定する場合について説明する。判定結果が一致しない場合は、情報処理装置1に接続される装置に変化が生じた場合である。例えば、一致しない場合は、装置の取り外しが行われた、装置の取り付けが行われた、のうち、少なくとも1つが含まれる。
【0048】
また、装置情報判定部43は、装置情報生成部31が生成した装置情報4と、記憶部41が記憶する装置情報4と、が一致するか否かを判定する。ここで、装置情報判定部43が、装置情報生成部31が生成した装置情報4と、記憶部41が記憶する装置情報4と、が一致しないと判定する場合について説明する。判定結果が一致しない場合は、情報処理装置1に接続される装置に変化が生じた場合である。
【0049】
例えば、一致しない場合は、装置の取り外しが行われた、装置の取り付けが行われた、装置が異常な状態である、装置がBIOS(Basic Input Output System)で無効化されている、デバイスロスト状態である、少なくとも1つが含まれる。なお、デバイスロスト状態とは、情報処理装置1が備える接続I/F16を介して接続される、元々認識している状態であるはずの装置(可搬型装置も含む)が、何かしらの障害や原因で認識されなくなる障害事象を示す状態である。
【0050】
装置再読込部44は、装置に対して再度読み込みを行う(リロードする)。具体的には、装置再読込部44は、装置情報判定部43が、装置情報生成部31が生成した装置情報4と、記憶部41が記憶する装置情報4と、が一致しないと判定した場合、一致しない当該装置に対して再度読み込みを行う。
【0051】
また、装置再読込部44は、ハブ判定部46が、上位ハブに接続するハブは存在すると判定した場合、当該ハブに対して再読み込みを行う。
【0052】
BIOS判定部45は、装置がBIOSで無効化されているか否かを判定する。具体的には、BIOS判定部45は、装置再読込部44が再度読み込みを行う装置に対して、装置がBIOSで無効化されているか否かを判定する。なお、装置がBIOSで無効化されている場合は、装置に関する情報は収集できないため、装置情報生成部31が生成した装置情報4は正常であるといえる。
【0053】
ハブ判定部46は、上位ハブに接続するハブは存在するか否かを判定する。具体的には、ハブ判定部46は、装置情報取得部42が取得した、BIOS判定部45装置情報が正常ではない装置がBIOSで無効化されていない(有効化されている)と判定した当該装置の上位ハブ番号に接続するハブが存在するか否かを判定する。
【0054】
取り外し判定部47は、装置は取り外し可能か否かを判定する。具体的には、取り外し判定部47は、装置情報判定部43が判定した一致しない装置は、取り外し可能か否かを判定する。また、取り外し判定部47は、装置再読込部44が再度読み込みを行うハブに対して、ハブに接続される装置が取り外し可能か否か(可搬型装置2であるか否か)を判定する。
【0055】
出力部48は、装置情報判定部43が判定した判定結果に基づいて、可搬型装置2がデバイスロスト状態であることを示すデバイスロスト情報を出力する。具体的には、出力部48は、取り外し判定部47が判定した判定結果に基づいて、デバイスロスト情報を出力する。例えば、出力部48は、取り外し判定部47が判定した判定結果が取り外し可能である(可搬型装置2である)場合、確認メッセージを出力する。ここで、確認メッセージとは、例えば、「認識されない装置は取り外しされている可能性があります。」という内容である。
【0056】
また、出力部48は、取り外し判定部47が判定した判定結果が取り外し不可能である(可搬型装置2ではない)場合、故障メッセージを出力する。ここで、故障メッセージとは、例えば、「認識されない装置は故障している可能性があります。」という内容である。なお、故障メッセージは、確認メッセージに含まれても良い。なお、確認メッセージ及び故障メッセージは、デバイスロスト情報の一例である。なお、確認メッセージ及び故障メッセージは、これに限定されない。
【0057】
続いて、図5図6及び図7を用いて、本実施形態に係る情報処理装置1が実行する処理について説明する。図5図6及び図7は、本実施形態に係る情報処理装置1における処理の一例を示すフローチャートである。
【0058】
まず、図5では、情報処理装置1は、ユーザが使用する前、例えば、初期状態で、情報処理装置1は、情報処理装置1に接続される可搬型装置2を管理する前の状態である。
【0059】
装置情報収集部32は、情報処理装置1が備える接続I/F16のポート(接続口)を収集する(ステップS51)。続いて、通し番号割当部33は、装置情報収集部32が収集した情報処理装置1が備える接続I/F16のポートに対して、接続I/F16に接続される装置を管理するための通し番号を割り当てる(ステップS52)。
【0060】
装置判定部34は、装置情報収集部32が取得した装置がハブか否かを判定する(ステップS53)。ここで、装置判定部34は、装置情報収集部32が取得した装置がハブでないと判定する(ステップS53:No)と、ステップS57へ進む。一方、装置判定部34は、装置情報収集部32が取得した装置がハブであると判定する(ステップS53:Yes)と、ステップS54へ進む。
【0061】
ハブ番号割当部35は、情報処理装置1に接続される装置に対してハブ番号を割り当てる(ステップS54)。続いて、装置判定部34は、装置情報収集部32が取得した装置がハブであると判定し、ハブ番号割当部35がハブ番号を割り当てたハブの上位に、さらにハブはあるか否かを判定する(ステップS55)。
【0062】
ここで、装置判定部34は、ハブ番号を割り当てたハブの上位に、さらにハブはないと判定する(ステップS55:No)と、ステップS57へ進む。一方、装置判定部34は、ハブ番号を割り当てたハブの上位に、さらにハブはあると判定する(ステップS55:Yes)と、ステップS56へ進む。
【0063】
上位ハブ番号割当部36は、情報処理装置1に接続されるハブに対して上位ハブ番号を割り当てる(ステップS56)。装置判定部34は、装置情報収集部32が取得した装置が取り外しできるか否かを判定する(ステップS57)。
【0064】
ここで、装置判定部34は、装置情報収集部32が取得した装置が取り外しできないと判定する(ステップS57:No)と、ステップS59へ進む。一方、装置判定部34は、装置情報収集部32が取得した装置が取り外しできると判定する(ステップS57:Yes)と、ステップS58へ進む。
【0065】
取り外しフラグ割当部37は、装置判定部34が、装置情報収集部32が取得した装置が取り外しできると判定すると、取り外しフラグとして、例えば、数字「1」を割り当てる(ステップS58)。また、取り外しフラグ割当部37は、装置判定部34が、装置情報収集部32が取得した装置が取り外しできないと判定すると、取り外しフラグとして、例えば、数字「0」(ゼロ)を割り当てる(ステップS59)。
【0066】
装置判定部34は、装置情報収集部32が取得した装置にポートがあるか否かを判定する(ステップS60)。ここで、装置判定部34は、装置情報収集部32が取得した装置にポートがないと判定する(ステップS60:No)、ステップS62へ進む。一方、装置判定部34は、装置情報収集部32が取得した装置にポートがあると判定する(ステップS60:Yes)、ステップS61へ進む。
【0067】
ポート番号割当部38は、上位ハブ番号割当部36が割り当てた上位ハブ番号に加え、通し番号を割り当てる(ステップS61)。続いて、識別子取得部39は、装置情報収集部32が収集した装置に関する情報から装置を識別する識別子を取得する(ステップS62)。続いて、装置名称取得部40は、装置情報収集部32が収集した装置に関する情報から装置名称を取得する(ステップS63)。ステップS63が終了すると、本処理は終了する。情報処理装置1は、本処理を終了することで、情報処理装置1に接続される装置に関する情報を示す装置情報4を生成することができる。
【0068】
次に、図6では、情報処理装置1は、装置情報生成部31は、情報処理装置1に接続される装置に関する情報を示す装置情報4を生成する処理が完了し、各パワーステートに入る前から開始するものとする。なお、各パワーステートは、スリープ(S3)、休止(S4)、シャットダウン(S5もしくはG3)及び再起動(REBOOT)を含む。
【0069】
装置情報取得部42は、記憶部41が記憶する装置情報4に含まれる取り外しフラグが1である装置を取得する(ステップS71)。続いて、装置情報判定部43は、装置情報収集部32が収集した情報処理装置1に接続される装置に関する情報と、装置情報取得部42が取得した装置情報4に含まれる取り外しフラグが1である装置と、が一致するか否かを判定する(ステップS72)。
【0070】
ここで、装置情報判定部43は、情報処理装置1に接続される装置に関する情報と、装置情報4に含まれる取り外しフラグが1である装置と、が一致すると判定する(ステップS72:Yes)、本処理は終了する。一方、装置情報判定部43は、情報処理装置1に接続される装置に関する情報と、装置情報4に含まれる取り外しフラグが1である装置と、が一致しないと判定する(ステップS72:No)と、ステップS73へ進む。
【0071】
取り外し判定部47は、装置情報判定部43が判定した一致しない装置は、取り外し可能か否かを判定する(ステップS73)。ここで、取り外し判定部47は、装置情報判定部43が判定した一致しない装置は、取り外し不可能である(可搬型装置2ではない)と判定する(ステップS73:No)、ステップS75へ進む。取り外し判定部47は、装置情報判定部43が判定した一致しない装置は、取り外し可能である(可搬型装置2である)と判定する(ステップS73:Yes)、ステップS74へ進む。
【0072】
取り外しフラグ割当部37は、取り外し判定部47により、装置情報判定部43が判定した一致しない装置が取り外し可能(可搬型装置2である)である場合、例えば、数字1(ゼロ)を割り当てる(ステップS74)。また、取り外しフラグ割当部37は、取り外し判定部47により、装置情報判定部43が判定した一致しない装置が取り外し不可能である(可搬型装置2ではない)場合、例えば、数字0(ゼロ)を割り当てる(ステップS75)。
【0073】
識別子取得部39は、装置情報収集部32が収集した装置に関する情報から装置を識別する識別子を取得する(ステップS76)。続いて、装置名称取得部40は、装置情報収集部32が収集した装置に関する情報から装置名称を取得する(ステップS77)。
【0074】
ステップS77が終了すると、本処理は終了する。情報処理装置1は、本処理を終了することで、情報処理装置1に接続される装置に変化が生じた場合(一例として、可搬型装置2が新たに取り付けられた場合、あるいは、可搬型装置2が新たに取り外された場合)、補助記憶装置14に記憶する装置情報4を更新することができる。
【0075】
次に、図7では、情報処理装置1は、接続I/F16に接続される装置がデバイスロスト状態であるか否かを判定するデバイスロストチェックを行う処理について説明する。情報処理装置1は、情報処理装置1に接続させる装置に関する装置情報4を生成し、補助記憶装置14に記憶されている状態である。
【0076】
装置情報取得部42は、記憶部41が記憶する装置情報4を取得する(ステップS81)。続いて、装置情報生成部31は、情報処理装置1に接続される装置に関する情報を示す装置情報4を生成する(ステップS82)。続いて、装置情報判定部43は、装置情報生成部31が生成した装置情報4と、記憶部41が記憶する装置情報4と、が一致するか否かを判定する(ステップS83)。
【0077】
ここで、装置情報判定部43は、装置情報生成部31が生成した装置情報4と、記憶部41が記憶する装置情報4と、が一致すると判定する(ステップS83:Yes)と、本処理は終了する。一方、装置情報判定部43は、装置情報生成部31が生成した装置情報4と、記憶部41が記憶する装置情報4と、が一致しないと判定する(ステップS83:No)と、ステップS84へ進む。
【0078】
装置再読込部44は、装置情報判定部43が、装置情報生成部31が生成した装置情報4と、記憶部41が記憶する装置情報4と、が一致しないと判定した場合、一致しない当該装置に対して再度読み込みを行う(ステップS84)。また、装置再読込部44は、一致しない当該装置に対して再度読み込みを行うと、装置情報生成部31は、情報処理装置1に接続される装置に関する情報を示す装置情報4を生成する。続いて、装置情報判定部43は、装置情報生成部31が生成した装置情報4と、記憶部41が記憶する装置情報4と、が一致するか否かを判定する(ステップS85)。
【0079】
ここで、装置情報判定部43は、装置情報生成部31が生成した装置情報と、記憶部41が記憶する装置情報4と、が一致すると判定する(ステップS85:Yes)と、本処理は終了する。一方、装置情報判定部43は、装置情報生成部31が生成した装置情報4と、記憶部41が記憶する装置情報4と、が一致しないと判定する(ステップS85:No)と、ステップS86へ進む。
【0080】
BIOS判定部45は、装置再読込部44が再度読み込みを行う装置に対して、装置がBIOSで無効化されているか否かを判定する(ステップS86)。
【0081】
ここで、BIOS判定部45は、装置再読込部44が再度読み込みを行う装置に対して、装置がBIOSで無効化されていると判定する(ステップS86:Yes)と、ステップS91へ進む。一方、BIOS判定部45は、装置再読込部44が再度読み込みを行う装置に対して、装置がBIOSで無効化されていない(有効化されている)と判定する(ステップS86:No)と、ステップS87へ進む。
【0082】
装置情報取得部42は、BIOS判定部45装置情報が正常ではない装置がBIOSで無効化されていない(有効化されている)と判定した場合、当該装置の上位ハブ番号を取得する(ステップS87)。ハブ判定部46は、装置情報取得部42が取得した、BIOS判定部45装置情報が正常ではない装置がBIOSで無効化されていない(有効化されている)と判定した当該装置の上位ハブ番号に接続するハブが存在するか否かを判定する(ステップS88)。
【0083】
ここで、ハブ判定部46は、当該装置の上位ハブ番号に接続するハブが存在しないと判定する(ステップS88:No)、ステップS91へ進む。一方、ハブ判定部46は、当該装置の上位ハブ番号に接続するハブが存在すると判定する(ステップS88:Yes)と、ステップS89へ進む。
【0084】
装置再読込部44は、ハブ判定部46が、上位ハブに接続するハブは存在すると判定した場合、当該ハブに対して再読み込みを行う(ステップS89)。また、装置再読込部44は、一致しない当該ハブに対して再度読み込みを行うと、装置情報生成部31は、情報処理装置1に接続される装置に関する情報を示す装置情報4を生成する。続いて、装置情報判定部43は、装置情報生成部31が生成した装置情報4と、記憶部41が記憶する装置情報4と、が一致するか否かを判定する(ステップS90)。
【0085】
ここで、装置情報判定部43は、装置情報生成部31が生成した装置情報4と、記憶部41が記憶する装置情報4と、が一致すると判定する(ステップS90:Yes)と、本処理は終了する。一方、装置情報判定部43は、装置情報生成部31が生成した装置情報4と、記憶部41が記憶する装置情報4と、が一致しないと判定する(ステップS90:No)と、ステップS91へ進む。
【0086】
取り外し判定部47は、装置再読込部44が再度読み込みを行うハブに対して、ハブに接続される装置が取り外し可能か否か(可搬型装置2であるか否か)を判定する(ステップS91)。ここで、取り外し判定部47は、装置再読込部44が再度読み込みを行うハブに対して、ハブに接続される装置が取り外し不可能と判定する(ステップS91:No)と、ステップS93へ進む。 一方、取り外し判定部47は、装置再読込部44が再度読み込みを行うハブに対して、ハブに接続される装置が取り外し可能と判定する(ステップS91:Yes)、ステップS92へ進む。
【0087】
出力部48は、取り外し判定部47が判定した判定結果が取り外し可能である(可搬型装置2である)場合、確認メッセージを出力する(ステップS92)。また、出力部48は、取り外し判定部47が判定した判定結果が取り外し不可能である(可搬型装置2ではない)場合、故障メッセージを出力する(ステップS93)。ステップS92、あるいは、ステップS93が終了すると、本処理は終了する。情報処理装置1は、本処理を終了することで、情報処理装置1に接続される可搬型装置2を適切に管理することができる。
【0088】
以上、説明したように、本発明の一態様に係る情報処理装置1は、情報処理装置1に接続される装置に関する情報を示す装置情報4を生成する。また、情報処理装置1は、生成した装置情報4に基づいて、情報処理装置1に接続される可搬型装置2が装置情報4に含まれているか否かを判定する。そして、情報処理装置1は、判定結果に基づいて、可搬型装置2がデバイスロスト状態であることを示すデバイスロスト情報を出力する。
【0089】
これにより、本実施形態によれば、生成した装置情報4に基づいて、情報処理装置1に接続される可搬型装置2を特定することで、情報処理装置1に接続される可搬型装置2を適切に管理することができる。また、情報処理装置1は可搬型装置2が情報処理装置1に接続する接続状態を出力することで、例えば、可搬型装置2を特定できない場合、特定できないことを示す確認メッセージや、故障メッセージを出力する。ユーザは、出力されるメッセージを確認することで、可搬型装置2を認識できない原因を把握することができる。
【0090】
また、上述した実施形態において、装置情報4は、装置を識別する識別子と、装置の名称を示す装置名称と、装置が前記情報処理装置1から取り外し可能である(可搬型装置2である)ことを示す取り外し情報と、を少なくとも含む。これにより、情報処理装置1は、取り外し可能である可搬型装置2を特定することができる。
【0091】
さらに、上述した実施形態において、情報処理装置1は、生成した前記装置情報4に基づいて、情報処理装置1に接続される装置が特定できない場合、装置を再読み込みする。これにより、本実施形態によれば、情報処理装置1は、装置が特定できない場合は、接続I/F16やハブが接続される装置を認識できていない可能性がある。したがって、情報処理装置1は、装置を読み込むことで、接続I/F16の故障であるか、ハブの故障であるか、あるいは、装置の故障であるか、を少なくとも特定することができる。
【0092】
上記機能を実現するプログラムは、例えば、CPU11に搭載された記憶素子に予め記憶された状態で提供され得るが、これに限定されるものではない。プログラムは、例えば、CD-ROM等の適宜な記憶媒体に記憶された状態で提供されてもよいし、インターネット等のコンピュータネットワークを介して提供されてもよい。
【0093】
なお、上述した実施形態は、上述した装置が有する構成の一部を変更することで、適宜に変形して実施することも可能である。そこで、以下では、上述した実施形態に係るいくつかの変形例を他の実施形態として説明する。なお、以下では、上述した実施形態と異なる点を主に説明することとし、既に説明した内容と共通する点については詳細な説明を省略する。また、以下で説明する変形例は、個別に実施されてもよいし、適宜組み合わせて実施されてもよい。
【0094】
(変形例)
上述の実施形態では、情報処理装置1は、可搬型装置2を特定できない場合、特定できないことを示す確認メッセージや、故障メッセージを出力するとして説明したが。これに限られないものとする。例えば、情報処理装置1は、補助記憶装置14に記憶される装置情報4から接続I/F16に接続されるである装置が特定できない場合、補助記憶装置14に記憶される装置情報4に基づいて、該装置を無効化してもよい。該装置を無効化した後、所定の時間経過後、該装置を再度有効化し、デバイスロストチェックを行ってもよい。上述した処理(無効化/有効化)は、情報処理装置1が認識できない装置が、認識できている他の装置に対して、影響が出ることを事前に回避するためである。
【0095】
以上、本発明の実施形態及び変形例を説明したが、実施形態及び変形例は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態及び変形例は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【0096】
1…情報処理装置、2…可搬型装置、31…装置情報生成部、
32…装置情報収集部、33…通し番号割当部、34…装置判定部、
35…ハブ番号割当部、36…上位ハブ番号割当部、37…取り外しフラグ割当部、
38…ポート番号割当部、39…識別子取得部、40…装置名称取得部、
41…記憶部、42…装置情報取得部、43…装置情報判定部、44…装置再読込部、 45…BIOS判定部、46…ハブ判定部、47…取り外し判定部、48…出力部
図1
図2
図3
図4
図5
図6
図7