(57)【要約】【課題】リアルタイム系の処理と非リアルタイム系の処理とが混在しつつ情報を処理する情報処理装置において、無駄なスケジューリング発生を極力抑制し、リアルタイム処理の遅延を抑え、より高性能な制御を行える情報処理装置を実現する。【解決手段】操作に関する指示の入力を受け付けると共に各種表示を行う操作表示部と、画像情報の処理を行う画像処理部と、同種複数のコアを備えたプロセッサと、を備える情報処理装置であって、リアルタイム性を必要としない前記操作部に関連するプロセスについての制御を前記プロセッサの一方のコアで担当するよう固定し、前記プロセスと動作上連携が必要な前記画像処理部に関連するプロセスについての制御を前記プロセッサの他方のコアで担当するよう固定する。【選択図】図１
2010226283.tif 000002
【特許請求の範囲】
【請求項１】
操作に関する指示の入力を受け付けると共に各種表示を行う操作表示部と、
画像情報の処理を行う画像処理部と、
同種複数のコアを備えたプロセッサと、
を備える情報処理装置であって、
リアルタイム性を必要としない前記操作部に関連するプロセスについての制御を前記プロセッサの一方のコアで担当するよう固定し、
前記プロセスと動作上連携が必要な前記画像処理部に関連するプロセスについての制御を前記プロセッサの他方のコアで担当するよう固定する、
ことを特徴とする情報処理装置。
【請求項２】
操作に関する指示の入力を受け付けると共に各種表示を行う操作表示部と、
画像情報の処理を行う画像処理部と、
同種複数のコアを備えたプロセッサと、
を備える情報処理装置であって、
前記操作表示部における指示の入力を受け付ける制御と、前記操作表示部に対する各種表示を行う制御と、前記画像処理部における処理の管理の制御と、をリアルタイム性を要しないプロセスとして前記プロセッサの一方のコアで担当し、
前記画像処理部における画像情報の処理についての制御をリアルタイム性を要するプロセスとして他方のコアで担当する、
ことを特徴とする情報処理装置。
【請求項３】
前記他方のコアで担当する画像情報の処理についての制御は、
前記一方のコアで担当される制御と、動作終了同期が必要なプロセスについての制御である、
ことを特徴とする請求項２に記載の情報処理装置。
【請求項４】
前記リアルタイム性を要しないプロセスは、
画像形成された記録紙の排紙に関する処理である、
ことを特徴とする請求項１または２に記載の情報処理装置。
【請求項５】
前記リアルタイム性を要しないプロセスは、
ジョブの管理である、
ことを特徴とする請求項１または２に記載の情報処理装置。
【請求項６】
前記リアルタイム性を要しないプロセスは、
画像形成する画像についてのサムネイル画像の生成である、
ことを特徴とする請求項１または２に記載の情報処理装置。
【請求項７】
前記リアルタイム性を要しないプロセスは、
割り込み画像形成出力の管理、または、サンプルの画像形成出力の管理である、
ことを特徴とする請求項１または２に記載の情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、リアルタイム系の処理と非リアルタイム系の処理とが混在しつつ情報を処理する情報処理装置におけるプロセッサの処理並びにスケジューリングの改善に関する。
【背景技術】
【０００２】
従来の画像形成装置において、画像形成に関する小ジョブが連続して実行される場合などでは、画像形成装置の操作部の応答性が悪くなることが知られている。
ここで、操作部には、高速な描画ＧＰＵが割り当てられているが、描画指示制御は本体シングルコアＣＰＵで実施している。このプロダクション機にて高速出力処理を行うと、シングルコアＣＰＵではプロセス遷移待ちによって操作部の描画指示が遅れ、低優先度のスレッドプロセスとして割り振られている操作部描画処理は応答性が悪くなる問題が発生する。
【０００３】
また、通常の複写機におけるジョブ処理は、複数プロセスが並列に連携動作することで処理されている。そのため、複写機全体はヘテロジニアスな異なる機能や性質の複数のＣＰＵで各モジュールあるいは各基板が制御されており、それらを統合する形で、全体制御基板上のＣＰＵが複数プロセスを制御している。
【０００４】
この場合において、現状ではシングルコアＣＰＵを複数個用いて、オペレーティングシステム（ＯＳ）が提供するスレッド機構によって複数プロセスを並行的に動作させている。
【０００５】
例えば、複数の物理媒体の初期化制御などは、一つのスレッドプロセスが順番に初期化処理を行うよりも、複数のスレッドプロセスが同時に行った方が早いことが知られている。
【０００６】
特に、カラーの画像処理装置や画像形成装置では、各色毎に同等のハードウェアデバイスを備えている場合が多くあり、同時並行的処理により処理速度を向上させている。なお、この種の処理については、以下の特許文献１に効率的な処理についての提案がなされている。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特公平2-22377号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
以上の特許文献１の先行技術例では、応答性改善のために操作部側に別のＣＰＵを割り当てている。すなわち、特許文献１記載の発明は、異なる制御ＣＰＵを用いたヘテロジニアスなマルチコア環境にて制御ＣＰＵおよび管理ＣＰＵなどと別々の役割をもたせスムーズな動作を実施するようにしている。
【０００９】
これにより、応答性の改善はなされるが、全体のコストアップや本体と連携動作のための通信制御が必要になるなど問題があった。
例えば、ＳＭＰ（symmetrical multiprocessing：対称型マルチプロセシング）型ＯＳの場合には、複数スレッドプロセスを自動的にアイドル中のコアに振り分け、処理能力向上することが実現されている。このＳＭＰ型ＯＳの場合、ＣＰＵコアの共有メモリに１個のＯＳを展開し，そのＯＳ管理下で複数のＣＰＵコアにアプリケーション・ソフトウエアなどの処理を割り当てる。
【００１０】
更には、複写機のようなリアルタイム環境においてマルチコアによるディスパッチタイミングずれなどを防ぐためのハードアフィニティ機構を備えるＯＳもあり、今後これらの活用が期待されている。
【００１１】
しかしながら、現時点では、画像形成装置などの装置において、以上の課題を解決する手法は存在していなかった。
本発明は以上の問題点を解決するものであり、リアルタイム系の処理と非リアルタイム系の処理とが混在しつつ情報を処理する情報処理装置において、無駄なスケジューリング発生を極力抑制し、リアルタイム処理の遅延を抑え、より高性能な制御を行える情報処理装置を実現することを目的とする。
【課題を解決するための手段】
【００１２】
〔Ａ〕本発明は、リアルタイム処理を行う２個以上の並列処理プロセスと、そのプロセス群を管理する非リアルタイム処理の１個のプロセスを、それぞれ別々のコアで実行させることにより、無駄なスケジューリング発生を極力抑制しリアルタイム処理の遅延を抑え、より高性能な複写機制御を行えるようにする。
【００１３】
そして、マルチコアＣＰＵを用いアフィニティ機構にてＣＭＹＫ各色毎に並列動作するリアルタイムプロセス制御処理プロセス群を専用コアへ割り当て、それらプロセスを管理するマネジャープロセスを残りのコアで実行する。マネジャープロセスはリアルタイムプロセスの開始指示と各プロセスが終了するまで同期待ちするため、リアルタイムプロセスと同じコアで実行するとスケジューリングに依存するが無駄にＣＰＵ資源を消費する場合がある。
【００１４】
従来は、優先度によりリアルタイムプロセスをより優先して処理しており、操作部処理などは比較的低優先度で実施することで、必要なタイミング設計を実施していた。しかし近年、従来のＲＴＯＳより高機能な一般ＯＳを組込みで利用する機会が増えている。例えば従来の１プロセス複数スレッド型ＲＴＯＳなら全て優先度のみで制御できていたものが、複数プロセス複数スレッドの一般ＯＳにより前提が崩れ、他プロセスへも比較的均等にプロセスがスケジューリングされるなどの影響で、従来型ＲＴＯＳで想定していない動作を行う場合があり苦労している。
【００１５】
更には、マルチコアでは並列動作で優先度に任せていた前提が崩れるため、より一層プロセス実行を適切に設計する必要が生じている。そこで今回は、各ＣＭＹＫ色が完全に並列処理されているプロダクション機の特性を活かした上で、応答性を確保しつつ高性能化を進める。
【００１６】
すなわち、本発明では、ハードアフィニティ機構により特定プロセスを特定コアに割り当てる際に、プロダクション機に適した割り当てを行うことを特徴としている。
すなわち、本発明では、中央制御ＣＰＵを更にホモジニアスなマルチコアにし、それぞれのコアで役割分担を動的に変更することにより、複写機動作などの情報処理装置の動作状況に応じて要求に応じたスムーズな動作制御を実施可能にする。
【００１７】
ところで、このような環境においてマルチコアＣＰＵを導入することで同じレベルの電力消費で処理能力向上することが期待されている。プロダクション機では、高速処理のために各ＣＭＹＫの各色毎にメモリバッファ用ＨＤＤを持つことや、基板クロックの高速化に伴う消費電力増加も大きいため、安定した電源容量確保が急務である。本発明で使用するマルチコアＣＰＵは比較的低速なクロックで、ソフト並列化により処理性能向上が計れ、かつ、複数個のＣＰＵを使うなどに比べても消費電力を抑えられるため、現状問題の改善に望ましい特質をもつ。
【００１８】
更には、現在の組込み制御ソフトは高度な処理を実装しており、安易に構成を変えることが難しい場合がある。ソフト資産の流用は言うまでもなく重要な課題であり、全く新規に設計することはリスクやコスト上昇を伴う。本発明の手法であれば、ソフト構成の大幅な変更なしに適用でき性能向上が期待できる。
【００１９】
すなわち、本発明では、リアルタイム処理を行う２個以上の並列処理プロセスと、そのプロセス群を管理する非リアルタイム処理の１個のプロセスを、それぞれ別々のコアで実行させることにより、無駄なスケジューリング発生を極力抑制しリアルタイム処理の遅延を抑え、より高性能な複写機制御を行えるようにする。
【００２０】
〔Ｂ〕上述した課題を解決する本願発明は、以下に述べる通りである。
（Ｂ１）請求項１記載の発明は、操作に関する指示の入力を受け付けると共に各種表示を行う操作表示部と、画像情報の処理を行う画像処理部と、同種複数のコアを備えたプロセッサと、を備える情報処理装置であって、リアルタイム性を必要としない前記操作部に関連するプロセスについての制御を前記プロセッサの一方のコアで担当するよう固定し、前記プロセスと動作上連携が必要な前記画像処理部に関連するプロセスについての制御を前記プロセッサの他方のコアで担当するよう固定する、ことを特徴とする情報処理装置である。
【００２１】
（Ｂ２）請求項２記載の発明は、操作に関する指示の入力を受け付けると共に各種表示を行う操作表示部と、画像情報の処理を行う画像処理部と、同種複数のコアを備えたプロセッサと、を備える情報処理装置であって、前記操作表示部における指示の入力を受け付ける制御と、前記操作表示部に対する各種表示を行う制御と、前記画像処理部における処理の管理の制御と、をリアルタイム性を要しないプロセスとして前記プロセッサの一方のコアで担当し、前記画像処理部における画像情報の処理についての制御をリアルタイム性を要するプロセスとして他方のコアで担当する、ことを特徴とする情報処理装置である。
【００２２】
（Ｂ３）請求項３記載の発明は、前記他方のコアで担当する画像情報の処理についての制御は、前記一方のコアで担当される制御と、動作終了同期が必要なプロセスについての制御である、ことを特徴とする請求項２に記載の情報処理装置である。
【００２３】
（Ｂ４）請求項４記載の発明は、前記リアルタイム性を要しないプロセスは、画像形成された記録紙の排紙に関する処理である、ことを特徴とする請求項１または２に記載の情報処理装置である。
【００２４】
（Ｂ５）請求項５記載の発明は、前記リアルタイム性を要しないプロセスは、ジョブの管理である、ことを特徴とする請求項１または２に記載の情報処理装置である。
（Ｂ６）請求項６記載の発明は、前記リアルタイム性を要しないプロセスは、画像形成する画像についてのサムネイル画像の生成である、ことを特徴とする請求項１または２に記載の情報処理装置である。
【００２５】
（Ｂ７）請求項７記載の発明は、前記リアルタイム性を要しないプロセスは、割り込み画像形成出力の管理、または、サンプルの画像形成出力の管理である、ことを特徴とする請求項１または２に記載の情報処理装置である。
【００２６】
（Ｃ）なお、中央制御ＣＰＵを構成するプロセッサは、基本的なプロセススケジューリングやメッセージ管理などを含んだＲＴＯＳやＩ／Ｏデバイス制御、操作画面処理、小規模な画像演算処理用として利用されるものであり、各プロセスはメモリ空間やＩ／Ｏデバイスをローカルバス経由で共有可能な状態で実行される。
【００２７】
Ｉ／Ｏデバイスや操作画面などは専用制御Ｈ／Ｗを別途持ちマスター動作可能だが全体制御はこの中央制御ＣＰＵより実施する。
また、印刷プロセス動作や複写機オプション制御などは物理的に別のＣＰＵやマイコンで制御され、中央制御ＣＰＵとはコマンド通信により動作制御しており、メモリ空間やＩ／Ｏデバイスを直接共有していない。
【００２８】
上記のリアルタイム性を必要としないプロセスと操作部ボタンが関連する場合に、リアルタイム性を必要としないプロセスを操作部処理プロセスが動作するコアに固定化することを特徴とし、またリアルタイム性を必要としないプロセスが従来の同様処理プロセスから動的にクローン生成されることにより、現在動作中の処理情報を引き継ぎつつ別処理を行うことを、操作部押下タイミングに同期して行うことを特徴とする。
【００２９】
そして、上記において、動作終了同期が必要なプロセス分類粒度に、色ＣＭＹＫや属性情報プレーン単位の個々のプロセス単位を用いる。
更に、リアルタイム性を必要としないプロセスに、プリント動作中の割り込み出力やサンプル出力などを管理するプロセスを含む。
【００３０】
また上記ＲＴＯＳはＳＭＰ型ＯＳでありプロセスを各コアに固定化するアフィニティ機構を持ったＢＭＰ型ＯＳを用いる。
更に各色を制御するＡＳＩＣ群を含んだＩ／Ｏデバイスは色や属性情報プレーンで物理的に完全に並列化されている構成とする。
【発明の効果】
【００３１】
以上の発明によれば、以下のような効果を得ることができる。
同種複数のコアを備えたプロセッサによる情報処理装置の制御において、リアルタイム性を必要としない操作部に関連するプロセスについての制御をプロセッサの一方のコアで担当するよう固定し、プロセスと動作上連携が必要な画像処理部に関連するプロセスについての制御を前記プロセッサの他方のコアで担当するよう固定することで、リアルタイム処理を行う２個以上の並列処理プロセスと、そのプロセス群を管理する非リアルタイム処理の１個のプロセスを、それぞれ別々のコアで実行させることになり、無駄なスケジューリング発生を極力抑制しリアルタイム処理の遅延を抑え、より高性能な制御を行えるようになる。
【００３２】
また、同種複数のコアを備えたプロセッサによる情報処理装置の制御において、操作表示部における指示の入力を受け付ける制御と、操作表示部に対する各種表示を行う制御と、画像処理部における処理の管理の制御とをリアルタイム性を要しないプロセスとしてプロセッサの一方のコアで担当し、画像処理部における画像情報の処理についての制御をリアルタイム性を要するプロセスとして他方のコアで担当することで、リアルタイム処理を行う２個以上の並列処理プロセスと、そのプロセス群を管理する非リアルタイム処理の１個のプロセスを、それぞれ別々のコアで実行させることになり、無駄なスケジューリング発生を極力抑制しリアルタイム処理の遅延を抑え、より高性能な制御を行えるようになる。
【００３３】
すなわち、本発明では、リアルタイム処理を行う２個以上の並列処理プロセスと、そのプロセス群を管理する非リアルタイム処理の１個のプロセスを、それぞれ別々のコアで実行させることにより、無駄なスケジューリング発生を極力抑制しリアルタイム処理の遅延を抑え、より高性能な複写機制御を行えるようになる。
【図面の簡単な説明】
【００３４】
【図１】本発明の実施形態の概略構成を示す構成図である
【図２】本発明の実施形態の動作を示すタイムチャートである。
【図３】本発明の実施形態を説明する説明図である。
【発明を実施するための形態】
【００３５】
以下、図面を参照して本発明の情報処理装置を実施するための形態（実施形態）を詳細に説明する。
〔情報処理装置１００の構成〕
ここで、第一実施形態の情報処理装置１００の構成を、図１（ブロック図）に基づいて詳細に説明する。
【００３６】
なお、この実施形態の情報処理装置１００としては、各種の情報処理装置に適用が可能であるが、ここでは、ネットワークに接続された、スキャナ，複写機，プリンタ，ファクシミリ装置の機能を備えた複合機（ＭＦＰ）、あるいは複写機を具体例にして説明を続ける。すなわち、画像処理装置として、複写機やプリンタを具体例として説明する。このため、請求項における画像処理としては、実施形態ではプリント処理がメインの処理となる。
【００３７】
また、情報処理装置１００として既知であって、本実施形態の特徴的な動作や制御に直接に関係しない一般的な部分についての説明は省略してある。
本実施形態の情報処理装置１００は、各部を制御する制御部としての同種複数のコアを備えたＣＰＵ（Central Processing Unit）１０１、システムバス１０２、操作表示部１０３、ＲＯＭ（Read Only Memory）１０５、ＲＡＭ（Random Access Memory）１０７、画像入力部１１０、画像処理部１２０、画像メモリ１３０（１３０Ｙ，１３０Ｍ，１３０Ｃ，１３０Ｋ，１３０Ａ，１３０Ｂ）、画像出力部１４０、を備えて構成される。ここで、情報処理装置１００を構成する各部はシステムバス１０２を介して相互に接続されている。
【００３８】
ＣＰＵ１０１は、インストールされているＯＳ（Operating System）またはファームウェア等に基づいて、情報処理装置１００の制御プログラムに従って、情報処理装置１００を構成する各部を制御して、各種の演算処理を行うことによって、情報処理装置を統括的に制御する。
【００３９】
そして、このＣＰＵ１０１は、同種であって複数のコア１０１Ca，コア１０１Cb、コア１０１Ca用のＬ１キャッシュ１０１L1a、コア１０１Cb用のＬ１キャッシュ１０１L1b、各コア共通のＬ２キャッシュ１０１L2、を備えて構成された、ホモジニアスなマルチコアＣＰＵである。なお、ここでは、コアが２つの例を示したが、これより多い数であってもよい。
【００４０】
操作表示部１０３にはＣＰＵ１０１からの指示による各種メッセージ表示がなされ、また、利用者からの操作がＣＰＵ１０１に伝達される。
ＲＯＭ１０５は、ＢＩＯＳ（Basic Input Output System）や各種プログラムを記憶する読み出し専用のメモリである。ここで、ＢＩＯＳは、ＣＰＵ１０１の基本動作を制御するためのプログラム（ファームウェア）である。また、ＢＩＯＳは、ＣＰＵ１０１に起動イベントが発生したときに、最初に実行され、各コンポーネントを初期化するためのＰＯＳＴ（Power On Self Test）処理を実行するものである。
【００４１】
ＲＡＭ１０７は、ＣＰＵ１０１の作業用領域（メインメモリ）として使用される揮発性のメモリである。例えばＲＯＭ１０５等に記憶されたＯＳや制御プログラム、画像メモリ１３０に記憶された処理データ等を一時的に記憶する揮発性のメモリである。
【００４２】
画像入力部１１０は、原稿から画像を読み取って画像データを入力するスキャナなどの画像入力手段である。原稿から画像を読み取って画像データを取得する画像入力部１１０は、走査光源部、走査ミラー部、結像レンズ、ＣＣＤイメージセンサから構成される。なお、情報処理装置１００が映像録画装置などの場合には、画像入力部１１０としては、映像入力端子、チューナ、ＤＶＤプレーヤなどが該当する。
【００４３】
画像処理部１２０としては、情報処理装置１００において処理すべきデータ（画像データあるいは映像データ）を必要に応じて画像処理する。なお、この際に、処理前あるいは処理中あるいは処理後の画像データを、画像出力までの間にスプールデータとして画像メモリ１３０に記憶させる。
【００４４】
画像メモリ１３０は、画像データや各種データを記憶させる不揮発性の記憶部（不揮発性記憶手段）を構成しており、大容量の記憶装置である。なお、ここでは、複数の画像メモリとして、イエローＹ用の画像メモリ１３０、マゼンタＭ用の画像メモリ１３０Ｍ、シアンＣ用の画像メモリ１３０Ｃ、黒Ｋ用の画像メモリ１３０Ｋ、他のデータ用の画像メモリ１３０Ａ、他のデータ用の画像メモリ１３０Ｂ、を備えた例を示している。
【００４５】
画像出力部１４０としては、情報処理装置１００が上述した複合機である場合には、記録材上にトナー像を形成するプリンタとして構成することが可能である。なお、情報処理装置１００が映像録画装置などの場合には、画像出力部１４０としては、映像出力端子、映像表示装置（ディスプレイ）などが該当する。
【００４６】
〔情報処理装置１００の動作〕
以下、図２の説明図、図３のフローチャートを参照して、本実施形態の情報処理装置１００のバックアップ処理の動作を説明する。
【００４７】
ジョブやページ単位でのＣＰＵ振り分けは、従来は、物理的に異なるＣＰＵ間で振り分ける内容が多く提案されている。しかしコストアップが生じる問題や、ＣＰＵ間の通信処理が発生するなど、新たに発生する問題点も多い。そこで、ジョブやページ単位でのＣＰＵの振り分けを、マルチコアＣＰＵのコア間で行うことでそれらの問題は改善できることが予想される。
【００４８】
例えば、デュアルコア利用時に通常は片方のコアを画像処理などの本体制御、もう片方のコアを操作表示部１０３の制御に用いる。パワーセーブ時など操作表示部１０３が必要ない状態の場合は、自動的に両方のコアで画像処理のプロセスを振り分け、プリント処理効率アップを行う。
【００４９】
動的にプロセスレベルでコア利用を変更することで、シングルコアの複数ＣＰＵでは出来ない最適化処理が実現できる。またプリント処理と関連性の低いプロセスは優先度が低い値に設定されている、これらは別コアに振り分けることでプリント処理への影響を最小限に応答性能を上げる最適化処理が実現できる。などが挙げられる。
【００５０】
しかし、どのような振り分け方が最適手法かは明らかではなく、それぞれのアプリケーション毎に異なる。特に高速動作を必要とするプロダクション機器では、各色毎に並列にデバイスを持った機器があり、この構成を活かし並列性を増すことでジョブ処理性能を向上させるよう、コアを利用することが必要であり、下記例における振り分けを説明する。
【００５１】
例えば下記のようなジョブの場合に、より細かい分割で性能向上やデバッグ効率アップが計れる。
上記のプロセスクローン化を以下のＪＯＢ制御に用いることを特徴とした複写機制御を提案する。
【００５２】
リアルタイム性の必要のあるプロセスとして、スキャナやプリント制御のプロセス、リアルタイム性の必要のないプロセスとして、たとえば、サンプル排紙、ＪＯＢチケット編集、サムネイル生成、ＪＯＢスケジュール編集、緊急処理プロセスなどとして、それぞれをＣＰＵ１０１の別コアに割り振る。
【００５３】
この場合、サンプル排紙など動作中に操作部のボタン押下をきっかけに並行して作業を行うが、操作部を動作させているコア上でボタン押下メッセージを処理する方が、コア間を跨がずに最適な反応を望むことが可能である。
【００５４】
実際のプリント処理は操作部のコアと別のコアでリアルタイム動作しており、排紙指示や排出状態管理（枚数、ページ情報など）は非リアルタイムな処理であるため、操作部を動作させているコア上でサンプル排紙管理用のタスクを固定化させることで、プリント処理をとどこおらせずに操作部反応を最適化することが可能である。
【００５５】
通常、それぞれのコアに対して、図２のように、制御プログラムにおいて各プロセスを割り振っておく。
・ハードリアルタイム系：プロセス応答（書き込み制御、スキャナ制御、ＡＳＩＣ画像処理、メモリ制御）
・ソフトリアルタイム系：外部記憶処理、操作部制御、通信制御（本体制御を含むネットアプリ）
・ノンリアルタイム系：デバイス初期化処理、ネットアプリ（Ｗｅｂ等）、ユーティリティ処理（バックアップ、レストアー）
デュアルコアＣＰＵの場合、コア数が少ないためハードリアルタイム系をリアルタイム性のあるプロセスとして扱い、ソフトリアルタイム系をリアルタイム性の必要のないプロセスとして扱うようにして、それぞれを別々のコアにまとめる。
【００５６】
また初期化処理を除く低優先度ノンリアルタイム系はコア割り当てをＳＭＰ型ＯＳに任せるなどの実装を行う。１コアに留めるとメモリキャッシュヒット率があがりより効率的にプロセス動作が行える。そのためにアフィニティ機構を持つＢＭＰ型ＯＳであることが必須となる。
【００５７】
プロダクションプリントには出力ジョブの途中内容を検査する目的でサンプル出力機能がある。これは通常ジョブによるプリント実行中に、操作表示部１０３の「サンプル出力」ボタン押下に応じて、サンプル画像形成出力の記録紙を別トレイに少数出力する機能であり、一時的に通常プロセス設定を変更して行う。
【００５８】
これまでのシングルコアＣＰＵでは通常の画像形成のプリント出力の合間に、逐次的に通常プロセスの設定を変更してサンプル出力を作成し、出力経路や排紙トレイを変更することで、サンプル出力を実施する。そして、その後に通常プロセスの設定に戻り、プロセス実行を継続している。またサンプル出力処理用の専用プロセスを立ち上げ、サンプル出力処理を行うことも考えられる。
【００５９】
このようなサンプル出力を定期的に実施する場合など出力部数の枚数管理などをカウンタにより実施している。これは出力プロセス、あるいは指示プロセス側で実施されているが、出力タイミングが合っていればリアルタイム性を必要とするものではない。
【００６０】
このため、シングルＣＰＵ上では管理プロセスとして実装すれば良いが、カウント管理とプリントのリアルタイム制御は別々のＣＰＵコアで実施しても問題なく、またリアルタイム動作への影響が少なくなることや、他処理の受け付けなどが有利になる。
【００６１】
サンプル出力など影響は微細であるが通常動作に対してカウント処理を加えるものであり、リアルタイムリソース内で実行するより、ノンリアルタイムで実行する方が全体生産性へは好影響であることを本件出願の発明者が見いだした。またＳＭＰ型ＯＳであれば共有メモリ上でカウント変数を管理できるため、実装変更量も少ない効率的な実装が可能である。
【００６２】
このように、マルチコアＣＰＵを用いた場合に、リアルタイム性を必要としない操作表示部１０３に関連するプロセスについての制御をＣＰＵの一方のコアで担当するよう固定し、上記プロセスと動作上連携が必要なプリントに関連するリアルタイム性を必要とするプロセスについての制御をＣＰＵの他方のコアで担当するよう固定しておき、サンプル出力については、リアルタイム性を必要としないプロセスとして一方のコアで扱うようにする。
【００６３】
また、このように、サンプル出力について、リアルタイム性を必要としないプロセスとして扱うことにより、例えば従来方式で定期出力を管理した場合に比べ、定期出力カウンタをユーザがより任意のタイミングで設定できるようになる。従来ではリアルタイム動作に阻まれるため、カウンタ管理プロセスへの制御が滞る場合があったが、別コア制御になりリアルタイム動作から直接制約を受けないため、カウンタ設定（およびユーザＧＵＩ操作）を生産性への影響なく任意のタイミングで実施できるようになる。
【００６４】
また、入力ＧＵＩとカウンタ管理は通常別プロセスであり、入力中もカウンタ処理がとぎれることはない。サンプル出力に限らずユーザＧＵＩと値管理プロセスが連動する場合に、このようなコア割り当ての手法は応用できるため、従来実装を大きく変更することなく、ユーザビリティや生産性改善につながる。ＧＵＩ処理はノンリアルタイム処理としてコア割り当てされるためキャッシュ共有の面からも望ましい。
【００６５】
特に、ガントチャート様式で複数ジョブを管理するジョブスケジューリング画面などでは、多くの画面要素をリアルタイム動作時に描画更新する必要があり、コア割り当てを固定する効果が大きい。
【００６６】
以上の割り振りを元に情報処理装置１００で画像形成を実行した際の各プロセスについて、図３にタイムチャートを示す。この場合、操作表示部１０３のパネル押下に応じてジョブの管理等のリアルタイム性の必要のないプロセスが一方のコアで実行され、画像形成等のリアルタイム性の必要のあるプロセスについては他方のコアで実行する。そして、画像形成のプロセスの終了については、他方のコアから一方のコアに通知がなされ、ジョブの完了の処理がなされる。
【００６７】
すなわち、以上説明したように、同種複数のコアを備えたＣＰＵによる情報処理装置の制御において、リアルタイム性を必要としない操作部に関連するプロセスについての制御をＣＰＵの一方のコアで担当するよう固定し、プロセスと動作上連携が必要な画像処理部に関連するプロセスについての制御を前記ＣＰＵの他方のコアで担当するよう固定することで、リアルタイム処理を行う２個以上の並列処理プロセスと、そのプロセス群を管理する非リアルタイム処理の１個のプロセスを、それぞれ別々のコアで実行させることになり、無駄なスケジューリング発生を極力抑制しリアルタイム処理の遅延を抑え、より高性能な複写機制御を行えるようになる。
【００６８】
また、同種複数のコアを備えたＣＰＵによる情報処理装置の制御において、操作表示部における指示の入力を受け付ける制御と、操作表示部に対する各種表示を行う制御と、画像処理部における処理の管理の制御とをリアルタイム性を要しないプロセスとしてＣＰＵの一方のコアで担当し、画像処理部における画像情報の処理についての制御をリアルタイム性を要するプロセスとして他方のコアで担当することで、リアルタイム処理を行う２個以上の並列処理プロセスと、そのプロセス群を管理する非リアルタイム処理の１個のプロセスを、それぞれ別々のコアで実行させることになり、無駄なスケジューリング発生を極力抑制しリアルタイム処理の遅延を抑え、より高性能な複写機制御を行えるようになる。
【００６９】
すなわち、本発明では、リアルタイム処理を行う２個以上の並列処理プロセスと、そのプロセス群を管理する非リアルタイム処理の１個のプロセスを、それぞれ別々のコアで実行させることにより、無駄なスケジューリング発生を極力抑制しリアルタイム処理の遅延を抑え、より高性能な複写機制御を行えるようになる。
【符号の説明】
【００７０】
１００  情報処理装置
１０１  ＣＰＵ
１０１Ca  コア-a
１０１Cb  コア-b
１０１L1a  Ｌ１キャッシュ
１０１L1b  Ｌ１キャッシュ
１０１L2  Ｌ２キャッシュ
１０３  操作表示部
１０５  ＲＯＭ
１０７  ＲＡＭ
１１０  画像入力部
１２０  画像処理部
１３０  画像メモリ
１４０  画像出力部
【図１】
2010226283.tif 000003
【図２】
2010226283.tif 000004
【図３】
2010226283.tif 000005