(58)【調査した分野】(Int.Cl.,DB名)
前記コア制御記述表作成部により、監視サーバーからの前記CPUコアの割り当てを示す設定情報に基づき、前記コア制御記述表を作成する工程を前記コンピューターに実行させることを特徴とする請求項5又は6に記載の情報処理プログラム。
【発明を実施するための最良の形態】
【0011】
以下、本発明の電子機器の一実施形態を、
図1〜
図6を参照しながら説明する。なお、以下に説明する電子機器は、たとえば、プリンター、多機能プリンター、MFP(Multifunction Peripheral)などの画像形成装置であるものとする。
【0012】
まず、
図1に示すように、画像形成装置200は、社内LAN(Local Area Network)300を介してクライアント端末100に接続されている。また、画像形成装置200は、複数のCPUコアを搭載している。クライアント端末100は、ネットワーク300を介して画像形成装置200に対して印刷ジョブなどを送信する。
【0013】
<画像形成装置200の制御系の構成例>
次に、
図2を参照し、画像形成装置200の制御系の一例について説明する。制御系は、システム管理を行う部分と、画像処理管理を行う部分とから構成されている。システム管理を行う部分は、I/F(インターフェース)202、回線I/F203、ROM(Read Only Memory)204、RAM(Random Access Memory)205、記憶装置206、CPU(Central Processing Unit)207、コア制御記述表作成部207a、CPUコア割り当て部207bから構成されている。また、画像処理管理を行う部分は、IO制御部208、画像処理部210、I/F212、表示制御部213、入力制御部214から構成されている。そして、これらの部分は、システムバス209及び画像バス215に接続されている。
【0014】
I/F202は、ネットワーク300と接続するためのインターフェース部である。I/F202は、ネットワーク300を介してクライアント端末100と通信を行う。また、I/F202は、ネットワーク300を介して図示しない監視サーバーとの通信も可能である。回線I/F203は、ISDNや公衆電話網に接続され、遠隔の端末とデータの送受信を行う。回線I/F203は、通信制御プログラムにより制御され、ファクシミリなどのデータ送受信を行う。
【0015】
ROM204には、各種プログラムが記憶されている。RAM205は、プログラムを実行するためのワークメモリである。また、RAM205は、たとえば、画像形成装置200を監視する監視プログラムがデバイス情報を管理するうえで必要なステータス情報、I/F202から受信した図示しないたとえば監視サーバーからのCPUコアの割り当てを示す設定情報、画像データなど一時記憶する。記憶装置206は不揮発性記憶装置であり、画像形成装置200の再起動後も保持しておく必要のある各種動作モード設定や、カウンター値(サイズ毎の印刷枚数や、原稿読み取り回数など)、及びステータスフラグなどを記憶する。
【0016】
CPU207は、複数のCPUコアを有している。また、CPU207は、ROM204や記憶装置206に格納された画像形成装置200の制御プログラム及び監視制御に関する監視プログラムを実行する。また、CPU207は、ROM204に記憶された各種プログラムをRAM205に読み出し、解析し、各種処理を実行する。
【0017】
CPU207は制御プログラムを実行することにより、ユーザーの指示するコピーやプリントなどの処理を実行する。また、CPU207で実行される監視プログラムは、記憶装置206内のカウンター値や稼働ログなどの稼働情報や障害情報を読み出し、画像形成装置200のステータス情報として図示しない監視サーバーへI/F202を介して送信することができる。ここで、稼働情報とは、カウンター値やログなどの通常稼働を行う際に生成される情報を示す。また、障害情報とは、ジャムやエラーなどの処理を実行できなくなったときの情報を示す。
【0018】
コア制御記述表作成部207aは、後述のコア制御記述表401〜404を作成する。CPUコア割り当て部207bは、後述のコア制御記述表401〜404を参照し、CPU207のCPUコアの割り当てを行う。なお、コア制御記述表作成部207aは、図示しない監視サーバーからの設定情報などを示すレポートに基づいて後述のコア制御記述表401〜404を作成することも可能である。図示しない監視サーバーからのレポートは、ウェブページや印字データの形式で取得可能である。また、CPUコア割り当て部207bによるCPU207のCPUコアの割り当ては、起動時、再起動時、省エネルギーモード(ディープスリープなど)からの復帰時などにおいて行う。
【0019】
IO制御部208は、システムバス209と画像バス215との間での画像データの転送を高速で行わせるためのバスブリッジである。画像バス215は、PCIバス又はIEEE1394などのバスで構成される。
【0020】
I/F212は、画像形成装置200のスキャナー部216、プリンター部217、FAX部218と制御系とを接続し、画像データの同期系/非同期系の変換を行う。また、スキャナー部216、プリンター部217、FAX部218内の各所に配置した図示しない各種センサーが検出した情報は、I/F212及びIO制御部208を介してシステムバス209に出力される。画像処理部210は、たとえば印刷データに対し、画像処理(ラスタライズ)を行う。画像処理の際は、印刷データに対し、補正/加工/編集なども行われる。
【0021】
表示制御部213は、表示部219に対し、コピー、プリンター、スキャナー、FAXなどの設定に関わる内容などを表示させる。入力制御部は、操作部220からの操作を受け付ける。ユーザーは、操作部220を通してスキャナー部216、プリンター部217、FAX部218に関する各種設定指示や、作動/停止指示を行う。また、ユーザーは、表示部219を介して、機能毎の使用頻度の確認や、装填されているトナー容器内の残量の確認などを行うことができる。
【0022】
次に、
図3を参照し、コア制御記述表作成部207aが作成するコア制御記述表401〜404について説明する。
【0023】
まず、
図3(a)は、コア制御記述表作成部207aが図示しない監視サーバーからの設定情報などを示すレポートに基づいて作成したコア制御記述表401を示している。このコア制御記述表401には、機能名の項目401a及びCPUコアの割り当て数の項目401bが含まれている。また、このコア制御記述表401は、図示しない監視サーバー側からの設定情報を受信して作成される場合を示している。
【0024】
すなわち、図示しない監視サーバー側では、画像形成装置200からのステータス情報を受信し、ステータス情報に含まれる機能毎の使用頻度情報(カウンタ情報など)を収集する。ステータス情報は、たとえば使用状況を示す各種カウンター情報やファームウェア情報に加え、画像処理状態を示すエラーやアラームなどの情報を含む。そして、図示しない監視サーバー側では、ステータス情報に含まれる機能毎の使用頻度情報(カウンタ情報など)を収集し、設定情報などを示すレポートを作成して画像形成装置200側に送信する。これにより、画像形成装置200側では、コア制御記述表作成部207aがコア制御記述表401を作成する。
【0025】
このコア制御記述表401では、コピーの機能(コピー処理プログラム)に対してCPUコアが「1」として設定されている。また、プリンターの機能(プリンター処理プログラム)に対してCPUコアが「4」として設定されている。また、送信(Scan to send)の機能(送信処理プログラム)に対してCPUコアが「1」として設定されている。
【0026】
そして、CPUコア割り当て部207bがコア制御記述表401を参照し、コピーの機能(コピー処理プログラム)、プリンターの機能(プリンター処理プログラム)、送信(Scan to send)の機能(送信処理プログラム)のそれぞれの機能に対してCPUコアの割り当てを行う。ここで、プリンターの機能(プリンター処理プログラム)に対してCPUコアが「4」として設定されているということは、プリンターの機能(プリンター処理プログラム)の使用頻度が高いことを示している。このように、プリンターの機能(プリンター処理プログラム)に対してCPUコアが「4」として設定されていることにより、起動時、再起動時、省エネルギーモード(ディープスリープなど)からの復帰時などで、CPUコア割り当て部207bによりプリンターの機能(プリンター処理プログラム)に対するCPUコアの割り当て数が「4」とされ、初期化処理の時間の短縮が可能となる。
【0027】
次に、
図3(b)は、コア制御記述表作成部207aが自ら機能毎の使用頻度情報(カウンタ情報など)を収集し、優先すべき機能を自動的に判別して作成したコア制御記述表402を示している。このコア制御記述表402には、上記同様に、機能名の項目402a及びCPUコアの最低割り当て数の項目402bが含まれている。このコア制御記述表402では、それぞれの機能(処理プログラム)に対してのCPUコアの最低割り当て数を示している。
【0028】
すなわち、コピーの機能(コピー処理プログラム)に対してCPUコアが最低「1」として設定されている。また、プリンターの機能(プリンター処理プログラム)に対してCPUコアが最低「4」として設定されている。また、送信(Scan to send)の機能(送信処理プログラム)に対してCPUコアが最低「1」として設定されている。この場合も、プリンターの機能(プリンター処理プログラム)に対してCPUコアが「4」として設定されているということは、プリンターの機能(プリンター処理プログラム)の使用頻度が高いため、プリンターの機能(プリンター処理プログラム)を優先させていることを示している。このように、プリンターの機能(プリンター処理プログラム)のCPUコアの割り当てを多くすることで、起動時、再起動時、省エネルギーモード(ディープスリープなど)からの復帰時などでの初期化処理の時間の短縮が可能となる。
【0029】
次に、
図3(c)は、起動時、再起動時、省エネルギーモード(ディープスリープなど)からの復帰時などに伴う初期化処理に加え、クライアント端末100からの印刷ジョブを受信してから行う初期化処理も存在することに対応させたコア制御記述表403を示している。このコア制御記述表403には、機能名の項目403a、CPUコアの最低割り当て数の項目403b、1stジョブ受付時の初期化処理の有無の項目403c、1stジョブ受付時の初期化処理を起動時に行うか否かの項目403dが含まれている。
【0030】
すなわち、コピーの機能(コピー処理プログラム)に対してCPUコアが最低「1」として設定されている。また、プリンターの機能(プリンター処理プログラム)に対してCPUコアが最低「4」として設定されている。また、送信(Scan to send)の機能(送信処理プログラム)に対してCPUコアが最低「1」として設定されている。
【0031】
また、このコア制御記述表403では、1st(ファースト)ジョブ受付時の初期化処理の有無の項目403cにおいて、コピーの機能(コピー処理プログラム)に対して「No」が設定され、プリンターの機能(プリンター処理プログラム)及び送信(Scan to send)の機能(送信処理プログラム)に対しては「Yes」が設定されている。
【0032】
また、このコア制御記述表403では、1stジョブ受付時の初期化処理を起動時に行うか否かの項目403dにおいて、プリンターの機能(プリンター処理プログラム)に対して「Yes」が設定され、送信(Scan to send)の機能(送信処理プログラム)に対して「No」が設定されている。このように、1stジョブ受付時の初期化処理の有無の項目403cと、1stジョブ受付時の初期化処理を起動時に行うか否か(有効又は無効)の項目403dにおいて、1stジョブ受付時における設定を行うことにより、起動時、再起動時、省エネルギーモード(ディープスリープなど)からの復帰時などに伴う初期化処理に加え、クライアント端末100からの印刷ジョブを受信してから行う初期化処理も存在することに対応させた初期化処理の時間の短縮が可能となる。
【0033】
なお、
図3(c)は、
図3(b)のコア制御記述表402をベースとして作成しているが、これに限らず、
図3(a)のコア制御記述表401をベースとして作成してもよい。
【0034】
次に
図4を参照し、たとえば
図3(b)に示すコア制御記述表402の作成処理について説明する。
【0035】
(ステップS101)
コア制御記述表作成部207aは、機能Nの使用回数を示すカウンター情報を取得する。ここで、機能Nとは、上述したコピーの機能(コピー処理プログラム)、プリンターの機能(プリンター処理プログラム)、送信(Scan to send)の機能(送信処理プログラム)を示している。すなわち、機能Nが3つであれば、使用回数を示すカウンター情報の取得がそれぞれの機能に対応して3回行われることになる。
【0036】
(ステップS102)
CPUコア割り当て部207bは、CPUコアの割り当てが上限に達したかどうか判断する。ここで、プリンターの機能(プリンター処理プログラム)の使用回数が一番多く、コピーの機能(コピー処理プログラム)及び送信(Scan to send)の機能(送信処理プログラム)が少なければ、コピーの機能(コピー処理プログラム)及び送信(Scan to send)の機能(送信処理プログラム)に対してのCPUコアの割り当てがそれぞれ最低「1」として割り当てられ、プリンターの機能(プリンター処理プログラム)に対してのCPUコアの最低割り当てがCPUコアの残り分とされる。
【0037】
これにより、CPUコアが6つであれば、コピーの機能(コピー処理プログラム)及び送信(Scan to send)の機能(送信処理プログラム)に対してのCPUコアの最低割り当ての上限が「1」であり、プリンターの機能(プリンター処理プログラム)に対してのCPUコアの最低割り当てが残りの「4」となる。
【0038】
そこで、それぞれの機能に対するCPUコアの最低割り当てが上限に達していなければ(ステップS102:No)、ステップS103に移る。それぞれの機能に対するCPUコアの最低割り当てが上限に達していれば(ステップS102:Yes)、ステップS104に移る。
【0039】
(ステップS103)
ここでは、コピーの機能(コピー処理プログラム)及び送信(Scan to send)の機能(送信処理プログラム)に対してのCPUコアの最低割り当てをそれぞれ「1」とする。また、プリンターの機能(プリンター処理プログラム)に対してのCPUコアの最低割り当てを「4」とする。そして、ステップS102に移る。
【0040】
(ステップS104)
CPUコア割り当て部207bは、それぞれの機能に対するCPUコアの最低割り当てが完了したかどうか判断する。それぞれの機能に対するCPUコアの最低割り当てが完了していなければ(ステップS104:No)、ステップS101に移る。それぞれの機能に対するCPUコアの最低割り当てが完了していれば(ステップS104:Yes)、処理を終了する。
【0041】
次に、
図5を参照し、
図3でのコア制御記述表401〜403とは異なる他のコア制御記述表404について説明する。すなわち、上述したコピーの機能(コピー処理プログラム)、プリンターの機能(プリンター処理プログラム)、送信(Scan to send)の機能(送信処理プログラム)のそれぞれの機能の中には、その機能を実現するために必要なサブ機能が共通で存在している場合がある。たとえば、プリンターの機能と送信(Scan to send)の機能では、どちらの機能も様々なIF(インターフェイス)があるが、ネットワーク300を介してのクライアント端末100からの印刷要求及びネットワーク300を用いた送信を考えた場合、ネットワーク機能が共通となる。
【0042】
また、コピーとプリンター印刷を考えた場合、ペーパーハンドリング機能やプリンタエンジン制御機能は共通での使用となる。さらに、コピーと送信機能であれば、スキャン機能が共通となる。このような複数の機能で用いられるサブ機能がある場合、より効率よく、きめ細かな初期化処理を実現するために、コア制御記述表作成部207aが次のようなコア制御記述表404を作成し、CPUコア割り当て部207bによるCPUコアの割り当て数を制御する。
【0043】
すなわち、コア制御記述表404には、機能名の項目404a、共通サブ機能名404b、CPUコアの最低割り当て数の項目404c、共通サブ機能を優先して初期化の項目404dが含まれている。
【0044】
ここで、項目404aのコピーの機能(コピー処理プログラム)に対しては、項目404bのスキャンとペーパーハンドリングとが「Yes」に設定され、さらに項目404dの共通サブ機能を優先して初期化が「Yes」に設定されている。また、項目404aのプリンターの機能(プリンター処理プログラム)に対しては、項目404bのペーパーハンドリングとネットワークとが「Yes」に設定され、さらに項目404dの共通サブ機能を優先して初期化が「No」に設定されている。また、項目404aの送信(Scan to send)の機能(送信処理プログラム)に対しては、項目404bのスキャンとネットワークとが「Yes」に設定され、さらに項目404dの共通サブ機能を優先して初期化が「Yes」に設定されている。
【0045】
そして、起動時、再起動時、省エネルギーモード(ディープスリープなど)からの復帰時などにおいては、CPUコア割り当て部207bがコア制御記述表404を参照し、それぞれの機能に対するCPUコアの割り当てを行う。
【0046】
ここで、プリンターの機能(プリンター処理プログラム)では、項目404dの共通サブ機能を優先して初期化が「No」に設定されているため、共通サブ機能を優先して初期化処理を行わず、プリンター固有のサブ機能(モジュール)を優先して初期化することになる。これに対し、コピーの機能(コピー処理プログラム)及び送信(Scan to send)の機能(送信処理プログラム)に対しては、項目404dの共通サブ機能を優先して初期化が「Yes」に設定されているため、共通サブ機能を優先して初期化処理を行うことになる。結果として、リソースの全てをプリンター印刷の初期化処理に関わる部分だけ優先して初期化することができることから、プリンターの機能(プリンター処理プログラム)における、起動時、再起動時、省エネルギーモード(ディープスリープなど)からの復帰時などでの初期化処理の時間の短縮が可能となる。
【0047】
次に、
図6を参照し、コア制御記述表作成部207aによる
図5のコア制御記述表404の作成処理について説明する。
【0048】
(ステップS201)
まず、コア制御記述表作成部207aは、初期化処理を優先する機能があるかどうかを判断する。ここでの判断は、上述したように、コピーの機能(コピー処理プログラム)、プリンターの機能(プリンター処理プログラム)、送信(Scan to send)の機能(送信処理プログラム)のそれぞれの機能の使用回数を示すカウンター情報を取得する。そして、たとえばプリンターの機能(プリンター処理プログラム)の使用回数が他の機能より多い場合、初期化処理を優先する機能があると判断し(ステップS201:Yes)、ステップS202に移る。これに対し、たとえばプリンターの機能(プリンター処理プログラム)の使用回数がたとえば他の機能と同程度の場合、初期化処理を優先する機能がないと判断し(ステップS201:No)、ステップS216に移る。
【0049】
(ステップS202)
コア制御記述表作成部207aは、初期化処理を優先する機能の機能名をカウンター情報から取得する。ここでは、プリンターの機能(プリンター処理プログラム)の機能名をカウンター情報から取得する。そして、ステップS203に移る。
【0050】
(ステップS203)
コア制御記述表作成部207aは、初期化処理の優先設定を取得する。そして、ステップS204に移る。
【0051】
(ステップS204)
コア制御記述表作成部207aは、優先設定が「最優先」かどうかを判断する。優先設定が「最優先」であれば(ステップS204:Yes)、ステップS205に移る。優先設定が「最優先」でなければ(ステップS204:No)、ステップS209に移る。
【0052】
(ステップS205)
コア制御記述表作成部207aは、初期化処理優先機能かどうか判断する。初期化処理優先機能であれば(ステップS205:Yes)、ステップS206に移る。初期化処理優先機能でなければ(ステップS205:No)、ステップS214に移る。
【0053】
(ステップS206)
コア制御記述表作成部207aは、
図5の項目404dの共通サブ機能を優先して初期化を「No」に設定する。そして、ステップS207に移る。
【0054】
(ステップS207)
コア制御記述表作成部207aは、
図5の項目404cのCPUコアの最低割り当てを、「全コア数−機能数+1」に設定する。そして、ステップS208に移る。
【0055】
(ステップS208)
コア制御記述表作成部207aは、全ての機能に対するCPUコアの最低割り当てが終了したかどうかを判断する。全ての機能に対するCPUコアの最低割り当てが終了しなければ(ステップS208:No)、ステップS204に移る。全ての機能に対するCPUコアの最低割り当てが終了していれば(ステップS208:Yes)、処理を終了とする。
【0056】
(ステップS209)
コア制御記述表作成部207aは、初期化処理優先機能かどうか判断する。初期化処理優先機能であれば(ステップS209:Yes)、ステップS210に移る。初期化処理優先機能でなければ(ステップS209:No)、ステップS212に移る。
【0057】
(ステップS210)
コア制御記述表作成部207aは、
図5の項目404dの共通サブ機能を優先して初期化を「No」に設定する。そして、ステップS211に移る。
【0058】
(ステップS211)
コア制御記述表作成部207aは、
図5の項目404cのCPUコアの最低割り当てを、「全コア数−機能数+1」に設定する。そして、ステップS208に移る。
【0059】
(ステップS212)
コア制御記述表作成部207aは、
図5の項目404cのCPUコアの最低割り当てを、「1」に設定する。そして、ステップS213に移る。
【0060】
(ステップS213)
コア制御記述表作成部207aは、コア制御記述表作成部207aは、
図5の項目404dの共通サブ機能を優先して初期化を「No」に設定する。そして、ステップS208に移る。
【0061】
(ステップS214)
コア制御記述表作成部207aは、
図5の項目404cのCPUコアの最低割り当てを、「1」に設定する。そして、ステップS215に移る。
【0062】
(ステップS215)
コア制御記述表作成部207aは、
図5の項目404dの共通サブ機能を優先して初期化を「Yes」に設定する。そして、ステップS208に移る。
【0063】
(ステップS216)
コア制御記述表作成部207aは、全ての機能において、
図5の項目404dの共通サブ機能を優先して初期化を「No」に設定する。そして、ステップS217に移る。
【0064】
(ステップS217)
コア制御記述表作成部207aは、全ての機能において、
図5の項目404cのCPUコアの最低割り当てを、「全コア数÷機能数」に設定する。なお、割り切れない場合は、余りを切り捨てる。そして、ステップS208に移る。
【0065】
このように、本実施形態では、コア制御記述表作成部207aは、複数の機能毎のCPUコアの割り当てを示すコア制御記述表401〜404が作成し、CPUコア割り当て部207bは、起動時、再起動時又は省エネルギーモードからの復帰時に、コア制御記述表401〜404を参照し、それぞれの機能にCPUコアが割り当てられる。
【0066】
これにより、起動時、再起動時、ディープスリープなどの省エネルギーモードからの復帰時などにおいて、ユーザーが使用したい機能の立ち上がりを早くすることができる。
【0067】
なお、コア制御記述表作成部207aは、図示しない監視サーバーからのCPUコアの割り当てを示す設定情報に基づき、コア制御記述表401を作成することができる。
【0068】
また、コア制御記述表作成部207aは、複数の機能毎の使用頻度情報を収集し、コア制御記述表402を作成することができる。
【0069】
また、コア制御記述表作成部207aは、最初の印刷ジョブを受信してから行う初期化処理の実行の有効又は無効を含むコア制御記述表403を作成することができる。この場合、起動時、再起動時、省エネルギーモード(ディープスリープなど)からの復帰時などに伴う初期化処理に加え、クライアント端末100からの印刷ジョブを受信してから行う初期化処理も存在することに対応させた初期化処理の時間の短縮が可能となる。
【0070】
なお、コア制御記述表作成部207aは、初期化処理を優先しない他の機能について、機能間で共通するサブ機能を優先して初期化するように、コア制御記述表404を作成することができる。この場合、たとえば初期化処理を優先しないコピーの機能(コピー処理プログラム)と送信(Scan to send)の機能(送信処理プログラム)の共通サブ機能を優先させ、初期化処理を優先するたとえばプリンターの機能(プリンター処理プログラム)の共通サブ機能を優先させないようにすることができる。これにより、リソースの全てをプリンター印刷の初期化処理に関わる部分だけ優先して初期化することができ、プリンターの機能(プリンター処理プログラム)における、起動時、再起動時、省エネルギーモード(ディープスリープなど)からの復帰時などでの初期化処理の時間の短縮が可能となる。
【0071】
なお、本実施形態では、本発明の電子機器を画像形成装置200に適用した場合で説明したが、この例に限らず、カーナビゲーション、PC(personal computer)、携帯端末などのような他の電子機器にも適用可能である。