JP4897331B2 - 通信制御装置、通信制御プログラム、通信ドライバ登録方法 - Google Patents

通信制御装置、通信制御プログラム、通信ドライバ登録方法 Download PDF

Info

Publication number
JP4897331B2
JP4897331B2 JP2006092923A JP2006092923A JP4897331B2 JP 4897331 B2 JP4897331 B2 JP 4897331B2 JP 2006092923 A JP2006092923 A JP 2006092923A JP 2006092923 A JP2006092923 A JP 2006092923A JP 4897331 B2 JP4897331 B2 JP 4897331B2
Authority
JP
Japan
Prior art keywords
handle
driver
communication interface
communication
peripheral 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.)
Expired - Fee Related
Application number
JP2006092923A
Other languages
English (en)
Other versions
JP2007265328A (ja
Inventor
智也 山崎
達也 高杉
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 Frontech Ltd
Original Assignee
Fujitsu Frontech 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 Frontech Ltd filed Critical Fujitsu Frontech Ltd
Priority to JP2006092923A priority Critical patent/JP4897331B2/ja
Priority to US11/510,559 priority patent/US20070245359A1/en
Publication of JP2007265328A publication Critical patent/JP2007265328A/ja
Application granted granted Critical
Publication of JP4897331B2 publication Critical patent/JP4897331B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/542Event management; Broadcasting; Multicasting; Notifications
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/545Interprogram communication where tasks reside in different layers, e.g. user- and kernel-space
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/54Indexing scheme relating to G06F9/54
    • G06F2209/543Local

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Communication Control (AREA)
  • Information Transfer Systems (AREA)

Description

本発明は、通信インタフェースを介して周辺装置と接続され、周辺装置との通信を行う通信制御装置、通信制御プログラム、通信ドライバ登録方法に関するものである。
近年のPOS(Point Of Sales system)端末は、OS(Operation)が動作する情報処理装置として構成される。また、このPOS端末は、通信インタフェースを備え、スキャナ、キーボード、モニタ等の周辺装置と接続され、このような周辺装置との通信を行う。従来のPOS端末と周辺装置との通信には、主に、RS−232C(Recommended Standard 232 version C)接続方式が用いられている。
ここで、従来のRS−232C接続方式を用いた通信システムについて説明する。
まず、従来のRS−232C接続方式を用いた通信システムの構成について説明する。
図5は、従来のRS−232C接続方式を用いた通信システムの構成と動作の一例を示すブロック図である。POS端末等である情報処理装置110は、ハードウェアとして、制御部111、RS−232Cインタフェース112を備える。また、周辺装置130は、ハードウェアとして、制御部131、RS−232Cインタフェース132を備える。情報処理装置110のRS−232Cインタフェース112と周辺装置130のRS−232Cインタフェース132は、RS−232Cケーブルを介して接続される。制御部111、制御部131は、CPU(Central Processing Unit)と記憶装置(メモリ等)で実現される。
また、制御部111は、ソフトウェアとして、OS(Operating System)151、周辺装置130とRS−232Cインタフェース112に対応するドライバ152、RS−232C接続用に設計されたアプリケーション153を備える。ドライバ152は、COMポートドライバ161を備える。COMポートドライバ161は、OS151により提供される機能である。
次に、従来のRS−232C接続方式を用いた通信システムの動作について説明する。
COMポートドライバ161は、予めRS−232Cインタフェース112に対応してOS151に登録され、COMポート番号が割り当てられる。この登録において、OS151は、起動時にCOMポートドライバ161を生成するように設定される。このCOMポート番号は、予めアプリケーション153において、周辺装置130と通信するためのCOMポート番号として設定される。
OS151は、その起動時に、予め登録されているCOMポートドライバ161を生成する(S111)。以後、COMポートドライバ161は、制御部111に常駐する。次に、アプリケーション153が、その起動時に、予め設定されたCOMポート番号に従ってCOMポートドライバ161のオープン処理を行うと(S112)、COMポートドライバ161は、アプリケーション153にCOMポート制御ハンドルを通知する(S113)。
次に、アプリケーション153が、COMポート制御ハンドルを用いてアクセスの要求を行うと(S121)、この要求を受け取ったCOMポートドライバ161は、RS−232Cインタフェース112を介して周辺装置130へのアクセスを行い(S122)、アクセスの結果である正常応答またはエラー応答をアプリケーション153に通知する(S123)。ここで、周辺装置130がRS−232Cインタフェース112から切断された状態である場合、COMポートドライバ161は、エラー応答をアプリケーション153に通知する。
また、近年、USB(Universal Serial Bus)の普及に伴い、POS端末等と周辺装置の接続においても、USB接続方式が用いられるようになった。
ここで、従来のUSB接続方式を用いた通信システムについて説明する。
まず、従来のUSB接続方式を用いた通信システムの構成について説明する。
図6は、従来のUSB接続方式を用いた通信システムの構成と動作の一例を示すブロック図である。POS端末等である情報処理装置210は、ハードウェアとして、制御部211、USBインタフェース212を備える。また、周辺装置230は、ハードウェアとして、制御部231、USBインタフェース232を備える。情報処理装置210のUSBインタフェース212と周辺装置230のUSBインタフェース232は、USBケーブルを介して接続される。制御部211と制御部231は、制御部111や制御部131と同様、CPUと記憶装置(メモリ等)で実現される。
また、制御部211は、ソフトウェアとして、図5と同様のOS151、周辺装置230とUSBインタフェース232に対応するドライバ252、USB接続用に設計されたアプリケーション253を備える。ドライバ252は、VCOMポート(仮想COMポート)ドライバ261を備える。VCOMポートドライバ261は、OS151により提供される機能を用いて実現され、USBインタフェース232をCOMポートと同様の仮想COMポートとして動作させる。なお、VCOMポートドライバ261は、周辺装置230に合わせて設計されても良い。
次に、従来のUSB接続方式を用いた通信システムの動作について説明する。
VCOMポートドライバ261は、ドライバ252のインストール時にOS151に登録される。この登録において、OS151は、USBインタフェース212に周辺装置230が接続されたときにVCOMポートドライバ261を生成するように設定される。
OS151は、USBインタフェース212の状態(インタフェース状態)として、周辺装置230が接続されている状態(接続状態)か切断されている状態(切断状態)かを認識し、その変化の度に、その変化を示すイベントを発生させる。アプリケーション253は、OS151からのイベントを監視することにより、周辺装置230が接続されているか否かを認識する。
周辺装置230がUSBインタフェース212に接続された場合、OS151は、接続状態になったことを示すイベントを発生させるとともに(S211)、予め登録されているVCOMポートドライバ261を生成する(S212)。このとき、OS151は、使用されていないCOMポート番号を仮想COMポート番号として、VCOMポートドライバ261に割り当てる。
アプリケーション253は、OS151からのイベントにより接続状態であることを認識した上で、VCOMポートドライバ261のオープン処理を行い(S231)、VCOMポートドライバ261はからVCOMポートドライバ制御ハンドルを取得する(S232)。
以後、アプリケーション253が、VCOMポートドライバ制御ハンドルを用いてアクセスの要求を行うと(S241)、この要求を受け取ったVCOMポートドライバ261は、USBインタフェース212を介して周辺装置230へのアクセスを行う(S242)。
また、周辺装置230がUSBインタフェース212から切断された場合、OS151は、切断状態になったことを示すイベントを発生させるとともに、VCOMポートドライバ261を削除する。アプリケーション253は、OS151からのイベントにより切断状態であることを認識すると、周辺装置230へのアクセスを行わない。
なお、本発明の関連ある従来技術として、USBインタフェースを備えた情報処理装置であって、USB以外のインタフェースを備えた周辺装置を接続することができる情報処理装置がある(例えば、特許文献1参照)。
特開平11−266315号公報
しかしながら、上述したRS−232C接続方式を用いた通信システムとUSB接続方式を用いた通信システムには、以下のような違いがある。
上述したRS−232C接続方式を用いる場合、アプリケーション153は、インタフェース状態を認識できず、インタフェース状態を意識せずに周辺装置130へのアクセスを行う。また、アクセスの結果は、COMポートドライバ161からアプリケーション153へ通知される。
一方、上述したUSB接続方式を用いる場合、アプリケーション253は、インタフェース状態を認識でき、インタフェース状態が接続状態であるときだけ、周辺機器230へのアクセスを行う。また、アクセスの結果は、VCOMポートドライバ261からアプリケーション253へ通知されない。もし、アプリケーション253が、インタフェース状態に関わらず周辺機器230へのアクセスを行うように変更されたとしても、切断状態になるとVCOMポートドライバ261はOS151により削除されてしまう。
従って、RS−232C接続方式の周辺装置用に設計されたソフトウェア資産をUSB接続方式の周辺機器に対応させるためには、ソフトウェア資産の大幅な変更が必要であった。
本発明は上述した問題点を解決するためになされたものであり、所定の接続方式に対応したアプリケーションと異なる接続方式の周辺装置との通信を可能にする通信制御装置、通信制御プログラム、通信ドライバ登録方法を提供することを目的とする。
上述した課題を解決するため、本発明は、通信インタフェースを介して周辺装置と接続され、該周辺装置との通信を行う通信制御装置であって、前記通信制御装置上で動作するアプリケーションが前記周辺装置との通信に用いるハンドルである第1ハンドルを該アプリケーションに供給する第1ハンドル供給部と、前記周辺装置が前記通信インタフェースに接続されたことが通知された場合、前記通信インタフェースのドライバである通信インタフェースドライバの操作に用いるハンドルである第2ハンドルを取得し、前記第1ハンドル供給部により供給された第1ハンドルを用いた要求を前記アプリケーションから渡された場合、前記第2ハンドルを用いて前記通信インタフェースドライバに該要求を渡す中継部とを備えたものである。
また、本発明に係る通信制御装置において、更に、前記周辺装置が前記通信インタフェースに接続されたことを前記中継部に通知する通信インタフェース状態通知部を備えることを特徴とするものである。
また、本発明に係る通信制御装置において、前記第1ハンドル供給部および前記中継部は、前記通信制御装置に常駐し、前記通信インタフェースドライバおよび前記通信インタフェース状態通知部は、前記周辺装置が前記通信インタフェースに接続されている間だけ、前記通信制御装置に存在することを特徴とするものである。
また、本発明は、コンピュータにより実行されるアプリケーションと該コンピュータの通信インタフェースに接続される周辺装置との間の通信の制御を該コンピュータに実行させる通信制御プログラムであって、前記アプリケーションが前記周辺装置との通信に用いるハンドルである第1ハンドルを該アプリケーションに渡す第1ハンドル供給ステップと、前記周辺装置が前記通信インタフェースに接続されたことが通知された場合、前記通信インタフェースのドライバである通信インタフェースドライバの操作に用いるハンドルである第2ハンドルを取得し、前記第1ハンドル供給ステップにより供給された第1ハンドルを用いた要求を前記アプリケーションから渡された場合、前記第2ハンドルを用いて前記通信インタフェースドライバに該要求を渡す中継ステップとをコンピュータに実行させるものである。
また、本発明は、コンピュータのOS上で実行されるアプリケーションと該コンピュータの通信インタフェースに接続される周辺装置との間の通信の制御を行うドライバを、前記OSに登録する通信ドライバ登録方法であって、前記アプリケーションが前記周辺装置との通信に用いるハンドルである第1ハンドルを該アプリケーションに渡す第1ハンドル供給ドライバと、前記周辺装置が前記通信インタフェースに接続されたことが通知された場合、前記通信インタフェースのドライバである通信インタフェースドライバの操作に用いるハンドルである第2ハンドルを取得し、前記第1ハンドル供給ドライバから供給された第1ハンドルを用いた要求を前記アプリケーションから渡された場合、前記第2ハンドルを用いて前記通信インタフェースドライバに該要求を渡す中継ドライバとを前記OSに登録し、前記OSが前記第1ハンドル供給ドライバと前記中継ドライバとを前記コンピュータに常駐させるように、前記OSを設定する第1ドライバ登録ステップと、前記通信インタフェースドライバを前記OSに登録し、前記周辺装置が前記通信インタフェースに接続された場合に前記OSが前記通信インタフェース状態通知ドライバを前記コンピュータに生成するように、前記OSを設定する第2ドライバ登録ステップとを実行するものである。
本発明によれば、所定の接続方式に対応したアプリケーションと異なる接続方式の周辺装置との通信を可能にする。
以下、本発明の実施の形態について図面を参照しつつ説明する。
本実施の形態においては、情報処理装置(通信制御装置、コンピュータ)と周辺装置とが通信を行う通信システムについて説明する。
まず、本実施の形態に係る通信システムの構成について説明する。
図1は、本実施の形態に係る通信システムにおける第1の構成と動作の一例を示すブロック図である。この通信システムは、情報処理装置310、図6と同様の周辺装置230を備える。情報処理装置310は、ハードウェアとして、制御部311、図6と同様のUSBインタフェース(通信インタフェース)212を備える。情報処理装置310のUSBインタフェース212と周辺装置230のUSBインタフェース232は、USBケーブルを介して接続される。この図において、太い点線は、ハードウェア同士の接続を表す。制御部311は、制御部111と同様、CPUと記憶装置(メモリ等)で実現される。
また、この図における制御部311のソフトウェア構成と動作は、情報処理装置310の起動時のものである。制御部311は、ソフトウェアとして、図5と同様のOS151、ドライバ352、図5と同様のRS−232C接続用のアプリケーション153を備える。また、OS151は、プラグアンドプレイの機能を持つ。ドライバ352は、情報処理装置310の起動時において、擬似VCOMポートドライバ371、擬似PnP(プラグアンドプレイ)フィルタ(ドライバ)372を備える。
図2は、本実施の形態に係る通信システムにおける第2の構成と動作の一例を示すブロック図である。この図において、図1と同一符号は図1に示された対象と同一又は相当物を示しており、ここでの説明を省略する。この図における制御部311のソフトウェア構成と動作は、周辺装置230がUSBインタフェース212に接続された状態のものである。ドライバ252は、図1の構成に加えて、図6と同様のVCOMポートドライバ261、PnPフィルタ(ドライバ)362を備える。
擬似VCOMポートドライバ371は、VCOMポートドライバ261と同様の機能を用いて実現されるが、OS151の起動とともに制御部311に常駐し、USBインタフェース212を用いた通信は行わない。PnPフィルタ362は、OS151により提供される機能を用いて実現され、VCOMポートドライバ261の生成時に生成され、擬似PnPフィルタ372との通信を行うものである。擬似PnPフィルタ372は、PnPフィルタ362と同様の機能を用いて実現されるが、OS151の起動とともに制御部311に常駐し、PnPフィルタ362との通信、擬似VCOMポートドライバ371またはVCOMポートドライバ261とアプリケーション153との間の中継、VCOMポートドライバ261の制御を行う。
次に、この通信システムの動作について説明する。
擬似VCOMポートドライバ371、擬似PnPフィルタ372、VCOMポートドライバ261、PnPフィルタ362は、ドライバ352のインストール時にOS151に登録される。この登録において、OS151は、起動時に擬似VCOMポートドライバ371と擬似PnPフィルタ372を生成するように設定される。また、この登録において、OS151は、使用されていないCOMポート番号を仮想COMポート番号として擬似VCOMポートドライバ371に割り当てる。この仮想COMポート番号は、予めアプリケーション153において、周辺装置230と通信するためのCOMポート番号として設定される。更に、この登録において、OS151は、USBインタフェース212に周辺装置230が接続されたときにVCOMポートドライバ261とPnPフィルタ362を生成するように設定される。
次に、本発明に係る通信システムの動作について説明する。
まず、図1を用いて説明する。OS151は、その起動時に、予め登録されている擬似VCOMポートドライバ371と擬似PnPフィルタ372を生成する(S311)。以後、擬似VCOMポートドライバ371と擬似PnPフィルタ372は、制御部311に常駐する。擬似PnPフィルタ372は、PnPフィルタ362からの通知を監視することにより、周辺装置230が接続されているか否かを認識する。
次に、アプリケーション153が、その起動時に、処理S112と同様にして、予め設定されたCOMポート番号に従って擬似VCOMポートドライバ371のオープン処理を行うと(S312,S313)、擬似VCOMポートドライバ371から擬似VCOMポート制御ハンドルを取得する(S314,S315)。このとき、擬似PnPフィルタ372は、アプリケーション153と擬似VCOMポートドライバ371の間の中継を行うことにより、擬似VCOMポート制御ハンドルを保持する。
次に、まず、図2を用いて説明する。周辺装置230がUSBインタフェース212に接続された場合、OS151は、予め登録されているVCOMポートドライバ261とPnPフィルタ362を生成する(S321)。PnPフィルタ362は、接続状態になったことを擬似PnPフィルタ372に通知する(S322)。PnPフィルタ362からの接続状態の通知を受けた擬似PnPフィルタ372は、インタフェース状態が接続状態であることを保持するとともに、VCOMポートドライバ261のオープン処理を行い(S331)、VCOMポートドライバ261からVCOMポートドライバ制御ハンドルを取得して保持し、保持している擬似VCOMポート制御ハンドルとの対応付けを行う(S332)。
図3は、本実施の形態に係る通信システムにおける第3の構成と動作の一例を示すブロック図である。この図において、図2と同一符号は図2に示された対象と同一又は相当物を示しており、ここでの説明を省略する。この図における制御部311のソフトウェア構成と動作は、アプリケーション153が周辺装置230にアクセスする状態のものである。
その後、擬似PnPフィルタ372が接続状態を保持している間に、アプリケーション153が、擬似VCOMポートドライバ制御ハンドルを用いてアクセスの要求を行うと(S341)、この要求を受け取った擬似PnPフィルタ372は、この擬似VCOMポートドライバ制御ハンドルに対応するVCOMポートドライバ制御ハンドルを用いてアクセスの要求を行う(S342)。この要求を受け取ったVCOMポートドライバ261は、周辺装置230へのアクセスを行い(S343)、アクセスの結果である正常応答またはエラー応答を擬似PnPフィルタ372に通知する(S344)。アクセスの結果を受け取った擬似PnPフィルタ372は、そのアクセスの結果をアプリケーション153に通知する(S345)。
図4は、本実施の形態に係る通信システムにおける第4の構成と動作の一例を示すブロック図である。この図において、図2と同一符号は図2に示された対象と同一又は相当物を示しており、ここでの説明を省略する。この図における制御部311のソフトウェア構成と動作は、周辺装置230がUSBインタフェース212から切断された状態のものである。
また、周辺装置230がUSBインタフェース212から切断された場合、PnPフィルタ362は、切断状態になったことを擬似PnPフィルタ372に通知し(図3、S352)、OS151は、VCOMポートドライバ261とPnPフィルタ362を削除する(S353)。PnPフィルタ362からの切断状態の通知を受けた擬似PnPフィルタ372は、インタフェース状態が切断状態であることを保持する。
その後、擬似PnPフィルタ372が切断状態を保持している間に、アプリケーション153が、擬似VCOMポートドライバ制御ハンドルを用いてアクセスの要求を行うと(S361)、擬似PnPフィルタ372は、アプリケーション153にエラー応答を通知する(S362)。
本実施の形態によれば、擬似VCOMポートドライバ371が常駐し、アプリケーション153が擬似VCOMポートドライバ371にオープン処理を行うことにより、アプリケーション153は、インタフェース状態に関わらず、同一のCOMポート番号、同一のハンドルを使い続けることができる。また、擬似PnPフィルタ372が、アプリケーション153によるオープン処理を擬似VCOMポートドライバ371に渡し、アプリケーション153によるアクセスの要求をVCOMポートドライバ261に渡すように中継を行うことにより、アプリケーション153に対して、接続状態中だけ存在するVCOMポートドライバ361の操作を、常駐する擬似VCOMポートドライバ371の操作に見せることができる。
従って、RS−232C接続用のアプリケーション153は、USB接続用の周辺装置230との通信を行うことができ、RS−232C接続用のアプリケーション資産を改造することなく利用することが可能になる。
なお、本実施の形態においては、アプリケーションが用いる接続方式をRS−232C、周辺装置が用いる接続方式をUSBとしたが、アプリケーションが別の第1の接続方式を用いても良いし、周辺装置が第1の接続方式と異なる第2の接続方式を用いても良い。このとき、VCOMポートドライバと擬似VCOMポートドライバは、第2の接続方式のインタフェースを第1の接続方式のインタフェースとして扱えるようにするドライバとして実現される。
また、本実施の形態に係る通信制御装置は、情報処理装置に容易に適用することができ、情報処理装置の性能をより高めることができる。ここで、情報処理装置には、例えばPOS端末、PC(Personal Computer)、PDA(Personal Digital Assistant)等が含まれ得る。
更に、通信制御装置を構成するコンピュータにおいて上述した各ステップを実行させるプログラムを、通信制御プログラムとして提供することができる。上述したプログラムは、コンピュータにより読取り可能な記録媒体に記憶させることによって、通信制御装置を構成するコンピュータに実行させることが可能となる。ここで、上記コンピュータにより読取り可能な記録媒体としては、ROMやRAM等のコンピュータに内部実装される内部記憶装置、CD−ROMやフレキシブルディスク、DVDディスク、光磁気ディスク、ICカード等の可搬型記憶媒体や、コンピュータプログラムを保持するデータベース、或いは、他のコンピュータ並びにそのデータベースや、更に回線上の伝送媒体をも含むものである。
なお、第1ハンドル供給部、第1ハンドル供給ステップ、第1ハンドル供給ドライバは、実施の形態における擬似VCOMポートドライバに対応する。また、中継部、中継ステップ、中継ドライバは、実施の形態における擬似PnPフィルタに対応する。また、通信インタフェースドライバは、実施の形態におけるVCOMポートドライバに対応する。また、通信インタフェース状態通知部、通信インタフェース状態通知ステップ、通信インタフェース状態通知ドライバは、実施の形態におけるPnPフィルタに対応する。
(付記1) 通信インタフェースを介して周辺装置と接続され、該周辺装置との通信を行う通信制御装置であって、
前記通信制御装置上で動作するアプリケーションが前記周辺装置との通信に用いるハンドルである第1ハンドルを該アプリケーションに供給する第1ハンドル供給部と、
前記周辺装置が前記通信インタフェースに接続されたことが通知された場合、前記通信インタフェースのドライバである通信インタフェースドライバの操作に用いるハンドルである第2ハンドルを取得し、前記第1ハンドル供給部により供給された第1ハンドルを用いた要求を前記アプリケーションから渡された場合、前記第2ハンドルを用いて前記通信インタフェースドライバに該要求を渡す中継部と
を備える通信制御装置。
(付記2) 付記1に記載の通信制御装置において、
更に、前記周辺装置が前記通信インタフェースに接続されたことを前記中継部に通知する通信インタフェース状態通知部を備えることを特徴とする通信制御装置。
(付記3) 付記2に記載の通信制御装置において、
前記通信インタフェース状態通知部は、前記周辺装置が前記通信インタフェースから切断されたことを前記中継部に通知することを特徴とする通信制御装置。
(付記4) 付記3に記載の通信制御装置において、
前記中継部は、前記周辺装置が前記通信インタフェースから切断されたことを通知された後、前記第1ハンドル供給部により供給された第1ハンドルを用いた要求を前記アプリケーションから渡された場合、前記アプリケーションにエラー応答を通知することを特徴とする通信制御装置。
(付記5) 付記2乃至付記4のいずれかに記載の通信制御装置において、
前記第1ハンドル供給部および前記中継部は、前記通信制御装置に常駐し、
前記通信インタフェースドライバおよび前記通信インタフェース状態通知部は、前記周辺装置が前記通信インタフェースに接続されている間だけ、前記通信制御装置に存在することを特徴とする通信制御装置。
(付記6) 付記2乃至付記5のいずれかに記載の通信制御装置において、
前記中継部および前記通信インタフェース状態通知部は、プラグアンドプレイフィルタにより実現されることを特徴とする通信制御装置。
(付記7) 付記1乃至付記6のいずれかに記載の通信制御装置において、
前記通信インタフェースドライバは、前記通信インタフェースの通信方式である第1の通信方式と異なる第2の通信方式を用いた仮想通信インタフェースを提供するものであり、
前記第1ハンドル供給部は、前記通信インタフェースドライバと同じ構成により実現され、前記通信インタフェースの制御を行わないことを特徴とする通信制御装置。
(付記8) 付記1乃至付記7のいずれかに記載の通信制御装置において、
前記通信インタフェースは、USBインタフェースであり、
前記通信インタフェースドライバは、前記USBインタフェースを仮想のCOMポートとして提供する仮想COMポートドライバであり、
前記アプリケーションは、該COMポートを用いて通信を行うことを特徴とする通信制御装置。
(付記9) コンピュータにより実行されるアプリケーションと該コンピュータの通信インタフェースに接続される周辺装置との間の通信の制御を該コンピュータに実行させる通信制御プログラムであって、
前記アプリケーションが前記周辺装置との通信に用いるハンドルである第1ハンドルを該アプリケーションに渡す第1ハンドル供給ステップと、
前記周辺装置が前記通信インタフェースに接続されたことが通知された場合、前記通信インタフェースのドライバである通信インタフェースドライバの操作に用いるハンドルである第2ハンドルを取得し、前記第1ハンドル供給ステップにより供給された第1ハンドルを用いた要求を前記アプリケーションから渡された場合、前記第2ハンドルを用いて前記通信インタフェースドライバに該要求を渡す中継ステップと
をコンピュータに実行させる通信制御プログラム。
(付記10) 付記9に記載の通信制御プログラムにおいて、
更に、前記第1ハンドル供給ステップと前記中継ステップの間に、前記周辺装置が前記通信インタフェースに接続されたことを通知する通信インタフェース状態通知ステップをコンピュータに実行させることを特徴とする通信制御プログラム。
(付記11) 付記10に記載の通信制御プログラムにおいて、
前記通信インタフェース状態通知ステップは、前記周辺装置が前記通信インタフェースから切断されたことを通知することを特徴とする通信制御プログラム。
(付記12) 付記11に記載の通信制御プログラムにおいて、
前記中継ステップは、前記周辺装置が前記通信インタフェースから切断されたことを通知された後、前記第1ハンドル供給ステップにより供給された第1ハンドルを用いた要求を前記アプリケーションから渡された場合、前記アプリケーションにエラー応答を通知することを特徴とする通信制御プログラム。
(付記13) 付記10乃至付記12のいずれかに記載の通信制御プログラムにおいて、
前記第1ハンドル供給ステップを実現するためのドライバと前記中継ステップを実現するためのドライバは、前記コンピュータに常駐し、
前記通信インタフェースドライバおよび前記通信インタフェース状態通知ステップを実現するためのドライバは、前記周辺装置が前記通信インタフェースに接続されている間だけ、前記コンピュータに存在することを特徴とする通信制御プログラム。
(付記14) 付記10乃至付記13のいずれかに記載の通信制御プログラムにおいて、
前記中継ステップおよび前記通信インタフェース状態通知ステップは、プラグアンドプレイフィルタにより実現されることを特徴とする通信制御プログラム。
(付記15) 付記9乃至付記14のいずれかに記載の通信制御プログラムにおいて、
前記通信インタフェースドライバは、前記通信インタフェースの通信方式である第1の通信方式と異なる第2の通信方式を用いた仮想通信インタフェースを提供するものであり、
前記第1ハンドル供給ステップは、前記通信インタフェースドライバと同じ構成により実現され、前記通信インタフェースの制御を行わないことを特徴とする通信制御プログラム。
(付記16) 付記9乃至付記15のいずれかに記載の通信制御プログラムにおいて、
前記通信インタフェースは、USBインタフェースであり、
前記通信インタフェースドライバは、前記USBインタフェースを仮想のCOMポートとして提供する仮想COMポートドライバであり、
前記アプリケーションは、該COMポートを用いて通信を行うことを特徴とする通信制御プログラム。
(付記17) コンピュータのOS上で実行されるアプリケーションと該コンピュータの通信インタフェースに接続される周辺装置との間の通信の制御を行うドライバを、前記OSに登録する通信ドライバ登録方法であって、
前記アプリケーションが前記周辺装置との通信に用いるハンドルである第1ハンドルを該アプリケーションに渡す第1ハンドル供給ドライバと、前記周辺装置が前記通信インタフェースに接続されたことが通知された場合、前記通信インタフェースのドライバである通信インタフェースドライバの操作に用いるハンドルである第2ハンドルを取得し、前記第1ハンドル供給ドライバから供給された第1ハンドルを用いた要求を前記アプリケーションから渡された場合、前記第2ハンドルを用いて前記通信インタフェースドライバに該要求を渡す中継ドライバとを前記OSに登録し、前記OSが前記第1ハンドル供給ドライバと前記中継ドライバとを前記コンピュータに常駐させるように、前記OSを設定する第1ドライバ登録ステップと、
前記通信インタフェースドライバを前記OSに登録し、前記周辺装置が前記通信インタフェースに接続された場合に前記OSが前記通信インタフェース状態通知ドライバを前記コンピュータに生成するように、前記OSを設定する第2ドライバ登録ステップと
を実行する通信ドライバ登録方法。
(付記18) 付記17に記載の通信ドライバ登録方法において、
前記第2ドライバ登録ステップは更に、前記周辺装置が前記通信インタフェースに接続されたことを前記中継ドライバに通知する通信インタフェース状態通知ドライバを前記OSに登録し、前記周辺装置が前記通信インタフェースに接続された場合に前記OSが前記通信インタフェース状態通知ドライバを前記コンピュータに生成するように、前記OSを設定することを特徴とする通信ドライバ登録方法。
(付記19) 付記18に記載の通信ドライバ登録方法において、
前記中継ドライバおよび前記通信インタフェース状態通知ドライバは、プラグアンドプレイフィルタにより実現されることを特徴とする通信ドライバ登録方法。
(付記20) 付記18または付記19に記載の通信ドライバ登録方法において、
前記通信インタフェースドライバは、前記通信インタフェースの通信方式である第1の通信方式と異なる第2の通信方式を用いた仮想通信インタフェースを提供するものであり、
前記第1ハンドル供給ドライバは、前記通信インタフェースドライバと同じ構成により実現され、前記通信インタフェースの制御を行わないことを特徴とする通信ドライバ登録方法。
本実施の形態に係る通信システムにおける第1の構成と動作の一例を示すブロック図である。 本実施の形態に係る通信システムにおける第2の構成と動作の一例を示すブロック図である。 本実施の形態に係る通信システムにおける第3の構成と動作の一例を示すブロック図である。 本実施の形態に係る通信システムにおける第4の構成と動作の一例を示すブロック図である。 従来のRS−232C接続方式を用いた通信システムの構成と動作の一例を示すブロック図である。 従来のUSB接続方式を用いた通信システムの構成と動作の一例を示すブロック図である。
符号の説明
310 情報処理装置、230 周辺装置、311,231 制御部、212,232 USBインタフェース、151 OS、352 ドライバ、153 アプリケーション、371 擬似VCOMポートドライバ、372 擬似PnPフィルタ、261 VCOMポートドライバ、362 PnPフィルタ。

Claims (4)

  1. 通信インタフェースを介して周辺装置と接続され、該周辺装置との通信を行う通信制御装置であって、
    前記周辺装置が前記通信インタフェースへ接続された場合、前記通信インタフェースのドライバである通信インタフェースドライバと、前記周辺装置が前記通信インタフェースへ接続されたことを示す通知を送信する通信インタフェース状態通知部とを生成するOSと、
    前記通信制御装置上で動作するアプリケーションにより仮想通信インタフェースのドライバのオープン処理がされた場合、前記アプリケーションが前記周辺装置へのアクセスの要求を行うためのハンドルを示す第1ハンドルを、前記アプリケーションに供給する第1ハンドル供給部と、
    前記アプリケーションと前記第1ハンドルの間の中継を行うことにより前記第1ハンドルを取得し、前記通知を受信した場合、前記通信インタフェースドライバのオープン処理を行い、前記通信インタフェースドライバの操作に用いるハンドルを示す第2ハンドルを前記通信インタフェースドライバから取得し、前記第1ハンドル前記第2ハンドルとの対応付けを行い、前記アプリケーションが前記第1ハンドルを用いて前記周辺装置へのアクセスの要求を送信した場合、前記第1ハンドルに対応する前記第2ハンドルを用いて前記通信インタフェースドライバが前記周辺装置へアクセスを行うために前記通信インタフェースドライバへ前記要求を送信する中継部と
    を備える通信制御装置。
  2. 請求項1に記載の通信制御装置において、
    前記第1ハンドル供給部および前記中継部は、前記通信制御装置に常駐し、
    前記通信インタフェースドライバおよび前記通信インタフェース状態通知部は、前記周辺装置が前記通信インタフェースに接続されている間だけ、前記通信制御装置に存在することを特徴とする通信制御装置。
  3. コンピュータにより実行されるアプリケーションと該コンピュータの通信インタフェースに接続される周辺装置との間の通信の制御を該コンピュータに実行させる通信制御プログラムであって、
    前記周辺装置が前記通信インタフェースへ接続された場合、前記通信インタフェースのドライバである通信インタフェースドライバと、前記周辺装置が前記通信インタフェースへ接続されたことを示す通知を送信する通信インタフェース状態通知部とを生成し、
    前記通信制御装置上で動作するアプリケーションにより仮想通信インタフェースのドライバのオープン処理がされた場合、前記アプリケーションが前記周辺装置へのアクセスの要求を行うためのハンドルを示す第1ハンドルを、前記コンピュータ上で動作するアプリケーションに供給し、
    前記アプリケーションと前記第1ハンドルの間の中継を行うことにより前記第1ハンドルを取得し、前記通知を受信した場合、前記通信インタフェースドライバのオープン処理を行い、前記通信インタフェースドライバの操作に用いるハンドルを示す第2ハンドルを前記通信インタフェースドライバから取得し、前記第1ハンドル前記第2ハンドルとの対応付けを行い、前記アプリケーションが前記第1ハンドルを用いて前記周辺装置へのアクセスの要求を送信した場合、前記第1ハンドルに対応する前記第2ハンドルを用いて前記通信インタフェースドライバが前記周辺装置へアクセスを行うために前記通信インタフェースドライバへ前記要求を送信する
    ことをコンピュータに実行させる通信制御プログラム。
  4. コンピュータのOS上で実行されるアプリケーションと該コンピュータの通信インタフェースに接続される周辺装置との間の通信の制御を行うドライバを、前記OSに登録する通信ドライバ登録方法であって、
    前記周辺装置が通信インタフェースへ接続された場合、前記OSが前記通信インタフェースのドライバである通信インタフェースドライバと、前記周辺装置が前記通信インタフェースへ接続されたことを示す通知を送信する通信インタフェース状態通知ドライバとを前記コンピュータに生成するように、前記OSを設定し、
    前記通信制御装置上で動作するアプリケーションにより仮想通信インタフェースのドライバのオープン処理がされた場合、前記アプリケーションが前記周辺装置へのアクセスの要求を行うためのハンドルを示す第1ハンドルを前記アプリケーションに供給する第1ハンドル供給ドライバと、前記アプリケーションと前記第1ハンドルの間の中継を行うことにより前記第1ハンドルを取得し、前記通知を受信した場合、前記通信インタフェースドライバのオープン処理を行い、前記通信インタフェースドライバの操作に用いるハンドルを示す第2ハンドルを前記通信インタフェースドライバから取得し、前記第1ハンドル前記第2ハンドルとの対応付けを行い、前記アプリケーションが前記第1ハンドルを用いて前記周辺装置へのアクセスの要求を送信した場合、前記第1ハンドルに対応する前記第2ハンドルを用いて前記通信インタフェースドライバが前記周辺装置へアクセスを行うために前記通信インタフェースドライバへ前記要求を送信する中継ドライバとを前記OSに登録し、前記OSが第1ハンドル供給ドライバと前記中継ドライバとを前記コンピュータに常駐させるように、前記OSを設定する
    ことを実行する通信ドライバ登録方法。
JP2006092923A 2006-03-30 2006-03-30 通信制御装置、通信制御プログラム、通信ドライバ登録方法 Expired - Fee Related JP4897331B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2006092923A JP4897331B2 (ja) 2006-03-30 2006-03-30 通信制御装置、通信制御プログラム、通信ドライバ登録方法
US11/510,559 US20070245359A1 (en) 2006-03-30 2006-08-28 Communication control apparatus, communication control program, and communication driver registration method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006092923A JP4897331B2 (ja) 2006-03-30 2006-03-30 通信制御装置、通信制御プログラム、通信ドライバ登録方法

Publications (2)

Publication Number Publication Date
JP2007265328A JP2007265328A (ja) 2007-10-11
JP4897331B2 true JP4897331B2 (ja) 2012-03-14

Family

ID=38606366

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006092923A Expired - Fee Related JP4897331B2 (ja) 2006-03-30 2006-03-30 通信制御装置、通信制御プログラム、通信ドライバ登録方法

Country Status (2)

Country Link
US (1) US20070245359A1 (ja)
JP (1) JP4897331B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4333764B2 (ja) * 2007-03-28 2009-09-16 ブラザー工業株式会社 デバイス制御システム
JP5491548B2 (ja) * 2012-01-31 2014-05-14 株式会社ユニテックス 情報処理装置、情報処理システム、情報処理方法、プログラム及び記録媒体
WO2013115282A1 (ja) * 2012-01-31 2013-08-08 株式会社ユニテックス インタフェース変換装置及びインタフェース変換方法、情報処理装置、情報処理システム、情報処理方法、プログラム及び記録媒体
JP7511386B2 (ja) 2020-05-27 2024-07-05 三菱電機株式会社 空気調和機コントローラ、制御機器、及び制御プログラム

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5995964A (en) * 1997-12-10 1999-11-30 Nihon Unisys, Ltd. Managing first and second handles used in communication with an apparatus connected to a network
US6625761B1 (en) * 2000-06-13 2003-09-23 Cypress Semiconductor Corp. Fault tolerant USB method and apparatus
US20020065950A1 (en) * 2000-09-26 2002-05-30 Katz James S. Device event handler
US6651111B2 (en) * 2001-02-16 2003-11-18 Microsoft Corporation System and method for managing a serial port
US6931465B1 (en) * 2001-03-31 2005-08-16 Cypress Semiconductor Corp. Intelligent, extensible SIE peripheral device
JP2002351854A (ja) * 2001-05-30 2002-12-06 Omron Corp プログラム実行装置および携帯型情報処理装置
TW578052B (en) * 2002-06-05 2004-03-01 Ene Technology Inc The virtual communication port

Also Published As

Publication number Publication date
US20070245359A1 (en) 2007-10-18
JP2007265328A (ja) 2007-10-11

Similar Documents

Publication Publication Date Title
JP4826828B2 (ja) 出力システム、ネットワークデバイス、出力制御プログラムおよび出力方法
JP4346853B2 (ja) 電子装置及びその制御方法
US8032756B2 (en) Information processing system
EP1786167A2 (en) Information processing system and method of assigning information processing device
JP3992721B2 (ja) 情報処理装置およびプロセス制御方法
JP4897331B2 (ja) 通信制御装置、通信制御プログラム、通信ドライバ登録方法
TW200907804A (en) Method for updating BIOS and computer and system using the same
JP2008518327A (ja) チップセットの起動
US20050209871A1 (en) Method and apparatus for remotely providing driver information
CN102110208A (zh) 信息处理装置及信息处理装置的控制方法
WO2004077287A1 (ja) 印刷制御プログラムを格納した電子計算機、そのプログラム及びプログラムの記録媒体
JP5277581B2 (ja) 処理装置およびプログラム
US8539223B2 (en) Network configuration setting generation system, device, and method
JP2003337784A (ja) 制御システム及びusbデバイス
JP4757482B2 (ja) 記憶装置及び記憶装置制御方法
JP4663688B2 (ja) 端末
JP6910166B2 (ja) 認証仲介装置及び認証仲介プログラム
US20050050232A1 (en) Information processing apparatus, keyboard controller, and method of key input determination
JP2004213436A (ja) ソフトウェアライセンス認証システム
JP2009048386A (ja) 通信システム、通信方法、通信制御プログラムおよびこのプログラムを記憶した記録媒体
JP2002370425A (ja) 印刷制御装置、印刷システム、印刷制御方法、プログラム、及び記憶媒体
JP2006018545A (ja) Usbモジュール
JP2006059134A (ja) 機能強化プログラム、バンドルソフト機能強化方法及び装置
TWI767113B (zh) 使用實體載具儲存數位憑證以進行線上交易之系統及方法
JP2010081359A (ja) 携帯通信装置、画像処理装置、画像処理システム、携帯通信プログラム及び画像処理プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080918

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20101221

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20110215

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110221

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20110216

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110510

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110711

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20110830

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20111128

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20111205

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20111220

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20111222

R150 Certificate of patent or registration of utility model

Ref document number: 4897331

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150106

Year of fee payment: 3

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees