JP2006065833A - 電子装置、情報処理システム及びその制御方法 - Google Patents

電子装置、情報処理システム及びその制御方法 Download PDF

Info

Publication number
JP2006065833A
JP2006065833A JP2005096372A JP2005096372A JP2006065833A JP 2006065833 A JP2006065833 A JP 2006065833A JP 2005096372 A JP2005096372 A JP 2005096372A JP 2005096372 A JP2005096372 A JP 2005096372A JP 2006065833 A JP2006065833 A JP 2006065833A
Authority
JP
Japan
Prior art keywords
information processing
state
keyboard
driver
electronic 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
JP2005096372A
Other languages
English (en)
Inventor
Kenichi Fujita
憲一 藤田
Naoyuki Nagao
尚幸 長尾
Shinichi Katayama
真一 片山
Hideki Onishi
英樹 尾西
Akihiro Matsunaga
章裕 松永
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Component Ltd
Original Assignee
Fujitsu Component Ltd
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
Application filed by Fujitsu Component Ltd filed Critical Fujitsu Component Ltd
Priority to JP2005096372A priority Critical patent/JP2006065833A/ja
Priority to US11/189,811 priority patent/US7590767B2/en
Publication of JP2006065833A publication Critical patent/JP2006065833A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1278Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
    • G06F3/1284Local printer device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1203Improving or facilitating administration, e.g. print management
    • G06F3/1204Improving or facilitating administration, e.g. print management resulting in reduced user or operator actions, e.g. presetting, automatic actions, using hardware token storing data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1224Client or server resources management
    • G06F3/1225Software update, e.g. print driver, modules, plug-ins, fonts

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Systems (AREA)

Abstract

【課題】 簡単な構成で、装置の状態によらず必ずドライバソフトウェアを自動インストールすることができる電子装置を提供する。
【解決手段】 キーボード装置31と、このキーボード装置31のドライバを格納する記憶装置32とを内蔵し、キーボード装置31と記憶装置32とが外部接続用のUSBケーブル20上でそれぞれトランザクションを発生させることができるUSB装置30であって、キーボード装置31をイネーブル状態又はディスエーブル状態に設定するスイッチ37と、スイッチ37によりキーボード装置31がディスエーブル状態に設定されると記憶装置32の装置の動作を開始させ、記憶装置32からドライバを読み出し可能にするUSB/HUBコントローラ33を有する構成としている。
【選択図】 図1

Description

