JP5835291B2 - 通信装置およびそのカスタマイズ方法ならびにコンピュータプログラム - Google Patents

通信装置およびそのカスタマイズ方法ならびにコンピュータプログラム Download PDF

Info

Publication number
JP5835291B2
JP5835291B2 JP2013183957A JP2013183957A JP5835291B2 JP 5835291 B2 JP5835291 B2 JP 5835291B2 JP 2013183957 A JP2013183957 A JP 2013183957A JP 2013183957 A JP2013183957 A JP 2013183957A JP 5835291 B2 JP5835291 B2 JP 5835291B2
Authority
JP
Japan
Prior art keywords
controller
program
data
response
pattern
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
JP2013183957A
Other languages
English (en)
Other versions
JP2015053537A (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.)
Konica Minolta Inc
Original Assignee
Konica Minolta Inc
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 Konica Minolta Inc filed Critical Konica Minolta Inc
Priority to JP2013183957A priority Critical patent/JP5835291B2/ja
Priority to US14/477,147 priority patent/US9977486B2/en
Priority to CN201410449784.6A priority patent/CN104427186B/zh
Publication of JP2015053537A publication Critical patent/JP2015053537A/ja
Application granted granted Critical
Publication of JP5835291B2 publication Critical patent/JP5835291B2/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
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/325Power saving in peripheral device
    • G06F1/3284Power saving in printer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/00885Power supply means, e.g. arrangements for the control of power supply to the apparatus or components thereof
    • H04N1/00888Control thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/3293Power saving characterised by the action undertaken by switching to a less power-consuming processor, e.g. sub-CPU
    • 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/1237Print job management
    • G06F3/1253Configuration of print job parameters, e.g. using UI at the client
    • G06F3/1256User feedback, e.g. print preview, test print, proofing, pre-flight checks
    • 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/1237Print job management
    • G06F3/1273Print job history, e.g. logging, accounting, tracking
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Facsimiles In General (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)
  • Power Sources (AREA)
  • Stored Programmes (AREA)
  • Information Transfer Between Computers (AREA)

Description

本発明は、通信を行う装置における省電力の技術に関する。
近年、様々な機器の省電力化が進められている。その技術の1つとして、機器の一部のハードウェアへの電力の供給を一時的に制限する技術が、普及している。
コピー、PCプリント、ファックス、スキャナ、およびボックスなどの機能を集約した画像形成装置(一般に「MFP」または「複合機」とも呼ばれる。)においても、このような技術が採用されている。
しかし、電力の供給を制限すると、運用に支障を来すことが、ある。そこで、次のような方法が提案されている。
MFPは、自動応答部、解析部、メッセージ生成部、および送受信部を備える。自動応答部は、PCが要求するプロトコルに基づき、省電力モードを通常モードに切り替える。解析部は、PCがジョブ実行を伴うことなく省電力モードから通常モードに切り替えるプロトコルを要求する状態であるか否かを解析する。メッセージ生成部は、解析部が前記状態を検出した場合に、PCが有する前記プロトコルを変更させるメッセージを生成する。送受信部は、前記メッセージを送信する。これにより、印刷に直接関係のない要求を受けた場合の、省電力モードから通常モードに移行する可能性を低減することができる(特許文献1)。
また、次のような方法が提案されている。画像処理装置は、第1の電力モード及び該第1の電力モードよりも消費電力の小さい第2の電力モードを有し、装置全体を制御する第1制御部と、第1の電力モード及び第2の電力モードにおいて電力が供給される第2制御部とを備え、外部装置とセキュリティ通信を実行する。また、第1制御部は、第1の電力モードから第2の電力モードへ移行する際に、セキュリティ通信に関連する複数のセキュリティ関連情報を記憶する記憶部に記憶された複数のセキュリティ関連情報から第2制御部に通知するセキュリティ関連情報を選定する(特許文献2)。
そのほか、省電力モードの際に、受信したパケットへの応答の一部を、メインのCPUを使わずサブのCPUによって行う技術が提案されている。
特開2012−179788号公報 特開2012−227829号公報
従来、受信したパケットに対する応答の処理をメインのCPUが行うのかサブのCPUが代行するのかを、機器の設計の段階で予め決めておく必要がある。
ところが、近年、ネットワークにおいて、様々なプロトコルが用いられる。プロトコルの用いられ方も様々であり、変化し得る。また、ネットワークの構成も様々であり、変化し得る。したがって、受信したパケットに対する応答の処理をメインのCPUおよびサブのCPUのどちらが行うべきかは、機器を使用しているうちに、変化し得る。
本発明は、このような問題点に鑑み、従来よりも柔軟にかつ的確に代理用のCPU(コントローラ)に応答処理を代行させることができる。
本発明の一形態に係る通信装置は、メインのコントローラである第一のコントローラと、受信したデータに対して前記第一のコントローラに依らず代行用プログラムに基づいて応答しかつSRAM(Static Random Access Memory)を備える第二のコントローラと、を有する通信装置であって、データを受信するごとに、当該データの属性と前記第一のコントローラによる当該データに対する応答の内容との組合せを記憶する、応答実績記憶手段と、前記応答実績記憶手段に記憶された複数の前記組合せに基づいて、前記第一のコントローラに依らずに応答することができるパターンを判別し、当該パターンに基づいてかつ前記パターンが複数ある場合は前記パターンの量が所定の量以下になるように前記代行用プログラムを生成する、プログラム生成手段と、前記プログラム生成手段によって生成された前記代行用プログラムを、前記SRAMへ当該代行用プログラムを書き込むことによって前記第二のコントローラに適用する適用手段と、を有する。
好ましくは、前記プログラム生成手段は、複数の前記パターンのうち、出現する頻度が大きいものを優先的に選出して前記代行用プログラムを生成する。
本発明の他の一形態に係る通信装置は、メインのコントローラである第一のコントローラと、受信したデータに対して前記第一のコントローラに依らず代行用プログラムに基づいて応答する第二のコントローラと、を有する通信装置であって、データを受信するごとに、当該データの属性と前記第一のコントローラによる当該データに対する応答の内容との組合せを記憶する、応答実績記憶手段と、前記応答実績記憶手段に記憶された複数の前記組合せに基づいて、前記第一のコントローラに依らずに応答することができるパターンを判別し、当該パターンに基づいて前記代行用プログラムを生成する、プログラム生成手段と、前記プログラム生成手段によって生成された前記代行用プログラムを前記第二のコントローラに適用する適用手段と、前記代行用プログラムを前記第二のコントローラへ適用した後、受信したデータに対して前記第一のコントローラが応答するごとに、当該データの属性と当該応答の内容との第二の組合せを記憶する、第二の応答実績記憶手段と、前記第二の応答実績記憶手段に記憶された複数の前記第二の組合せに基づいて、前記パターンを判別し、当該パターンに基づいて前記代行用プログラムを更新する、プログラム更新手段と、更新された前記代行用プログラムを前記第二のコントローラに適用する第二の適用手段と、を有する。
好ましくは、前記プログラム更新手段は、前記代行用プログラムを、一定の前記属性のデータに対する前記応答の内容が一定であるものを前記パターンとして判別し、当該一定の属性のデータを受信した場合に当該内容で応答するコードを当該代行用プログラムへ追記することによって更新する。
または、前記プログラム生成手段は、一定の前記属性のデータに対する前記応答の内容が一定であるものを前記パターンとして判別し、当該一定の属性のデータを受信した場合に当該内容で応答するコードを含むプログラムを前記代行用プログラムとして生成する。
または、前記第二のコントローラは、前記第一のコントローラが休止している場合は、受信したデータに対して、前記代行用プログラムに基づいて応答する。さらに好ましくは、前記代行用プログラムに基づいて応答することができない場合は、前記第一のコントローラをウェイクアップさせる。
または、前記プログラム生成手段は、ネットワークの環境の変化が検知された場合に、前記代行用プログラムを生成する。
本発明によると、従来よりも柔軟にかつ的確に代理用のコントローラに応答処理を代行させることができる
ネットワークシステムの全体的な構成の例を示す図である。 画像形成装置のハードウェア構成の例を示す図である。 コントロールユニットのハードウェア構成の例を示す図である。 画像形成装置の機能的構成の例を示す図である。 通常時実績データの例を示す図である。 パケットの標準的な構成の例を示す図である。 通常時実績データの例を示す図である。 通常時実績データの例を示す図である。 通常時実績データの例を示す図である。 代理応答プログラム生成処理の流れの例を説明するフローチャートである。 代理応答プログラム生成処理の流れの例を説明するフローチャートである。 特性データの例を示す図である。 代理応答処理の流れの例を説明するフローチャートである。 代理応答CPUによる全体的な処理の流れの例を説明するフローチャートである。 代理応答プログラム更新処理の流れの例を説明するフローチャートである。 代理応答プログラム更新処理の流れの例を説明するフローチャートである。 カスタマイズ用プログラムによる全体的な処理の流れの例を示すフローチャートである。 コントロールユニットのハードウェア構成の変形例である。
図1は、ネットワークシステム3の全体的な構成の例を示す図である。図2は、画像形成装置1のハードウェア構成の例を示す図である。図3は、コントロールユニット10aのハードウェア構成の例を示す図である。図4は、画像形成装置1の機能的構成の例を示す図である。
図1に示すように、ネットワークシステム3は、画像形成装置1、1台または複数台の端末装置2、および通信回線NWなどによって構成される。
画像形成装置1は、コピー、PCプリント、ファックス、スキャナ、およびボックスなどの機能を集約した装置である。一般に、「複合機」または「MFP(Multi Function Peripherals)」などと呼ばれることがある。
PCプリント機能は、画像形成装置1と同じセグメントに属する端末装置2から受信した画像データに基づいて画像を用紙に印刷する機能である。「ネットワークプリンティング」または「ネットワークプリント」などと呼ばれることもある。
ボックス機能は、ユーザごとに「ボックス」または「パーソナルボックス」などと呼ばれる記憶領域を与えておき、各ユーザが自分の記憶領域によって画像データなどのデータを保存し管理するための機能である。ボックスは、パーソナルコンピュータにおける「フォルダ」または「ディレクトリ」に相当する。
画像形成装置1は、図2に示すように、コントロールユニット10a、大容量記憶装置10b、タッチパネルディスプレイ10c、操作キーパネル10d、モデム10e、スキャンユニット10f、およびプリントユニット10gなどによって構成される。
タッチパネルディスプレイ10cは、ユーザに対するメッセージを示す画面、ユーザがコマンドまたは情報を入力するための画面、および処理の結果を示す画面などを表示する。また、タッチパネルディスプレイ10cは、タッチされた位置を示す信号をコントロールユニット10aのメインCPU131(図3参照)へ送る。
操作キーパネル10dは、いわゆるハードウェアキーボードであって、テンキー、スタートキー、ストップキー、およびファンクションキーなどによって構成される。
モデム10eは、ファクシミリ端末との間でG3などのプロトコルで画像データをやり取りする。
スキャンユニット10fは、プラテンガラスの上にセットされたシートに記されている画像を読み取って画像データを生成する。
プリントユニット10gは、他の装置から受信した画像データに基づいて画像を用紙に印刷する。また、スキャンユニット10fによって読み取られた画像を用紙に印刷する。
大容量記憶装置10bには、上述の各機能を実現するためのソフトウェア、例えば、オペレーティングシステムおよびアプリケーションがインストールされている。さらに、カスタマイズ用プログラム10Pがインストールされている。
カスタマイズ用プログラム10Pは、後述のスリープモード時またはスタンバイモード時に受信したパケットの取扱いに関する設定を行うためのプログラムである。
コントロールユニット10aは、図3に示すように、メインCPU(Central Processing Unit)131、DDR−SDRAM(Double Data Rate Synchronous Dynamic Random Access Memory)132、代理応答CPU133、フラッシュロム134、RJ(Registered Jack)トランス135、エンジン制御ASIC(Application Specific Integrated Circuit)136、電源管理CPU137、および二次電源回路138などによって構成される。このような構成により、コントロールユニット10aは、画像形成装置1の制御を行う。
DDR−SDRAM132は、メインCPU131の作業用メモリである。DDR−SDRAM132には、プログラムまたはモジュールが大容量記憶装置10bからロードされたり、他の装置から取得したデータや演算結果などが記憶されたりする。
メインCPU131は、DDR−SDRAM132にロードされたプログラムおよびモジュールを実行する。基本的に、カスタマイズ用プログラム10Pは、DDR−SDRAM132に常駐し、メインCPU131によって常時、実行されている。
代理応答CPU133は、いわゆるIP(Internet Protocol)通信を行うためのCPUである。特に、物理層およびデータリンク層(MAC(Media Access Control)副層)の処理を行う。また、後述のスリープモードまたはスタンバイモードであるときに他の装置からデータを受信した場合に、可能であればメインCPU131の代わりに応答する。以下、メインCPU131の代わりに応答することを「代理応答」と記載する。
フラッシュロム134には、代理応答CPU133が処理を行うためのプログラムおよびデータが記憶される。
また、代理応答CPU133には、SRAM(Static RAM)が内蔵されており、代理応答のためのプログラムである代理応答プログラム10Qが記憶される。代理応答プログラム10Qは、後述する通り、カスタマイズ用プログラム10Pに基づいてメインCPU131が生成する。
RJトランス135は、LAN(Local Area Network)用のパルストランスである。
エンジン制御ASIC136は、プリントユニット10gを制御するためのASICである。
二次電源回路138は、各ハードウェアへ電力を供給する。電源管理CPU137は、二次電源回路138を制御し、各ハードウェアへの電力の供給を調整する。
画像形成装置1には、電力の供給のモードとして、通常モード、スリープモード、およびスタンバイモードの3つのモードが用意されている。
通常モードは、基本的にどの処理であっても直ちに行い得るようにすべてのハードウェアへ電力を供給するモードである。
スタンバイモードは、タッチパネルディスプレイ10cによる画像の表示を停止したりプリントユニット10gのアイドリングを停止したりすることによって消費電力を低減するがメインCPU131による演算処理は直ちに実行することができるように電力を供給するモードである。したがって、スタンバイモード時は、コントロールユニット10aを構成するプロセッサおよびメモリのうち、特に、メインCPU131へは、電力が供給される。
スリープモードは、メインCPU131への電力の供給を停止し、スタンバイモードよりも消費電力をさらに低減するモードである。DDR−SDRAM132への電力の供給は継続してもよいし、停止してもよい。停止する場合は、DDR−SDRAM132に記憶されているプログラムおよびデータを大容量記憶装置10bへ予めバックアップしておく。そして、通常モードに戻る際に、DDR−SDRAM132にプログラムおよびデータをロードする。フラッシュロム134も、同様である。
次に、スリープモード時またはスタンバイモード時に受信したパケットの取扱いに関する設定について、説明する。
カスタマイズ用プログラム10Pは、図4に示す通常時実績データ収集部101、代理応答プログラム生成部102、代理応答プログラム適用部103、代行可能時実績データ収集部104、代理応答プログラム更新部105、更新プログラム適用部106、再起動部107、通常時実績データ記憶部121、代理応答プログラム記憶部122、および代行可能時実績データ記憶部123などの機能を実現する。
以下、これらの機能を、代理応答プログラムの生成のための機能および代理応答プログラムの更新のための機能に大別して説明する。
〔代理応答プログラムの生成のための機能〕
図5は、通常時実績データ5の例を示す図である。図6は、パケットの標準的な構成の例を示す図である。図7は、通常時実績データ51〜53の例を示す図である。図8は、通常時実績データ54〜57の例を示す図である。図9は、通常時実績データ58、59の例を示す図である。図10および図11は、代理応答プログラム生成処理の流れの例を説明するフローチャートである。図12は、特性データ61、62の例を示す図である。図13は、代理応答処理の流れの例を説明するフローチャートである。図14は、代理応答CPU133による全体的な処理の流れの例を説明するフローチャートである。
通常時実績データ収集部101は、所定の期間Tp、図5のような通常時実績データ5を収集する処理を次のように行う。
通常時実績データ収集部101は、電力の供給のモードを通常モードに変更する。そして、通常時実績データ5を収集する期間中、通常モードを継続させる。
ところで、通信回線NWを介して他の装置から画像形成装置1に届くパケットは、所定のフォーマットに基づいて構成されている。以下、本実施形態では、図6に示すようなMACフレームのフォーマットに基づいてパケットが構成されている場合を例に説明する。
通常時実績データ収集部101は、パケット81(MACフレーム)が届くと、パケット81から次の情報を抽出する。パケット81のMACヘッダから、宛先MACアドレス、送信元MACアドレス、およびタイプを抽出する。
さらに、このタイプに応じて、予め決められた項目の情報を抽出する。例えば、タイプが「IP」である場合は、パケット81のIPヘッダからバージョン/ヘッダ・サービス長、プロトコル、送信元IPアドレス、および宛先IPアドレスを抽出する。
さらに、このプロトコルに応じて、予め決められた項目の情報を抽出する。例えば、このプロトコルがICMP(Internet Control Message Protocol)である場合は、パケット81のICMPヘッダからタイプを抽出する。また、ICMPデータに所定のコマンドが含まれる場合は、さらにこのコマンドを抽出する。このコマンドがパラメータを伴う場合は、このパラメータも一緒に抽出する。
または、このプロトコルがTCP(Transmission Control Protocol)である場合は、パケット81のTCPヘッダから送信元ポート番号および宛先ポート番号を抽出する。また、TCPデータに所定のコマンドが含まれる場合は、さらにこのコマンドを抽出する。このコマンドがパラメータを伴う場合は、このパラメータも一緒に抽出する。
または、このプロトコルがUDP(User Datagram Protocol)である場合は、パケット81のUDPヘッダから送信元ポート番号および宛先ポート番号を抽出する。また、UDPデータに所定のコマンドが含まれる場合は、さらにこのコマンドを抽出する。このコマンドがパラメータを伴う場合は、このパラメータも一緒に抽出する。
そして、通常時実績データ収集部101は、パケット81から抽出されたこれらの情報を示す検出データ5aを生成する。
通常時実績データ収集部101は、さらに、応答データ5bを生成する。応答データ5bは、パケット81を受信したことに応じて画像形成装置1が行った処理(以下、「応答処理」と記載する。)の内容を示すデータである。
具体的には、応答処理によって使用されたハードウェア(以下、「動作デバイス」と記載する。)が特定のものである場合は、応答データ5bに、そのハードウェアが示される。特定のハードウェアは、通常モードでなければ動作できないハードウェアである。本実施形態では、モデム10e、スキャンユニット10f、およびプリントユニット10gが特定のハードウェアとして設定されている。
パケット81の送信元へデータを返信する処理が応答処理に含まれる場合は、さらに、返信の内容が応答データ5bに示される。例えば、画像形成装置1における通信に関する属性(IPアドレスおよびMACアドレスなど)が示される。または、画像形成装置1の消耗品(トナーおよび用紙など)の残量が示される。
そして、通常時実績データ収集部101は、検出データ5aおよび応答データ5bを含むデータを通常時実績データ5として、通常時実績データ記憶部121に記憶させる。
通常時実績データ収集部101は、所定の期間Tp、パケットが届くごとに、通常時実績データ5を生成し通常時実績データ記憶部121に記憶させる。これにより、所定の期間Tpにおける応答処理の実績のデータが通常時実績データ記憶部121に蓄積される。なお、所定の期間Tpは、任意に決めることができるが、数日〜1ヶ月程度が望ましい。
代理応答プログラム生成部102は、所定の期間Tpの経過後、代理応答プログラム10Qを生成する。以下、生成の処理の手順を、図7〜図9に示す通常時実績データ5が得られた場合を例に、図10〜図11のフローチャートを参照しながら説明する。
なお、図7〜図9には通常時実績データ5として9つの通常時実績データ51〜59を例示している。ただし、説明の簡単のため、各項目の値を「a01」、「b01」、「c01」、…のように抽象化して表わしている。実際には、図5に挙げたように、「00:11:22:33:44:55」または「0800」のような具体的な値が示される。また、「返信内容」の項目のように、複数の値が示される項目もあるが、図7〜図9では、「h01」、「h02」、…のように1つの抽象的な文字列で例示する。複数の通常時実績データ5の、複数の値が示され得る項目に同一の文字列が示されることがあるが、これは、複数の値同士がすべて一致することを意味する。1つでも異なる場合は、異なる文字列を用いている。
代理応答プログラム生成部102は、通常時実績データ記憶部121に記憶されている通常時実績データ5のうちの、応答処理によって使用されたハードウェアとして特定のハードウェアが1つも示されない通常時実績データ5を、読み出す(図10の#701)。上述の通り、特定のハードウェアは、通常モードでなければ動作できないハードウェア(つまり、スリープモード時またはスタンバイモード時ならばウェイクアップを要するハードウェア)であって、例えば、モデム10e、スキャンユニット10f、またはプリントユニット10gなどである。
図7〜図9の例においては、通常時実績データ52〜59を読み出す。しかし、通常時実績データ51は読み出さない。
代理応答プログラム生成部102は、読み出した通常時実績データ5をグループ化する(#702)。例えば、検出データ5aに示されるすべての項目の値が共通する通常時実績データ5同士をグループ化する。
図7〜図9の例においては、通常時実績データ52、53を1つのグループ(以下、「グループ_G1」と記載する。)にグループ化する。通常時実績データ54、55を1つのグループ(以下、「グループ_G2」と記載する。)にグループ化する。通常時実績データ56、57を1つのグループ(以下、「グループ_G3」と記載する。)にグループ化する。通常時実績データ58、59を1つのグループ(以下、「グループ_G4」と記載する。)にグループ化する。
代理応答プログラム生成部102は、1つ目のグループに注目し(#703)、このグループを構成する通常時実績データ5それぞれの応答データ5bに示される内容を比較する(#704)。そして、内容が同一である場合は(#705でYes)、このグループを、代理応答の対象として選出する(#706)。
ステップ#702において複数のグループが生じた場合は、代理応答プログラム生成部102は、残りのグループについても同様に、応答データ5b同士の内容の比較を行い、内容が同一である場合に代理応答の対象としての選出を行う(#704〜#708)。
図7〜図9の例においては、グループ_G1は、メンバ(通常時実績データ52、53)それぞれの応答データ5bに示される内容が相違するので、選出されない。これを選出しないのは、同一の問合せを他の装置から受けても返信する内容が時として異なるので、代理応答CPU133による代理応答が難しいからである。一方、グループ_G2は、メンバそれぞれの応答データ5bに示される内容が同一なので、選出される。グループ_G3およびグループ_G4も同様の理由により選出される。
代理応答プログラム生成部102は、選出したグループの最適化を次のように行う。選出したグループのうちの応答データ5bに示される内容が同一であるグループ同士を、共通グループにグループ化する(図11の#709)。
図7〜図9の例においては、グループ_G2のメンバの応答データ5bとグループ_G3のメンバの応答データ5bとが、同一の値を示す。よって、グループ_G2およびグループ_G3を共通グループにグループ化する。以下、この共通グループを「共通グループ_K1」と記載する。
代理応答プログラム生成部102は、共通グループ、および、共通グループにグループ化されなかったグループ(以下、「非共通化グループ」と記載する。)それぞれについて、特性データ6を取得する処理を次のように行う。
共通グループについては(#711でYes)、代理応答プログラム生成部102は、この共通グループにグループ化した各グループの検出データ5aから、値が同一である項目をその値とともに特性データ6として取得する(#712)。
この処理によると、共通グループ_K1の特性データ6として、図12のような、送信元ポート番号以外の項目(タイプ_1、プロトコル、タイプ_2、宛先ポート番号、コマンド、パラメータ)およびその値を示す特性データ61が取得される。
一方、非共通化グループについては(#711でNo)、代理応答プログラム生成部102は、その非共通化グループの応答データ5bを、その非共通グループの特性データ6として取得する(#713)。
例えば、グループ_4の特性データ6として、通常時実績データ58(または通常時実績データ59)の応答データ5bを取得する。これにより、図12(B)のような特性データ62が、グループ_4の特性データ6として取得される。
特性データ6の取得の処理と前後してまたは並行して、代理応答プログラム生成部102は、各グループ(共通グループまたは非共通グループ)のメンバである通常時実績データ5の個数を所定の期間Tpで割ることによって、応答頻度RTを算出する(#716)。
そして、代理応答プログラム生成部102は、各グループ(共通グループまたは非共通グループ)の応答データ5b、特性データ6、および応答頻度RTに基づいて次のようにコーディングを行うことによって、代理応答プログラム10Qを生成する。
代理応答プログラム生成部102は、空のテキストファイルを用意する(#718)。応答頻度RTが1番目に大きいグループのコードとして、次の事項(C1)〜(C4)を表わすコードを順にテキストファイルに書き込む(#719)。
(C1) このグループを識別する識別子。
(C2) このグループの応答頻度RT。
(C3) このグループの特性データ6に示される各項目の各値が、スリープ時またはスタンバイ時に受信したパケットの対応する各項目の各値と一致するか否かを比較するための、コード。
(C4) C3の比較によってすべての項目の値同士が一致したことが分かった場合に、このグループの応答データ5bを、受信したパケットの送信元へ返信する処理のコマンド。
C1の識別子は、例えばREM文で記述すればよい。C2の応答頻度RTも、同様である。
C3のコードは、IF文で記述すればよい。特性データ6に複数の項目がある場合は、項目ごとに比較のコードをIF文によって記述すればよい。
C4のコマンドを、送信元ポート番号として受信したパケットに示される送信元ポート番号が必要に応じて用いられるように記述してもよい。
そして、代理応答プログラム生成部102は、応答頻度RTが2番目、3番目、…に大きいグループのC1〜C4のコードを順次、テキストファイルに追記していく(#719〜#721)。ただし、応答頻度RTが大きいグループのコードが上になるように、追記する。
このようにしてコードが、一定の属性のパケットと一定の返信内容とのパターンを表わしている。そして、これらの記述されたテキストファイルが、代理応答プログラム10Qである。
図7〜図9の通常時実績データ5によると、図13に示す手順のプログラムが代理応答プログラム10Qとして生成される。
代理応答プログラム適用部103は、代理応答プログラム生成部102によって代理応答プログラム10Qが生成されると、代理応答プログラム10Qを代理応答CPU133のSRAM(以下、「SRAM133s」と記載する。)に書き込む。これにより、代理応答CPU133に代理応答プログラム10Qが適用される。
代理応答プログラム10Qが代理応答CPU133に適用されたら、通常時実績データ収集部101は、通常時実績データ5の収集を終了する。その後、電源管理CPU137は、適宜、電力の供給のモードを切り換えてもよい。
代理応答CPU133は、スリープモード時またはスタンバイモード時に、図14に示す手順で処理を実行する。
パケット82が受信されると(図14の#731でYes)、代理応答CPU133は、代理応答プログラム10Qに基づいてパケット82を処理する(#732)。図13に示す手順のプログラムが代理応答プログラム10Qが得られた場合は、次のようにパケット82を処理する。
代理応答CPU133は、1番目の特性データ6(つまり、特性データ61)とパケット82とを比較し、特性データ61に示される各項目の値がパケット82にも示されるか否かをチェックする(図13の#741)。各項目の値がすべてパケット82に示される場合は(#742でYes)、特性データ61に対応する応答データ5bを、パケット82の送信元へ宛てて送信する(#743)。この際に、必要に応じて、パケット82の送信元ポート番号を使用する。
2番目以降の特性データ6についても同様に処理を行う(#744〜#746)。つまり、代理応答CPU133は、パケット82との比較を行い、各項目の値がすべてパケット82に示される場合は、これに対応する応答データ5bをパケット82の送信元へ宛てて送信する。なお、パケット82の送信元への返信(代理応答)が成功した時点で、代理応答処理を終了してもよい。
図14に戻って、代理応答プログラム10Qによる代理応答に成功した場合は(#733でYes)、スリープモードまたはスタンバイモードが継続している間(#734でNo)、パケット82を受信するごとに上述の処理を実行する。
一方、代理応答プログラム10Qによる代理応答に成功しなかった場合は(#733でNo)、代理応答CPU133は、スリープモードまたはスタンバイモードを解除させ、パケット82の処理をメインCPU131に行わせる。
代理応答プログラム10QがSRAM133sに収まるように、グループの数を制限してもよい。例えば、応答頻度RTが高い順に所定の個数だけグループを選出し、これらのグループのコードのみを代理応答プログラム10Qに書き込んでもよい。つまり、ステップ#719の処理の実行回数が所定の回数に達したら、これ以降、グループのコードの書込みを止めればよい。
代理応答プログラム10Qは、後に適宜、更新するために、代理応答プログラム記憶部122に保存される。
通常モード時にパケット82を受信した場合は、代理応答CPU133ではなくメインCPU131が応答処理を行う。
〔代理応答プログラムの更新のための機能〕
図15および図16は、代理応答プログラム更新処理の流れの例を説明するフローチャートである。
画像形成装置1または周囲の環境の変化に応じて、代理応答プログラム10Qを更新したほうがよい場合がある。そこで、図4の代行可能時実績データ収集部104ないし再起動部107は、代理応答CPU133への代理応答プログラム10Qの適用後、代理応答プログラム10Qを更新するための処理を実行する。
代行可能時実績データ収集部104は、代理応答プログラム10Qの適用後、代行可能時実績データ7を収集する処理を行う。代行可能時実績データ7の内容は、図5に示した通常時実績データ5の内容と同様である。したがって、代行可能時実績データ7を収集する方法は、通常時実績データ収集部101による通常時実績データ5の収集の方法と基本的に同様である。
ただし、通常時実績データ収集部101は通常モードを強制的に継続させたが、代行可能時実績データ収集部104は、強制的には継続させない。よって、代行可能時実績データ7は、通常モードの場合にのみ収集される。また、代行可能時実績データ7は、代行可能時実績データ記憶部123に記憶される。
代理応答プログラム更新部105は、代行可能時実績データ記憶部123に記憶(蓄積)された代行可能時実績データ7に基づいて、図15〜図16に示す手順で代理応答プログラム10Qを更新する。
グループ化を行い、グループ(共通グループまたは非共通グループ)ごとにC1〜C4のコードを生成するまでの手順は、基本的に、図10〜図11で説明した、代理応答プログラム生成部102による処理の手順と同様である。ただし、次の点が、代理応答プログラム生成部102による処理と異なる。
代理応答プログラム更新部105は、通常時実績データ5の代わりに代行可能時実績データ7を使用する。図16のステップ#766において、グループの応答頻度RTを、そのグループのメンバである代行可能時実績データ7の個数を、代理応答プログラム10Qの適用を開始してから更新の処理を開始するまでの期間Tjで割ることによって、算出する。また、空のテキストファイルの用意(図11の#718参照)は行わず、代理応答プログラム記憶部122に記憶されている代理応答プログラム10Qに対して、次に説明する挿入などの処理を行う。
そして、代理応答プログラム更新部105は、グループのC1〜C4のコードを、代理応答プログラム10Qの中の、そのグループの応答頻度RTに応じた位置に挿入する(#768、#769)。例えば、そのグループの応答頻度RTが、代理応答プログラム10Qに既に追加されているどのグループの応答頻度RTよりも大きい場合は、代理応答プログラム10Qの先頭に追加する。または、どのグループの応答頻度RTよりも小さい場合は、末尾に追加する。または、そのグループの応答頻度RTが、代理応答プログラム10Qに既に追加されているN番目のグループの応答頻度RTよりも小さく(N+1)番目のグループの応答頻度RTよりも大きい場合は、N番目のグループのコードの次に追加する。
なお、図15〜図16の処理の結果、代理応答プログラム10Qにコードが示されるグループの個数が所定の個数を超えた場合は、所定の個数に収まるように下位のグループのコードを代理応答プログラム10Qから削除してもよい。
更新プログラム適用部106は、代理応答プログラム更新部105によって更新された代理応答プログラム10Qを、SRAM133sに書き込む。古い代理応答プログラム10Qは、削除する。これにより、代理応答プログラム10Qが上書きされ、代理応答CPU133に適用される。
ところで、画像形成装置1または周囲の環境の変化などに伴い、代理応答プログラム10Qにコードが示されるグループのいずれかが、代理応答すべきでないグループになってしまうことが、ある。そこで、定期的に、または、管理者による所定のコマンドの入力に従って、代理応答プログラム10Qを一から生成し直してもよい。
再起動部107は、代理応答プログラム10Qを一から生成し直す必要がある場合に、SRAM133sおよび代理応答プログラム記憶部122のそれぞれに記憶されている代理応答プログラム10Qを削除する。そして、カスタマイズ用プログラム10Pを再起動する。
すると、通常時実績データ収集部101による処理が、最初から、上述の通りに実行される。
なお、代行可能時実績データ収集部104ないし更新プログラム適用部106による代理応答プログラム10Qの更新のための処理は、常時、行う必要はない。代理応答プログラム10Qの適用後、スリープモード時またはスタンバイモード時にパケット81を受信してウェイクアップする(通常モードへ変更する)頻度が、所定の頻度よりも低い場合は、代行可能時実績データ収集部104ないし更新プログラム適用部106は、休止してもよい。所定の頻度は、管理者が予め設定しておくことができる。
再起動部107による処理は、画像形成装置1が環境の変化(例えば、所属するセグメントの変更またはサブネットマスクの変更など)を検知した場合に、自動的に実行してもよい。変化の検知は、公知の技術によって行うことができる。または、ある場所から撤去し、別の場所に移動させる場合に実行してもよい。
図17は、カスタマイズ用プログラム10Pによる全体的な処理の流れの例を示すフローチャートである。
次に、画像形成装置1のメインCPU131による代理応答プログラム10Qの生成および更新の全体的な処理の流れを、図17のフローチャートを参照しながら説明する。
メインCPU131は、カスタマイズ用プログラム10Pの起動後、所定の期間Tp、電力の供給のモードを通常モードに保ち、パケット81を受信するごとに通常時実績データ5を生成し蓄積する(図17の#11)。
所定の期間Tpが経過したら(#12でYes)、メインCPU131は、蓄積した通常時実績データ5に基づいて代理応答プログラム10Qを生成する(#13)。生成の方法は、前に図10〜図11で説明した通りである。そして、生成した代理応答プログラム10QをSRAM133sに記憶させる(#14)。これにより、代理応答CPU133に代理応答プログラム10Qが適用される。
その後、スリープモード時またはスタンバイモード時は、代理応答CPU133が、代理応答プログラム10Qに基づいて応答処理を実行する。これは、前に図13および図14で説明した通りである。
一方、通常モード時に、メインCPU131は、パケット81を受信するごとに代行可能時実績データ7を生成し蓄積する(#15)。そして、所定の期間が経過しまたは所定のコマンドが入力されたら(#16でYes)、代理応答プログラム10Qを更新する(#17)。更新の処理は、前に図15〜図16で説明した通りである。そして、更新した代理応答プログラム10QをSRAM133sに記憶させる(#18)。これにより、代理応答CPU133に、更新された代理応答プログラム10Qが適用される。
代理応答プログラム10Qを一から生成し直す必要が生じたら(#19でYes)、メインCPU131は、代理応答プログラム10Qを代理応答プログラム記憶部122およびSRAM133sから削除し、カスタマイズ用プログラム10Pを再起動する(#20)。
再起動後、メインCPU131は、カスタマイズ用プログラム10Pに基づいて、ステップ#11から処理をやり直す。
本実施形態によると、画像形成装置1および周囲の環境に応じて代理応答プログラム10Qを生成し代理応答CPU133に適用する。よって、従来よりも柔軟にかつ的確に代理応答CPU133に応答処理を代行させることができる。また、環境の変化に対しても、従来よりも柔軟にかつ的確に対応することができる。
また、代理応答プログラム10QをSRAM133sに記憶させるので、DRAMに記憶させるよりも消費電力を低減することができる。
図18は、コントロールユニット10aのハードウェア構成の変形例である。本実施形態では、コントロールユニット10aが図3に示した通り構成される場合を例に説明したが、図18に示すように、メインCPUの中に代理応答CPUが組み込まれている場合にも、本発明を適用することができる。
本実施形態では、代理応答プログラム10Qを、画像形成装置1自身が生成しまたは更新したが、他の装置に実行させてもよい。例えば、ネットワークシステム3にサーバを設けておき、このサーバに実行させてもよい。または、いわゆるクラウドサーバに実行させてもよい。
ネットワークシステム3に複数台の画像形成装置1が設けられている場合は、1台の画像形成装置1のために生成しまたは更新した代理応答プログラム10Qを、他の画像形成装置1において適用してもよい。この場合は、代理応答プログラム10Qを、一方の画像形成装置1から他方の画像形成装置1へ直接的に提供してもよいし、サーバに代理応答プログラム10Qを記憶させておき、適宜、ダウンロードできるようしてもよい。ただし、この場合は、代理応答プログラム10Qに示される宛先MACアドレスおよび宛先IPアドレスなどを、適用先の画像形成装置1に応じて適宜、変更する。
本実施形態では、通常時実績データ5の個数が2つであっても1つのグループにグループ化したが、パターンが一定であることの確実性を高めるために、2つよりも大きい所定の個数以上の通常時実績データ5から1つのグループにグループ化してもよい。または、1つの通常時実績データ5であっても、1つのグループにグループ化してもよい。
本実施形態では、代理応答プログラム10Qにコードを含めるグループを、個数によって制限したが、代理応答プログラム10Qのサイズ(バイト数)で制限してもよい。
本実施形態では、省電力化の対象が画像形成装置1である場合を例に説明したが、他の機器である場合にも、本発明を適用することができる。例えば、サーバまたはパーソナルコンピュータなどにも適用することができる。
検出データ5a(図5参照)に含める項目は、画像形成装置1が使用される環境などに応じて、適宜、変更可能である。図5の例では、宛先MACアドレスおよび送信元MACアドレスを含んでいないが、これらを含めてもよい。または、プロトコルだけを含めてもよい。
その他、ネットワークシステム3、画像形成装置1の全体または各部の構成、処理内容、処理順序、データの構成などは、本発明の趣旨に沿って適宜変更することができる。
1 画像形成装置(通信装置)
102 代理応答プログラム生成部(プログラム生成手段)
103 代理応答プログラム適用部(適用手段)
105 代理応答プログラム更新部(プログラム更新手段)
106 更新プログラム適用部(第二の適用手段)
121 通常時実績データ記憶部(応答実績記憶手段)
123 代行可能時実績データ記憶部(第二の応答実績記憶手段)
131 メインCPU(第一のコントローラ)
133 代理応答CPU(第二のコントローラ)
133s SRAM
10Q 代理応答プログラム(代行用プログラム)
5 通常時実績データ
7 代行可能時実績データ

Claims (13)

  1. メインのコントローラである第一のコントローラと、受信したデータに対して前記第一のコントローラに依らず代行用プログラムに基づいて応答しかつSRAM(Static Random Access Memory)を備える第二のコントローラと、を有する通信装置であって、
    データを受信するごとに、当該データの属性と前記第一のコントローラによる当該データに対する応答の内容との組合せを記憶する、応答実績記憶手段と、
    前記応答実績記憶手段に記憶された複数の前記組合せに基づいて、前記第一のコントローラに依らずに応答することができるパターンを判別し、当該パターンに基づいてかつ前記パターンが複数ある場合は前記パターンの量が所定の量以下になるように前記代行用プログラムを生成する、プログラム生成手段と、
    前記プログラム生成手段によって生成された前記代行用プログラムを、前記SRAMへ当該代行用プログラムを書き込むことによって前記第二のコントローラに適用する適用手段と、
    を有することを特徴とする通信装置。
  2. 前記プログラム生成手段は、複数の前記パターンのうち、出現する頻度が大きいものを優先的に選出して前記代行用プログラムを生成する、
    請求項に記載の通信装置。
  3. メインのコントローラである第一のコントローラと、受信したデータに対して前記第一のコントローラに依らず代行用プログラムに基づいて応答する第二のコントローラと、を有する通信装置であって、
    データを受信するごとに、当該データの属性と前記第一のコントローラによる当該データに対する応答の内容との組合せを記憶する、応答実績記憶手段と、
    前記応答実績記憶手段に記憶された複数の前記組合せに基づいて、前記第一のコントローラに依らずに応答することができるパターンを判別し、当該パターンに基づいて前記代行用プログラムを生成する、プログラム生成手段と、
    前記プログラム生成手段によって生成された前記代行用プログラムを前記第二のコントローラに適用する適用手段と、
    前記代行用プログラムを前記第二のコントローラへ適用した後、受信したデータに対して前記第一のコントローラが応答するごとに、当該データの属性と当該応答の内容との第二の組合せを記憶する、第二の応答実績記憶手段と、
    前記第二の応答実績記憶手段に記憶された複数の前記第二の組合せに基づいて、前記パターンを判別し、当該パターンに基づいて前記代行用プログラムを更新する、プログラム更新手段と、
    更新された前記代行用プログラムを前記第二のコントローラに適用する第二の適用手段と、
    を有することを特徴とする通信装置。
  4. 前記プログラム更新手段は、前記代行用プログラムを、一定の前記属性のデータに対する前記応答の内容が一定であるものを前記パターンとして判別し、当該一定の属性のデータを受信した場合に当該内容で応答するコードを当該代行用プログラムへ追記することによって更新する、
    請求項に記載の通信装置。
  5. 前記プログラム生成手段は、一定の前記属性のデータに対する前記応答の内容が一定であるものを前記パターンとして判別し、当該一定の属性のデータを受信した場合に当該内容で応答するコードを含むプログラムを前記代行用プログラムとして生成する、
    請求項1ないし請求項4のいずれかに記載の通信装置。
  6. 前記属性には、プロトコルの種類が含まれる、
    請求項1ないし請求項5のいずれかに記載の通信装置。
  7. 前記第二のコントローラは、前記第一のコントローラが休止している場合は、受信したデータに対して、前記代行用プログラムに基づいて応答する、
    請求項1ないし請求項のいずれかに記載の通信装置。
  8. 前記第二のコントローラは、前記代行用プログラムに基づいて応答することができない場合は、前記第一のコントローラをウェイクアップさせる、
    請求項に記載の通信装置。
  9. 前記プログラム生成手段は、ネットワークの環境の変化が検知された場合に、前記代行用プログラムを生成する、
    請求項1ないし請求項のいずれかに記載の通信装置。
  10. メインのコントローラである第一のコントローラと受信したデータに対して前記第一のコントローラに依らず代行用プログラムに基づいて応答しかつSRAM(Static Random Access Memory)を備える第二のコントローラとを有する通信装置のカスタマイズ方法であって、
    前記通信装置がデータを受信するごとに、当該データの属性と前記第一のコントローラによる当該データに対する応答の内容との組合せを応答実績記憶手段に記憶させ、
    前記応答実績記憶手段に記憶された複数の前記組合せに基づいて、前記第一のコントローラに依らずに応答することができるパターンを判別し、当該パターンに基づいてかつ前記パターンが複数ある場合は前記パターンの量が所定の量以下になるように前記代行用プログラムを生成し、
    生成した前記代行用プログラムを、前記SRAMへ当該代行用プログラムを書き込むことによって前記第二のコントローラに適用する、
    ことを特徴とする通信装置のカスタマイズ方法。
  11. メインのコントローラである第一のコントローラと受信したデータに対して前記第一のコントローラに依らず代行用プログラムに基づいて応答する第二のコントローラとを有する通信装置のカスタマイズ方法であって、
    前記通信装置がデータを受信するごとに、当該データの属性と前記第一のコントローラによる当該データに対する応答の内容との組合せを応答実績記憶手段に記憶させ、
    前記応答実績記憶手段に記憶された複数の前記組合せに基づいて、前記第一のコントローラに依らずに応答することができるパターンを判別し、当該パターンに基づいて前記代行用プログラムを生成し、
    生成した前記代行用プログラムを前記第二のコントローラに適用
    前記代行用プログラムを前記第二のコントローラへ適用した後、受信したデータに対して前記第一のコントローラが応答するごとに、当該データの属性と当該応答の内容との第二の組合せを第二の応答実績記憶手段に記憶させ、
    前記第二の応答実績記憶手段に記憶された複数の前記第二の組合せに基づいて、前記パターンを判別し、当該パターンに基づいて前記代行用プログラムを更新し、
    更新した前記代行用プログラムを前記第二のコントローラに適用する、
    ことを特徴とする通信装置のカスタマイズ方法。
  12. メインのコントローラである第一のコントローラと受信したデータに対して前記第一のコントローラに依らず代行用プログラムに基づいて応答しかつSRAM(Static Random Access Memory)を備える第二のコントローラとを有する通信装置をカスタマイズするために用いられるコンピュータプログラムであって、
    コンピュータに、
    前記通信装置がデータを受信するごとに、当該データの属性と前記第一のコントローラによる当該データに対する応答の内容との組合せを応答実績記憶手段に記憶させる処理を、実行させ、
    前記応答実績記憶手段に記憶された複数の前記組合せに基づいて、前記第一のコントローラに依らずに応答することができるパターンを判別し、当該パターンに基づいてかつ前記パターンが複数ある場合は前記パターンの量が所定の量以下になるように前記代行用プログラムを生成する処理を、実行させ、
    生成した前記代行用プログラムを、前記SRAMへ当該代行用プログラムを書き込むことによって前記第二のコントローラに適用する処理を実行させる、
    ことを特徴とするコンピュータプログラム。
  13. メインのコントローラである第一のコントローラと受信したデータに対して前記第一のコントローラに依らず代行用プログラムに基づいて応答する第二のコントローラとを有する通信装置をカスタマイズするために用いられるコンピュータプログラムであって、
    コンピュータに、
    前記通信装置がデータを受信するごとに、当該データの属性と前記第一のコントローラによる当該データに対する応答の内容との組合せを応答実績記憶手段に記憶させる処理を、実行させ、
    前記応答実績記憶手段に記憶された複数の前記組合せに基づいて、前記第一のコントローラに依らずに応答することができるパターンを判別し、当該パターンに基づいて前記代行用プログラムを生成する処理を、実行させ、
    生成した前記代行用プログラムを前記第二のコントローラに適用する処理を実行させ
    前記代行用プログラムを前記第二のコントローラへ適用した後、受信したデータに対して前記第一のコントローラが応答するごとに、当該データの属性と当該応答の内容との第二の組合せを第二の応答実績記憶手段に記憶させる処理を実行させ、
    前記第二の応答実績記憶手段に記憶された複数の前記第二の組合せに基づいて、前記パターンを判別し、当該パターンに基づいて前記代行用プログラムを更新する処理を実行させ、
    更新した前記代行用プログラムを前記第二のコントローラに適用する処理を実行させる、
    ことを特徴とするコンピュータプログラム。
JP2013183957A 2013-09-05 2013-09-05 通信装置およびそのカスタマイズ方法ならびにコンピュータプログラム Expired - Fee Related JP5835291B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2013183957A JP5835291B2 (ja) 2013-09-05 2013-09-05 通信装置およびそのカスタマイズ方法ならびにコンピュータプログラム
US14/477,147 US9977486B2 (en) 2013-09-05 2014-09-04 Communication device including two controllers, a method for customizing the same, and computer-readable storage medium for computer program
CN201410449784.6A CN104427186B (zh) 2013-09-05 2014-09-04 通信装置及其定制方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013183957A JP5835291B2 (ja) 2013-09-05 2013-09-05 通信装置およびそのカスタマイズ方法ならびにコンピュータプログラム

Publications (2)

Publication Number Publication Date
JP2015053537A JP2015053537A (ja) 2015-03-19
JP5835291B2 true JP5835291B2 (ja) 2015-12-24

Family

ID=52584966

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013183957A Expired - Fee Related JP5835291B2 (ja) 2013-09-05 2013-09-05 通信装置およびそのカスタマイズ方法ならびにコンピュータプログラム

Country Status (3)

Country Link
US (1) US9977486B2 (ja)
JP (1) JP5835291B2 (ja)
CN (1) CN104427186B (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9524453B2 (en) * 2014-09-16 2016-12-20 Ricoh Company, Limited Image forming device, method of switching modes, and computer-readable recording medium
JP6287944B2 (ja) * 2015-04-28 2018-03-07 京セラドキュメントソリューションズ株式会社 情報処理装置及びパケット応答プログラム
JP6725243B2 (ja) * 2015-12-24 2020-07-15 Necプラットフォームズ株式会社 応答制御装置及び応答制御方法、並びにコンピュータ・プログラム
JP6511019B2 (ja) * 2016-06-21 2019-05-08 日本電信電話株式会社 サービス継続装置、サービス継続方法およびプログラム
JP6950310B2 (ja) * 2017-07-12 2021-10-13 富士通株式会社 情報処理装置および管理プログラム
JP7040034B2 (ja) * 2018-01-18 2022-03-23 株式会社リコー 情報処理装置及び画像形成装置
JP7238561B2 (ja) * 2019-04-11 2023-03-14 京セラドキュメントソリューションズ株式会社 情報処理装置及びパケットパターン生成プログラム

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5008138B2 (ja) * 2007-11-12 2012-08-22 株式会社リコー 情報処理装置、情報処理方法、プログラム及び記録媒体
JP5037376B2 (ja) * 2008-02-06 2012-09-26 株式会社リコー 情報処理装置、電力モード制御方法、電力モード制御プログラム、及び記録媒体
JP5180613B2 (ja) * 2008-02-19 2013-04-10 キヤノン株式会社 情報処理装置及びその制御方法
JP4672754B2 (ja) * 2008-06-05 2011-04-20 株式会社東芝 プログラム・設計書の生成装置及びプログラム・設計書の生成プログラム
EP2296423A4 (en) * 2008-07-03 2016-04-27 Sharp Kk WIRELESS COMMUNICATION SYSTEM, COMMUNICATION DEVICE, WIRELESS COMMUNICATION PROCESS AND WIRELESS COMMUNICATION PROGRAM
JP5377012B2 (ja) * 2009-03-13 2013-12-25 キヤノン株式会社 情報処理装置及び情報処理装置の制御方法、通信システム及び通信システムの制御方法、並びにプログラム
JP5439941B2 (ja) * 2009-05-14 2014-03-12 富士ゼロックス株式会社 情報処理システム、情報処理装置、および信号送信装置
ES2381329T3 (es) * 2009-09-09 2012-05-25 Samsung Electronics Co., Ltd. Aparato de formación de imágenes y método correspondiente de control de ahorro de energía
JP5791223B2 (ja) * 2009-09-25 2015-10-07 キヤノン株式会社 印刷装置、ネットワークインターフェースユニット、印刷装置の制御方法およびプログラム
WO2011152052A1 (ja) * 2010-06-02 2011-12-08 パナソニック株式会社 通信制御装置およびパケットフィルタリング方法
JP5516457B2 (ja) 2011-03-01 2014-06-11 コニカミノルタ株式会社 画像形成装置及び制御方法
JP2012227829A (ja) 2011-04-21 2012-11-15 Canon Inc 画像処理装置、及びその制御方法
JP2013161122A (ja) * 2012-02-01 2013-08-19 Canon Inc データ処理装置、情報処理方法、及びプログラム
JP6112938B2 (ja) * 2013-03-29 2017-04-12 キヤノン株式会社 情報処理装置及びその制御方法、並びにプログラム

Also Published As

Publication number Publication date
US20150067371A1 (en) 2015-03-05
CN104427186B (zh) 2018-04-17
JP2015053537A (ja) 2015-03-19
CN104427186A (zh) 2015-03-18
US9977486B2 (en) 2018-05-22

Similar Documents

Publication Publication Date Title
JP5835291B2 (ja) 通信装置およびそのカスタマイズ方法ならびにコンピュータプログラム
JP3834452B2 (ja) 機器管理システム、管理サーバ及びコンピュータ読取可能な記録媒体
JP5326918B2 (ja) 電子機器,ソフトウェア更新方法,プログラム,および記録媒体
US8289547B2 (en) Print control apparatus, print control method and medium storing a print control program thereof
KR101748997B1 (ko) 설정값 관리 장치 및 그 관리 방법
JP2006107456A (ja) 情報処理システムのユーザ状態あるいはデバイス状態の管理方法及び管理システム
JP2013161122A (ja) データ処理装置、情報処理方法、及びプログラム
JP2010239193A (ja) 情報処理装置、情報処理装置の制御方法及びコンピュータプログラム
US7971077B2 (en) Information processing apparatus, information processing method, and program for executing the method
JP2015121989A (ja) ネットワークデバイス、ネットワークデバイスの制御方法およびそのプログラム
JP2005053122A (ja) Mfpシステム、多機能複合機、サーバ、環境負荷低減方法、および、プログラム
US20120054758A1 (en) Image forming apparatus, storage medium, and program state determination system
JP6366358B2 (ja) 情報処理装置、情報処理装置の制御方法、及びプログラム
JP2010049364A (ja) 機器管理装置、機器管理システム、機器情報管理方法、機器情報管理プログラム、及びそのプログラムを記録した記録媒体
JP2009266088A (ja) 情報処理装置、情報処理方法、プログラム、及び、記録媒体
JP2011170412A (ja) ネットワークプリントシステム、出力管理装置、出力管理方法、プログラムおよび記録媒体
US20160216925A1 (en) Information mediation system, information mediation method, information accumulating system, and information processing method
JP4455523B2 (ja) 情報処理システム、情報処理方法、プログラム及び記憶媒体
JP3711424B2 (ja) ネットワーク対応型印刷装置及び印刷方法及びネットワーク印刷システム
JP5094356B2 (ja) 情報処理装置、情報処理方法、該方法を実行するためのプログラム
US8892796B2 (en) Image forming apparatus and control method thereof
JP2004355128A (ja) 画像出力装置システム
JP2016088057A (ja) 情報処理装置、情報処理装置の制御方法、及びプログラム
JP6214733B2 (ja) データ処理装置
JP2010218111A (ja) 画像形成装置及び情報処理方法

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150625

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150630

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150821

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20150821

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: 20151006

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20151019

R150 Certificate of patent or registration of utility model

Ref document number: 5835291

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees