(57)【要約】【課題】ブート処理にかかる時間を短縮すること。【解決手段】ＢＩＯＳ（Ｂａｓｉｃ  Ｉｎｐｕｔ  Ｏｕｔｐｕｔ  Ｓｙｓｔｅｍ）によるブート処理を実行する情報処理装置は、ブート処理の実行の有無に関わらず、情報処理装置に接続されている他装置から当該他装置に関する情報を取得する接続処理部と、ブート処理において情報処理装置に接続されている他装置との通信処理を実行する通信制御部と、ブート処理を実行する際に、接続処理部が取得する他装置に関する情報に基づいて通信制御部による処理を実行するか否かを制御する第１処理部と、を備える。【選択図】図１
2019207551.tif 000002
【特許請求の範囲】
【請求項１】
ＢＩＯＳ（Ｂａｓｉｃ  Ｉｎｐｕｔ  Ｏｕｔｐｕｔ  Ｓｙｓｔｅｍ）によるブート処理を実行する情報処理装置であって、
前記ブート処理の実行の有無に関わらず、前記情報処理装置に接続されている他装置から当該他装置に関する情報を取得する接続処理部と、
前記ブート処理において前記情報処理装置に接続されている他装置との通信処理を実行する通信制御部と、
前記ブート処理を実行する際に、前記接続処理部が取得する他装置に関する情報に基づいて前記通信制御部による処理を実行するか否かを制御する第１処理部と、
を備える情報処理装置。
【請求項２】
ＢＩＯＳ（Ｂａｓｉｃ  Ｉｎｐｕｔ  Ｏｕｔｐｕｔ  Ｓｙｓｔｅｍ）によるブート処理を実行する情報処理装置であって、
前記情報処理装置に接続される他装置との通信接続を確立する処理を実行する接続処理部と、
前記接続処理部により通信が確立された他装置との通信処理を実行する通信制御部と、
前記ブート処理を実行する際に、前記接続処理部により通信が確立された他装置があるか否かに基づいて前記通信制御部による処理を実行するか否かを制御する第１処理部と、
を備える情報処理装置。
【請求項３】
前記ブート処理の実行の有無に関わらず、前記情報処理装置に接続されている他装置に関する情報、または前記接続処理部により通信が確立された他装置があるか否かを示す情報を前記接続処理部から取得する第２処理部を備え、
前記第１処理部は、
前記ブート処理を実行する際に、前記第２処理部を介して前記接続処理部から取得した情報に基づいて前記通信制御部による処理を実行するか否かを制御する、
請求項１または請求項２に記載の情報処理装置。
【請求項４】
前記第１処理部はプロセッサであり、前記第２処理部は組み込みコントローラである、
請求項３に記載の情報処理装置。
【請求項５】
前記接続処理部は、
前記ブート処理の実行の有無に関わらず、前記情報処理装置に接続された他の装置との通信接続を確立する処理を実行するＰＤ（Ｐｏｗｅｒ  Ｄｅｌｉｖｅｒｙ）コントローラである、
請求項１から請求項４のいずれか一項に記載の情報処理装置。
【請求項６】
前記情報処理装置と前記他装置とは、ＵＳＢ  Ｔｙｐｅ−Ｃのコネクタを介して接続されている、
請求項１から請求項５のいずれか一項に記載の情報処理装置。
【請求項７】
ＢＩＯＳ（Ｂａｓｉｃ  Ｉｎｐｕｔ  Ｏｕｔｐｕｔ  Ｓｙｓｔｅｍ）によるブート処理を実行する情報処理装置の制御方法であって、
接続処理部が、前記ブート処理の実行の有無に関わらず、前記情報処理装置に接続されている他装置から当該他装置に関する情報を取得する接続処理ステップと、
通信制御部が、前記ブート処理において前記情報処理装置に接続されている他装置との通信処理を実行する通信制御ステップと、
第１処理部が、前記ブート処理を実行する際に、前記接続処理部が取得する他装置に関する情報に基づいて前記通信制御部による処理を実行するか否かを制御する第１処理ステップと、
を有する制御方法。
【請求項８】
ＢＩＯＳ（Ｂａｓｉｃ  Ｉｎｐｕｔ  Ｏｕｔｐｕｔ  Ｓｙｓｔｅｍ）によるブート処理を実行する情報処理装置の制御方法であって、
接続処理部が、前記情報処理装置に接続される他装置との通信接続を確立する処理を実行する接続処理ステップと、
通信制御部が、前記接続処理部により通信が確立された他装置との通信処理を実行する通信制御ステップと、
第１処理部が、前記ブート処理を実行する際に、前記接続処理部により通信が確立された他装置があるか否かに基づいて前記通信制御部による処理を実行するか否かを制御する第１処理ステップと、
を有する制御方法。
【請求項９】
ＢＩＯＳ（Ｂａｓｉｃ  Ｉｎｐｕｔ  Ｏｕｔｐｕｔ  Ｓｙｓｔｅｍ）によるブート処理を実行する情報処理装置としてのコンピュータに、
前記ブート処理の実行の有無に関わらず、前記情報処理装置に接続されている他装置から当該他装置に関する情報を取得する接続処理ステップと、
前記ブート処理において前記情報処理装置に接続されている他装置との通信処理を実行する通信制御ステップと、
前記ブート処理を実行する際に、前記接続処理ステップにより取得される他装置に関する情報に基づいて前記通信制御ステップによる処理を実行するか否かを制御する第１処理ステップと、
を実行させるためのプログラム。
【請求項１０】
ＢＩＯＳ（Ｂａｓｉｃ  Ｉｎｐｕｔ  Ｏｕｔｐｕｔ  Ｓｙｓｔｅｍ）によるブート処理を実行する情報処理装置としてのコンピュータに、
前記情報処理装置に接続される他装置との通信接続を確立する処理を実行する接続処理ステップと、
前記接続処理ステップにより通信が確立された他装置との通信処理を実行する通信制御ステップと、
前記ブート処理を実行する際に、前記接続処理ステップにより通信が確立された他装置があるか否かに基づいて前記通信制御ステップによる処理を実行するか否かを制御する第１処理ステップと、
を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、制御方法、及びプログラムに関する。
【背景技術】
【０００２】
近年、コンピュータなどの情報処理装置と当該情報処理装置に接続される機器（周辺機器）との入力インターフェースの一つとして、Ｔｈｕｎｄｅｒｂｏｌｔ（登録商標）、ＡＣアダプタ、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ Ｓｅｒｉａｌ Ｂｕｓ）、ＤｉｓｐｌａｙＰｏｒｔなどのインターフェースを一つのポートでサポートしているＵＳＢ  Ｔｙｐｅ−Ｃ規格のポートがある。
【０００３】
例えば、特許文献１に示すように、情報処理装置は、起動時の最初にＢＩＯＳ（Ｂａｓｉｃ  Ｉｎｐｕｔ  Ｏｕｔｐｕｔ  Ｓｙｓｔｅｍ）のプログラムを実行し、上述したような入力インターフェースに接続された機器に対する基本的な入出力制御や、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）の動作モードの設定、ＯＳ（Ｏｐｅｒａｔｉｎｇ Ｓｙｓｔｅｍ）の起動などのブート処理を行う。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１６−１２２２６８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
上述したＢＩＯＳによるブート処理において、例えばＴｈｕｎｄｅｒｂｏｌｔのような通信規格で接続される機器の検出には時間がかかり、ブート処理における時間が延びるという課題がある。これは、Ｔｈｕｎｄｅｒｂｏｌｔ接続機器が無い状態でも、検出するための待ち時間が発生するため同様である。そこで、ＢＩＯＳ設定においてＴｈｕｎｄｅｒｂｏｌｔのサポートはデフォルトで無効（Ｄｉｓａｂｉｌｅ）に設定されていることが一般的であり、ＯＳの起動前にＴｈｕｎｄｅｒｂｏｌｔによる接続が必要な場合には、ＢＩＯＳ設定を有効（Ｅｎａｂｌｉｅ）に変更して再起動する必要があった。
【０００６】
本発明は、上記した事情に鑑みてなされたもので、ブート処理にかかる時間を短縮することができる情報処理装置、制御方法、及びプログラムを提供することを目的の一つとする。
【課題を解決するための手段】
【０００７】
本発明は上記の課題を解決するためになされたものであり、本発明の第１態様に係る情報処理装置は、ＢＩＯＳ（Ｂａｓｉｃ  Ｉｎｐｕｔ  Ｏｕｔｐｕｔ  Ｓｙｓｔｅｍ）によるブート処理を実行する情報処理装置であって、前記ブート処理の実行の有無に関わらず、前記情報処理装置に接続されている他装置から当該他装置に関する情報を取得する接続処理部と、前記ブート処理において前記情報処理装置に接続されている他装置との通信処理を実行する通信制御部と、前記ブート処理を実行する際に、前記接続処理部が取得する他装置に関する情報に基づいて前記通信制御部による処理を実行するか否かを制御する第１処理部と、を備える。
【０００８】
また、本発明の第２態様に係る情報処理装置は、ＢＩＯＳ（Ｂａｓｉｃ  Ｉｎｐｕｔ  Ｏｕｔｐｕｔ  Ｓｙｓｔｅｍ）によるブート処理を実行する情報処理装置であって、前記情報処理装置に接続される他装置との通信接続を確立する処理を実行する接続処理部と、前記接続処理部により通信が確立された他装置との通信処理を実行する通信制御部と、前記ブート処理を実行する際に、前記接続処理部により通信が確立された他装置があるか否かに基づいて前記通信制御部による処理を実行するか否かを制御する第１処理部と、を備える。
【０００９】
上記情報処理装置は、前記ブート処理の実行の有無に関わらず、前記情報処理装置に接続されている他装置に関する情報、または前記接続処理部により通信が確立された他装置があるか否かを示す情報を前記接続処理部から取得する第２処理部を備え、前記第１処理部は、前記ブート処理を実行する際に、前記第２処理部を介して前記接続処理部から取得した情報に基づいて前記通信制御部による処理を実行するか否かを制御してもよい。
【００１０】
前記第１処理部はプロセッサであってもよく、前記第２処理部は組み込みコントローラであってもよい。
【００１１】
前記接続処理部は、前記ブート処理の実行の有無に関わらず、前記情報処理装置に接続された他の装置との通信接続を確立する処理を実行するＰＤ（Ｐｏｗｅｒ  Ｄｅｌｉｖｅｒｙ）コントローラであってもよい。
【００１２】
前記情報処理装置と前記他装置とは、ＵＳＢ  Ｔｙｐｅ−Ｃのコネクタを介して接続されていてもよい。
【００１３】
また、本発明の第３態様に係るＢＩＯＳ（Ｂａｓｉｃ  Ｉｎｐｕｔ  Ｏｕｔｐｕｔ  Ｓｙｓｔｅｍ）によるブート処理を実行する情報処理装置の制御方法は、接続処理部が、前記ブート処理の実行の有無に関わらず、前記情報処理装置に接続されている他装置から当該他装置に関する情報を取得する接続処理ステップと、通信制御部が、前記ブート処理において前記情報処理装置に接続されている他装置との通信処理を実行する通信制御ステップと、第１処理部が、前記ブート処理を実行する際に、前記接続処理部が取得する他装置に関する情報に基づいて前記通信制御部による処理を実行するか否かを制御する第１処理ステップと、を有する。
【００１４】
また、本発明の第４態様に係るＢＩＯＳ（Ｂａｓｉｃ  Ｉｎｐｕｔ  Ｏｕｔｐｕｔ  Ｓｙｓｔｅｍ）によるブート処理を実行する情報処理装置の制御方法は、接続処理部が、前記情報処理装置に接続される他装置との通信接続を確立する処理を実行する接続処理ステップと、通信制御部が、前記接続処理部により通信が確立された他装置との通信処理を実行する通信制御ステップと、第１処理部が、前記ブート処理を実行する際に、前記接続処理部により通信が確立された他装置があるか否かに基づいて前記通信制御部による処理を実行するか否かを制御する第１処理ステップと、を有する。
【００１５】
また、本発明の第５態様に係るプログラムは、ＢＩＯＳ（Ｂａｓｉｃ  Ｉｎｐｕｔ  Ｏｕｔｐｕｔ  Ｓｙｓｔｅｍ）によるブート処理を実行する情報処理装置としてのコンピュータに、前記ブート処理の実行の有無に関わらず、前記情報処理装置に接続されている他装置から当該他装置に関する情報を取得する接続処理ステップと、前記ブート処理において前記情報処理装置に接続されている他装置との通信処理を実行する通信制御ステップと、前記ブート処理を実行する際に、前記接続処理ステップにより取得される他装置に関する情報に基づいて前記通信制御ステップによる処理を実行するか否かを制御する第１処理ステップと、を実行させる。
【００１６】
また、本発明の第６態様に係るプログラムは、ＢＩＯＳ（Ｂａｓｉｃ  Ｉｎｐｕｔ  Ｏｕｔｐｕｔ  Ｓｙｓｔｅｍ）によるブート処理を実行する情報処理装置としてのコンピュータに、前記情報処理装置に接続される他装置との通信接続を確立する処理を実行する接続処理ステップと、前記接続処理ステップにより通信が確立された他装置との通信処理を実行する通信制御ステップと、前記ブート処理を実行する際に、前記接続処理ステップにより通信が確立された他装置があるか否かに基づいて前記通信制御ステップによる処理を実行するか否かを制御する第１処理ステップと、を実行させる。
【発明の効果】
【００１７】
本発明の上記態様によれば、ブート処理における処理時間を短縮することができる。
【図面の簡単な説明】
【００１８】
【図１】実施形態に係る情報処理装置の一例を示すブロック図。
【図２】実施形態に係るＰＯＳＴ処理の一例を示すフローチャート。
【図３】実施形態に係るＰＯＳＴ処理の別の例を示すフローチャート。
【発明を実施するための形態】
【００１９】
以下、図面を参照しながら本発明の実施形態について詳しく説明する。なお、各図において同一部分には同一符号を付している。
【００２０】
Ｔｈｕｎｄｅｒｂｏｌｔ（以下、省略して「ＴＢＴ」とも称する）を介してネットワークブートを行う場合や、ＴＢＴで接続されたキーボードなどの機器をＯＳの起動前のＢＩＯＳによるブート処理で使用する場合、ＢＩＯＳ設定でＴＢＴサポートを有効（Ｅｎａｂｌｉｅ）にする必要がある。ＴＢＴサポートを有効（Ｅｎａｂｌｉｅ）にした場合、ＢＩＯＳは、ＴＢＴコントローラへコマンドを送り、ＴＢＴコントローラによってＴＢＴに接続されている機器を検出しエニュメレーションを行い、ＴＢＴを介した通信処理を行う。ここで、ＴＢＴサポートを有効（Ｅｎａｂｌｉｅ）に設定していると、ＴＢＴに接続されている機器が無い状態でも、ＢＩＯＳがＴＢＴコントローラへコマンドを送り、ＴＢＴコントローラによって機器を検出するための待ち時間が必要となるため、ＴＢＴサポートを無効（Ｄｉｓａｂｉｌｅ）に設定している場合よりブート処理における処理時間が長くなる。そこで、本実施形態では、ＴＢＴコントローラによるエニュメレーションを行わずにＴＢＴに接続されている機器の有無を判定することで、ＢＩＯＳ設定を変更することなく、自動で（ユーザの操作を必要とせず）ＴＢＴサポートの有効／無効（即ち、ＴＢＴコントローラによるエニュメレーションを行うか否か）を切り替え可能な構成とした。以下、具体的な構成について説明する。
【００２１】
図１は、本実施形態に係る情報処理装置の一例を示すブロック図である。図示する情報処理装置１０は、デスクトップＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）、ラップトップＰＣ（ノートＰＣ）、タブレットＰＣなどの電子機器である。図示する情報処理装置１０は、入出力端子１１と、ＰＤコントローラ１２と、ＴＢＴコントローラ１３と、ＰＣＨ１４と、ＥＣ１５と、ＣＰＵ１６とを備えている。なお、この図では、情報処理装置１０が備える構成のうちブート処理に関する主な構成のみを示している。
【００２２】
入出力端子１１は、例えば、ＵＳＢ  Ｔｙｐｅ−Ｃのコネクタであり、ＴＢＴまたはＵＳＢプロトコルに対応した機器と通信接続が可能である。また、入出力端子１１は、ＤｉｓｐｌａｙＰｏｒｔとしても利用できる。
【００２３】
ＰＤコントローラ１２は、ＵＳＢ  ＰＤ（Ｐｏｗｅｒ  Ｄｅｌｉｖｅｒｙ）に対応しており、入出力端子１１に接続された機器への給電制御を行う。また、ＰＤコントローラ１２は、入出力端子１１に接続される機器との通信接続を確立する処理を実行する。このＰＤコントローラ１２は、ブート処理の実行の有無に関わらず、入出力端子１１に接続される機器との通信接続を確立する処理を実行し、通信接続が確立した機器に関する情報を取得する。例えば、ＰＤコントローラ１２は、通信接続が確立した機器から、機器のベンダー情報（例えば、ベンダーＩＤ）、機器の種類や型番などを特定可能なデバイス情報（例えば、デバイスＩＤ）などを取得する。また、ＰＤコントローラ１２は、シリアルバス（例えば、Ｉ２Ｃ：アイ・スクエアド・シー）を介してＴＢＴコントローラ１３とＥＣ１５とのそれぞれに接続されている。
【００２４】
ＴＢＴコントローラ１３は、ＰＤコントローラ１２により通信接続が確立された機器がある場合、ＢＩＯＳによるブート処理に基づいて当該機器を検出しエニュメレーションを行い、通信処理を実行する。例えば、ＴＢＴコントローラ１３は、ＴＢＴ、ＵＳＢ、ＤｉｓｐｌａｙＰｏｒｔなどのプロトコルに対応した機器との通信処理を実行する。また、ＴＢＴコントローラ１３は、例えば、ＤｉｓｐｌａｙＰｏｒｔ及びＰＣＩｅ（ＰＣＩ Ｅｘｐｒｅｓｓ）バスを介してＰＣＨ１４に接続されている。
【００２５】
ＰＣＨ (Ｐｌａｔｆｏｒｍ Ｃｏｎｔｒｏｌｌｅｒ Ｈｕｂ) １４は、ＣＰＵ１６の機能をサポートし、データバスの管理などを行う。例えば、ＰＣＨ１４は、ＴＢＴコントローラ１３とＣＰＵ１６との間の通信、及びＥＣ１５とＣＰＵ１６との間の通信を仲介する。
【００２６】
ＥＣ１５は、マイクロコンピュータが組み込まれた組み込みコントローラ（Ｅｍｂｅｄｄｅｄ Ｃｏｎｔｒｏｌｌｅｒ）であり、バッテリーの管理、電源管理、キーボードコントローラなどの機能を有する。ＥＣ１５は、ＰＤコントローラ１２から各種の情報を取得する。例えば、ＥＣ１５は、ＰＤコントローラ１２により入出力端子１１に接続される機器との通信接続が確立した場合、当該機器のベンダー情報、デバイス情報、及びＴＢＴ接続機器として通信確立ができている（通信経路ができている）ことを示す情報（以下、「通信確立情報」とも称する）をＰＤコントローラ１２から取得する。また、ＥＣ１５は、入出力端子１１に接続された機器へ給電可能な電圧及び電流に関する情報をＰＤコントローラ１２から取得する。
【００２７】
なお、ＥＣ１５は、ＣＰＵ１６で実行されるＢＩＯＳおよびＯＳの処理に関わらず、ＰＤコントローラ１２から各種の情報を取得できるため、ＢＩＯＳによるブート処理の前に、入出力端子１１に接続された機器のベンダー情報、デバイス情報、及び通信確立情報を取得することができる。例えば、ＥＣ１５は、所定の周期でＰＤコントローラ１２から各種情報を取得し、取得した情報を保持する。
【００２８】
ＣＰＵ１６は、情報処理装置１０の制御中枢として機能する中央処理装置（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）である。例えば、ＣＰＵ１６は、ＢＩＯＳのプログラムを実行することによりハードウェアの初期化を行い、ブート処理を実行する。また、ＣＰＵ１６は、ブート処理においてＯＳを起動し、ＯＳの処理を実行する。
【００２９】
例えば、ＣＰＵ１６は、ＢＩＯＳによるブート処理において、入出力端子１１に接続された機器に関する情報（例えば、ベンダー情報、デバイス情報、及び通信確立情報）をＥＣ１５から取得し、取得した情報に基づいて、ＴＢＴコントローラ１３による通信処理を行うか否かを制御する。
【００３０】
具体的には、ＣＰＵ１６は、ブート処理において、入出力端子１１に接続された機器に関する情報（例えば、ベンダー情報、デバイス情報、及び通信確立情報）に基づいて、ＴＢＴに接続されている機器の有無を判定する。そして、ＣＰＵ１６は、ブート処理において、ＴＢＴに接続されている機器があると判定した場合には、ＴＢＴサポートを有効（Ｅｎａｂｌｉｅ）として、ＴＢＴコントローラ１３による通信処理を実行する。一方、ＣＰＵ１６は、ブート処理において、ＴＢＴに接続されている機器が無いと判定した場合には、ＴＢＴサポートを無効（Ｄｉｓａｂｉｌｅ）として、ＴＢＴコントローラ１３による通信処理を実行しない。
【００３１】
このように、情報処理装置１０は、ＢＩＯＳによるブート処理を実行する際に、ブート処理の前にＥＣ１５がＰＤコントローラ１２から取得した、入出力端子１１に接続された機器（ＴＢＴに接続された機器）に関する情報（例えば、ベンダー情報、デバイス情報、及び通信確立情報）に基づいて、ＴＢＴに接続されている機器の有無を判定し、自動でＴＢＴサポートの有効／無効（即ち、ＴＢＴコントローラによるエニュメレーションを行うか否か）を切り替える。そのため、情報処理装置１０は、ＴＢＴに接続されている機器が無い状態では、自動でＴＢＴサポートを無効にする（即ち、ＴＢＴコントローラによるエニュメレーションを行わない）ことでブート処理にかかる時間を短縮できる。また、情報処理装置１０は、ＴＢＴに接続されている機器がある状態では、ユーザがＢＩＯＳ設定を変更して再起動させなくとも、自動でＴＢＴサポートを有効にするため、ブート処理にかかる時間を短縮することができるとともに、煩わしい操作を不要とすることができる。
【００３２】
次に、ＣＰＵ１６がＢＩＯＳのプログラムを実行することにより制御するブート処理の動作について説明する。ここでは、ブート処理のうち、上述のＴＢＴサポートの制御に関係するＰＯＳＴ（Ｐｏｗｅｒ Ｏｎ Ｓｅｌｆ Ｔｅｓｔ）処理の動作について説明する。
図２は、本実施形態に係るＰＯＳＴ処理の一例を示すフローチャートである。
【００３３】
（ステップＳ１０１）ＣＰＵ１６は、ＢＩＯＳのプログラムを実行することによりＰＯＳＴ処理を開始する。そして、ステップＳ１０３の処理に進む。
【００３４】
（ステップＳ１０３）ＣＰＵ１６は、ＥＣ１５がＰＤコントローラ１２から取得した入出力端子１１に接続された機器に関する情報（例えば、ベンダー情報、デバイス情報、及び通信確立情報）を取得し、取得した情報に基づいてＴＢＴに接続されている機器の有無を判定する。そして、ステップＳ１０５の処理に進む。
【００３５】
（ステップＳ１０５）ＣＰＵ１６は、ＴＢＴに接続されている機器があると判定した場合（ＹＥＳ）、ステップＳ１０７の処理に進む。一方、ＣＰＵ１６は、ＴＢＴに接続されている機器が無いと判定した場合（ＮＯ）、ステップＳ１０９の処理に進む。
【００３６】
（ステップＳ１０７）ＣＰＵ１６は、ＴＢＴコントローラ１３を介してＴＢＴに接続されている機器を検出し、エニュメレーションを行う。そして、ステップＳ１０９の処理に進む。
【００３７】
（ステップＳ１０９）ＣＰＵ１６は、他の残りのＰＯＳＴ処理を実行してから、このＰＯＳＴ処理を終了する。
なお、ＣＰＵ１６は、ブート処理において、上記ＰＯＳＴ処理の終了後に、ＯＳの起動処理などを実行する。
【００３８】
次に、ＰＯＳＴ処理の動作の別の例について説明する。
図３は、本実施形態に係るＰＯＳＴ処理の別の例を示すフローチャートである。この図３において、図２に示す各処理に対応する処理には同一の符号を付しており、その説明を省略する。図３に示す処理は、図２に対してステップＳ１０２の処理が追加されている点が異なる。ステップＳ１０２の処理は、再起動（Ｒｅｓｔａｒｔ）または通常の電源ＯＦＦ状態（Ｓ５）からのブート処理であるか否かを判定する処理である。
【００３９】
ステップＳ１０２において、ＣＰＵ１６は、実行中のＰＯＳＴ処理が、再起動（Ｒｅｓｔａｒｔ）または通常の電源ＯＦＦ状態（Ｓ５）からのブート処理であると判定した場合（ＹＥＳ）、図２を参照して説明したステップＳ１０３〜Ｓ１０９の処理を実行する。一方、ＣＰＵ１６は、実行中のＰＯＳＴ処理が、再起動（Ｒｅｓｔａｒｔ）または通常の電源ＯＦＦ状態（Ｓ５）からのブート処理ではないと判定した場合（ＮＯ）、ステップＳ１０３〜Ｓ１０９の処理を行わずに、ステップＳ１０９の処理に進み、他の残りのＰＯＳＴ処理を実行してから、このＰＯＳＴ処理を終了する。なお、再起動（Ｒｅｓｔａｒｔ）または通常の電源ＯＦＦ状態（Ｓ５）からのブート処理ではない場合とは、例えば、直前の作業状態または作業データが記録されているスタンバイ（スリープ）状態または休止状態などから再開する処理である。
【００４０】
以上説明したように、本実施形態に係る情報処理装置１０は、ＢＩＯＳによるブート処理を実行するコンピュータ装置であって、ＰＤコントローラ１２（接続処理部の一例）と、ＴＢＴコントローラ１３と、ＣＰＵ１６（第１処理部の一例）とを備えている。ＰＤコントローラ１２は、ブート処理の実行の有無に関わらず、情報処理装置１０に接続されている機器（他装置）から当該機器に関する情報を取得する。ＴＢＴコントローラ１３は、ブート処理において情報処理装置１０に接続されている機器との通信処理を実行する。そして、ＣＰＵ１６は、ブート処理を実行する際に、ＰＤコントローラ１２が取得する機器（即ち、ＴＢＴに接続される機器）に関する情報に基づいてＴＢＴコントローラ１３による処理（例えば、エニュメレーション）を実行するか否かを制御する。
【００４１】
これにより、情報処理装置１０は、ＴＢＴに接続される機器に関する情報に基づいて、ＢＩＯＳにおけるＴＢＴサポートの有効／無効を自動で切り替えることができるため、ブート処理にかかる時間を短縮することができる。具体的には、情報処理装置１０は、ＴＢＴに接続されている機器が無い状態では、ＢＩＯＳによるブート処理においてＴＢＴコントローラ１３によるエニュメレーションを行わないため、ＰＯＳＴ時間の増加を抑えることができ、ブート処理にかかる時間を短縮することができる。例えば、従来は、ＴＢＴに接続されている機器が無い状態において、ＴＢＴサポートが無効（Ｄｉｓａｂｌｅ）に設定されている状態では、例えばＥＦＩ（Ｅｘｔｅｎｓｉｂｌｅ Ｆｉｒｍｗａｒｅ Ｉｎｔｅｒｆａｃｅ）  Ｓｈｅｌｌ  ＢｏｏｔまでのＰＯＳＴ時間が７〜８秒程度であった場合、ＴＢＴサポートが有効（Ｅｎａｂｌｅ）に設定されている状態では当該ＰＯＳＴ時間が８〜９秒程度となり、１〜２秒程度ＰＯＳＴ時間が増加していたが、本実施形態では、ＴＢＴに接続されている機器が無い状態ではＴＢＴサポートが自動で無効に切り替わるため、上記のＰＯＳＴ時間の増加が生じない。
【００４２】
また、情報処理装置１０は、ＴＢＴに接続されている機器がある状態では、ＢＩＯＳによるブート処理においてＴＢＴコントローラ１３によるエニュメレーションを行い、ＴＢＴに接続されている機器との通信を行うため、従来のようにＢＩＯＳ設定を無効から有効に変更して再起動させる必要が無く、ブート処理にかかる時間を短縮することができるとともに、煩わしい操作を不要とすることができる。
【００４３】
また、本実施形態に係る情報処理装置１０が備える各構成は、以下のようにも記載することができる。ＰＤコントローラ１２は、情報処理装置１０に接続される機器（他装置）との通信接続を確立する処理を実行する。ＴＢＴコントローラ１３は、ＰＤコントローラ１２により通信が確立された機器との通信処理を実行する。そして、ＣＰＵ１６は、ブート処理を実行する際に、ＰＤコントローラ１２により通信が確立された機器があるか否かに基づいてＴＢＴコントローラ１３による処理（例えば、エニュメレーション）を実行するか否かを制御する。
【００４４】
これにより、情報処理装置１０は、ＴＢＴに接続される機器との通信接続の確立の有無に応じて、ＢＩＯＳにおけるＴＢＴサポートの有効／無効を自動で切り替えることができるため、ブート処理にかかる時間を短縮することができる。具体的には、情報処理装置１０は、ＴＢＴにより通信が確立されている機器が無い状態では、ＢＩＯＳによるブート処理においてＴＢＴコントローラ１３によるエニュメレーションを行わないため、ＰＯＳＴ時間の増加を抑えることができ、ブート処理にかかる時間を短縮することができる。また、情報処理装置１０は、ＴＢＴにより通信が確立されている機器がある状態では、ＢＩＯＳによるブート処理においてＴＢＴコントローラ１３によるエニュメレーションを行い、ＴＢＴに接続されている機器との通信を行うため、従来のようにＢＩＯＳ設定を無効から有効に変更して再起動させる必要が無く、ブート処理にかかる時間を短縮することができるとともに、煩わしい操作を不要とすることができる。
【００４５】
また、本実施形態に係る情報処理装置１０は、ＥＣ１５（第２処理部の一例）を備えている。ＥＣ１５は、ブート処理の実行の有無に関わらず、情報処理装置１０に接続されている機器に関する情報、またはＰＤコントローラ１２により通信が確立された機器があるか否かを示す情報をＰＤコントローラ１２から取得する。そして、ＣＰＵ１６は、ブート処理を実行する際に、ＥＣ１５を介してＰＤコントローラ１２から取得した情報に基づいてＴＢＴコントローラ１３による処理を実行するか否かを制御する。
【００４６】
これにより、ＣＰＵ１６（ＢＩＯＳ）は、ブート処理を開始する時点では通信できないＴＢＴに接続されている機器に関する情報、またはＴＢＴにより通信が確立された機器があるか否かを示す情報を、ブート処理を開始する前にＥＣ１５から取得することができる。よって、情報処理装置１０は、ブート処理において、ＴＢＴコントローラ１３を介してエニュメレーションを行わなくても、ＥＣ１５がＰＤコントローラ１２から取得した情報に基づいてＴＢＴ接続機器の有無を判定し、ＴＢＴサポートの有効／無効を自動で切り替えることができる。例えば、ＣＰＵ１６（ＢＩＯＳ）がＥＣ１５を介してＴＢＴ接続機器の有無の判定に要する処理時間は、数ｍｓｅｃ〜数十ｍｓｅｃ以内であり、体感できないレベルである。一方、上述したように、ＢＩＯＳがＴＢＴコントローラ１３を介してＴＢＴに接続されている機器を検出しエニュメレーションを行う場合には、機器が接続されていない状態でも、数秒程度必要になる。よって、本実施形態によれば、ブート処理にかかる時間を短縮することができる。
【００４７】
なお、本実施形態では、情報処理装置１０に接続されている機器に関する情報、またはＰＤコントローラ１２により通信が確立された機器があるか否かを示す情報を、ＥＣ１５を介してＣＰＵ１６（ＢＩＯＳ）が取得する例を説明したが、これに限られるものではない。例えば、ＣＰＵ１６（ＢＩＯＳ）は、情報処理装置１０に接続されている機器に関する情報、またはＰＤコントローラ１２により通信が確立された機器があるか否かを示す情報を、ＰＤコントローラ１２から直接的に取得する構成としてもよい。
【００４８】
また、上記実施形態において、情報処理装置１０がＴＢＴサポートの有効／無効を自動で切り替える例を説明したが、ＢＩＯＳ設定としては、従来の有効（Ｅｎａｂｌｉｅ）／無効（Ｄｉｓａｂｉｌｅ）の選択肢に加えて、自動（Ａｕｔｏ）の選択肢を加えてもよい。この場合、自動（Ａｕｔｏ）に設定されているときに、ＴＢＴサポートの有効／無効を自動で切り替える制御が行われることとなる。そして、例えば、デフォルトを自動（Ａｕｔｏ）とすることで、通常の使用ではＢＩＯＳ設定を変更する必要がなくなる。なお、ＢＩＯＳ設定からＴＢＴサポートの設定自体を無くし、常に、ＴＢＴサポートの有効／無効が自動で切り替わるようにしてもよい。
【００４９】
また、本実施形態では、ＴＢＴに接続される機器に対する設定（ＴＢＴサポートの有効／無効の設定）を、ブート処理において自動で切り替える例を説明したが、ＴＢＴに限定されるものではなく、他の通信規格に対応した機器にも適用してもよい。また、入出力端子１１は、ＵＳＢ  Ｔｙｐｅ−Ｃのコネクタの例を説明したが、他の規格に対応したコネクタであってもよい。
【００５０】
なお、上述した情報処理装置１０は、内部にコンピュータシステムを有している。そして、上述した情報処理装置１０が備える各構成の機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより上述した情報処理装置１０が備える各構成における処理を行ってもよい。ここで、「記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行する」とは、コンピュータシステムにプログラムをインストールすることを含む。ここでいう「コンピュータシステム」とは、ＯＳや周辺機器等のハードウェアを含むものとする。また、「コンピュータシステム」は、インターネットやＷＡＮ、ＬＡＮ、専用回線等の通信回線を含むネットワークを介して接続された複数のコンピュータ装置を含んでもよい。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。このように、プログラムを記憶した記録媒体は、ＣＤ−ＲＯＭ等の非一過性の記録媒体であってもよい。
【００５１】
また、記録媒体には、当該プログラムを配信するために配信サーバからアクセス可能な内部又は外部に設けられた記録媒体も含まれる。なお、プログラムを複数に分割し、それぞれ異なるタイミングでダウンロードした後に情報処理装置１０が備える各構成で合体される構成や、分割されたプログラムのそれぞれを配信する配信サーバが異なっていてもよい。さらに「コンピュータ読み取り可能な記録媒体」とは、ネットワークを介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ（ＲＡＭ）のように、一定時間プログラムを保持しているものも含むものとする。また、上記プログラムは、上述した機能の一部を実現するためのものであってもよい。さらに、上述した機能をコンピュータシステムに既に記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル（差分プログラム）であってもよい。
【００５２】
また、上述した実施形態における情報処理装置１０が備える各機能の一部、または全部を、ＬＳＩ（Ｌａｒｇｅ  Ｓｃａｌｅ  Ｉｎｔｅｇｒａｔｉｏｎ）等の集積回路として実現してもよい。各機能は個別にプロセッサ化してもよいし、一部、又は全部を集積してプロセッサ化してもよい。また、集積回路化の手法はＬＳＩに限らず専用回路、または汎用プロセッサで実現してもよい。また、半導体技術の進歩によりＬＳＩに代替する集積回路化の技術が出現した場合、当該技術による集積回路を用いてもよい。
【００５３】
以上、図面を参照してこの発明の一実施形態について詳しく説明してきたが、具体的な構成は上述のものに限られることはなく、この発明の要旨を逸脱しない範囲内において様々な設計変更等をすることが可能である。
【符号の説明】
【００５４】
１０  情報処理装置、１１  入出力端子、１２  ＰＤコントローラ、１３  ＴＢＴコントローラ、１４  ＰＣＨ、１５  ＥＣ、１６  ＣＰＵ
【図１】
2019207551.tif 000003
【図２】
2019207551.tif 000004
【図３】
2019207551.tif 000005