本発明は、ドライバを内蔵する電子機器、この電子装置を備えた情報処理システム、及びこの電子装置の制御方法に関し、特に、電子機器を周辺装置として情報処理装置に接続する場合に、電子機器のドライバを情報処理装置に自動インストールする技術に関する。
周辺機器をパーソナルコンピュータ等の情報処理装置に接続する時に、特に何の操作も行なわずにすぐ周辺装置が使用可能になる、いわゆるプラグアンドプレイ(PnP)機構が普及している。
本出願人は、特許文献1に電子装置に格納された電子装置のドライバを情報処理装置に自動的にインストールする技術を開示している。この特許文献1に開示した電子装置は、第1の装置と、この第1の装置のドライバを格納する第2の装置を内蔵した電子装置であって、電子装置は、第1の装置よりも先に第2の装置の動作を開始させ、第2の装置からインタフェースを介してドライバを読み出し可能状態にしている。
また特許文献2は、主デバイスと、この主デバイスをホスト装置で動作させるためのドライバプログラムを記録したサブデバイスと、ホスト装置に接続された時にホスト装置にサブデバイスを認識させる第1のデータを出力し、その後、ホスト装置に主デバイスを認識させる第2のデータを出力するインターフェース制御部とを設けている。
特開2003−256349号公報 特開2003−150530号公報
しかしながら特許文献1では、電子装置は一度情報処理装置に接続し、ドライバソフトウェアのインストールを行うと、別の情報処理装置に接続した時に第2の装置がイネーブル状態にならなず、ドライバソフトウェアをインストールすることができない問題が生じる。
また特許文献2では、ホスト装置に接続された時に、ホスト装置にまずサブデバイスを認識させ、次に主デバイスを認識させる制御を行うインタフェース制御部が必要となり、装置の構成が複雑になるという問題を有している。
本発明は上記事情に鑑みてなされたものであり、簡単な構成で、装置の状態によらず必ずドライバソフトウェアを自動インストールすることができる電子装置、情報処理システム及びその制御方法を提供することを目的とする。
かかる目的を達成するために本発明の電子装置は、第1の装置と、該第1の装置のドライバを格納する第2の装置とを備え、該第1及び第2の装置は外部接続用の共通インタフェース上でそれぞれトランザクションを発生させることができる電子装置であって、前記第1の装置をイネーブル状態又はディスエーブル状態に設定する設定手段と、前記設定手段により前記第1の装置がディスエーブル状態に設定されると前記第2の装置の動作を開始させ、前記第2の装置から前記インタフェースを介して前記ドライバを読み出し可能にする制御手段を有する構成としている。電子装置は一度情報処理装置に接続し、ドライバのインストールを行うと、別の情報処理装置に接続した時に第2の装置がイネーブル状態にならなず、ドライバをインストールすることができない問題が生じるが、設定手段によって第1の装置をイネーブル状態又はディスエーブル状態に設定することができるので、ドライバを自動的に情報処理装置にインストールすることができる。
上記の電子装置において、前記第2の装置は、保持する前記ドライバに対して、読み出し処理だけを許可するとよい。第2の装置がドライバの読み出し処理だけを許可することにより、第2の装置に記録されたドライバが消去されてしまう不具合を防止することができる。
上記の電子装置において、前記第2の装置は、前記ドライバを書き込み不可領域に記録した記憶装置を含むとよい。第2の装置は、ドライバを書き込み不可領域に記録しておくことで、ドライバが消去されてしまう不具合を防止することができる。
上記の電子装置において、前記設定手段は、外部装置からの制御信号によって前記第1の装置を前記イネーブル状態又は前記ディスエーブル状態に設定する手段であるとよい。外部装置によって第1の装置のイネーブル状態とディスエーブル状態とを切り替えることができる。
上記の電子装置において、前記設定手段は、前記電子装置が接続した情報処理装置から前記共通インタフェースを介して受信する前記制御信号によって前記第1の装置を前記イネーブル状態又は前記ディスエーブル状態に設定する手段であるとよい。情報処理装置によって第1の装置のイネーブル状態とディスエーブル状態とを切り替えることができる。
上記の電子装置において、前記設定手段は、RFID書き込み装置によって外部から書き込まれた設定情報に従って、前記第1の装置を前記イネーブル状態又は前記ディスエーブル状態に設定する手段であるとよい。RFID書き込み装置によって外部から第1の装置のイネーブル状態とディスエーブル状態とを切り替えることができる。
上記の電子装置において、前記外部装置は、USB仕様に準拠したベンダーリクエストによって前記第1の装置を前記イネーブル状態又は前記ディスエーブル状態に設定するとよい。外部装置が、第1の装置の制御にUSB仕様に準拠したベンダーリクエストを使用することにより、新たな信号を設ける必要がなく、簡易に第1の装置を制御することができる。
上記の電子装置において、前記設定手段は、前記外部装置から送信される所定の信号によって前記第1の装置を前記イネーブル状態又は前記ディスエーブル状態に設定する手段であるとよい。外部装置から送信される所定の信号によって第1の装置を制御することにより、外部装置から簡単に第1の装置を制御することができる。
上記の電子装置において、前記設定手段は、専用インタフェースによって接続した前記外部装置から前記制御信号を受信し、該制御信号に従って前記第1の装置を前記イネーブル状態又は前記ディスエーブル状態に設定する手段であるとよい。専用インタフェースを設けて外部装置から制御信号を受信することにより、外部装置により第1の装置を制御することができる。
上記の電子装置において、前記制御手段は、前記第1及び第2の装置と前記インタフェースとの間でトランザクションをコントロールするハブ・コントローラを含むとよい。ハブ・コントローラによって第1及び第2の装置とインタフェースとの間でトランザクションをコントロールすることができる。
上記の電子装置において、前記制御手段は、前記第1及び第2の装置を1つの物理装置として制御するコントローラを含むとよい。コントローラによって第1及び第2の装置を1つの物理装置として制御することができる。
上記の電子装置において、前記第2の装置は、前記情報処理装置にコンフィギュレーションされると、前記ドライバのインストーラを起動させ、前記情報処理装置に前記ドライバをコピーするとよい。第2の装置が情報処理装置にコンフィギュレーションされると、ドライバのインストーラを起動させ、情報処理装置にドライバをコピーすることができるので、第1の装置のドライバを情報処理装置に持たせることができる。
上記の電子装置において、前記電子装置は、前記情報処理装置からコンフィギュレーション中に送信される所定信号によって、有効にする装置を前記第1の装置と前記第2の装置とで切り換えるとよい。従って、コンフィギュレーションのシーケンスを変更することなく、第1の装置及び第2の装置をイネーブル状態とディスエーブル状態とに切り替えることができる。
上記の電子装置において、前記第2の装置は、前記情報処理装置とのコンフィギュレーションの際に、前記情報処理装置から要求される、該コンフィギュレーションされる装置の装置情報の一部の要求回数をカウントすることで、前記第1の装置のコンフィギュレーションと前記第2の装置のコンフィギュレーションとを判定するとよい。コンフィギュレーションされる装置の装置情報の一部の要求回数をカウントすることで、第1の装置のコンフィギュレーションと第2の装置のコンフィギュレーションとを判定することが可能となる。従って、電子装置は、情報処理装置からの要求を判定して、第1の装置及び第2の装置をイネーブル状態とディスエーブル状態とに切り替えることができる。また、コンフィギュレーションのシーケンスを変更することなく、第1の装置及び第2の装置をイネーブル状態とディスエーブル状態とに切り替えることができる。
上記の電子装置において、前記所定信号は、前記コンフィギュレーション中に送信されるベンダーリクエスト信号であるとよい。従って、コンフィギュレーションのシーケンスを変更することなく、第1の装置及び第2の装置をイネーブル状態とディスエーブル状態とに切り替えることができる。
上記の電子装置において、前記第2の装置は、前記電子装置に外部接続、又はネットワークを介して接続されているとよい。第2の装置に記憶された情報の書き換えが簡単になると共に、外部記憶装置に情報を記憶することで情報の共有化を図ることができる。
上記の電子装置において、前記電子装置は、該電子装置をディセーブル状態に設定する操作手段を有しているとよい。第1の装置又は第2の装置が正しくコンフィギュレーションされなかった場合に、電子装置を一旦ディセーブル状態に設定することができ、再度コンフィギュレーションすることで正常な動作を実現することができる。
本発明の情報処理システムは、請求項1から17のいずれか一項に記載の電子装置と、前記共通インタフェースを介して前記電子装置に接続される情報処理装置とを有する構成としている。設定手段によって第1の装置をイネーブル状態又はディスエーブル状態に設定することができるので、ドライバを自動的に情報処理装置にインストールすることができる。
上記の情報処理システムにおいて、前記電子装置は、前記情報処理装置からの制御信号を入力して前記第1の装置を前記イネーブル状態又は前記ディスエーブル状態に設定するとよい。電子装置の接続先の情報処理装置によって第1の装置のイネーブル状態とディスエーブル状態とを切り替えることができる。
上記の情報処理システムにおいて、前記情報処理装置は、コンフィギュレーションする装置の装置情報を前記電子装置に要求する際に、前記装置情報の一部を要求する回数を前記第1の装置と前記第2の装置とで変更するとよい。情報処理装置がコンフィギュレーションする装置の装置情報の一部の要求回数を変更することで、電子装置側で第1の装置のコンフィギュレーションと第2の装置のコンフィギュレーションとを判定することが可能となる。従って、電子装置は、情報処理装置からの要求を判定して、第1の装置及び第2の装置をイネーブル状態とディスエーブル状態とに切り替えることができる。また、コンフィギュレーションのシーケンスを変更することなく、第1の装置及び第2の装置をイネーブル状態とディスエーブル状態とに切り替えることができる。
上記の情報処理システムにおいて、前記電子装置とRFIDによる通信を行い、前記第1の装置の状態を、イネーブル状態とディスエーブル状態に切り替えるRFID書き込み装置を有するとよい。RFID書き込み装置によって外部から第1の装置のイネーブル状態とディスエーブル状態とを切り替えることができる。
上記の情報処理システムにおいて、前記電子装置に接続し、前記第1の装置の状態を、イネーブル状態とディスエーブル状態とに切り替える設定装置を有するとよい。専用の設定装置によって第1の装置のイネーブル状態とディスエーブル状態とを切り替えることができる。
上記の情報処理システムにおいて、前記設定装置は、USB仕様に準拠したベンダーリクエストによって前記第1の装置を前記イネーブル状態又は前記ディスエーブル状態に設定するとよい。設定装置が、第1の装置の制御にUSB仕様に準拠したベンダーリクエストを使用することにより、新たな信号を設ける必要がなく、簡易に第1の装置を制御することができる。
上記の情報処理システムにおいて、前記設定装置は、所定の信号によって前記第1の装置を前記イネーブル状態又は前記ディスエーブル状態に設定するとよい。設定装置から送信される所定の信号によって第1の装置を制御することにより、外部から簡単に第1の装置を制御することができる。
上記の情報処理システムにおいて、前記設定装置は、専用インタフェースによって前記電子装置に接続し、該専用インタフェースを介して送信する制御信号によって、前記第1の装置を前記イネーブル状態又は前記ディスエーブル状態に設定するとよい。専用インタフェースを介して設定装置が第1の装置のイネーブル状態とディスエーブル状態とを切り替えることができる。
本発明の電子装置の制御方法は、第1の装置と、該第1の装置のドライバを格納する第2の装置とを有し、該第1及び第2の装置は外部接続用の共通インタフェース上でそれぞれトランザクションを発生させることができる電子装置の制御方法であって、前記第1の装置をイネーブル状態又はディスエーブル状態に設定するステップと、前記第1の装置がディスエーブル状態に設定されると前記第2の装置の動作を開始させ、前記第2の装置から前記インタフェースを介して前記ドライバを読み出し可能状態にするステップとを有している。電子装置は一度情報処理装置に接続し、ドライバのインストールを行うと、別の情報処理装置に接続した時に第2の装置がイネーブル状態にならなず、ドライバをインストールすることができない問題が生じるが、設定手段によって第1の装置をイネーブル状態又はディスエーブル状態に設定することができるので、ドライバを自動的に情報処理装置にインストールすることができる。
本発明の情報処理システムの制御方法は、第1の装置と、該第1の装置のドライバを格納する第2の装置とを有する電子装置と、該電子装置と外部接続用の共通インタフェースで接続する情報処理装置とを有する情報処理システムの制御方法であって、前記情報処理装置において、コンフィギュレーションする装置の装置情報を前記電子装置に要求する際に、前記装置情報の一部の要求回数を前記第1の装置と前記第2の装置とで変更するステップと、前記電子装置において、前記情報処理装置から要求される、前記コンフィギュレーションする装置の装置情報の一部の要求回数をカウントし、前記第1の装置のコンフィギュレーションと前記第2の装置のコンフィギュレーションとを判定するステップとを有している。情報処理装置から要求される装置情報の一部の要求回数を電子装置でカウントすることで、第1の装置のコンフィギュレーションと第2の装置のコンフィギュレーションとを判定することが可能となる。従って、電子装置は、情報処理装置からの要求を判定して、第1の装置及び第2の装置をイネーブル状態とディスエーブル状態とに切り替えることができる。また、コンフィギュレーションのシーケンスを変更することなく、第1の装置及び第2の装置をイネーブル状態とディスエーブル状態とに切り替えることができる。
本発明の制御方法は、第1の装置と、該第1の装置のドライバを格納する第2の装置とを有する電子装置と、該電子装置と外部接続用の共通インタフェースで接続する情報処理装置とを有する情報処理システムの制御方法であって、コンフィギュレーション中に、前記情報処理装置から送信される所定信号を検出するステップと、前記所定信号を検出できない場合に、前記第2の装置を有効化するステップと、前記所定信号を検出した場合に、前記第1の装置を有効化するステップとを有している。従って、コンフィギュレーションのシーケンスを変更することなく、第1の装置及び第2の装置をイネーブル状態とディスエーブル状態とに切り替えることができる。
本発明は、簡単な構成で、装置の状態によらず必ずドライバソフトウェアを自動インストールすることができる。
以下、本発明を実施するための最良の形態を説明する。
図1は、本発明の第1実施例による情報処理システム1の構成を示すブロック図である。情報処理システム1は、情報処理装置10と電子装置30とを有する。情報処理装置10は例えば、パーソナルコンピュータである。電子装置30は情報処理装置10に接続可能な周辺装置であり、図1の例ではキーボードである。情報処理装置10と電子装置30とはUSBケーブル20で接続されている。以下、電子装置30をUSB装置という。また、情報処理装置10をPC10という。
PC10のOS11は例えば、マイクロソフト社のWindows(登録商標)である。図1は、キーボードドライバ12、記憶装置ドライバ13及びHUB(ハブ)ドライバ14がOS11上にインストールされている状態を示す。これらのドライバのうち、記憶装置ドライバ13とHUBドライバ14はOS11に最初から組み込まれている標準のデバイスドライバである。キーボードドライバ12は、後述する手順に従ってインストールされるものである。図示していないが、OS11にはOSを構成する様々なプログラムやその他の各種ドライバ、更には各種ユーティリティが組み込まれている。OS11は内部バス16を介してUSBホストコントローラ15に接続されている。なお、PC10のハードウェア構成はCPU、RAM、ROMなどを含む一般的なものである。USBホストコントローラ15はUSBをサポートするもので、PC10に接続される周辺装置の各装置(ファンクション)を結び付けてOS11上に周辺装置の各機能を提供する。
USB装置30は、キーボード装置31、記憶装置32及びUSB/HUBコントローラ33内に設けられたHUB装置34、スイッチ37を有する。キーボード装置31、記憶装置32及びHUB装置34は、PC10に対するファンクション(周辺機器)である。つまり、USBインタフェース上にトランザクションを発生させることができる。キーボード装置31と記憶装置32はそれぞれ、USBバスであるHUBポート35と36を介してUSB/HUBコントローラ33に接続されている。スイッチ37は、キーボード・イネーブル制御信号38を出力し、キーボード装置31をイネーブル状態とディスエーブル状態に設定する。
キーボード装置31は、キーボードを構成するハードウェアとソフトウェアを有する。キーボード装置31は、スイッチ37の出力するキーボード・イネーブル制御信号38でイネーブル状態とディスエーブル状態に設定される。イネーブル状態とは、キーボード装置31が動作可能な状態を意味する。また、ディスエーブル状態とは、少なくともキーボード装置31の接続がUSBインタフェース上で認識されない状態となることを意味する。キーボード装置31のディスエーブル状態の一例は後述する。このキーボード・イネーブル制御信号38は、専用の信号線であり、キーボード装置31の汎用入出力端子や外部割り込み端子に接続される。キーボード・イネーブル制御信号38がハイレベルの時はイネーブル状態、ローレベルの時はディスエーブル状態である。キーボード装置31がイネーブル状態に設定されると、USB仕様に従って、接続状態をHUBポート35に出力する。キーボード装置31のより詳細な構成については後述する。
記憶装置32は、記憶機能を提供するためのハードウェアとソフトフェアを有する。記憶装置32はキーボードドライバを格納している。後述するシーケンスに従い、記憶装置32からキーボードドライバが読み出され、OS11上にキーボードドライバ12として組み込まれる。記憶装置32のデバイスドライバは、予め記憶装置ドライバ13としてOS11に組み込まれている。なお、記憶装置32の一構成例は後述する。
USB/HUBコントローラ33はUSB及びHUBをサポートするハードウェア及びソフトウェアを有する。USB/HUBコントローラ33はHUB装置34有する。HUB装置34はHUBを制御するプログラム上で動作する内部プログラムであり、本実施の形態ではUSBとしてのファンクションである。HUB装置34は、USBケーブル20の状態を監視して、キーボード・イネーブル制御信号38をキーボード装置31に出力する機能を有する。なお、HUBとはUSB規程の集線装置であり、図1の構成ではキーボード装置31及び記憶装置32とUSBケーブル(USBバス、USBインタフェースといってもよい)との間でトランザクションを制御するものである。USB/HUBコントローラ33は、USB装置であるキーボード装置31と記憶装置32とをUSB規程に則って接続している。なお、USB/HUBコントローラ33の一構成例は後述する。
次に、図2を参照しながら第1実施例の動作を説明する。なお、図2(a)にはUSB装置30の動作シーケンスを示し、図2(b)にはPC10の動作シーケンスを示す。
まず、USB装置30のスイッチ37をキーボード装置・ディスエーブル側に設定しておき、USB装置30をPC10に接続する。PC10にUSB装置30が接続されると、まずキーボード装置31がスイッチ37からのキーボード・イネーブル制御信号38の信号状態をチェックする(ステップS11)。信号がローレベルであれば(ステップS11/NO)、キーボード装置31をディスエーブル状態に制御し(ステップS12)、ハイレベルであれば(ステップS11/YES)、キーボード装置31をイネーブル状態に制御する(ステップS13)。ここでのスイッチ設定は、ディスエーブルに設定される。
PC10側では、OS11上に組み込まれているHUBドライバ14が動作を開始し、HUBコンフィギュレーションが設定される(ステップS31)。他方、USB装置30でもHUBコンフィギュレーションが設定される(ステップS14)。これにより、USB/HUBコントローラ33のHUB装置34が機能し始める。
ここで、スイッチ37からのキーボード・イネーブル制御信号38をキーボード装置31により再度チェックする。キーボード・イネーブル制御信号38に変化がなかった場合には(ステップS15/NO)、再度キーボード・イネーブル制御信号38をチェックする(ステップS19)。また、キーボード・イネーブル制御信号38に変化があった場合には(ステップS16/YES)、キーボード・イネーブル制御信号がハイレベルであるか否かを判定する(ステップS16)。キーボード・イネーブル制御信号がハイレベルの場合には(ステップS16/YES)、キーボード装置31をイネーブル状態に制御し(ステップS18)、ローレベルの場合には(ステップS16/NO)、キーボード装置31をディスエーブル状態に制御する(ステップS17)。
再度スイッチ37からのキーボード・イネーブル制御信号38の信号状態をチェックし、信号状態がローレベルであったならば(ステップS19/NO)、記憶装置32の稼動チェックに進み(ステップS20)、ハイレベルであったならば(ステップS19/YES)、キーボード装置処理へ進む(ステップS21)。ここでのスイッチ設定は、ローレベルであるので、記憶装置32の稼動チェックへ進む(ステップS20)。
記憶装置32は、未コンフィギュレーション状態であるのため(ステップS20/NO、ステップS34/YES))、記憶装置処理へ進む(ステップS22、ステップS35)。記憶装置処理のシーケンスを図3に示す。図3(a)にはUSB装置30の動作シーケンスを示し、図3(b)にはPC10の動作シーケンスを示す。記憶装置32が動作を開始し、PC10側は、記憶装置32を検出する(ステップS51)。すると、OS11上に組み込まれている記憶装置ドライバ13によって、記憶装置32がコンフィギュレーションされる(ステップS52)。そして、記憶装置32がディスクドライブとして稼動する(ステップS53)。
図2のフローに戻って、スイッチ37の変化を監視し、スイッチ設定に変化が起きるまで、ステップS15〜ステップS20のシーケンスを繰り返す。
ここで、スイッチの設定がキーボード装置31をイネーブル状態にする設定に変更される。すると、スイッチ37からの信号状態の変化をキーボード装置31で検出し(ステップS15)、信号状態がハイレベルであればキーボード装置31をイネーブル状態に制御する(ステップS18)。次に、信号がハイレベルであるので(ステップS19、ステップS32/YES)、キーボード装置処理へ進む(ステップS21、ステップS33)。キーボード装置処理の詳細を図4に示す。図4(a)にはUSB装置30の動作シーケンスを示し、図4(b)にはPC10の動作シーケンスを示す。キーボード装置31は、キーボード・イネーブル制御信号38を受けて動作を開始しているので、PC10は、未知のキーボード装置を検出する(ステップS71)。PC10は、該当するドライバがPC10内部のHDDなどの記憶装置に格納されているかどうかを調べる。本例では、PC10内部にキーボードドライバを具備していない。従って、OS11は、外部ディスクドライブとして認識されている記憶装置32にアクセスする。すると、記憶装置32内に記録されているキーボードドライバを読み出し(ステップS72)、キーボード装置31をコンフィギュレーションする(ステップS73)。
このようにして、自動的にキーボードドライバをOSに組み込むことができる。従って、ユーザはドライバをインストールする際、ドライバが格納されている記憶手段の心配をすることなくUSB装置をPC10に接続しただけでUSB装置の利用を開始することができ、プラグアンドプレイを体感することができる。
なお、図示していないが、記憶装置32に予め書き込まれているキーボードドライバをReadOnly属性としておくことで、記憶装置32からキーボードドライバを誤って消去してしまう不具合を防止することができる。すなわち、USB装置30を接続した際には必ずキーボードドライバが読み込まれ、キーボード装置31が動作することを保証することができる。また、キーボードドライバを記憶装置32の書き込み不可領域に書き込んでおくこともできる。この場合もキーボードドライバが記憶装置32から消去されてしまうことがない。
図5にキーボード装置31の詳細な構成を示す。キーボード装置31はUSBインタフェース上のファンクション(周辺機器)であって、MCU(Micro Control Unit)313、キーボードマトリクス311及びこれらを接続するポート312を有する。MCU313はマトリクススキャン314、RAM315、インタフェースエンジン(IFエンジン)316、周辺エンジン317、ROM318及びデータ解析エンジン319を具備する。
キーボードマトリクス311は複数のキーがマトリクス状に配列された機構的部分である。マトリクススキャン314はキーボードマトリクス311をスキャンしてキーのON/OFFを調査する部分であり、キーボードに必要なスキャンロジックである。キーボードマトリクス311は周辺エンジン317に対してポート312経由で接続されている。周辺エンジン317には、汎用入出力ポートや割り込み端子を介して、スイッチ37からのキーボード・イネーブル制御信号38が与えられる。キーボード・イネーブル制御信号38は、MCU313がそのハイレベルとローレベルレベルを検出できる信号であるならば、任意の仕様を持つことができる。前述したように、キーボード・イネーブル制御信号38がハイレベルであればキーボード装置31は動作可能なイネーブル状態であり、ローレベルであれば動作してはならないディスエーブル状態である。データ解析エンジン319は、マトリクススキャン314と周辺エンジン317からキーデータを取得し、またキーボード・イネーブル制御信号38のレベルをチェックして動作が許可されているかどうかを判断するなど、MCU313全体を制御する部分である。
インタフェースエンジン(IFエンジン)316はキーボード装置31を外部に接続するためのインタフェースを提供するもので、接続状態を監視・制御し、外部バスインタフェース(USBケーブル20に相当する)を通じてあらゆるトランザクションを制御する。データ解析エンジン319は、キーボード・イネーブル制御信号38の状態がハイレベルであれば、インタフェースエンジン(IFエンジン)316とマトリクススキャン314の動作を許可し、ローレベルであれば、インタフェースエンジン(IFエンジン)316とマトリクススキャン314の動作を禁止する。周辺エンジン317は、キーボード・イネーブル制御信号38の状態を検出するために、ディスエーブル状態であっても動作している。データ解析エンジン319は、インタフェースエンジン(IFエンジン)316の動作を許可している間、マトリクススキャン313からキー状態を受けとり、必要ならばインタフェースエンジン(IFエンジン)316を通じて外部にデータを出力させる。また、データ解析エンジン319は、インタフェースエンジン(IFエンジン)316を通して外部から入力されたデータを受け取り、データ内容に応じた適切な処理を施す。マトリクススキャン314、データ解析エンジン319及びインタフェースエンジン(IFエンジン)316はMCU313上のROM318もしくはRAM315上、又はMCU313に外付けされたROMやRAM上で動作する。また、マトリクススキャン314、周辺エンジン317及びデータ解析エンジン319が必要とする各種データも、MCU313上のROM318もしくはRAM315、又はMCU313に外付けされたROMやRAMに格納されている。
図6は、記憶装置32の一構成例を示すブロック図である。記憶装置32はUSBインタフェース上のファンクション(周辺機器)であって、MCU(Micro Control Unit)320、不揮発性記憶装置321及びこれらを接続するポート322を有する。MCU320はファイルシステムエンジン324、RAM325、インタフェースエンジン(IFエンジン)326、周辺エンジン327、ROM328及びデータ解析エンジン329を具備する。
不揮発性記憶装置321は、フラッシュROMやFeRAMなどの不揮発性メモリで構成され、MCU320で制御される。この不揮発性記憶装置321内に、キーボード装置31のドライバが格納されている。不揮発性記憶装置321は、ポート322を介してMCU320上の周辺エンジン327に接続され、MCU320から見ると、外部接続された又は内部のRAM/ROMとして見える。MCU320上に内蔵されるRAM325やROM328の存在の有無にかかわらず、不揮発性記憶装置321は外部バスインタフェース(USBケーブル20に相当する)にとって有効なディスクドライブとして動作する。そのため、不揮発性記憶装置321上の内容をファイルとして管理するファイルシステムエンジン324がMCU320に搭載されている。ファイルシステムエンジン324は、不揮発性記憶装置321上に展開されるメモリ内容をファイルとして管理する。管理方法には種々の方法があるが、例えばPC10側にあるファイルを記憶装置32に保存する場合を考えると、そのファイルの内容に一致するメモリ内容が、記憶装置32上のメモリのどの位置に記録され、それとファイル名やタイムスタンプの情報など、前記記録された内容がファイルであることを示す情報が同じく記憶装置32上のメモリのどの位置に記録されているか、またはその記録手段などの情報を管理する。HUBポート36からは、ファイルの読み書き要求がMCU320のインタフェースエンジン(IFエンジン)326に対して発行される。データ解析エンジン329は、上記要求の内容を調査してファイルシステムエンジン324や周辺エンジン327を制御する。
図7は、USB/HUBコントローラ33のうちのHUBコントローラ340の一構成例を示すブロック図である。HUBコントローラ340はインタフェースエンジン(IFエンジン)341、RAM342、データ解析エンジン343、ROM344,周辺エンジン345、HUBインタフェースエンジン(IFエンジン)346を有する。図1に示すHUB装置34は、周辺エンジン345で実現される。
HUBポート35及び36は、HUBインタフェースエンジン(IFエンジン)346に接続されている。HUBインタフェースエンジン(IFエンジン)346は図2に示すステップS14、S31のHUBコンフィギュレーションの確立処理を行う。USBケーブル20はインタフェースエンジン(IFエンジン)341に接続されている。データ解析エンジン343は、HUBポート35や36、及びUSBケーブル20を介して受信したデータや信号を解析し、HUBコントローラ340全体を制御する。RAM342は各エンジンの作業用メモリとして機能する。ROM344には、各エンジンの動作を記述したプログラムやデータが格納されている。
[実施例1の変形例]
キーボード装置310のイネーブル状態とディスエーブル状態とを切り替える他の例として、次のものが挙げられる。図8に示す情報処理システム1は、PC10上で動作するアプリケーションソフトウェア17から上述したキーボード・イネーブル制御信号38をキーボード装置31に入力する。アプリケーションソフトウェア17からベンダーリクエストとしてキーボードドライバ12に送信し、キーボードドライバ12から図8の矢印の順でキーボード装置31に到達する。キーボード装置31はUSB/HUBコントローラ33から出力されるキーボード・イネーブル制御信号38を入力して、この信号によりイネーブル状態とディスエーブル状態とを切り替える。
また、図9に示す情報処理システム1は、USB装置30内にRFID(Radio Frequency-Identification)装置50を組み込んでいる。外部のRFID書き込み装置51により、USB装置30内のRFID装置50にキーボード装置31のイネーブル状態とディスエーブル状態を設定する。RFID装置50は外部のRFID書き込み装置51からの設定により、キーボード・イネーブル制御信号38をキーボード装置31に出力する。キーボード装置31は、キーボード・イネーブル制御信号38によりイネーブル状態とディスエーブル状態に設定される。なお、RFIDを用いることで、特定のユーザだけがRFID装置50に書き込みを行うことができる。本実施例では、キーボード装置31を搭載したUSB装置30を例に説明しているが、このキーボード装置31を他の周辺装置とした場合に、USB装置30にRFID装置50を搭載することによって、特定のユーザだけに周辺装置の使用が許可されるように構成することもできる。
また、図10に示す情報処理システム1は、専用に設けたイネーブル/ディスエーブル設定装置60によりキーボード装置31のイネーブルとディスエーブルとを設定する。イネーブル/ディスエーブル設定装置60は、USB装置30に接続されると、インタフェースエンジン(IFエンジン)62を通じてUSB装置30にキーボード・イネーブル制御信号の状態を変更させる信号を送信する。USB装置30は、この信号をUSB/HUBコントローラ33で受信し、受信した信号に基づいてキーボード・イネーブル制御信号を設定する。
イネーブル/ディスエーブル設定装置60のインタフェースエンジン(IFエンジン)62がUSBホストコントローラであったならば、キーボード・イネーブル制御信号の状態を変更させる信号をUSB仕様に基づいたベンダーリクエストコマンドとして送信することができる。インタフェースエンジン(IFエンジン)62をUSB仕様で定められている信号特性のみに準拠した装置とすれば、例えば、前記インタフェースエンジン(IFエンジン)62より接続から一定期間内に一定の間隔でリセット信号状態とIDLE信号状態を交互に送信するようにする。USB装置30は、この一定期間内のリセット信号のリセット回数をカウントすることで、キーボードイネーブル制御信号をイネーブル状態とディスエーブル状態のどちらに制御すればよいか判定可能となり、安価にイネーブル/ディスエーブル設定装置60を安価に提供することができる。
図11は、イネーブル/ディスエーブル設定装置60とUSB装置30との間に専用の信号線71を設け、その接続を行う専用のインタフェース70を持たせた構成である。イネーブル/ディスエーブル設定装置60によりUSB装置30内のキーボード装置31に直接キーボードイネーブル制御信号を送信することを特徴としている。
これらの構成の情報処理システム1により、キーボード装置31のドライバがインストールされていないPC10へ接続する場合に、キーボード装置31がディスエーブルされた初期状態に戻すことが可能となる。逆に、キーボード装置31のドライバがインストールされているPC10へUSB装置30を接続する場合には、事前にキーボード装置31をイネーブル状態として接続することができる。
また、図12に示すように記憶装置32は、USB装置30の外部に外部記憶装置70として設けてもよい。図12に示すようにUSB装置30に接続インタフェース71を設けて、USB装置30と外部記憶装置70とを接続する。
またUSB装置30と外部記憶装置70とはネットワーク接続する構成であってもよい。外部記憶装置70とUSB装置30とが離れた場所にあり、ネットワークを介して外部記憶装置70から取得したドライバを、PC10側に組み込む。
このように記憶装置を外部記憶装置70又はネットワーク接続としたことで、ドライバが更新されたときの処理が非常に簡単になる。また外部記憶装置とすることで、ドライバの保存先を共通化することもできる。
また、USB装置30内の記憶装置32の他に、外部記憶装置70を設ける構成であってもよい。この場合、USB装置30にスイッチを設けて、USB装置30内の記憶装置32を優先するのか、外部記憶装置70を優先するのかを設定してもよい。また、外部記憶装置70の接続をトリガとして、外部記憶装置70を優先させるようにしてもよい。
また、外部記憶装置70をリムーバブルディスクとして認識させておけば、取り外してもシステムに影響はなく、使い勝手を向上させることができる。この場合、USB/HUBコントローラ33にスイッチを設けて、リムーバブルディスクとキーボード装置31とを切り換える構成、またはUSB/HUBコントローラ33に、リムーバブルディスクとキーボード装置31とを複合装置として認識させる構成を取る。
次に、本発明の第2実施例について説明する。本実施例のUSB装置30は、図13に示すようにマルチ機能コントローラ40を備えている。マルチ機能コントローラ40は、キーボード装置41と記憶装置42とを有する。キーボード装置41と記憶装置42とは、マルチ機能コントローラ40上で一つの物理デバイスとして存在する。キーボード装置41と記憶装置42は、USBケーブル20を介してUSBホストコントローラ15に接続されている。
また、マルチ機能コントローラ40とスイッチ37との間は、専用の信号線によって接続され、マルチ機能コントローラ40の汎用入出力端子や外部割り込み端子に接続される。スイッチ37からのキーボード・イネーブル制御信号38は、マルチ機能コントローラ40のRAM44上のメモリ・ステータスに格納される。キーボード装置41は、RAM44に格納されたキーボード・イネーブル制御信号38をデータ解析エンジン413で解析し、イネーブル状態とディスエーブル状態に切り替える。
図14は、キーボード装置41の一構成例を示すブロック図である。キーボード装置41はキーボードマトリクス411、マトリクススキャン412及びデータ解析エンジン413を有する。マルチ機能コントローラ40は、RAM44、インタフェースエンジン(IFエンジン)43、周辺エンジン46及びROM45を有する。これらの構成要素は、キーボード装置41の構成要素でもあり、全体として図5に示すキーボード装置31と同一の構成及び作用が実現されている。キーボード装置41は、RAM44に格納されたキーボード・イネーブル制御信号38をデータ解析エンジン413で解析し、イネーブル状態とディスエーブル状態に切り替える。
図15は、記憶装置42の一構成例を示すブロック図である。記憶装置42は、不揮発性記憶装置421、ファイルシステム・エンジン422及びデータ解析エンジン423を有する。マルチ機能コントローラ40のRAM44、インタフェースエンジン(IFエンジン)43、周辺エンジン46及びROM45は、記憶装置42の構成要素でもある。つまり、構成要素44〜46はキーボード装置41と記憶装置42とで共用されている。記憶装置42の機能は、図6に示す記憶装置32の機能と同様である。
本実施例でも上述したようにスイッチ37がキーボード装置41へキーボード・イネーブル制御信号38を出力する。まず、USB装置30のスイッチ37をキーボード装置41がディスエーブルになるように設定しておき、USB装置30をPC10へ接続する。記憶装置32がディスクドライブとして動作を開始した後、スイッチ37をキーボード・イネーブル状態へ切替えると、キーボード装置31が動作を開始し、スイッチ37からキーボード・イネーブル制御信号38が出力される。この信号をマルチ機能コントローラ40に入力し、図14に示すRAM44上のメモリ・ステータスに格納する。その後は、上述した手順によりキーボード装置31を使用可能とする。
これにより、自動的にキーボードドライバをOSに組み込むことができる。従って、ユーザはドライバをインストールする際、ドライバが格納されている記憶手段の心配をすることなくUSB装置30をPC10に接続しただけでUSB装置30の利用を開始することができ、プラグアンドプレイを体感することができる。
なお、マルチ機能コントローラ40を有するUSB装置30においても、上述した第1実施例の図8から図11に示す変形例を適用することができる。図16には、マルチ機能コントローラ40を有するUSB装置30において、RFID装置50によりキーボード装置31のイネーブル状態とディスエーブル状態とを切り替える構成を示す。
次に本発明の第3実施例について説明する。本実施例の構成を図17に示す。本実施例も、スイッチ37からのキーボード・イネーブル制御信号38をRAM44に格納する。キーボード装置41は、RAM44に格納されたキーボード・イネーブル制御信号38をデータ解析エンジン413で解析し、イネーブル状態とディスエーブル状態とに切り替える。同様に記憶装置42もRAM44に格納されたキーボード・イネーブル制御信号38をデータ解析エンジン423で解析し、イネーブル状態とディスエーブル状態とに切り替える。すなわち、キーボード装置41がキーボード・イネーブル制御信号38によってイネーブル状態となると、記憶装置42は、記憶装置・ディスエーブル制御信号47によってディスエーブル状態に設定される。
本実施例の動作手順を図18〜図20のフローチャートを参照しながら説明する。なお、図18〜図20のフローチャートにおいて、(a)にはUSB装置30の動作シーケンスを示し、(b)にはPC10の動作シーケンスを示す。USB装置30のスイッチ37を、キーボード装置41をディスエーブル状態とする設定にしておき、USB装置30をPC10へ接続する。すると、マルチ機能コントローラ40は、まず、キーボード・イネーブル制御信号38の信号レベルをチェックし(ステップS82)、信号レベルがローレベルであれば、キーボード装置41をディスエーブル状態に制御し(ステップS83)、記憶装置42をイネーブル状態に制御する(ステップS84)。そして、記憶装置42の装置情報をROM45から読み出してRAM44に書き込み、PC10への送出準備を行う(ステップS85)。このとき、記憶装置42の装置情報には、記憶装置42がPC10にコンフィギュレーションされる時に、記憶装置42が、動作の開始とともに起動するCD−ROMとしてコンフィギュレーションされるように記述されている。
次にスイッチ37からのキーボード・イネーブル制御信号38のレベルに変化があるかどうかをチェックする(ステップS89)。ここでは、変化が無いので(ステップS89/NO)、スイッチ37の信号レベルをチェックする(ステップS97)。スイッチ37のキーボード・イネーブル制御信号38はローレベルにあるので(ステップS97/NO)、記憶装置42が稼働しているか否かを確認する(ステップS98)。記憶装置42は未コンフィギュレーションであるので記憶装置処理へと進む(ステップS99)。記憶装置処理のシーケンスを図19に示す。ここでは、記憶装置42が検出されると(ステップS131)、OS上に組み込まれている記憶装置ドライバ13によって記憶装置42がコンフィギュレーションされる(ステップS132)。その際、記憶装置情報にCD−ROMとの記述があるので、PC10は、記憶装置42をCD−ROMとしてコンフィギュレーションする。
USB装置30には、あらかじめ記憶装置42がCD−ROMとして稼動し始めた場合に、キーボードドライバのインストーラが起動するように記憶装置42に記録しておく。そして、記憶装置42がCD−ROMとして稼動すると(ステップS122、S133)、キーボード装置ドライバのインストーラが自動的に実行される(ステップS133、134)。このインストーラによってキーボード装置ドライバが記憶装置42から読み出され、PC10にコピーされる(ステップS135)。その後は、スイッチ37からのキーボード・イネーブル制御信号38のレベルチェックを繰り返す(ステップS89)。
そして、スイッチ37からのキーボード・イネーブル制御信号38が、キーボード・イネーブル、すなわち記憶装置ディスエーブル状態に切替えられると、次のスイッチ37の信号レベルチェックで信号レベルの変化を検出する(ステップS89/YES)。そして、スイッチ37の信号レベルチェックを実施し(ステップS90)、キーボード・イネーブル制御信号38がハイレベルであれば(ステップS90/YES)、キーボード装置41をイネーブルに制御し(ステップS94)、記憶装置42をディスエーブル状態に制御する(ステップS95)。また、キーボード装置41の装置情報をROM45からRAM44にコピーし、装置情報の送信準備を行う。次のスイッチ37の信号レベルチェックでは、キーボード・イネーブル制御信号38がハイレベルになっているので(ステップS97/YES)、キーボード処理へと進む(ステップS100、S113)。キーボード処理のシーケンスを図20に示す。
図20に示すキーボード処理のシーケンスでは、キーボード装置41は、スイッチ37からのキーボード・イネーブル制御信号38を受けて動作を開始しており、送信する装置情報がキーボード装置のものに書き換えられている。従ってPC10側は、未知のキーボード装置41を検出する(ステップS151)。すると、PC10内部の記憶装置(図示せず)に前記ドライバ・コピーステート(図19に示すステップS135)にてコピーされたキーボードドライバを読み出し、キーボード装置41をコンフィギュレーションする(ステップS153)。
このようにして、自動的にキーボードドライバをOSに組み込むことができる。従って、ユーザはドライバをインストールする際、ドライバが格納されている記憶手段の心配をすることなくUSB装置30をPC10に接続しただけでUSB装置30の利用を開始することができ、プラグアンドプレイを体感することができる。
次に本発明の第4実施例について説明する。本実施例は、図21に示すようにマルチ機能コントローラ40にキーボード装置41と記憶装置42とが組み込まれた構成において、スイッチ37ではなく、記憶装置42によってキーボード装置41と記憶装置42のイネーブル/ディスエーブルを制御する。
本実施例の動作手順を図23に示すフローチャートを参照しながら説明する。図23(a)にはUSB装置30の動作シーケンスを示し、図23(b)にはPC10の動作シーケンスを示す。初期状態において、USB装置30のキーボード装置41をディスエーブルに設定し、記憶装置42をイネーブルに設定しておく。USB装置30をPC10へ接続すると(ステップS161)、マルチ機能コントローラ40によって、周辺エンジン46を経由して記憶装置42内の不揮発性記憶装置421(図22に示す)からキーボード・イネーブル制御信号38が読み出され、RAM44にセットされる。この信号状態に基づき、キーボード装置41と記憶装置42がイネーブル状態もしくはディスエーブル状態に制御される。図14にRAM44に格納されたキーボード・イネーブル制御信号38をデータ解析エンジン413で解析し、キーボード装置41の状態を設定する様子を示す。また図22にRAM44に格納されたキーボード・イネーブル制御信号38をデータ解析エンジン423で解析し、記憶装置42の状態を設定する様子を示す。
ここでは、初期状態であるので、キーボード・イネーブル制御信号38はローレベルに設定されており(ステップS162/NO)、キーボード装置41がディスエーブル状態に制御され、記憶装置42がイネーブル状態に制御される。そして、記憶装置42の装置情報がROM45から読み出され、RAM44にコピーされ、PC10からの読み出しに備える(ステップS163)。装置情報のコピーが完了した段階で記憶装置42が動作を開始し、PC10が記憶装置42を検出する(ステップS182)。ここでは、上述した第1実施例と同様に、OS上に組み込まれている記憶装置ドライバ13によって、記憶装置42がコンフィギュレーションされる(ステップS183)。そして、記憶装置42がディスクドライブとして稼動する(ステップS184)。ここで、記憶装置42は、第3実施例と同様にCD−ROMとしてコンフィギュレーションされており、記憶装置42がCD−ROMとして稼動すると、キーボードドライバのインストーラが自動的に実行される(ステップS166、S185)。このインストーラによってキーボードドライバが記憶装置42から読み出され(ステップS167)、PC10にコピーされる(ステップS186)。記憶装置42は、キーボードドライバのコピーが完了したことを検出し(ステップS168/YES)、マルチ機能コントローラ40へ記憶装置ディスエーブル制御信号とキーボード・イネーブル制御信号を出力する(ステップS169)。
マルチ機能コントローラ40は、記憶装置ディスエーブル制御信号47とキーボード・イネーブル制御信号38を受けて、記憶装置42をディスエーブル状態に制御し、キーボード装置41の装置情報をROM45から読み出しRAM44へコピーする(ステップS170)。そしてキーボード装置41をイネーブル状態に制御する(ステップS171)。すると、PC10側は、未知のキーボード装置41を検出する(ステップS172、S187)。PC10内部の記憶装置(図示せず)に前記ドライバ・コピーステートにてコピーされたキーボードドライバを読み出し(ステップS188)、キーボード装置41をコンフィギュレーションする(ステップS189)。コンフィギュレーションされたキーボード装置41が動作を開始する(ステップS173、S190)。
このようにして、自動的にキーボードドライバをOSに組み込むことができる。従って、ユーザはドライバをインストールする際、ドライバが格納されている記憶手段の心配をすることなくUSB装置をPCに接続しただけでUSB装置の利用を開始することができ、プラグアンドプレイを体感することができる。
またキーボード・イネーブル制御信号38の信号レベルをチェックする時に(ステップS162)、この信号のハイレベルを検出した場合は、既に1回以上PC10へ接続されていたものとみなし、キーボード装置41がイネーブル状態に制御され、記憶装置42がディスエーブル状態に制御される。そして、キーボード装置41の装置情報がROM45から読み出され、RAM44にコピーされる。その後、キーボード接続の手順となり、キーボード装置41がコンフィギュレーションされる。
上述した図23のフローでは、USB装置30が1度でもPC10に接続されると、次回からはキーボード装置41として動作することとなり、記憶装置42が動作しない。つまり、USB装置30が接続された経験のないPC10へ、1度以上PC10に接続した経験のあるUSB装置30を接続すると、未知のキーボード装置として検出される。この場合、PC10内部の記憶装置には、ドライバが存在しないので、ドライバのインストールを要求され、自動的にインストールすることが出来ない。この場合において、自動的にインストールを行うためには、USB装置30を初期化する手順が発生する。
この問題を解決し、USB装置30を初期化する手順を無くすため、記憶装置42をコンフィギュレーションするOSに組み込まれた記憶装置ドライバ13と、キーボード装置41をコンフィギュレーションするキーボードドライバ12とに、USB仕様によって定められたコンフィギュレーションに影響を与えない範囲で、コンフィギュレーション手順に違いを持たせる。これによって、記憶装置ドライバ13によってUSB装置30がコンフィギュレーションされているのか、キーボードドライバ12によってUSB装置30がコンフィギュレーションされているのかを検出する。さらに、USB仕様のコンフィギュレーションに影響を与えないタイミングで、検出した装置の装置情報をROM45から読み出し、RAM44にコピーしてPC10へ送信する。これにより、USB装置30が接続された経験のないPC10では、キーボード装置41のドライバが自動的にインストールされ、USB装置30が接続された経験のあるPC10では、キーボードとして動作させることが可能となる。
本実施例は、スイッチ37等によってUSB装置30を初期化する手順をなくすため、記憶装置32をコンフィギュレーションするOS11に組み込まれた記憶装置ドライバ13と、キーボード装置31をコンフィギュレーションするキーボードドライバ12とに、USB仕様によって定められたコンフィギュレーションに影響を与えない範囲内で、コンフィギュレーション手順に違いを持たせる。
記憶装置ドライバ13によって記憶装置32がコンフィギュレーションされているのか、キーボードドライバ12によってUSB装置30がコンフィギュレーションされているのかを検出し、さらに、USB仕様のコンフィギュレーションに影響を与えないタイミングで、検出した装置の装置情報をROM45から読み出し、RAM44にコピーしてPC10へ送信する。これにより、USB装置30が接続された経験のないPC10では、キーボード装置41のドライバが自動的にインストールされ、USB装置30が接続された経験のあるPC10では、キーボード装置31として動作させることが可能となる。
まず図24、25を参照しながらUSB装置30の一般的なコンフィギュレーションの手順を説明する。図24には、USB装置30とPC10との一般的なコンフィギュレーションの手順が示されている。PC10は、USB装置30を検出すると(ステップS211)、Device DescriptorをUSB装置30に要求する(ステップS212)。USB通信での最大パケットサイズを取得するため、グローバルアドレスに対してDevice Descriptorの要求を行う。USB装置30は、この要求に答えてDevice DescriptorをPC10に送出する(ステップS202)。Device Descriptorを取得したPC10では、ポートのリセットが行われ(ステップS213)、USB装置30ではUSB装置30のリセットが行われる(ステップS203)。
次に、PC10は、USB装置30に対してDescriptorの要求を出力する(ステップS214)。この要求は、OSがドライバを検索するために全てのDescriptorを読み出すために行われる。USB装置30は、この要求に応答してDescriptorをPC10に送出する(ステップS204)。Descriptorの送受信のフローについは後述する。
Descriptorを取得したPC10は、ドライバの検索(ステップS215)と、ドライバのロードとを行い(ステップS216)、ロードされたドライバによって再度Descriptorの要求がUSB装置30に出力される(ステップS217)。この要求に応答したUSB装置30は、Descriptorを送出し(ステップS205)、コンフィギュレーションが完了する(ステップS218)。ここでのDescriptorの送受信のフローは、ステップS204、S214のフローと同様であり詳細は後述する。
このようにDevice Descriptorの要求は、USB通信での最大パケットサイズを取得するため、グローバルアドレスに対して1回要求し、次に、OSがドライバを検索するために全てのDescriptorを読み出す際に1回要求され、最後に、ドライバによって1回要求されるという3回が一般的である。ただし、HUBクラスのように、Class DescriptorとDevice Descriptorが同じ場合には、Class Descriptorの要求の際に、もう1回要求される場合もある。
図25を参照しながらDescriptorの要求開始から受信までのフローを説明する。PC10は、Descriptorの要求を開始すると(ステップS231)、まずDevice Descriptorの送出要求(ステップS232)をUSB装置30に出力する。この要求に答えてUSB装置30は、Device DescriptorをPC10に送出する(ステップS222)。次に、PC10は、Configuration Descriptorの送信要求をUSB装置30に出力する(ステップS233)。この要求に答えてUSB装置30は、Configuration DescriptorをPC10に送出する(ステップS223)。次に、PC10は、Configuration-Endpoint Descriptorの送信要求をUSB装置30に出力する(ステップS234)。なお、Configuration-Endpoint Descriptorの要求は、Configuration Descriptor,Interface Descriptor,Class Descriptor,Endpoint Descriptorを一括して要求するものである。この要求に答えてUSB装置30は、上記のDescriptorをPC10に送出する(ステップS224)。最後に、PC10は、String Descriptorの送信要求をUSB装置30に出力する(ステップS235)。この要求に答えてUSB装置30は、String DescriptorをPC10に送出して(ステップS225)、Descriptorの送出手順を終了する。なお、本フローでは、String Descriptorの要求回数を1回としているが、String Descriptorの要求回数は装置の構成によって異なる。
次に、本実施例の手順を説明する。本実施例は、Device Descriptorの要求回数が一定となることに着目し、キーボードドライバで意図的にDevice Descriptorを複数回要求し、USB装置30内部では、Device Descriptorが読み出された回数をカウントすることで、OSに組み込まれている記憶装置ドライバ13によるコンフィギュレーションか、キーボードドライバ12によるコンフィギュレーションかを判別する。
図26に本実施例のコンフィギュレーションの手順を示し、図27に、図26のステップS245とS254のDescriptorの要求と送出の手順を示し、図28に、図26のステップS246とS257のキーボードドライバ12によるDescriptorの要求と送出の手順を示す。
本実施例のコンフィギュレーションの手順は、図26に示すようにPC10は、USB装置を検出すると(ステップS251)、USB装置30にDevice Descriptorを要求する(ステップS252)。USB装置30は、PC10からの要求(ステップS252)に従ってDevice Descriptorを送出すると(ステップS242)、Device Descriptorの送出回数をカウントする(ステップS243)。Device Descriptorを取得したPC10では、ポートのリセットが行われ(ステップS253)、USB装置30ではUSB装置30のリセットが行われる(ステップS244)。
次に、PC10は、USB装置30に対してDescriptorの要求を出力する(ステップS254)。この要求は、OSがドライバを検索するために全てのDescriptorを読み出すために行われる。USB装置30は、この要求に応答してDescriptorをPC10に送出する(ステップS245)。Descriptorの送受信のフローについては後述する。
Descriptorを取得したPC10は、ドライバの検索(ステップS255)と、ドライバのロードとを行い(ステップS256)、ロードされたドライバによって再度Descriptorの要求がUSB装置30に出力される(ステップS257)。この要求に応答したUSB装置30は、Descriptorを送出し(ステップS246)、コンフィギュレーションが完了する(ステップS258)。ステップS246、257のDescriptorの送受信のフローについても後述する。
次に、上述したステップS254とS245のDescriptorの送受信のフローについて図27を参照しながら説明する。PC10は、Descriptorの要求を開始すると(ステップS271)、まずDevice DescriptorをUSB装置30に要求する(ステップS272)。USB装置30は、Device DescriptorをPC10に送出し(ステップS262)、Device Descriptorの送出回数をカウントする(ステップS263)。
Device Descriptorを受信したPC10は、次に、Configuration DescriptorをUSB装置30に要求する(ステップS273)。この要求に答えてUSB装置30は、Configuration DescriptorをPC10に送出する(ステップS264)。次に、PC10は、Configuration-Endpoint Descriptorの送信要求をUSB装置30に出力する(ステップS274)。なお、Configuration-Endpoint Descriptorの要求は、Configuration Descriptor,Interface Descriptor,Class Descriptor,Endpoint Descriptorを一括して要求するものである。この要求に答えてUSB装置30は、上記のDescriptorをPC10に送出する(ステップS265)。最後に、PC10は、String Descriptorの送信要求をUSB装置30に出力する(ステップS275)。この要求に答えてUSB装置30は、String DescriptorをPC10に送出して(ステップS266)、Descriptorの送出手順を終了する。なお、本フローでも、String Descriptorの要求回数を1回としているが、String Descriptorの要求回数は装置の構成によって異なる。
次に、図26のステップS246とS257のキーボードドライバ12によるDescriptorの要求と送出の手順を図28を参照しながら説明する。PC10は、Descriptorの要求を開始すると(ステップS301)、まずDevice Descriptorの要求を3回連続して行う(ステップS302、S303)。USB装置30では、PC10からDevice Descriptorの要求があると、Device DescriptorをPC10に送出し(ステップS282、284、286)、Device Descriptorを送出する毎に送出回数をカウントする(ステップS283、285、287)。USB装置30は、Device Descriptorのカウント数が5回以上となると(ステップS288/YES)、キーボードドライバ12によるコンフィギュレーションと判断し、キーボード装置31の装置情報をROM45から読み出しRAM44にコピーする。図26に示すステップS242で1回、S245で1回、S246で3回Device Descriptorが送出されるため、合計の送出回数が5回以上となる。
またDevice Descriptorの送出回数5回をチェックするシーケンス(ステップS288)で、送出回数が5回に満たない場合には、記憶装置ドライバ13によるコンフィギュレーションと判断し、記憶装置42の装置情報をROM45から読み出しRAM44へコピーする(ステップS290)。その後に、装置を構成するために必要なConfiguration Descriptor(ステップS304)、Configuration-Endpoint Descriptor(ステップS305)、String Descriptor(ステップS306)がPC10からの要求に従って順次USB装置30からPC10に送出される(ステップS291、ステップS292、ステップS293)。従って、USB仕様のコンフィギュレーションに影響を与えることなく、記憶装置とキーボード装置の切り替えを行うことが可能である。なお、本フローでは、Device Descriptorの送出回数をカウントしているが、Configuration Descriptorの送出回数をカウントしてもよい。
また、上述した手順の変形例として、USB装置30がPC10からのベンダーリクエストに応じて、キーボード装置31と記憶装置32の有効、無効を切り換えるようにしてもよい。この手順を図29に示すフローチャートを参照しながら説明する。PC10は、Descriptorの要求を開始すると、まず、Device DescriptorをUSB装置30に要求する(ステップS321)。USB装置30は、Device DescriptorをPC10に送出する(ステップS311)。次に、PC10は、コンフィグレーション中にベンダーリクエストをUSB装置30に対して要求する(ステップS322)。USB装置30は、PC10からベンダーリクエストの要求を受け付けた場合(ステップS312/YES)、既にドライバがインストール済みと判定し第1の装置としてのキーボード装置31を有効する(ステップSS315)。
また、PC10側で、コンフィグレーション中にベンダーリクエストの要求がなかった場合(ステップS312/NO)、記憶装置32を有効化して(ステップS314)、記憶装置32からドライバを読み出し、PC10にインストールを行う。
次に、PC10は、Configuration DescriptorをUSB装置30に要求する(ステップS323)。この要求に答えてUSB装置30は、Configuration DescriptorをPC10に送出する(ステップS316)。次に、PC10は、Configuration-Endpoint Descriptorの送信要求をUSB装置30に出力する(ステップS324)。なお、Configuration-Endpoint Descriptorの要求は、Configuration Descriptor,Interface Descriptor,Class Descriptor,Endpoint Descriptorを一括して要求するものである。この要求に答えてUSB装置30は、上記のDescriptorをPC10に送出する(ステップS317)。最後に、PC10は、String Descriptorの送信要求をUSB装置30に出力する(ステップS325)。この要求に答えてUSB装置30は、String DescriptorをPC10に送出して(ステップS318)、Descriptorの送出手順を終了する。
このようにして本実施例では、コンフィギュレーションのシーケンスを変更することなく、キーボード装置31と記憶装置32をイネーブル状態とディスエーブル状態とに切り替えることができる。
USB装置30をPC10に接続したときに、正しくコンフィグレーションが行われなかった場合(例えば、ドライバ不在)、不明なデバイスとして認識される。そのような状況になったときに、認識している装置がキーボード装置31であるのか、記憶装置32であるのかが判定できない場合がある。そこで、本実施例では、スイッチ72を設けて、このスイッチ72の押したによりUSB装置30を一旦ディセーブル状態にする。スイッチ72の出力は、図30に示すUSB/HUBコントローラ33に接続されており、このUSB/HUBコントローラ33でUSB装置30をディセーブル状態に設定する。初期状態にリセットされたことでUSB装置30は、通常の手順を行い、記憶装置32をイネーブル状態にしてドライバを読み出す。ドライバのインストール後は、キーボード装置31がイネーブルにされ、インストール済みのドライバによってキーボード装置31がコンフィグレーションされ動作を開始する。
本実施例の動作手順を図31に示すフローチャートを参照しながら説明する。
まず、図31(a)に示すPC10側の手順を説明する。USB装置30の接続を検出すると、PC10は、ディスクリプタをUSB装置30に要求する(ステップS331)。次にPC10は、ドライバをUSB装置30から取得することができた場には(ステップS332/YES)、通常通りエニュメレーションを行う(ステップS333)。またUSB装置30からドライバを取得することができなかった場合には(ステップS332/NO)、不明なデバイスとして認識する(ステップS335)。
次に、不明な装置として認識されたUSB装置30側の手順を図31(b)を参照しながら説明する。PC10から不明な装置として認識されると、スイッチ72の操作により(ステップS342)、USB装置30は、一旦ディセーブル状態となる(ステップS343)。その後、記憶装置32の有効化と(ステップS344)と、キーボード装置31の無効化(ステップS345)とが行われ、記憶装置32としてイネーブル状態となってPC10に認識される(ステップS346)。そして、PC10からのディスクリプタ要求に応答してディスクリプタを送出し(ステップS347)、PC10からのエニュメレーション処理に応答してディスクリプタを送出する(ステップS348)。
以上説明した方法によれば、USB装置が接続された経験のないPC10へ、1度以上PC10に接続した経験のあるUSB装置を接続すると、未知のキーボードとして検出され、PC10内部の記憶装置には、ドライバが存在しないためにドライバのインストールを要求され、自動的にインストールすることが出来ないという問題点を解決し、自動的にインストールを行うためのUSB装置を初期化する手順を発生させることなく、USB装置のドライバがインストールされていないPC10に接続された場合に、常にドライバが自動的にインストールされる。
なお、上述した実施例は本発明の好適な実施例である。但しこれに限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々変形実施可能である。
本発明の第1実施例を示すブロック図である。 第1実施例の動作手順を示すフローチャートである。 記憶装置のコンフィギュレーションの手順を示すフローチャートである。 キーボード装置のコンフィギュレーションの手順を示すフローチャートである。 キーボード装置の一構成例を示すブロック図である。 記憶装置の一構成例を示すブロック図である。 USB/HUBコントローラのうちのHUBコントローラの一構成例を示すブロック図である。 PC上のアプリケーションソフトウェアからキーボード装置を制御する時の制御信号の流れ示す図である。 RFID50によりキーボード装置のイネーブル/ディスエーブルを設定する構成を示す図である。 イネーブル/ディスエーブル設定装置によりキーボード装置のイネーブル/ディスエーブルを設定する構成を示す図である。 イネーブル/ディスエーブル設定装置によりキーボード装置のイネーブル/ディスエーブルを設定する構成を示す図である。 外部接続された記憶装置を設けた電子装置の構成を示す図である。 本発明の第2実施例の構成を示すブロック図である。 図12に示すキーボード装置の一構成例のブロック図である。 図12に示す記憶装置の一構成例のブロック図である。 マルチ機能コントローラを搭載したUSB装置において、RFIDによってキーボード装置のイネーブル/ディスエーブルを設定する構成を示す図である。 本発明の第3実施例の構成を示すブロック図である。 第3実施例の動作手順を示すフローチャートである。 記憶装置のコンフィギュレーションの手順を示すフローチャートである。 キーボード装置のコンフィギュレーションの手順を示すフローチャートである。 本発明の第4実施例の構成を示すブロック図である。 マルチ機能コントローラと記憶装置の構成と、これら装置間で送受信される信号を示す図である。 第4実施例の動作手順を示すフローチャートである。 USB装置の一般的なコンフィギュレーションの手順を示すフローチャートである。 USB装置の一般的なコンフィギュレーションの手順を示すフローチャートである。 本発明のコンフィギュレーションの手順を示すフローチャートである。 Descriptorの要求と送出の手順を示すフローチャートである。 Descriptorの要求と送出の手順を示すフローチャートである。 コンフィギュレーション中のベンダーリクエストによって有効にする装置を切り換え、コンフィギュレーションを行う手順を示すフローチャートである。 実施例5の情報処理システム1の構成を示す図である。 実施例5の動作手順を示すフローチャートである。
符号の説明
1 情報処理装置 10 PC
11 OS 12 キーボードドライバ
13 記憶装置ドライバ 14 HUBドライバ
15 USBホストコントローラ 16 内部バス
17 アプリケーションソフトウェア
20 USBケーブル 30 USB装置
31 キーボード装置 32 記憶装置
33 USB/HUBコントローラ
34 HUB装置 35、36 HUBポート
37 スイッチ 38 キーボード・イネーブル制御信号
40 マルチ機能コントローラ 41 キーボード装置
42 記憶装置 50 RFID装置
51 RFID書き込み装置
60 イネーブル/ディスエーブル設定装置
61 MCU 62 IFエンジン
63 ROM 64 RAM
70 外部記憶装置 71 接続インタフェース
72 スイッチ

Claims (28)

  1. 第1の装置と、該第1の装置のドライバを格納する第2の装置とを備え、該第1及び第2の装置は外部接続用の共通インタフェース上でそれぞれトランザクションを発生させることができる電子装置であって、
    前記第1の装置をイネーブル状態又はディスエーブル状態に設定する設定手段と、
    前記設定手段により前記第1の装置がディスエーブル状態に設定されると前記第2の装置の動作を開始させ、前記第2の装置から前記インタフェースを介して前記ドライバを読み出し可能にする制御手段とを有することを特徴とする電子装置。
  2. 前記第2の装置は、保持する前記ドライバに対して、読み出し処理だけを許可することを特徴とする請求項1記載の電子装置。
  3. 前記第2の装置は、前記ドライバを書き込み不可領域に記録した記憶装置を含む請求項1または2記載の電子装置。
  4. 前記設定手段は、外部装置からの制御信号によって前記第1の装置を前記イネーブル状態又は前記ディスエーブル状態に設定する手段であることを特徴とする請求項1から3のいずれか一項に記載の電子装置。
  5. 前記設定手段は、前記電子装置が接続した情報処理装置から前記共通インタフェースを介して受信する前記制御信号によって前記第1の装置を前記イネーブル状態又は前記ディスエーブル状態に設定する手段であることを特徴とする請求項1から4のいずれか一項に記載の電子装置。
  6. 前記設定手段は、RFID書き込み装置によって外部から書き込まれた設定情報に従って、前記第1の装置を前記イネーブル状態又は前記ディスエーブル状態に設定する手段であることを特徴とする請求項1から4のいずれか一項に記載の電子装置。
  7. 前記外部装置は、USB仕様に準拠したベンダーリクエストによって前記第1の装置を前記イネーブル状態又は前記ディスエーブル状態に設定することを特徴とする請求項4記載の電子装置。
  8. 前記設定手段は、前記外部装置から送信される所定の信号によって前記第1の装置を前記イネーブル状態又は前記ディスエーブル状態に設定する手段であることを特徴とする請求項4記載の電子装置。
  9. 前記設定手段は、専用インタフェースによって接続した前記外部装置から前記制御信号を受信し、該制御信号に従って前記第1の装置を前記イネーブル状態又は前記ディスエーブル状態に設定する手段であることを特徴とする請求項4記載の電子装置。
  10. 前記制御手段は、前記第1及び第2の装置と前記インタフェースとの間でトランザクションをコントロールするハブ・コントローラを含むことを特徴とする請求項1から9のいずれか一項に記載の電子装置。
  11. 前記制御手段は、前記第1及び第2の装置を1つの物理装置として制御するコントローラを含むことを特徴とする請求項1から9のいずれか一項に記載の電子装置。
  12. 前記第2の装置は、前記情報処理装置にコンフィギュレーションされると、前記ドライバのインストーラを起動させ、前記情報処理装置に前記ドライバをコピーすることを特徴とする請求項1から11のいずれか一項に記載の電子装置。
  13. 前記電子装置は、前記情報処理装置からコンフィギュレーション中に送信される所定信号によって、有効にする装置を前記第1の装置と前記第2の装置とで切り換えることを特徴とする請求項1から12のいずれか1項記載の電子装置。
  14. 前記第2の装置は、前記情報処理装置とのコンフィギュレーションの際に、前記情報処理装置から要求される、該コンフィギュレーションされる装置の装置情報の一部の要求回数をカウントすることで、前記第1の装置のコンフィギュレーションと前記第2の装置のコンフィギュレーションとを判定することを特徴とする請求項1から12のいずれか一項に記載の電子装置。
  15. 前記所定信号は、前記コンフィギュレーション中に送信されるベンダーリクエスト信号であることを特徴とする請求項13記載の電子装置。
  16. 前記第2の装置は、前記電子装置に外部接続、又はネットワークを介して接続されていることを特徴とする請求項1から15のいずれか1項記載の電子装置。
  17. 前記電子装置は、該電子装置をディセーブル状態に設定する操作手段を有することを特徴とする請求項1から16のいずれか1項記載の電子装置。
  18. 請求項1から17のいずれか一項に記載の電子装置と、前記共通インタフェースを介して前記電子装置に接続される情報処理装置とを有することを特徴とする情報処理システム。
  19. 前記電子装置は、前記情報処理装置からの制御信号を入力して前記第1の装置を前記イネーブル状態又は前記ディスエーブル状態に設定することを特徴とする請求項18記載の情報処理システム。
  20. 前記情報処理装置は、コンフィギュレーションする装置の装置情報を前記電子装置に要求する際に、前記装置情報の一部を要求する回数を前記第1の装置と前記第2の装置とで変更することを特徴とする請求項18又は19記載の情報処理システム。
  21. 前記電子装置とRFIDによる通信を行い、前記第1の装置の状態を、イネーブル状態とディスエーブル状態に切り替えるRFID書き込み装置を有することを特徴とする請求項18記載の情報処理システム。
  22. 前記電子装置に接続し、前記第1の装置の状態を、イネーブル状態とディスエーブル状態とに切り替える設定装置を有することを特徴とする請求項18記載の情報処理システム。
  23. 前記設定装置は、USB仕様に準拠したベンダーリクエストによって前記第1の装置を前記イネーブル状態又は前記ディスエーブル状態に設定することを特徴とする請求項22記載の情報処理システム。
  24. 前記設定装置は、所定の信号によって前記第1の装置を前記イネーブル状態又は前記ディスエーブル状態に設定することを特徴とする請求項22記載の情報処理システム。
  25. 前記設定装置は、専用インタフェースによって前記電子装置に接続し、該専用インタフェースを介して送信する制御信号によって、前記第1の装置を前記イネーブル状態又は前記ディスエーブル状態に設定することを特徴とする請求項22記載の情報処理システム。
  26. 第1の装置と、該第1の装置のドライバを格納する第2の装置とを有し、該第1及び第2の装置は外部接続用の共通インタフェース上でそれぞれトランザクションを発生させることができる電子装置の制御方法であって、
    前記第1の装置をイネーブル状態又はディスエーブル状態に設定するステップと、
    前記第1の装置がディスエーブル状態に設定されると前記第2の装置の動作を開始させ、前記第2の装置から前記インタフェースを介して前記ドライバを読み出し可能状態にするステップとを有することを特徴とする制御方法。
  27. 第1の装置と、該第1の装置のドライバを格納する第2の装置とを有する電子装置と、該電子装置と外部接続用の共通インタフェースで接続する情報処理装置とを有する情報処理システムの制御方法であって、
    前記情報処理装置において、コンフィギュレーションする装置の装置情報を前記電子装置に要求する際に、前記装置情報の一部の要求回数を前記第1の装置と前記第2の装置とで変更するステップと、
    前記電子装置において、前記情報処理装置から要求される、前記コンフィギュレーションする装置の装置情報の一部の要求回数をカウントし、前記第1の装置のコンフィギュレーションと前記第2の装置のコンフィギュレーションとを判定するステップとを有することを特徴とする制御方法。
  28. 第1の装置と、該第1の装置のドライバを格納する第2の装置とを有する電子装置と、該電子装置と外部接続用の共通インタフェースで接続する情報処理装置とを有する情報処理システムの制御方法であって、
    コンフィギュレーション中に、前記情報処理装置から送信される所定信号を検出するステップと、
    前記所定信号を検出できない場合に、前記第2の装置を有効化するステップと、
    前記所定信号を検出した場合に、前記第1の装置を有効化するステップとを有することを特徴とする制御方法。
