JP2013186832A - デバイスエミュレータ装置、デバイスエミュレーション方法、及び通信サービスプログラム - Google Patents
デバイスエミュレータ装置、デバイスエミュレーション方法、及び通信サービスプログラム Download PDFInfo
- Publication number
- JP2013186832A JP2013186832A JP2012053640A JP2012053640A JP2013186832A JP 2013186832 A JP2013186832 A JP 2013186832A JP 2012053640 A JP2012053640 A JP 2012053640A JP 2012053640 A JP2012053640 A JP 2012053640A JP 2013186832 A JP2013186832 A JP 2013186832A
- Authority
- JP
- Japan
- Prior art keywords
- request
- emulator
- driver
- communication service
- application
- 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.)
- Granted
Links
Images
Landscapes
- Debugging And Monitoring (AREA)
- Stored Programmes (AREA)
Abstract
【課題】デバイスエミュレータの性能を向上させる。
【解決手段】実施形態によれば、デバイスエミュレータ装置は、デバイスを使用するアプリケーションと、前記アプリケーションの制御のもとで、前記デバイスを制御するデバイスドライバと、前記デバイスをエミュレーションするデバイスエミュレータと、通信サービス手段とを有する。通信サービス手段は、前記デバイスドライバから前記デバイスへのリクエストを取得し、前記リクエストを前記デバイスエミュレータへ転送するかどうかを判別し、転送しないと判別した場合には、前記リクエストに応じた応答を前記デバイスドライバに返し、転送すると判別した場合に、前記リクエストを前記デバイスエミュレータに転送して、前記デバイスエミュレータからのリクエスト処理の結果を受信して前記ドライバドライバへ返信する。
【選択図】図1
Description
図1は、本実施形態におけるデバイスエミュレータ装置10の構成を示すブロック図である。デバイスエミュレータ装置10は、制御装置A12と制御装置B14とがネットワーク16を介して接続されて構成される。本実施形態におけるデバイスエミュレータ装置10は、各種のデバイスを制御するアプリケーションプログラムを開発するために使用される装置である。例えば、POS(Point of Sales)システムで使用されるアプリケーションプログラムは、プリンタ、スキャナ、ディスプレイ等のデバイスを制御する。デバイスエミュレータ装置10は、アプリケーションプログラムからデバイス(プリンタ、スキャナ、ディスプレイ等)へのリクエストに応じたリクエスト処理をして、実際のデバイスと同様の処理結果を応答するデバイスエミュレータアプリケーションを実行する。
設定ユーティリティ27は、例えばユーザからの指示に応じて、通信サービス制御ファイル26に設定されたデータを変更するための処理をする。設定ユーティリティ27は、例えばユーザによる入力装置への操作に応じて、アプリケーション20からデバイスへ出力される各リクエストについて、デバイスエミュレータ30に転送するか否か、デバイスエミュレータ30に転送しない場合に通信サービス部24によってリクエストに対して応答させるデータ(応答データ)などを設定することができる。応答データには、例えばデバイスのステータスを示すデータがある。例えば、プリンタについては、電源オン/オフ、カバーオープン有無、インク残量有無などの各種ステータスが応答データとして設定される。
通信サービス制御ファイル26には、複数のデバイスのそれぞれに対するリクエストについて、デバイスエミュレータ30にリクエストを転送するか、あるいはデバイスエミュレータ30にリクエストを転送することなく、通信サービス部24によって応答するかを示すデータが設定される。
図4のS1に示すように、アプリケーション20(デバイスドライバ21)において頻繁に発生するリクエスト(ステータスの送信要求など)については、通信サービス部24が処理結果を応答することで、ネットワーク16への負荷を発生させない。また、アプリケーション20(デバイスドライバ21)のレスポンス待ちも小さくすることができる。
制御装置B14では、エミュレータ制御ユーティリティ31を実行することで、ユーザの入力装置への操作によって、デバイスエミュレータ30がエミュレーションするデバイスのステータスを変更することができる。例えば、エミュレータ制御ユーティリティ31は、デバイスエミュレータ30がエミュレーションする何れかのデバイスをユーザに選択させ、そのデバイスのステータスの指定を受け付けてデバイスエミュレータ30に通知する。デバイスエミュレータ30は、エミュレータ制御ユーティリティ31からの通知に応じて、選択されたデバイスのステータスを変更する。
デバイスエミュレータ30においてステータス変更S6があると、通信サービス部24に対して処理結果S7が送信される。通信サービス部24は、ステータスの変更に応じて通信サービス制御ファイル26のデバイスのステータスを示す応答データを更新する。通信サービス部24は、アプリケーション20(デバイスドライバ21)からデバイスのステータス送信要求S8を受信すると、このリクエストに対して、変更済みのステータスを示す応答データをアプリケーション20(デバイスドライバ21)に返送する。
通信サービス部24は、アプリケーション20(デバイスドライバ21)からのリクエストをデバイスエミュレータ30に転送すると判別した場合(ステップC20、Yes)、前述と同様にして、アプリケーション20にリクエストを転送して(ステップC23)、このリクエスト処理結果を受信する。
通信サービス部24は、定期的に発生されるリクエストの受信回数が所定回数を超過し、リクエストを転送すると判別すると(S10)、デバイスエミュレータ30に対してリクエストS11を転送する。デバイスエミュレータ30は、リクエストに対するリクエスト処理を実行して、処理結果S12を通信サービス部24に返送する。この時、デバイスエミュレータ30は、エミュレータ制御ユーティリティ31によってデバイスのステータスが変更されていた場合には、変更後のステータスを返送することになる。従って、図4中のステータス変更S4のように、ステータス変更後に直ちに処理結果S7を送信しなくても良い。
図1に示すデバイスエミュレータ装置10は、制御装置A12と制御装置B14とがネットワーク16によって接続されて構成されているが、図7に示すデバイスエミュレータ装置18は、1つの制御装置(コンピュータ)によって実現されている。なお、図7では、図1と同一の構成部分については同一符号を付している。
このようにして、1つの制御装置によってもデバイスエミュレータ装置18を実現することが可能である。
Claims (9)
- デバイスを使用するアプリケーションと、
前記アプリケーションの制御のもとで、前記デバイスを制御するデバイスドライバと、
前記デバイスをエミュレーションするデバイスエミュレータとを有するデバイスエミュレータ装置であって、
前記デバイスドライバから前記デバイスへのリクエストを取得し、前記リクエストを前記デバイスエミュレータへ転送するかどうかを判別し、転送しないと判別した場合には、前記リクエストに応じた応答を前記デバイスドライバに返し、転送すると判別した場合に、前記リクエストを前記デバイスエミュレータに転送して、前記デバイスエミュレータからのリクエスト処理の結果を受信して前記ドライバドライバへ返信する通信サービス手段を具備するデバイスエミュレータ装置。 - 前記デバイスドライバから前記ドライバに対して出力されるリクエストを取得して、前記通信サービス手段に受け渡すフィルタドライバをさらに具備し、
前記通信サービス手段は、前記フィルタドライバを通じて前記リクエストを取得する請求項1記載のデバイスエミュレータ装置。 - 前記デバイスドライバからの前記リクエストを前記デバイスエミュレータへ転送するか否かを示すデータを記録する記録手段をさらに具備し、
前記通信サービス手段は、前記記録手段に記録されたデータをもとに、前記リクエストを前記デバイスエミュレータへ転送するかどうかを判別する請求項1記載のデバイスエミュレータ装置。 - 前記記録手段に記録されるデータは、前記デバイスに対して定期的に発生するリクエストを前記デバイスエミュレータへ転送しないことを示す請求項3記載のデバイスエミュレータ装置。
- 前記通信サービス手段は、前記記録手段に記録されたデータをもとに前記デバイスエミュレータへ転送しないと判別された定期的に発生する前記リクエストの一部を前記デバイスエミュレータへ転送する請求項4記載のデバイスエミュレータ装置。
- 前記デバイスエミュレータによりエミュレーションされるデバイスの状態を変更する変更手段をさらに具備し、
前記デバイスエミュレータは、前記変更手段により前記デバイスの状態が変更された場合に、前記通信サービス手段に変更後の前記デバイスの状態を通知する請求項1記載のデバイスエミュレータ装置。 - 第1の制御装置と第2の制御装置とがネットワークを介して接続され、
前記第1の制御装置は、前記アプリケーション、前記デバイスドライバ、及び前記通信サービス手段とを有し、
前記第2の制御装置は、前記デバイスエミュレータを有した請求項1記載のデバイスエミュレータ装置。 - デバイスを使用するアプリケーションと、
前記アプリケーションの制御のもとで、前記デバイスを制御するデバイスドライバと、
前記デバイスをエミュレーションするデバイスエミュレータとを有するデバイスエミュレータ装置におけるデバイスエミュレーション方法であって、
前記デバイスドライバから前記デバイスへのリクエストを取得し、前記リクエストを前記デバイスエミュレータへ転送するかどうかを判別し、転送しないと判別した場合には、前記リクエストに応じた応答を前記デバイスドライバに返し、転送すると判別した場合に、前記リクエストを前記デバイスエミュレータに転送して、前記デバイスエミュレータからのリクエスト処理の結果を受信して前記ドライバドライバへ返信するデバイスエミュレーション方法。 - デバイスを使用するアプリケーションと、
前記アプリケーションの制御のもとで、前記デバイスを制御するデバイスドライバと、
前記デバイスをエミュレーションするデバイスエミュレータとを実行するコンピュータを、
前記デバイスドライバから前記デバイスへのリクエストを取得し、前記リクエストを前記デバイスエミュレータへ転送するかどうかを判別し、転送しないと判別した場合には、前記リクエストに応じた応答を前記デバイスドライバに返し、転送すると判別した場合に、前記リクエストを前記デバイスエミュレータに転送して、前記デバイスエミュレータからのリクエスト処理の結果を受信して前記ドライバドライバへ返信する通信サービス手段として機能させるための通信サービスプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012053640A JP5509237B2 (ja) | 2012-03-09 | 2012-03-09 | デバイスエミュレータ装置、デバイスエミュレーション方法、及び通信サービスプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012053640A JP5509237B2 (ja) | 2012-03-09 | 2012-03-09 | デバイスエミュレータ装置、デバイスエミュレーション方法、及び通信サービスプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2013186832A true JP2013186832A (ja) | 2013-09-19 |
JP5509237B2 JP5509237B2 (ja) | 2014-06-04 |
Family
ID=49388162
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012053640A Expired - Fee Related JP5509237B2 (ja) | 2012-03-09 | 2012-03-09 | デバイスエミュレータ装置、デバイスエミュレーション方法、及び通信サービスプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5509237B2 (ja) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10133914A (ja) * | 1996-11-01 | 1998-05-22 | Nippon Steel Corp | 計算機システム及びデバイス入出力シミュレータ |
JP2011044127A (ja) * | 2009-07-24 | 2011-03-03 | Ricoh Co Ltd | 情報処理装置、外部装置、情報処理システム、情報処理方法、及びプログラム |
-
2012
- 2012-03-09 JP JP2012053640A patent/JP5509237B2/ja not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10133914A (ja) * | 1996-11-01 | 1998-05-22 | Nippon Steel Corp | 計算機システム及びデバイス入出力シミュレータ |
JP2011044127A (ja) * | 2009-07-24 | 2011-03-03 | Ricoh Co Ltd | 情報処理装置、外部装置、情報処理システム、情報処理方法、及びプログラム |
Also Published As
Publication number | Publication date |
---|---|
JP5509237B2 (ja) | 2014-06-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9584679B2 (en) | Information processing apparatus, control method therefor, and medium | |
CN114253740A (zh) | 基于Linux内核的协议栈数据传输方法及装置 | |
JP2006196014A5 (ja) | ||
US11005927B2 (en) | Server system, method for controlling server system, and storage medium | |
US8984126B2 (en) | Service collaboration device, service collaboration method, and computer-readable recording medium | |
JP5986016B2 (ja) | 情報処理装置及びプログラム | |
US11886924B2 (en) | Methods and apparatus to handle dependencies associated with resource deployment requests | |
US20160156704A1 (en) | Exchange of information between processing servers | |
KR20200034572A (ko) | 요청 처리 방법 및 장치 | |
JP2017068480A (ja) | ジョブ管理方法、ジョブ管理装置及びプログラム | |
US9691010B2 (en) | Information processing apparatus, distributed printing system, and method of controlling printing | |
US9621623B2 (en) | Client, server, management system, and method of the same | |
JP5509237B2 (ja) | デバイスエミュレータ装置、デバイスエミュレーション方法、及び通信サービスプログラム | |
JP2008198126A (ja) | データ通信システム、データ通信プログラム、データ受信装置、データ受信プログラム、及び、データ受信方法 | |
JP2007221364A (ja) | コントローラ、制御システム及び制御装置の拡張方法 | |
US10999474B2 (en) | Electronic device, control method of electronic device, information processing system, and storage medium | |
US20180329657A1 (en) | Communication apparatus, control method, and non-transitory computer-readable storage medium | |
EP3893111B1 (en) | Information processing apparatus, and method of controlling communication between container and process in the information processing apparatus | |
US20110231842A1 (en) | Virtual calculating machine system, virtual calculating machine control apparatus and virtual calculating machine control method | |
JP5515520B2 (ja) | サーバ装置及び画面データの送信方法 | |
US9697064B2 (en) | System, system control method, and storage medium | |
US9354834B2 (en) | Printing with virtual printer | |
JP7180207B2 (ja) | 提供装置、処理システム及び通信方法 | |
JPWO2013105186A1 (ja) | サービスレベル管理装置、プログラム、及び、方法 | |
JP2020190765A (ja) | 転送装置、情報処理装置、および、データ転送方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20131205 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20131212 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20131219 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20131226 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20140109 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20140217 |
|
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: 20140225 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20140324 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5509237 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |