(57)【要約】【課題】デバイス制御装置側からセッションの開始・終了および外部デバイスの仮想化制御の開始・終了を制御するデバイス制御装置、その制御方法を提供する。【解決手段】デバイス制御装置２００は、省電移行する際に外部デバイス３００のＵＳＢクラス情報から接続されている外部デバイス３００のデバイス種類が第１の種類のデバイスか第２の種類のデバイスかを識別し、外部デバイス３００の種類に応じて情報処理装置１００とのセッションの終了を制御する。【選択図】図１
2018055331.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介して情報処理装置と接続されているとともに外部デバイスとローカル接続されているデバイス制御装置であって、
前記情報処理装置と前記外部デバイスがローカル接続されているかのように仮想化制御する仮想化制御手段と、
自装置が第１の所定の条件に合致する場合、前記情報処理装置に前記仮想化制御を終了するための要求である仮想化終了要求を送信する終了要求通知手段と、
前記情報処理装置からの仮想化終了命令を受信する終了命令受信手段と、
前記終了命令受信手段による仮想化終了命令の受信に応じて、前記情報処理装置とのセッションを終了するセッション制御手段と、
を備えることを特徴とするデバイス制御装置。
【請求項２】
前記デバイス制御装置の省電状態を制御する省電制御手段をさらに備え、
前記第１の所定の条件とは、前記省電制御手段によって省電移行要求が前記仮想化制御手段に通知された場合であることを特徴とする請求項１に記載のデバイス制御装置。
【請求項３】
前記外部デバイスからデバイス情報を取得するデバイス情報取得手段と、
前記デバイス情報取得手段で取得した前記デバイス情報に基づいて前記外部デバイスの種類を識別するデバイス種別識別手段と、をさらに備え、
前記終了要求通知手段は、
前記デバイス種別識別手段によって識別された前記外部デバイスの種類に応じて、前記情報処理装置に対する仮想化終了要求の送信を制御することを特徴とする請求項２に記載のデバイス制御装置。
【請求項４】
前記デバイス種別識別手段によって識別された前記外部デバイスが第１の種類のデバイスの場合、
前記省電制御手段から通知された前記省電移行要求の受信に応じて、前記終了要求通知手段によって前記仮想化終了要求を前記情報処理装置に送信し、
前記デバイス種別識別手段によって識別された前記外部デバイスが第２の種類のデバイスの場合、
前記省電制御手段から通知された前記省電移行要求を受信に応じて、前記終了要求通知手段が前記仮想化終了要求を前記情報処理装置に送信することなく、前記仮想化制御手段が前記外部デバイスの仮想化制御を終了することを特徴とする請求項３に記載のデバイス制御装置。
【請求項５】
前記第１の所定の条件とは、前記デバイス制御装置が前記外部デバイスに対して所定の制御を行う場合であることを特徴とする請求項１に記載のデバイス制御装置。
【請求項６】
前記情報処理装置にセッションの開始要求を通知する開始要求通知手段をさらに備え、
第２の所定の条件で、かつ、前記セッション制御手段によって前記情報処理装置とのセッションが終了されている場合、
前記開始要求通知手段は、セッションの開始要求を前記情報処理装置に通知することを特徴する請求項１乃至請求項５の何れか１項に記載のデバイス制御装置。
【請求項７】
前記第２の所定の条件は、デバイス制御装置自身が省電状態から通常状態になった場合であることを特徴とする請求項６に記載のデバイス制御装置。
【請求項８】
前記外部デバイスに対して所定の制御を行う外部デバイス制御手段をさらに備え、
前記第２の所定の条件は、前記外部デバイス制御手段によって前記外部デバイスに対する所定の制御が完了した場合であることを特徴とする請求項６に記載のデバイス制御装置。
【請求項９】
ネットワークを介して情報処理装置と接続されているとともに外部デバイスとローカル接続されているデバイス制御装置のデバイス制御方法であって、
前記情報処理装置と前記外部デバイスがローカル接続されているかのように仮想化制御する仮想化開始ステップと、
自装置が第１の所定の条件に合致する場合、前記情報処理装置に前記仮想化制御を終了するための要求である仮想化終了要求を送信する終了要求通知ステップと、
前記情報処理装置からの仮想化終了命令を受信する終了命令受信ステップと、前記終了命令受信ステップによる仮想化終了命令の受信に応じて、前記情報処理装置とのセッションを終了するセッション制御ステップと、
前記外部デバイスの仮想化制御を終了する仮想化終了ステップと、
を備えることを特徴とするデバイス制御方法。
【請求項１０】
前記デバイス制御装置の省電状態を制御する省電制御ステップをさらに備え、
前記第１の所定の条件とは、前記省電制御ステップにおいて省電移行要求が通知された場合であることを特徴とする請求項９に記載のデバイス制御方法。
【請求項１１】
前記外部デバイスからデバイス情報を取得するデバイス情報取得ステップと、
前記デバイス情報取得ステップで取得した前記デバイス情報に基づいて前記外部デバイスの種類を識別するデバイス種別識別ステップと、をさらに備え、
前記終了要求通知ステップは、
前記デバイス種別識別ステップによって識別された前記外部デバイスの種類に応じて、前記情報処理装置に対する仮想化終了要求の送信を制御することを特徴とする請求項１０に記載のデバイス制御方法。
【請求項１２】
前記デバイス種別識別ステップによって識別された前記外部デバイスが第１の種類のデバイスの場合、
前記省電制御ステップによって通知された前記省電移行要求の受信に応じて、前記終了要求通知ステップによって前記仮想化終了要求を前記情報処理装置に送信し、
前記デバイス種別識別ステップによって識別された前記外部デバイスが第２の種類のデバイスの場合、
前記省電制御ステップによって通知された前記省電移行要求を受信に応じて、前記仮想化終了要求を前記情報処理装置に送信することなく、
前記仮想化終了ステップによって前記外部デバイスの仮想化制御を終了することを特徴とする請求項１１に記載のデバイス制御方法。
【請求項１３】
前記第１の所定の条件とは、前記デバイス制御装置が前記外部デバイスに対して所定の制御を行う場合であることを特徴とする請求項９に記載のデバイス制御方法。
【請求項１４】
前記情報処理装置にセッションの開始要求を通知する開始要求通知ステップをさらに備え、
第２の所定の条件で、かつ、前記セッション制御ステップによって前記情報処理装置とのセッションが終了されている場合、
前記開始要求通知ステップによって、セッションの接続要求を前記情報処理装置に通知することを特徴する請求項９乃至請求項１３の何れか1項に記載のデバイス制御方法。
【請求項１５】
第２の所定の条件は、デバイス制御装置自身が省電状態から通常状態になった場合であることを特徴とする請求項１４に記載のデバイス制御方法。
【請求項１６】
前記外部デバイスに対して所定の制御を行う外部デバイス制御ステップをさらに備え、
第２の所定の条件は、前記外部デバイス制御ステップによって前記外部デバイスに対する所定の制御が完了した場合であることを特徴とする請求項１４に記載のデバイス制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークを介して接続された情報処理装置から送られる各種要求を処理するためのデバイス制御装置、およびデバイス制御方法に関する。
【背景技術】
【０００２】
近年、ネットワークの普及によって、プリンタ、ストレージ、およびスキャナなどのデバイスを、ネットワーク上の情報処理装置であるクライアントＰＣが共有デバイスとして利用されている。その実現方法がいくつか提案されている。
【０００３】
例えば、外部デバイスに接続されているサーバーコンピュータが、ネットワーク上のホストコンピュータから要求に応じて、外部デバイスが接続された接続ポートのバス電源を制御することにより消費電力を抑制する制御装置システムがある（例えば、特許文献１参照）。
【０００４】
また、デバイス制御装置にローカル接続されている外部デバイスの状態変化に応じて情報処理装置とデバイス制御装置間のセッションの接続を行い、データ送受信の終了を契機にセッションの切断を行うことでネットワーク上の情報処理装置からデバイス制御装置を介して外部デバイスを制御するデバイス制御システムがある（例えば、特許文献２参照）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００７−３１０７９６号公報
【特許文献２】特開２０１２−２３４４４４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、特許文献１は、ホストコンピュータ（情報処理装置）が外部デバイス（例：ＵＳＢメモリ）内のメモリ領域へのアクセス中に、スリープなどの省電力機能（以下、「省電機能」と呼ぶ）を有するサーバコンピュータ（デバイス制御装置）が省電力状態へ移行（以下「省電移行」と呼ぶ）すると、外部デバイスのメモリ領域の書き込み中にセッションが切断されてしまい、メモリ領域の書き込みが途中で終了し、メモリ領域に正しく変更内容が反映されない場合がある。
【０００７】
また、特許文献２は、情報処理装置が外部デバイスの状態変化を通知するトリガ通知をデバイス制御装置から受信後、デバイス制御装置とのセッションを接続し、デバイス制御装置を介して外部デバイスとの間でデータ送受信を行うことができる。しかし、特許文献２は情報処理装置とデバイス制御装置間のセッションの接続・切断を情報処理装置側から制御しており、デバイス制御装置側からセッションの接続・切断を制御していなかった。
【０００８】
上記の課題に鑑みて、本発明は、情報処理装置がデバイス制御装置に接続された外部デバイスを直接的（ローカル）に接続されているように仮想的な制御（以下、仮想化制御）をしている際に、情報処理装置側からではなく、デバイス制御装置側からセッションの開始・終了および外部デバイスの仮想化制御の開始・終了を行うための要求を制御することができるデバイス制御装置、およびデバイス制御方法を提供することを目的とする。
である。
【課題を解決するための手段】
【０００９】
上記の課題を解決するために、請求項１に記載のデバイス制御装置は、ネットワークを介して情報処理装置と接続されているとともに外部デバイスとローカル接続されているデバイス制御装置であって、前記情報処理装置と前記外部デバイスがローカル接続されているかのように仮想化制御する仮想化制御手段と、自装置が第１の所定の条件に合致する場合、前記情報処理装置に前記仮想化制御を終了するための要求である仮想化終了要求を送信する終了要求通知手段と、前記情報処理装置からの仮想化終了命令を受信する終了命令受信手段と、前記終了命令受信手段による仮想化終了命令の受信に応じて、前記情報処理装置とのセッションを終了するセッション制御手段と、を備えることを特徴とする。
【発明の効果】
【００１０】
本発明により、デバイス制御装置側からセッションの開始・終了およびデバイスの仮想化制御の開始・終了を行うための要求を制御することができる。
【図面の簡単な説明】
【００１１】
【図１】本発明の第１の実施形態におけるデバイス制御システムの一例を示すブロック図である。
【図２】図１に示すデバイス制御装置が有するデバイス状態管理情報である。
【図３】図１に示すデバイス制御装置による外部デバイス３００のデバイス種類識別時における仮想化終了要求の送信制御の一例を示すフローチャートである。
【図４】図１に示すデバイス制御装置における省電状態に遷移時の制御フローの一例を示すシーケンス図である。
【図５】本発明の第２の実施形態におけるデバイス制御装置システムの一例を示すブロック図である。
【図６】図５に示すデバイス制御装置におけるセッションの終了および外部デバイスの仮想化制御終了時の制御の一例を示すフローチャートである。
【図７】図５に示すデバイス制御システムにおける仮想化制御の動作を説明するためのシーケンス図である。
【発明を実施するための形態】
【００１２】
以下、本発明の実施形態におけるデバイス制御システムの一例について図面を参照して説明する。
【００１３】
[第１の実施形態]
図１は、本発明の第１の実施形態によるデバイス制御システムの一例の構成を概略的に示すブロック図である。
【００１４】
図示のデバイス制御システムにおいて、情報処理装置１００がローカルエリアネットワーク(ＬＡＮ)またはワイドエリアネットワーク（ＷＡＮ）を介してデバイス制御装置２００に接続されている。ＬＡＮおよびＷＡＮは有線回線または無線回線で構成される。そして、デバイス制御装置２００には、例えば、通信インターフェース(例えば、ＵＳＢまたはＨＤＭＩ（登録商標）)によって外部デバイス３００がローカル接続されている。以降の説明では外部デバイス３００の通信インターフェースをＵＳＢとして説明する。
【００１５】
＜情報処理装置１００の構成＞
情報処理装置１００は、パーソナルコンピュータ（ＰＣ）等の装置である。ハードウェア構成として、ＣＰＵ、入力部、表示部、メモリ、通信部（ともに不図示）、記憶部１１０を備え、これらハードウェアは内部バスで相互に接続されている。
【００１６】
通信部はＬＡＮおよびＷＡＮなどに接続するためのインターフェースであって、デバイス制御装置２００とデータ送受信を行う。
【００１７】
記憶部１１０には、ソフトウェアであるオペレーティングシステム（以下「ＯＳ」と呼ぶ：不図示）、アプリケーション１０１、デバイスドライバ１０２、仮想化制御部１０３、通信制御部１０４が記憶されるとともに、他の機能に係るソフトウェアが記憶されている。なお、これらソフトウェアはメモリに読み出されて、ＣＰＵの制御に従い動作する。
【００１８】
アプリケーション１０１は、デバイスドライバ１０２に対してデータ入出力要求を指示することにより、デバイス制御装置２００に接続された外部デバイス３００を制御するためのソフトウェアである。
【００１９】
デバイスドライバ１０２は、外部デバイス３００を制御するための機能部である。ＯＳまたはアプリケーション１０１からのデータ入出力要求を、外部デバイス３００に応じたデータ形式のデータ（以下「制御コマンド」と呼ぶ）に変換して、当該制御コマンドを仮想化制御部１０３に送る。さらに、デバイスドライバ１０２は制御コマンドに対する応答をアプリケーション１０１に通知する。このデバイスドライバ１０２は一般に、製造したメーカーによって提供されるソフトウェアであって、情報処理装置１００は各デバイスに対応したデバイスドライバ１０２によって外部デバイス３００を制御することができる。
【００２０】
仮想化制御部１０３は、デバイスドライバ１０２から送られた制御コマンド（つまり、データ入出力要求）をＵＳＢデータ形式に準拠したパケットデータ（以下「ＵＳＢデータ」と呼ぶ）に変換する。また、仮想化制御部１０３は通信制御部１０４から送られてくるＵＳＢデータを制御コマンドと同様のデータ形式に変換してデバイスドライバ１０２に送る。
【００２１】
さらに、仮想化制御部１０３は、外部デバイス３００に対するデータ送受信要求に対して、外部デバイス３００に直接的に接続されている際と同様に振る舞いをシミュレートする機能（以下「仮想化制御機能」と呼ぶ）を備えている。この仮想化制御機能により、情報処理装置１００は外部デバイス３００の接続状態が、外部デバイス３００を直接的に接続（ローカル接続）した場合と同一の状態であると認識してデータの送受信を行うことができる。
【００２２】
なお、情報処理装置１００に仮想化制御されている外部デバイス３００を「仮想デバイス」と呼ぶ。
【００２３】
通信制御部１０４は、仮想化制御部１０３から送られるＵＳＢデータとＬＡＮおよびＷＡＮを介してデバイス制御装置２００と通信する際のネットワークパケットとの変換処理を行い、デバイス制御装置２００と情報処理装置１００の間でデータ送受信の制御を行う。また、通信制御部１０４は、仮想化制御部１０３を介してアプリケーション１０１またはデバイスドライバ１０２から送られるデータ送受信要求に応じて、デバイス制御装置２００との間のセッションの開始および終了の制御を行う。
【００２４】
＜デバイス制御装置２００の構成＞
デバイス制御装置２００は、例えば、プリンタまたは複合機等の周辺機器であって、ハードウェア構成として、ＣＰＵ、メモリ、通信部、および記憶部（ともに不図示）を備えている。
【００２５】
ＣＰＵはデバイス制御装置２００全体の制御を司る。メモリはＲＡＭおよびＲＯＭ等である。
【００２６】
通信部はＬＡＮおよびＷＡＮに接続するためのインターフェースであって、情報処理装置１００とデータ送受信を行う。
【００２７】
記憶部には、ソフトウェアであるＯＳ（不図示）、通信制御部２０１、仮想化制御部２０２、デバイス制御部２０３、デバイス状態管理部２０４、電源供給制御部２０５、デバイス情報取得部２０６、および省電制御部２０７が記憶されるとともに、他の機能に係るソフトウェアが記憶されている。仮想化制御部２０２は、デバイス終了要求通知部２０８を備えている。デバイス状態管理部２０４は、デバイス状態管理情報２０９を備えている。なお、これらソフトウェアはメモリに読み出されて、ＣＰＵの制御に従い動作する。
【００２８】
通信制御部２０１は、情報処理装置１００との間で行われる入出力データ等の送受信を制御する。
【００２９】
仮想化制御部２０２は、外部デバイス３００があたかも情報処理装置１００に直接的に接続（ローカル接続）されているかのように情報処理装置１００へ認識させて制御できるようにするため、情報処理装置１００の仮想化制御部１０３からの制御要求に従って（連動して）外部デバイス３００の制御を行う。
【００３０】
デバイス制御部２０３は、仮想化制御部２０２の制御に従い、デバイス制御装置２００自身に接続された外部デバイス３００を制御する。
【００３１】
デバイス状態管理部２０４は、外部デバイス３００のデバイスに関する情報（後述するデバイス状態管理情報２０９）を記憶・管理する。
【００３２】
電源供給制御部２０５は、デバイス制御部２０３と連携して、自装置に接続された外部デバイス３００のバス接続状態の監視とバス電源の供給、停止を制御する。
【００３３】
デバイス情報取得部２０６は、外部デバイス３００のデバイス情報を取得し、デバイス状態管理部２０４に取得したデバイス情報を通知する。
【００３４】
省電制御部２０７は、デバイス制御装置２００自身の省電状態への移行および省電状態からの復帰を制御する。
【００３５】
デバイス終了要求通知部２０８は、情報処理装置１００に対して仮想化終了要求を送信する。なお、外部デバイス３００が第１の種類のデバイスの場合に、デバイス制御装置２００から情報処理装置１００が備える仮想化制御部１０３に外部デバイス３００の仮想化終了要求を送信する。ここで、第１の種類のデバイスとは、ストレージクラスデバイスのようなメモリアクセスするタイプのＵＳＢデバイスを指し、第２の種類のデバイスとは、第１の種類のデバイス以外のＵＳＢデバイスを指す。
【００３６】
また、外部デバイス３００が第１の種類のデバイスであるか、第２の種類のデバイスであるかの識別は、情報処理装置１００またはデバイス制御装置２００にて可能である。
【００３７】
さらに、外部デバイス３００が第１の種類のデバイスであるか、第２の種類のデバイスであるかについての指定は、情報処理装置１００またはデバイス制御装置２００にて可能である。なお、外部デバイス３００を識別する際に用いる情報（個体識別情報）については後述する。
＜外部デバイス３００の構成＞
外部デバイス３００は、個体識別情報３０１、通信Ｉ／Ｆ３０２を備えており、デバイス制御装置２００にＵＳＢインターフェースによって外付けで接続されている。
【００３８】
個体識別情報３０１は、外部デバイス３００を識別するための情報であり、メーカーを識別するために機器を製造したメーカー毎に割り当てられたベンダーＩＤ（ＶＩＤ）、機種を識別するために機種毎に割り当てられた製品ＩＤ（ＰＩＤ）、機器の個体を識別するために機器毎に割り当てられたシリアル番号、ＵＳＢクラス情報などである。
【００３９】
通信Ｉ／Ｆ３０２は、デバイス制御装置２００とＵＳＢ通信を行うための機能部である。
【００４０】
＜デバイス状態管理情報２０９について＞
次に、デバイス制御装置２００が有するデバイス状態管理情報２０９について説明する。
【００４１】
デバイス状態管理情報２０９は、デバイス制御装置２００自身に接続された外部デバイス３００のバス電源供給の状態を含む外部デバイス３００の情報である。
【００４２】
図２は、図１に示すデバイス状態管理情報２０９の一例を示す図である。デバイス状態管理情報２０９は、デバイス名、ベンダーＩＤ、プロダクトＩＤ、シリアル番号、デバイス接続ポート番号、デバイス電源状態、ＵＳＢクラス情報から構成される。
【００４３】
デバイス名は、デバイス制御装置２００に接続された外部デバイス３００の名称を示し、主にＵＳＢディスクリプタ情報から取得されるデバイス名称である。なお、デバイスを識別できる名称(情報)であればＵＳＢディスクリプタ情報から取得しなくてもよい。
【００４４】
ベンダーＩＤは、各企業や製造したメーカー毎に割り当てられる識別情報である。プロダクトＩＤは、ベンダーＩＤを持つ企業やメーカーが各製品や機種毎に重複しないよう割り振る識別情報（コード情報）である。シリアル番号は、機器の個体を識別するために機器毎に割り当てられた識別情報である。
【００４５】
デバイス接続ポート番号は、デバイス制御装置２００に接続された外部デバイス３００の物理的な接続位置をバスの接続階層に従い識別する情報である。
【００４６】
デバイス電源状態は、デバイス制御装置２００に接続された外部デバイス３００に対して、デバイス制御装置２００がバスの電源を供給・給電しているか停止しているかを示す情報である。
【００４７】
ＵＳＢクラス情報は、デバイスの種類を識別する情報である。例えば、ＵＳＢデバイスのクラスＩＤのような情報であって、同様の機能を持つデバイスに対して、構成や転送プロトコル定義を標準化した仕様群である。例えば、ストレージクラス、ＨＩＤ、オーディオクラス、ビデオクラスなどがある。
【００４８】
外部デバイス３００が第１の種類のデバイスなのか、もしくは第２の種類のデバイスなのかを識別するための情報として、ベンダーＩＤとプロダクトＩＤの組み合わせや、シリアル番号、デバイス名、ＵＳＢクラス情報などから識別することが可能である。なお、本実施形態ではデバイス制御装置２００がＵＳＢクラス情報から外部デバイス３００を識別する場合について説明する。
【００４９】
＜デバイスの種類に応じた仮想化終了要求の制御について＞
図３は、図１に示すデバイス制御装置２００による外部デバイス３００のデバイス種類識別時における仮想化終了要求の送信制御の一例を示すフローチャートである。なお、デバイス制御装置２００に外部デバイス３００が接続されていて、デバイス制御装置２００は外部デバイス３００のデバイス情報を取得したものとして説明を開始する。
【００５０】
まず、仮想化制御部２０２は、外部デバイス３００の種類を識別するため、デバイス制御装置２００が備えるデバイス情報取得部２０６にデバイス情報取得要求を送信し、デバイス情報取得部２０６は外部デバイス３００のＵＳＢクラス情報を取得し、記憶する（ステップＳ３０１)。
【００５１】
省電制御部２０７は、デバイス制御装置２００が所定の処理を行い、所定時間経過後に省電移行するかどうかを判定する（ステップＳ３０２）。
【００５２】
デバイス制御装置２００が省電移行する場合（ステップＳ３０２でＹｅｓ）、仮想化制御部２０２が、ステップＳ３０１でデバイス状態管理情報２０９に記憶したＵＳＢクラス情報をデバイス制御部２０３から取得し、外部デバイス３００の種類が第１の種類のデバイスかどうかの識別を行う（ステップＳ３０３）。
【００５３】
一方、デバイス制御装置２００が省電移行しない場合（ステップＳ３０２でＮｏ）、外部デバイス３００の種類の識別は行わず、ステップＳ３０２に戻り、仮想化制御部２０２はデバイス制御装置２００の省電制御部２０７からの省電移行要求が通知されるまで監視（待機）する。
【００５４】
外部デバイス３００のＵＳＢクラス情報が第1の種類のデバイスである場合（ステップＳ３０３でＹｅｓ）、省電制御部２０７は、省電移行するタイミングで仮想化制御部２０２に対して省電移行要求を送信する（ステップＳ３０４）
【００５５】
仮想化制御部２０２は、省電制御部２０７からの省電移行要求を受信する（ステップＳ３０５）。
【００５６】
仮想化制御部２０２は、ステップＳ３０５で省電制御部２０７から省電移行要求を受信後、情報処理装置１００に対して外部デバイス３００の仮想化終了要求を送信する（ステップＳ３０６）。
【００５７】
仮想化制御部２０２は、情報処理装置１００からの仮想化終了命令を受信し、情報処理装置１００とのセッションを終了後に、外部デバイス３００の仮想化制御を終了する（ステップＳ３０７）。その後、省電制御部２０７は、デバイス制御装置２００を省電状態に移行する。
【００５８】
一方、外部デバイス３００が第１の種類のデバイスでなく第２の種類のデバイスの場合（ステップＳ３０３でＮｏ）、デバイス終了要求通知部２０８から情報処理装置１００に仮想化終了要求は送信されず、デバイス制御装置２００の省電移行のタイミングで情報処理装置１００とのセッションを終了し、仮想化制御部２０２が外部デバイス３００の仮想化制御を終了する（ステップＳ３０７）。
【００５９】
上述のように、デバイス制御装置２００は、外部デバイス３００のデバイス情報（ＵＳＢクラス情報）から接続されている外部デバイス３００のデバイス種類を識別することにより、外部デバイス３００の種類に応じて情報処理装置１００への仮想化終了要求の送信を制御することが可能となる。
【００６０】
これにより、デバイス制御装置２００は、情報処理装置１００に対して仮想化終了要求の送信を制御できるため、外部デバイス３００が第１の種類のデバイス、第２の種類のデバイスの場合でも仮想化制御を終了することが可能となる。
【００６１】
＜第１の実施形態におけるにおけるセッション制御シーケンス＞
図４は、図１に示すデバイス制御装置２００における省電状態に遷移時の制御フローの一例を示すシーケンス図である。なお、デバイス制御装置２００は外部デバイス３００のデバイス情報を取得し、情報処理装置１００に外部デバイス３００が仮想化制御されているものとして説明を開始する。
【００６２】
まず、仮想化制御部２０２は、外部デバイス３００のデバイス情報を識別するため、デバイス制御装置２００が備えるデバイス制御部２０３にデバイス情報取得要求を送信する（ステップＳ４０１)。
【００６３】
デバイス制御部２０３は、デバイス情報取得部２０６にデバイス情報取得要求を送信する（ステップＳ４０２）。
【００６４】
デバイス情報取得部２０６は、外部デバイス３００のデバイス情報をデバイス制御部２０３に通知する（ステップＳ４０３）。
【００６５】
デバイス制御部２０３は、外部デバイス３００のデバイス情報を仮想化制御部２０２に通知する（ステップＳ４０４）。
【００６６】
仮想化制御部２０２は、ステップＳ４０４で取得した外部デバイス３００のデバイス情報に基づき外部デバイス３００の種類を識別する（ステップＳ４０５）。なお、このデバイス情報に基づく識別結果により、情報処理装置１００に対して、外部デバイス３００の仮想化終了要求の送信制御を行う。
【００６７】
省電制御部２０７は、デバイス制御装置２００自身を省電移行するため、省電移行要求を仮想化制御部２０２に通知する（ステップＳ４０６）。
【００６８】
ステップＳ４０５において、外部デバイス３００が第１の種類のデバイスであった場合、第１の種類の外部デバイス３００の仮想化制御の終了に関する処理について、ステップＳ４０７〜ステップＳ４１９にて説明する。外部デバイス３００が第２の種類のデバイスであった場合は、第２の種類の外部デバイス３００の仮想化制御の終了に関する処理について、ステップＳ４２０〜ステップＳ４２３にて説明する。また、外部デバイス３００が第２の種類のデバイスである場合、デバイス制御装置２００の省電移行のタイミングでデバイスの切断（セッションの終了）を行うため、情報処理装置１００からの仮想化終了命令は不要である。ステップＳ４２４以降の処理は、第１の種類のデバイス、および第２の種類のデバイスで共通である。
【００６９】
仮想化制御部２０２は、ステップＳ４０５による外部デバイス３００の種類の判断により、外部デバイス３００が第１の種類のデバイスであった場合、デバイス終了要求通知部２０８に外部デバイス３００の仮想化終了要求を送信する（ステップＳ４０７）。
【００７０】
デバイス終了要求通知部２０８は、情報処理装置１００が備える仮想化制御部１０３に外部デバイス３００の仮想化終了要求を送信する（ステップＳ４０８）。
【００７１】
仮想化制御部１０３は、ステップＳ４０８でデバイス制御装置２００から受信した外部デバイス３００の仮想化終了要求をデバイスドライバ１０２に送信する（ステップＳ４０９）。
【００７２】
デバイスドライバ１０２は、ステップＳ４０９で受信した外部デバイス３００の仮想化終了要求をアプリケーション１０１に通知する（ステップＳ４１０）。
【００７３】
アプリケーション１０１は、仮想化制御部１０３にセッションの終了を指示する（ステップＳ４１１）。
【００７４】
仮想化制御部１０３は、デバイス制御装置２００が備える仮想化制御部２０２とのセッションを終了する（ステップＳ４１２）。
【００７５】
仮想化制御部２０２は、情報処理装置１００とのセッションが終了されたことを省電制御部２０７に通知する（ステップＳ４１３）。
【００７６】
ステップＳ４１０で外部デバイス３００の仮想化終了要求を受信したアプリケーション１０１は、デバイス制御装置２００に対して外部デバイス３００の仮想化終了命令を通知するため、まず、デバイスドライバ１０２に外部デバイス３００の仮想化終了命令を送信する（ステップＳ４１４）。
【００７７】
デバイスドライバ１０２は、ステップＳ４１４で仮想化終了命令を受信後に、仮想化制御部１０３に外部デバイス３００の仮想化終了命令を送信する（ステップＳ４１５）。
【００７８】
情報処理装置１００が備える仮想化制御部１０３は、デバイス制御装置２００が備えるデバイス終了要求通知部２０８に仮想化終了命令を送信する（ステップＳ４１６）。
【００７９】
デバイス終了要求通知部２０８は、仮想化制御部２０２に仮想化終了命令を送信する（ステップＳ４１７）。
【００８０】
仮想化制御部２０２は、デバイス終了要求通知部２０８から仮想化終了命令を受信すると、情報処理装置１００と外部デバイス３００との間の仮想化制御を終了する（ステップＳ４１８）。
【００８１】
仮想化制御部２０２は、仮想化制御が終了すると、省電制御部２０７に仮想化制御が終了されたことを通知（仮想化終了通知）する（ステップＳ４１９）。
【００８２】
一方、ステップＳ４０５による外部デバイスの種類の判断により、外部デバイス３００が第２の種類のデバイスの場合は、デバイス制御装置２００の省電移行のタイミングで、仮想化制御部２０２が仮想化制御部１０３とのセッションを終了する(ステップＳ４２０)。つまり、情報処理装置１００からの仮想化終了命令は行わない。
【００８３】
仮想化制御部２０２は、情報処理装置１００とのセッションが終了されたことを省電制御部２０７に通知する（ステップＳ４２１）。
【００８４】
仮想化制御部２０２は、情報処理装置１００と外部デバイス３００との間の仮想化制御を終了する（ステップＳ４２２）。
【００８５】
仮想化制御部２０２は、仮想化制御が終了すると、省電制御部２０７に仮想化制御が終了されたことを通知（仮想化終了通知）する（ステップＳ４２３）。
【００８６】
ステップＳ４１９、またはステップＳ４２３の仮想化終了通知受信後、デバイス制御装置２００が備える省電制御部２０７は、デバイス制御装置２００自身を省電状態に移行するように制御する（ステップＳ４２４）。
【００８７】
省電制御部２０７が省電移行すると、電源供給制御部２０５は、外部デバイス３００への電源供給を停止する（ステップＳ４２５）。
【００８８】
ここから、情報処理装置１００からの要求に応じて、デバイス制御装置２００が省電移行し電源供給を停止した外部デバイス３００に再接続する場合について説明する。
【００８９】
情報処理装置１００は、入力部を介した所定の操作により表示部に外部デバイス３００の一覧が表示され、選択された外部デバイス３００を探索する（ステップＳ４２６）。
【００９０】
アプリケーション１０１は、外部デバイス３００の探索を仮想化制御部１０３に通知する（ステップＳ４２７）。
【００９１】
電源供給を停止した外部デバイス３００を選択し、再び仮想化制御を開始する場合、情報処理装置１００が備える仮想化制御部１０３は、デバイス制御装置２００が備える仮想化制御部２０２に仮想化開始命令を送信する（ステップＳ４２８）。
【００９２】
仮想化制御部２０２は、デバイス制御部２０３に仮想化開始命令を行う（ステップＳ４２９）。このとき、情報処理装置１００は、情報処理装置１００自身に外部デバイス３００があたかも物理的に接続されているように認識できる。
【００９３】
デバイス制御部２０３は、省電制御部２０７に仮想化制御が開始されたことを通知（仮想化開始通知）する（ステップＳ４３０）。
【００９４】
省電制御部２０７は、省電状態から復帰し（ステップＳ４３１）、電源供給制御部２０５は、外部デバイス３００に電源供給を再開する（ステップＳ４３２）。
【００９５】
デバイス制御部２０３は、情報処理装置１００と外部デバイス３００との間で仮想化制御が開始されると、仮想化制御部２０２に対して仮想化開始命令に対する応答である仮想化開始応答を送信する（ステップＳ４３３）。
【００９６】
仮想化制御部２０２は、デバイス制御装置２００の通信制御部２０１を介して情報処理装置１００が備える仮想化制御部１０３に対して仮想化開始応答を送信する（ステップＳ４３４）。
【００９７】
仮想化制御部１０３は、デバイスドライバ１０２に対して仮想化開始応答を送信する（ステップＳ４３５）。
【００９８】
デバイスドライバ１０２は、アプリケーション１０１に対して仮想化開始応答を送信する（ステップＳ４３６）。
【００９９】
ユーザによる入力部を介した操作により、アプリケーション１０１は外部デバイス３００の使用要求を行う（ステップＳ４３７）と、仮想化制御部１０３に対してセッションの開始を指示する（ステップＳ４３８）。
【０１００】
仮想化制御部１０３は、仮想化制御部２０２との間のセッションを開始し、デバイス制御装置２００を介して、情報処理装置１００と外部デバイス３００との間でデータ送受信が行われる（ステップＳ４３９）。
【０１０１】
仮想化制御部２０２は、省電制御部２０７にセッションが再接続されたことを通知する（ステップＳ４４０）。
【０１０２】
上述のように、本発明の第１の実施形態によれば、デバイス制御装置２００は、外部デバイス３００のＵＳＢクラス情報から接続されている外部デバイス３００のデバイス種類を識別することにより、外部デバイス３００の種類に応じて情報処理装置１００とのセッションの終了および仮想化終了要求の送信を制御することが可能となる。つまり、情報処理装置１００は、物理的に外部デバイス３００を挿抜することなく、新規に物理的に接続された外部デバイス３００として認識し、アプリケーション１０１からデバイス制御装置２００を介して外部デバイス３００を制御可能となる。
【０１０３】
これにより、デバイス制御装置２００は、情報処理装置１００に対して仮想化終了要求を制御できるため、外部デバイス３００が第１の種類のデバイスの場合でも、外部デバイス３００のメモリ領域の書き込みが終了してから仮想化制御を終了することが可能となる。また、デバイス制御装置２００は、情報処理装置１００が外部デバイス３００にアクセス中であっても外部デバイス３００内のメモリ領域を論理的に破壊することを防止でき、さらに、外部デバイス３００の仮想化制御を終了して省電状態に移行することが可能となる。
【０１０４】
[第２の実施形態]
本発明の第２の実施形態では、情報処理装置１００と外部デバイス３００がデバイス制御装置２００を介して仮想化制御されている際に、デバイス制御装置２００が外部デバイス３００に対して所定の作業を行う場合、デバイス制御装置２００が情報処理装置１００と外部デバイス３００との間の仮想化制御を終了し、所定の作業を完了するとデバイス制御装置２００が、再び情報処理装置１００と外部デバイス３００との仮想化制御を開始する点が特徴である。以降、デバイス制御装置２００が外部デバイス３００に対する所定の作業（例：外部デバイス３００のファームウェアをアップデート）を行う場合について例示する。
【０１０５】
＜システム構成＞
図５は、本発明の第２の実施形態によるデバイス制御システムの一例の構成を概略的に示すブロック図である。
【０１０６】
図５のデバイス制御システムは、情報処理装置１００、デバイス制御装置２００、外部デバイス３００から構成されており、図１で示したデバイス制御システムと以下の構成が異なっている。その他の接続構成や構成要素は、図１と同じであるため、図１に示す構成要素と同一の構成要素については同一の参照番号を付して説明を省略し、異なる点についてのみ説明する。
【０１０７】
デバイス制御部２０３は、更新ファームウェア記憶部２１０を備えている。更新ファームウェア記憶部２１０は、外部デバイス３００のファームウェアをアップデートする場合に必要となるファームウェア情報を情報処理装置１００から受信（取得）・記憶し、デバイス制御装置２００が外部デバイスを制御する。ファームウェア情報には、更新リビジョンのバイナリファイル等を含む。
【０１０８】
＜デバイス制御装置２００によるセッションの終了について＞
図６は、図５に示すデバイス制御装置２００におけるセッションの終了および外部デバイス３００の仮想化制御終了時の制御の一例を示すフローチャートである。デバイス制御装置２００に外部デバイス３００が接続されているものとして説明を開始する。
【０１０９】
まず、デバイス制御部２０３、デバイス制御装置２００自身に接続されている外部デバイス３００のファームウェアのアップデートを行う契機を判断する（ステップＳ６０１）。なお、アップデートの契機は、情報処理装置１００から最新のファームウェア情報を取得した場合や、情報処理装置１００からの指示を受けたタイミング（時刻）になったことをデバイス制御装置２００が判断した場合、あるいは夜間など外部デバイス３００が稼働していないことをデバイス制御装置２００が判断した場合などである。
【０１１０】
外部デバイス３００のファームウェアのアップデートを行う場合（ステップＳ６０１でＹｅｓ）、仮想化制御部２０２は、情報処理装置１００に対して仮想化終了要求を送信する（ステップＳ６０２）。
【０１１１】
ファームウェアのアップデートを行わない場合（ステップＳ６０１でＮｏ）、情報処理装置１００からの仮想化終了要求の受信したかを判断する（ステップＳ６０３）。情報処理装置１００から仮想化終了要求を受信した場合（ステップＳ６０３でＹｅｓ）、ステップＳ６０４に進む。情報処理装置１００から仮想化終了要求を受信しない場合（ステップＳ６０３でＮｏ）、ステップＳ６０１に戻る。
【０１１２】
デバイス制御装置２００は、情報処理装置１００とのデータ送受信を行っている場合は、データ送受信の完了後にセッションを終了する(ステップＳ６０４)。
【０１１３】
次に、仮想化制御部２０２は、情報処理装置１００とのセッションの終了後、情報処理装置１００と外部デバイス３００との仮想化制御を終了する（ステップＳ６０５）。
【０１１４】
ステップＳ６０４により情報処理装置１００とデバイス制御装置２００との間のセッションが終了されたら、デバイス制御装置２００は更新ファームウェア記憶部２１０に記憶されている外部デバイス３００のファームウェア情報に基づき、外部デバイス３００のファームウェアのアップデート等の制御を行う（ステップＳ６０６）。ファームウェアのアップデートが完了すると、デバイス制御装置２００が情報処理装置１００とデバイス制御装置２００との間の仮想化制御を再開する。
【０１１５】
＜第２の実施形態におけるにおけるセッション制御シーケンス＞
図７は、図５に示すデバイス制御システムにおける仮想化制御の動作を説明するためのシーケンス図である。なお、デバイス制御装置２００と外部デバイス３００がそれぞれ１台の場合を例示するが、これに限定したものではない。例えば、デバイス制御装置２００が複数台ある場合は、情報処理装置１００からの指示に応じて時間差でデバイス制御装置２００が所定の作業を行うこともできる。また、外部デバイス３００が複数台ある場合には、デバイス制御装置２００は、外部デバイス３００に対して一斉に所定の作業を行う、あるいは１台ずつ所定の作業を行うことも可能である。以降、ファームウェア情報を更新ファームウェア記憶部２１０にすでに記憶しているものとして説明する。
【０１１６】
デバイス制御装置２００から外部デバイス３００に対してメンテナンス等（ファームウェアのアップデートを含む）の所定の作業を制御するため、情報処理装置１００と外部デバイス３００との間の仮想化制御がされている場合に、仮想化制御を終了させなければならない。
【０１１７】
まず、デバイス制御装置２００と情報処理装置１００とのセッションを終了する必要があるため、デバイス制御装置２００が備える仮想化制御部２０２は、通信制御部２０１を介して情報処理装置１００が備える仮想化制御部１０３に仮想化終了要求を送信する（ステップＳ７０１）。
【０１１８】
仮想化制御部１０３は、ステップＳ７０１で受信した仮想化終了要求をデバイスドライバ１０２に送信する（ステップＳ７０２）。
【０１１９】
デバイスドライバ１０２は、ステップＳ７０２で受信した仮想化終了要求をアプリケーション１０１に送信する（ステップＳ７０３）。
【０１２０】
仮想化制御部２０２は、仮想化制御部１０３とのセッションを終了する（ステップＳ７０４）。
【０１２１】
アプリケーション１０１は、デバイス制御装置２００とのセッションが終了されたことを検知し、デバイスドライバ１０２に対して仮想化終了命令を送信する（ステップＳ７０５）。
【０１２２】
デバイスドライバ１０２は、仮想化制御部１０３に対して仮想化終了命令を送信する（ステップＳ７０６）。
【０１２３】
仮想化制御部１０３は、仮想化制御部２０２に対して仮想化終了命令を送信する（ステップＳ７０７）。
【０１２４】
仮想化制御部２０２は、仮想化制御部１０３から仮想化終了命令を受信すると、仮想化制御を終了する（ステップＳ７０８）。このとき、情報処理装置１００は、デバイス制御装置２００からの仮想化終了命令により、情報処理装置１００自身にあたかも物理的に接続されているように認識している外部デバイス３００の切断を検知する。
【０１２５】
仮想化制御部２０２は、仮想化制御が終了すると、デバイス制御部２０３にセッションが終了されたことを通知する（ステップＳ７０９）。
【０１２６】
デバイス制御部２０３は、更新ファームウェア記憶部２１０から取得した外部デバイス３００のファームウェア情報に基づき、外部デバイス３００を制御してファームウェアのアップデート等のメンテナンス作業を行う（ステップＳ７１０）。
【０１２７】
ステップＳ７０９における所定のメンテナンス作業終了後、デバイス制御部２０３は、仮想化制御部２０２へメンテナンス終了通知を送信する（ステップＳ７１１）。
【０１２８】
ここから、デバイス制御装置２００からのセッション再開要求後に情報処理装置１００が外部デバイス３００に再接続する場合について説明する。
【０１２９】
仮想化制御部２０２は、通信制御部２０１を介して情報処理装置１００が備える仮想化制御部１０３にセッションの再開要求を送信する（ステップＳ７１２）。
【０１３０】
仮想化制御部１０３は、デバイス制御装置２００からセッション再開要求を受信すると、アプリケーション１０１に対してセッションの再開要求を送信する（ステップＳ７１３）。
【０１３１】
アプリケーション１０１は、セッションの再開要求を受信すると、デバイスドライバ１０２に対して仮想化開始命令を送信する（ステップＳ７１４）。
【０１３２】
デバイスドライバ１０２は、仮想化制御部１０３に対して仮想化開始命令を送信する（ステップＳ７１５）。
【０１３３】
仮想化制御部１０３は、通信制御部１０４を介して仮想化制御部２０２に対して仮想化開始命令を送信する（ステップＳ７１６）。
【０１３４】
仮想化制御部２０２は、デバイス制御部２０３に対して仮想化開始命令を送信する（ステップＳ７１７）。
【０１３５】
デバイス制御部２０３は、仮想化制御を再開すると仮想化制御部２０２に対して仮想化開始応答を送信する（ステップＳ７１８）。このとき、情報処理装置１００は、情報処理装置１００自身に外部デバイス３００があたかも物理的に接続されているように認識できる。
【０１３６】
仮想化制御部２０２は、通信制御部２０１を介して仮想化制御部１０３に対して仮想化開始応答を送信する（ステップＳ７１９）。
【０１３７】
仮想化制御部１０３は、デバイスドライバ１０２に対して仮想化開始応答を送信する（ステップＳ７２０）。
【０１３８】
デバイスドライバ１０２は、アプリケーション１０１に対して仮想化開始応答を送信する（ステップＳ７２１）。
【０１３９】
ユーザによる入力部を介した操作により、アプリケーション１０１は、外部デバイス３００を使用要求を行う（ステップＳ７２２）と、仮想化制御部１０３に対してセッションの開始を指示する（ステップＳ７２３）。
【０１４０】
仮想化制御部１０３は、仮想化制御部２０２との間のセッションを開始し、デバイス制御装置２００を介して、情報処理装置１００と外部デバイス３００との間でデータ送受信が行われる（ステップＳ７２４）。つまり、情報処理装置１００は、新規に物理的に接続された外部デバイスとしてアプリケーション１０１からデバイス制御装置２００を介して外部デバイス３００の書き込みが再び制御可能となる。
【０１４１】
上述のように、本発明の第２の実施形態によれば、デバイス制御装置２００からの仮想化終了要求を契機とし、デバイス制御装置と外部デバイス３００との間の仮想化制御の終了を制御することが可能となる。また、デバイス制御装置２００と外部デバイス３００との間で所定の作業が完了すると、デバイス制御装置２００が再び情報処理装置１００と外部デバイス３００との間の仮想化制御を開始することが可能となる。
【０１４２】
これにより、デバイス制御装置２００は、情報処理装置１００と外部デバイス３００がデバイス制御装置２００を介して仮想化制御されている場合に、所定の作業を行うために外部デバイス３００を制御することが可能になる。
【０１４３】
また、外部デバイス３００の所定の作業終了に応じて、デバイス制御装置２００から情報処理装置１００に対してセッションの再開要求を送信することで、情報処理装置１００は再び外部デバイス３００を仮想化制御を開始して制御することが可能となる。
【０１４４】
なお、所定の作業をファームウェアのアップデート等のメンテナンス作業として例示したが、これに限定したものではない。
【０１４５】
以上、本発明について上記の各実施形態に基づいて説明したが、本発明は、これらの実施形態に限定されるものではなく、この発明の要旨を逸脱しない範囲の様々な形態も本発明に含まれる。
【０１４６】
デバイス制御装置２００は、外部デバイス３００との接続ポートを内蔵する形態で説明したが、デバイス制御装置２００に別体のデバイス分岐装置（例：ＵＳＢハブ、不図示）を接続し、このデバイス分岐装置を介してデバイス制御装置２００と外部デバイス３００とを接続しても良い。
【０１４７】
例えば、上記の実施形態の機能の制御方法として、この制御方法をデバイス制御装置に実行させるようにすればよい。また、上述の実施形態の機能を有するプログラムを制御プログラムとして、当該制御プログラムをデバイス制御装置が備えるコンピュータに実行させるようにしてもよい。なお、制御プログラムは、例えば、コンピュータに読み取り可能な記録媒体に記録される。
【０１４８】
また、本発明は、以下の処理を実行することによっても実現される。つまり、上述した実施形態の機能を実現するソフトウェア（プログラムコード）を、ネットワークまたは各種の記録媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムコードを読み出して実行する処理である。
【０１４９】
この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶したコンピュータで読み取り可能な記憶媒体は本発明を構成することになる。
【０１５０】
また、プログラムコードの指示に基づき、コンピュータ上で稼働しているＯＳ等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現されるように構成してもよい。
【０１５１】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれたあと、このプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部または全部を実行し、その処理に応じて上述した実施形態が実現される場合も含んでいる。
【０１５２】
なお、プログラムコードを供給するため、例えば、フロッピー（登録商標）ディスク、ハードディスク、光磁気ディスク、ＣＤやＤＶＤに代表される光ディスク、磁気テープ、不揮発性のメモリカード、ＲＯＭ等の記憶媒体を用いることができる。または、プログラムコードは、ネットワークを介してダウンロードしてもよい。
【符号の説明】
【０１５３】
１００：情報処理装置
１０１：アプリケーション
１０２：デバイスドライバ
１０３：仮想化制御部
１０４：通信制御部
２００：デバイス制御装置
２０１：通信制御部
２０２：仮想化制御部
２０３：デバイス制御部
２０４：デバイス状態管理部
２０５：電源供給制御部
２０６：デバイス情報取得部
２０７：省電制御部
２０８：デバイス終了要求通知部
２０９：デバイス状態管理情報
２１０：更新ファームウェア記憶部
３００：外部デバイス
３０１：個体識別番号
３０２：通信Ｉ／Ｆ
【図１】
2018055331.tif 000003
【図２】
2018055331.tif 000004
【図３】
2018055331.tif 000005
【図４】
2018055331.tif 000006
【図５】
2018055331.tif 000007
【図６】
2018055331.tif 000008
【図７】
2018055331.tif 000009