JP2005096372A 2004-07-27 2005-03-29 電子装置、情報処理システム及びその制御方法 Pending JP2006065833A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2005096372A JP2006065833A (ja) 2004-07-27 2005-03-29 電子装置、情報処理システム及びその制御方法
US11/189,811 US7590767B2 (en) 2004-07-27 2005-07-27 Electronic apparatus, information processing system and method of controlling said apparatus

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2004218802 2004-07-27
JP2005096372A JP2006065833A (ja) 2004-07-27 2005-03-29 電子装置、情報処理システム及びその制御方法

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2010076205A Division JP4963325B2 (ja) 2004-07-27 2010-03-29 情報処理システムの制御方法

Publications (1)

Publication Number Publication Date
JP2006065833A true JP2006065833A (ja) 2006-03-09

Family

ID=35731790

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005096372A Pending JP2006065833A (ja) 2004-07-27 2005-03-29 電子装置、情報処理システム及びその制御方法

Country Status (2)

Country Link
US (1) US7590767B2 (ja)
JP (1) JP2006065833A (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8473664B2 (en) * 2006-12-11 2013-06-25 Intel Corporation Safe removal of external device from computing device
US8812970B2 (en) * 2008-02-27 2014-08-19 Microsoft Corporation Dynamic device state representation in a user interface
CN101989125A (zh) * 2009-08-04 2011-03-23 鸿富锦精密工业(深圳)有限公司 手机的设备共享至计算机的装置
US8762589B2 (en) * 2010-01-22 2014-06-24 National Instruments Corporation Data transfer between devices maintaining state data
US8966600B2 (en) * 2010-12-22 2015-02-24 Intel Corporation Method, apparatus and system for controlling access to computer platform resources
US9336357B2 (en) 2012-09-28 2016-05-10 Intel Corporation Secure access management of devices

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003256349A (ja) * 2002-02-26 2003-09-12 Fujitsu Component Ltd 電子装置及びその制御方法

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5978860A (en) * 1995-06-07 1999-11-02 Dell Usa, L.P. System and method for disabling and re-enabling at least one peripheral device in a computer system by masking a device-configuration-space-access-signal with a disable or re-enable signal
US6912170B1 (en) * 2000-03-14 2005-06-28 Micron Technology, Inc. Method and apparatus for permanent electrical removal of an integrated circuit output after packaging
JP2003150530A (ja) 2001-11-16 2003-05-23 Naltec Inc 周辺機器およびその制御方法
JP3688630B2 (ja) 2001-11-22 2005-08-31 株式会社東芝 直接スペクトル拡散通信の受信方法及び装置
KR20040042923A (ko) * 2002-11-14 2004-05-22 엘지전자 주식회사 휴대용 컴퓨터에서의 보조 디바이스 구동 제어방법
US7331051B2 (en) * 2003-04-08 2008-02-12 Synology, Inc. System and method for installing portable device drivers
US7363632B2 (en) * 2003-04-08 2008-04-22 Synology, Inc. Clientless external storage device
US7031881B2 (en) * 2003-12-19 2006-04-18 Intel Corporation Method, system, and article of manufacture for running diagnostics related to a device
TWI266197B (en) * 2005-04-11 2006-11-11 Wistron Corp Method for enabling or disabling a peripheral maintaining electrically connected to a computer system

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003256349A (ja) * 2002-02-26 2003-09-12 Fujitsu Component Ltd 電子装置及びその制御方法

Also Published As

Publication number Publication date
US7590767B2 (en) 2009-09-15
US20060023242A1 (en) 2006-02-02

Similar Documents

Publication Publication Date Title
JP4346853B2 (ja) 電子装置及びその制御方法
JP5513018B2 (ja) 周辺装置及び画像読取装置
JP4378323B2 (ja) 情報処理装置および印刷装置および印刷システムおよび設定方法およびコンピュータが読み取り可能なプログラムを格納した記憶媒体およびプログラム
JP2006065833A (ja) 電子装置、情報処理システム及びその制御方法
KR101516637B1 (ko) 네트워킹 모듈이 구비된 단말기와 이를 이용한 데이터 전송방법
US7797398B2 (en) Communication system, and peripheral device having trigger generating device and computer program product that monitors whether a trigger has been generated
US7480905B2 (en) Interface device, and method and computer readable product for updating firmware in the interface device
KR100285956B1 (ko) 고속직렬버스에연결된동기식및비동기식장치의제어시스템과제어방법
JP2001256170A (ja) 周辺装置及びプリンタ
US5961624A (en) Connection apparatus which facilitates conflict-free interfacing between host apparatuses and one or more peripherals
KR100601684B1 (ko) 외부 저장장치, 화상획득장치, 및 드라이버를 구동하는방법 및 시스템
JP2003114859A (ja) Usb接続機器
US7124235B2 (en) USB apparatus with switchable host/hub functions and control method thereof
JP5016133B2 (ja) 情報処理システムの制御方法
JP2001326766A (ja) 画像処理システム、画像データ処理方法及び記憶媒体
GB2617230A (en) Guidance control method for driver installation, device regarding the same, and terminal
JP2006293638A (ja) 情報処理装置及び周辺装置
US20050138236A1 (en) Direct memory access control device and method for automatically updating data transmisson size from peripheral
JP2008027006A (ja) 周辺デバイスを管理するためのプログラムおよび情報処理装置とその制御方法
US11968469B2 (en) Computing apparatus, image capturing apparatus, control method, and storage medium
US8214556B2 (en) Controlling execution of an action object at a peripheral device based on data stored in a removable storage medium
CN117111539B (zh) 以太网物理层芯片的控制方法及装置
JP4815775B2 (ja) デバイスドライバのインストール方法及びインストールシステム
US8675223B2 (en) Image forming device, image forming system and computer readable medium for installing related software to another device
CN112840278B (zh) 可编程逻辑控制器、外部仪器、方法及程序

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070530

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100126

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100329

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20100727