(57)【要約】【課題】  マルチファンクションの画像入出力装置における画像処理の実行効率を大幅に向上させる。【解決手段】  画像情報を入出力する画像情報入出力装置であって、前記画像情報入出力手段によって入力された画像情報を所定のサイズのバンド単位でハードウェアによって処理するためのハードウェア画像処理手段と、前記画像情報入出力手段によって入力された画像情報を所定のサイズのバンド単位でソフトウェアによって処理するためのソフトウェア画像処理手段とを有し、実行されるジョブの優先度に応じて、前記ハードウェア画像処理手段と前記ソフトウェア画像処理手段をバンド単位で使い分けることを特徴とする。【選択図】        図１
2006173843.tif 000002
【特許請求の範囲】
【請求項１】
画像情報を入出力する画像情報入出力装置であって、
前記画像情報入出力手段によって入力された画像情報を所定のサイズのバンド単位でハードウェアによって処理するためのハードウェア画像処理手段と、
前記画像情報入出力手段によって入力された画像情報を所定のサイズのバンド単位でソフトウェアによって処理するためのソフトウェア画像処理手段とを有し、
実行されるジョブの優先度に応じて、前記ハードウェア画像処理手段と前記ソフトウェア画像処理手段をバンド単位で使い分けることを特徴とする画像情報入出力装置。
【請求項２】
画像情報を入出力する画像情報入出力装置であって、
前記画像情報入出力手段によって入力された画像情報を所定のサイズのバンド単位でハードウェアによって処理するためのハードウェア画像処理手段と、
前記画像情報入出力手段によって入力された画像情報を所定のサイズのバンド単位でソフトウェアによって処理するためのソフトウェア画像処理手段とを有し、
実行されるジョブの優先度に応じて、前記ハードウェア画像処理手段と前記ソフトウェア画像処理手段をジョブあるいはバンド単位で使い分けることを特徴とする画像情報入出力装置。
【請求項３】
ジョブに対して予め優先度を設定することが可能なジョブ優先度設定手段とを具備し、
前記ジョブの優先度は前記ジョブ優先度設定手段によって設定されたものであることを特徴とする請求項１又は２記載の画像情報入出力装置。
【請求項４】
画像情報入出力装置を使用するユーザを特定するユーザ判定手段と、
ユーザに応じたジョブの実行優先度を設定可能なユーザ優先度設定手段とを
具備し、
前記ジョブの優先度は前記ユーザ優先度設定手段によって設定されたもので、ジョブ実行時にはユーザ判定手段にてユーザを判別するとともに前記ユーザ湯運鮮度設定手段によって設定されたジョブ優先度に応じてハードウェア画像処理手段とソフトウェア画像処理手段を使い分けることを特徴とする請求項１又は２記載の画像情報入出力装置。
【請求項５】
画像情報を入出力する画像情報入出力装置であって、
前記画像情報入出力手段によって入力された画像情報を所定のサイズのバンド単位でハードウェアによって処理するためのハードウェア画像処理手段と、
前記画像情報入出力手段によって入力された画像情報を所定のサイズのバンド単位でソフトウェアによって処理するためのソフトウェア画像処理手段とを有し、
実行されるジョブの種類に応じて、前記ハードウェア画像処理手段と前記ソフトウェア画像処理手段をバンド単位で使い分けることを特徴とする画像情報入出力装置。
【請求項６】
画像情報を入出力する画像情報入出力装置であって、
前記画像情報入出力手段によって入力された画像情報を所定のサイズのバンド単位でハードウェアによって処理するためのハードウェア画像処理手段と、
前記画像情報入出力手段によって入力された画像情報を所定のサイズのバンド単位でソフトウェアによって処理するためのソフトウェア画像処理手段とを有し、
実行されるジョブの種類に応じて、前記ハードウェア画像処理手段と前記ソフトウェア画像処理手段をジョブあるいはバンド単位で使い分けることを特徴とする画像情報入出力装置。
【請求項７】
前記バンドは１頁であることを特徴とする請求項１乃至５いずれか記載の画像情報入出力装置。
【請求項８】
前記画像処理は画像圧縮伸張処理であることを特徴とする請求項１乃至７いずれか記載の画像情報入出力装置。
【請求項９】
前記画像処理は画像回転処理であることを特徴とする請求項１乃至７いずれか記載の画像情報入出力装置。
【請求項１０】
前記画像処理は画像変倍処理であることを特徴とする請求項１乃至７いずれか記載の画像情報入出力装置。
【請求項１１】
前記画像処理は画像変倍処理であることを特徴とする請求項１乃至７いずれか記載の画像情報入出力装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像情報入出力装置の印刷制御ユニットで画像処理を行う場合に、その画像処理をハードウェア、ソフトウェア、もしくはその両方で行うことの出来る画像処理装置に関する。
【背景技術】
【０００２】
ネットワーク技術の普及に伴い、マルチファンクションの複写機やプリンタなどにより、ネットワーク上で画像等のデータのやり取りが頻繁に行われるようになってきた。多くの場合、ネットワーク負荷を減らし、高速にデータ伝送を行うためデータ圧縮（符号化）技術が用いられている。符号化・復号化は符号化復号化器（コーデック）を用いて行うが、コーデックは専用ＬＳＩなどのハードウェア（ハードウェアコーデック）によっても、汎用プロセッサによりソフトウェアを実行すること（ソフトウェアコーデック）によっても実現できる。また、画像の出力の際には、画像データの回転を伴うこともあり、この処理も専用のハードウェアによっても汎用プロセッサによるソフトウェアによっても実現できる。一般的にはハイエンドな高いパフォーマンスを実現する場合にはハードウェアを実装し、ローコストでパフォーマンスが低い機械ではソフトウェアで画像処理を実現するような画像処理装置が従来発明されてきた。
【０００３】
また一方では、画像の高画質化の要求に対応するため印刷装置の解像度が増加しており、それに伴い各印刷装置における印刷処理に必要なメモリ容量は増大する傾向にある。このメモリ容量の増大に対して、画像処理装置内部では画像データをバンド単位で扱う技術が知られており、例えば、画像出力装置での画像データのバンド処理をより効率化するための手法が記載されている（特許文献１）。
【特許文献１】特開平１０−７４２６４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
マルチファンクションの複合機においては、プリント出力、コピー、ＦＡＸ送信、Ｅ−ｍａｉｌ送信、ネットワークスキャナ等様々な機能を提供しており、これらの実行要求（ジョブ）に対しての同時実行性が重要となる。
【０００５】
上述のように画像処理は一般的に、ハードウェアにて実行した際の処理時間の方がソフトウェアのそれより短いが、最近ではＣＰＵ（中央演算処理装置）の性能向上により、画像処理によってはソフトウェアでもある程度の実行処理速度を実現できるようになってきた。
【０００６】
ハードウェアでの画像処理と同時にソフトウェアによっても画像処理を実現できるようになるが、この際にハードウェアリソースとソフトウェアリソースを同一機器内で最適にスケジューリングすることで、複数のジョブを同時実行する場合に高いパフォーマンスを実現することが求められている。
【課題を解決するための手段】
【０００７】
上記の目的を達成するために、本発明は、画像情報を入出力する画像情報入出力装置であって、前記画像情報入出力手段によって入力された画像情報を所定のサイズのバンド単位でハードウェアによって処理するためのハードウェア画像処理手段と、前記画像情報入出力手段によって入力された画像情報を所定のサイズのバンド単位でソフトウェアによって処理するためのソフトウェア画像処理手段とを有し、実行されるジョブの優先度に応じて、前記ハードウェア画像処理手段と前記ソフトウェア画像処理手段をバンド単位で使い分けることを特徴とする画像情報入出力装置を提供するものである。
【発明の効果】
【０００８】
本発明によれば、所定のデータ処理をソフトウェアで行うソフトウェア処理部と、ハードウェアで行うハードウェア処理部とを設けるとともに、実行されるジョブの優先度、ジョブの種類により、ハードウェア資源とソフトウェア資源を効率よく割り当てることで、システムの処理パフォーマンスを向上させることが出来る。
【０００９】
更には画像処理システムのＣＰＵの処理速度に応じて予めソフトウェア資源の数を指定することで、複数のソフトウェア資源を利用することで，更なるパフォーマンス向上の効果が期待できる。
【発明を実施するための最良の形態】
【００１０】
以下本発明を実施するための最良の形態を、実施例により詳しく説明する。
【実施例】
【００１１】
以下、本発明の実施の形態を図面に基づいて詳説する。
【００１２】
図１は本発明に係る電子部品としてのコントローラ部が搭載された画像入出力装置（データ処理装置）の一実施の形態を示すブロック構成図であって、該画像入出力装置１は、イーサネット（登録商標）等のＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）４００にてのホストコンピュータ（本実施の形態では第一、第二のホストコンピュータ３，４）に接続されている。
【００１３】
即ち、上記画像入出力システム（装置）１は、画像データの読取処理を行うリーダ部２と、画像データの出力処理を行うプリンタ部６と、画像データの入出力操作を行うキーボード、及び画像データや各種機能の表示などを行う液晶パネルを備えた操作部７と、制御プログラムや画像データ等が予め書き込まれたハードディスクドライブ８を装着し、これら各構成要素に接続されて該構成要素に接続されて該構成要素を制御する単一の電子部品からなるコントローラ部１１０とから構成されている。
【００１４】
さらにリーダ部２は原稿用紙を搬送する原稿給紙ユニット（部）１０と、原稿画像を光学的に読み取って電気信号としての画像データに変換するスキャナ部１１とを有し、プリンタ部６は記録用紙を収容する複数段の給紙カセットを備えた給紙ユニット（部）１２と画像データを記録用紙に転写、定着するマーキングユニット（部）１３と印字された記録用紙にソート処理やステイプル処理を施して、外部に排出する排紙ユニット（部）１４とを有している。
【００１５】
図２は図１のリーダ部２及びプリンタ部６の詳細を示す内部構造であって、リーダ部５はプリンタ部６に載置されている。
【００１６】
そして、リーダ部５では、原稿給送ユニット１０に積層された原稿用紙がその積層順にしたがって、先頭から順次１枚ずつプラテンガラス１５上に給送され、スキャナユニット１１で所定の読取動作が終了した後、該読み取られた原稿用紙はプラテンガラス１５上から原稿給送ユニット１０に排出される。
【００１７】
また、上記スキャナユニット１１では、原稿用紙がプラテンガラス１５上に搬送されてくるとランプ１６が点灯し、次いで光学ユニット１７の移動を開始させ、読み取り位置で固定する。光学ユニット１７は搬送される原稿用紙を下方から照射し、走査する。そして、原稿用紙からの反射光は、複数のミラー１８−２０、及びレンズ２１を介してＣＣＤイメージセンサー（以下、単に「ＣＣＤ」と記す）２２へと導かれ、走査された原稿画像はＣＣＤ２２によって読み取られる。そして、ＣＣＤ２２で読み取られた画像データは、所定の処理が施された後、コントローラユニット１１０（図２では図示省略）に転送される。
【００１８】
あるいは、原稿プラテン上に載置された原稿を同様にランプ１６を点灯し、次いで光学ユニット１７の移動を開始させ、原稿用紙を下方から照射し、走査することで、走査された原稿画像をＣＣＤ２２によって読み取ることが可能である。
【００１９】
以上の手順で送出されたリーダからの画像データは、コネクタを介してコントローラ部１１０に送出される。
【００２０】
次いで、プリント部６では、コントローラ部１１０から出力された画像データに対応するレーザ光が、レーザドライバにより駆動されるレーザ発行部２４から発行され、該レーザ光はマーキング部１３の感光ドラム２５にはレーザ光に応じた静電潜像が形成され、現像器２６により前記静電潜像の部分に現像罪が付着する。
【００２１】
一方、レーザ光の照射開始と同期したタイミングで、給紙部１２（給紙カセット１２ａ，１２ｂ）から記録用紙が給紙されて転写部２７に搬送され、感光ドラム２５に付着している現像剤を記録用紙に転写する。画像データが転写された記録用紙は定着部２８に搬送され、定着部２８における加熱・加圧処理により画像データが記録紙に定着される。
【００２２】
そして、画像データを記録用紙に片面記録する場合は、定着部２８を通過した記録用紙が排出ローラ２９によってそのまま排紙ユニット１４に排出され、排紙ユニット１４は排出された記録用紙を束ねて記録用紙の仕分けを行い、また、仕分けされた記録用紙のステイプル処理を行う。
【００２３】
また、画像データを記録用紙に両面記録する場合は、排出ローラ２９まで記録用紙を搬送した後、該は移出ローラ２９の回転方向を逆転させ、フラッパ３０によって再給紙搬送路３１へと導かれ、該再給紙搬送路３１に導かれた記録用紙は上述と同様にして転写部２７に搬送される。
【００２４】
コントローラ部１１０は、上述したように単一の電子部品で構成され、リーダ部２読み取った画像データをコードに変換し、ＬＡＮ４００を介して第一及び第二のホストコンピュータ３、４に送信するスキャナ機能、及びホストコンピュータ３、４からＬＡＮ２を介して受信したコードデータを画像データに変換し、プリンタ部６に出力するプリンタ機能、その他の機能ブロックを有している。
【００２５】
図３はコントローラ部１１０の詳細を示すブロック図である。
【００２６】
すなわち、メインコントローラ３２は、ＣＰＵ３３とバスコントローラ３４と後述する各種コントローラ回路を含む機能ブロックとを内蔵すると共に、ＲＯＭＩ／Ｆ３５を介してＲＯＭ３６と接続され、ＤＲＡＭＩ／Ｆ３７を介してＤＲＡＭ３８と接続され、コーデックＩ／Ｆ３９を介してコーデック４０と接続され、また、ネットワークＩ／Ｆ４１を介してネットワークコントローラ４２と接続されている。
【００２７】
ＲＯＭ３６は、メインコントローラ３２のＣＰＵ３３で実行される各種制御プログラムや演算データが格納されている。ＤＲＡＭ３８は、ＣＰＵ３３が動作するための作業領域や画像データを蓄積するための領域として使用される。コーデック４０はＤＲＡＭ３８に蓄積されたラスターイメージデータをＭＨ／ＭＲ／ＭＭＲ／ＪＢＩＧなどの周知の圧縮方式で圧縮し、また圧縮されたデータをラスターイメージに伸長する。また、コーデック４０にはＳＲＡＭ４３が接続されており、該ＳＲＡＭ４３は前記コーデック４０の一時的な作業領域として使用される。
【００２８】
ネットワークコントローラ４２は、ネットワークコネクタ４４を介してＬＡＮ２との間で所定の制御動作を行う。
【００２９】
また、前記メインコントローラ３２はスキャナバス４５を介してスキャナＩ／Ｆ４６に接続され、プリンタバス４７を介してプリンタＩ／Ｆ４８に接続され、さらにＰＣＩバス等の汎用高速バス４９を介して拡張ボードを接続するための拡張コネクタ５０及び入出力制御部（Ｉ／Ｏ制御部）５１に接続されている。
【００３０】
Ｉ／Ｏ制御部５１はリーダ部２やプリンタ部６との間で制御コマンドを送受信するための調歩同期式のシリアル通信コントローラ５２が２チャンネル装備されており、該シリアル通信コントローラ５２はＩ／Ｏバス５３を介してスキャナＩ／Ｆ４６及びプリンタＩ／Ｆ４８に接続されている。
【００３１】
スキャナＩ／Ｆ４８は、第一の調歩同期シリアルＩ／Ｆ５４及び第一のビデオＩ／Ｆ５５を介してスキャナコネクタ５６に接続され、さらに該スキャナコネクタ５６はリーダ部２のスキャナユニット１１に接続されている。そして、スキャナＩ／Ｆ４６はスキャナ部１１から受信した画像データに対し所望の２値化処理や、主走査方向及び／又は副走査方向の変倍処理を行い、またスキャナ部１１から送られてきたビデオ信号に基づいて制御信号を生成し、スキャナバス４５を介してメインコントローラ３２に転送する。
【００３２】
また、プリンタＩ／Ｆ４８は、第２の調歩同期シリアルＩ／Ｆ５７及び第２のビデオＩ／Ｆ５８を介してプリンタコネクタ５９に接続され、さらに該プリンタコネクタ５９はプリンタ部６のマーキングユニット１３に接続されている。そして、プリンタＩ／Ｆ４８はメインコントローラ３２から出力された画像データにスムージング処理を施して該画像データをマーキングユニット１３に出力し、さらにマーキングユニット１３から送られたビデオ信号に基づいて、生成された制御信号をプリンタバス４７に出力する。
【００３３】
そして、ＣＰＵ３３は、ＲＯＭ３６からＲＯＭＩ／Ｆ３５を介して読み込まれた制御プログラムに基づいて動作し、例えば、第１及び第２のホストコンピュータ３、４から受信したＰＤＬ（頁記述言語）データを解釈し、ラスターイメージデータに展開処理を行う。
【００３４】
また、バスコントローラ３４は、スキャナＩ／Ｆ４６プリンタＩ／Ｆ４８、その他拡張コネクタ５０等に接続された外部機器から入出力されるデータ転送を制御するものであり、バス競合時のアービトレーション（調停）やＤＭＡデータ転送の制御を行う。即ち、例えば、上述したＤＲＡＭ３８とコーデック４０との間のデータ転送や、スキャナ部５からＤＲＡＭ３８へのデータ転送、ＤＲＡＭ３８からマーキングユニット１３へのデータ転送等は、バスコントローラ３４によって制御され、ＤＭＡ転送される。
【００３５】
また、Ｉ／Ｏ制御部５１は、ＬＣＤコントローラ６０などを介してパネルＩ／Ｆ６２に接続されている。また、前記Ｉ／Ｏ制御部５１は不揮発性メモリとしてのＥＥＰＲＯＭに接続され、またＥ−ＩＤＥコネクタ６３を介してハードディスクドライブ８に接続され、さらに、機器内で管理する日付と時刻を更新／保存するリアルタイムクロックモジュール６４に接続されている。尚、リアルタイムクロックモジュール６４はバックアップ用電池６５に接続されて該バックアップ用電池６５によりバックアップされている。
【００３６】
図４はメインコントローラ３２の内部詳細を示すブロック構成図である。
【００３７】
バスコントローラ３４は、４×４の６４ビットクロスバススイッチで構成され、６４ビットのプロセッサバス（Ｐバス）６７を介してＣＰＵ３３に接続され、またメモリ専用のローカルバス（Ｍバス）を介してキャッシュメモリを備えたメモリコントローラ６９に接続されている。尚、メモリコントローラ６９はＲＯＭ３６やＤＲＡＭ３８などのメモリ類と接続され、これらのメモリ類の動作を制御する。
【００３８】
さらに、該バスコントローラ３４はグラフィックスバス（Ｇバス）７０を介してＧバスアービタ７１及びスキャン・プリンタコントローラ７２と接続され、また入出力バス（Ｂバス）７３を介して、Ｂバスアービター７４、Ｇバスアービタ７１、インタラプトコントローラ、及び各種機能ブロック（電力管理ユニット７６、ＵＡＲＴなどのシリアルＩ／Ｆコントローラ７７、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）コントローラ７８、ＩＥＥＥ１２８４等のパラレルＩ／Ｆコントローラ７９、ＬＡＮコントローラ８０汎用入出力コントローラ８１、Ｂバス７３と外部バスであるＰＣＩバスとの間でＩ／Ｆ動作を司るＰＣＩバスＩ／Ｆ８２、及びスキャナ・プリンタコントローラ７２）と接続されている。
【００３９】
Ｂバスアービタ７４はＢバス７３を協調制御するアービトレーションであり、Ｂバス７３のバス使用要求を受け付け、調停の後、使用許可が選択された一つのマスタに与えられ、これにより同時に２つ以上のマスタがバスアクセスを行うのを禁止している。尚、アービトレーション方式は３段階の優先権を有し、それぞれの優先権に複数のマスタが割り当てられる。
【００４０】
インタラプトコントローラ７５は、上述した各機能ブロック及びコントローラユニット１１０の外部からインタラプトを集積し、ＣＰＵ３３がサポートするコントローラ類７２、７７−８２及びノンマスカブルインタラプト（ＮＭＩ）に再配分する。
【００４１】
電力管理ユニット７６は機能ブロック毎に電力を管理し、さらに１チップで構成されている電子部品としてコントローラユニット１１０の消費電力量の監視を行う。すなわち、コントローラユニット１１０は、ＣＰＵ３３を内蔵した大規模なＡＳＩＣ（特定用途向けＩＣ）で構成されており、このため全ての機能ブロックが同時に動作すると大量の熱を発生して、コントローラ部１１０自体が破壊されてしまう虞がある。
【００４２】
そこで、このような事態を防止するために各に機能ブロック毎に消費電力を管理し、各機能ブロックの消費電力量はパワーマネージメントレベルとして電力管理ユニット７６に集積される。そして、該電力管理ユニット７６では各機能ブロックの消費電力量を合計し、該消費電力量が限界消費電力を超えないように各機能ブロックの消費電力量を一括して、監視する。
【００４３】
Ｇバスアービタ７１は中央アービトレーション方式によりＧバス７０を協調制御しており、各バスマスタに対して専用の要求信号と許可信号とを有する。尚、バスマスタへの優先権の付与方式として、全てのバスマスタを同じ優先権として、公平にバス権を付与する公平アービトレーションモードといずれか一つのバスマスタに対して優先的にバスを使用させる優先アービトレーションモードのいずれかを指定することができる。
【００４４】
上述のような構成の画像入出力装置を例に挙げ、さらに具体的な実施例を図５から図１１と図１２から図１４のフローチャートを用いて説明する。
【００４５】
図５ではリーダ部２側面図及び上面を表している。原稿給送ユニット１０に原稿を積載した場合の、スキャン時の原稿搬送方向を側面図の＜１＞〜＜４＞に記述した。リーダ部２はコントローラユニット１１０から原稿の読み取りの要求があると、原稿給送ユニット１０に積載された原稿の引き込みを実行、前述のように光学ユニット１７の移動を開始させ、読み取り位置で固定し原稿を移動させることで原稿画像を走査する。
【００４６】
まず、原稿移動式のスキャンを行わない場合の原稿の入力方向及びメモリ上の画像書き込み方向について説明する。
【００４７】
この場合、図６に示すような原稿中の原稿突き当て位置を図５のリーダ部２の上図に記述される原稿突き当て位置にあわせてユーザは原稿を原稿用紙はプラテンガラス１５に配置することになる。リーダ部２は光学ユニット１７を移動させることで、プラテンガラス１５上に配置された原稿を読み取ることになるので、リーダ部２の原稿の入力方向、及びコントローラ部２のＤＲＡＭ３８に入力されるデータの方向は図６に示すような方向となる。ＤＲＡＭ３８に入力されるデータは、スキャナＩ／Ｆ４６内のＤＭＡコントローラによってＤＲＡＭ３８に書き込みを行うが、リーダ部２からの画像は原稿先端から転送されるため、メモリアドレスの小さい方から正順にアクセスするようにすることで図７のような形でＤＲＡＭ３８に書き込みを行うことが出来る。
【００４８】
一方原稿移動式のスキャンを行う場合の画像の入力方向を図９及び図１０に示した。図９では原稿を原稿給紙ユニット１０に積載したときの搬送方向を、図１０では図９の原稿がコントローラ部のＤＲＡＭ３８に入力される場合のメモリ入力方向を示している。このとき、リーダ部２から転送される原稿画像の向きは搬送搬送方向に関係し、副走査方向に前記の場合と全く逆になる。このため、スキャナＩ／Ｆ４６内のＤＭＡコントローラをメモリアドレスに逆向きにアクセスするように制御することで原稿の向きがプラテンガラス１５上の原稿を光学ユニット１７の移動によりスキャンした場合と同じ向きになるように制御を行う。
【００４９】
上述のような制御を行うことにより、原稿移動式でスキャンする、しないに関係なくＤＲＡＭ３８上の原稿の向きは同じ向きとすることが出来る。
【００５０】
次に、バンド単位で画像を圧縮する場合の基本的な処理について説明する。原稿をスキャンする場合には、図１２のフローチャートに従って処理を行う。図１２中ＳＴＥＰ１２０１でＣＰＵ３３はパネルＩ／Ｆ６２を介して、操作部７より原稿の読み取りが支持されたことを認識しＳＴＥＰ１２０２に処理を進める。
【００５１】
このとき、画像入出力システム１がサポートする様々な入力モード（両面読み込み、濃度指定等）をＣＰＵ３３は認識、ＤＲＡＭ３３上に保持する。
【００５２】
ＳＴＥＰ１２０２でＣＰＵ３３は原稿給紙ユニット１０上に原稿が積載されているか否かを、スキャナＩ／Ｆ４６を介してリーダ部２に問い合わせる。この結果、原稿給紙ユニット１０上に原稿が積載されている場合には処理をＳＴＥＰ１２０３へ、そうでない場合には処理をＳＴＥＰ１２０５へ進める。
【００５３】
ＳＴＥＰ１２０３、ＳＴＥＰ１２０５では共にＣＰＵ３３は原稿の読み込みをスキャナＩ／Ｆ４６を介してリーダ部２に要求する。ＳＴＥＰ１２０３では原稿給紙ユニット１０から原稿を引き込みながらの読み込み動作を指示し、ＳＴＥＰ１２０５ではプラテンガラス１５からの読み込み動作を指示する。その後ＳＴＥＰ１２０４では原稿給紙ユニット１０に続けて処理する原稿頁があるか、否かを問い合わせ、その結果によって処理を巡回して行うかを決定する。
【００５４】
原稿画像読み取り時にはリーダ部２とコントローラ部１１０のＣＰＵ３３との通信は上記のようになるが、ＳＴＥＰ１２０３，及びＳＴＥＰ１２０５では、読み取り頁の単位で図１３に示すような処理が、また頁中のバンド単位では図１４に示す処理が行われる。
【００５５】
図１３に示す処理を説明する。図１２のフローチャートでＣＰＵ３３はＳＴＥＰ１２０３及びＳＴＥＰ１２０５でリーダ部２に原稿の読み取りを要求するが、この場合ＣＰＵ３３はＳＴＥＰ１３０１でまずリーダ部２に原稿サイズを問い合わせ、原稿読み取りに必要なメモリ容量を計算し、頁のデータが収まる容量をＤＲＡＭ３８中に確保する。メモリが確保されると、ＣＰＵ３３はスキャナＩ／Ｆ４６内のＤＭＡコントローラのレジスタにスキャン画像の書き込みの設定を行う。設定される内容は確保されたメモリのアドレスや、スキャンする画像の主走査，副走査のサイズ等である。ＣＰＵ３３はレジスタ設定が完了すると、リーダ部２へその旨を通知する。これを受けて、リーダ部２は画像転送を実行する。
【００５６】
その後処理は図１４に示すフローチャートへと移行する。リーダ部２が画像転送を実行すると、所定容量画像転送が完了するとそれを示す割り込みが、スキャナＩ／Ｆ４６内のＤＭＡコントローラからＣＰＵ３３に通知される（ＳＴＥＰ１４０１）。それを受けてＣＰＵ３３はコーデック４０に指示を出しスキャン画像の書き込みが完了したメモリ内のデータの圧縮処理を行う（ＳＴＥＰ１４０２）。具体的には、例えばＳＴＥＰ１２０５でプラテンガラス１５からスキャンする場合には頁内を図８−（ａ）に示すように５分割するものとする。この場合＜１＞〜＜５＞のバンドによって頁が構成され、プラテンガラス１５から画像入力された場合には＜１＞から＜５＞まで正順に原稿画像データが書き込まれ、＜１＞〜＜５＞間でのスキャン画像の入力が各々完了するたびにスキャナＩ／Ｆ４６内のＤＭＡコントローラからの割り込みが発生する。ＣＰＵ３３はこの割り込みを受けてコーデック４０を動作させる。図８−（ｃ）はスキャン画像の入力とコーデック４０の動作を表すタイミングチャートである。ＣＰＵ３３は＜１＞のスキャン入力が完了するａのタイミングでコーデック４０を起動し画像圧縮を開始する。また同様にｃのタイミングでは＜２＞のバンドのスキャン入力が完了するので、同様に画像圧縮を開始する。
【００５７】
このようにしてＣＰＵ３３はスキャン画像の圧縮動作をバンド毎に逐次圧縮する。ＳＴＥＰ１４０２でバンド１つに対してコーデック４０の画像圧縮処理が完了すると、圧縮前のバンドのメモリは不要となるので解放することが出来る。解放したメモリは次の処理や画像入出力システムの提供する全く別の処理に利用することが出来るのでシステム全体のメモリ効率が向上する。
【００５８】
具体的には図８−（ｃ）のタイミングチャートで、バンド＜１＞の圧縮が完了するｂのタイミングあるいはバンド＜２＞の圧縮が完了するｄのタイミングでそれぞれ圧縮前のデータの書き込まれたメモリを解放することが出来る。
【００５９】
このような処理を行うことで、ＳＴＥＰ１２０５でプラテンガラス１５上の画像を読み込んだ際の圧縮処理は＜１＞〜＜５＞まで順番に行われる。
【００６０】
また、このとき圧縮されたデータは圧縮順、すなわち＜１＞〜＜５＞のバンド順に隙間無くＤＲＡＭ３８中に別管理されている符号メモリ領域に書き込みを行う。（図８−（ｂ））
一方ＳＴＥＰ１２０３で、原稿移動式にてスキャンする場合には現行の入力順が逆になる。図１１−１に示すような原稿の入力順に対して、同様に図１１−１中に示すような原稿圧縮順序となる。具体的なタイミングチャートを図１１−３に示す。画像の入力がバンド＜５＞から＜１＞の順で実行されるため、メモリを早く解放するためにはバンド＜５＞から圧縮する必要が在る。具体的にはＳＴＥＰ１４０１でバンド＜５＞の入力が完了したタイミング（ｅ）でＣＰＵ３３はコーデック４０を起動し、画像の圧縮処理を開始する。（ＳＴＥＰ１４０２）
コーデック４０がバンド＜５＞の圧縮を完了すると、ＣＰＵ３３はｆのタイミングでバンド＜５＞の圧縮前の画像メモリを解放する。（ＳＴＥＰ１４０３）
このような処理を行うことで原稿移動式の場合であっても、プラテンガラス１５上の画像を読み込んだ場合と同じタイミングでメモリ解放が行える。
【００６１】
図１１−２に図示するように原稿移動式で原稿をスキャンした場合には、圧縮画像データの順番がバンド＜５＞〜＜１＞へ降順となり、プラテンガラス１５からスキャンした場合と圧縮データの順番が全く逆となる。
【００６２】
図１４に図示したフローチャートをバンド数分繰り返すとＣＰＵ３３は処理をＳＴＥＰ１３０２で頁の処理が完了したことを検知する。ＣＰＵ３３はＳＴＥＰ１３０３に処理を移行する。
【００６３】
ＣＰＵ３３はＳＴＥＰ１３０３でハードディスクドライブ８に圧縮したデータの書き込みを行う。圧縮データをハードディスクドライブ８に保存する際にＣＰＵ３３は、ＳＴＥＰ１２０３で実行した原稿移動式のスキャン実行時のように、圧縮順序が逆となるデータがある場合には圧縮順序の情報を圧縮した画像データと関連付けてハードディスクドライブ８に保存する。
【００６４】
上述の処理を行うことで、原稿移動式のスキャンを行った場合であっても、通常時（プラテンガラス１５からのスキャン）と全く同じメモリ効率を実現すると共に、ハードディスクドライブ８からデータを読み出す際には、圧縮データと関連付けて保存した圧縮順序の情報を読み出すことで正順にハードディスクドライブ８から画像を読み出すことが出来る。
【００６５】
画像入出力システム１は上述のような画像処理をスキャンだけではなく、その他のジョブにおいても実行することが出来る。例えばＰＤＬプリント要求をＰＣ３から受信した場合においては、コントローラ部１１０のＣＰＵ３３にてＰＤＬ（頁記述言語）の描画命令をビットマップに展開し、スキャンの場合と同様に画像圧縮を順次行うことが可能であるし、またＬＡＮ４００の外部からのＥ−ｍａｉｌ受信は受信したＡＳＣＩＩデータをフォント展開し、同様にバンド単位で順次画像圧縮が可能である。
【００６６】
画像入出力システム１は複数のジョブを同時実行可能であるが上述のようなバンド単位での画像圧縮が可能である。画像圧縮処理はＭＭＲ／ＭＲ／ＭＨ／ＪＢＩＧの２値の白黒画像圧縮をハードウェアにて処理可能であるが、コントローラ部１１０のＣＰＵ３３がＲＯＭ３６上のプログラムを実行することにより、ソフトウェアによって同様にＭＭＲ／ＭＲ／ＭＨ／ＪＢＩＧの圧縮が可能である。
【００６７】
上述のような構成の画像入出力装置を例に挙げ、本発明の具体的な実施例を図１５以降のフローチャートに沿って具体的に説明する。
【００６８】
図１５、１６ではジョブ実行時にＣＰＵ３３で実行されるジョブ実行プログラム制御について述べる。
【００６９】
また図１７、１８ではジョブ実行制御プログラムと同様にＣＰＵ３３によって実行されるリソースアサイン制御プログラムの制御について述べる。ジョブ実行制御プログラムとリソースアサイン制御プログラムはＲＯＭ３６に予め記憶されるプログラムコードをＣＰＵ３３がＲｅａｄすることで実行される。
【００７０】
両プログラムは、ＣＰＵ３３で動作するＯＳ（オペレーティングシステム）により見かけ上は並列して動作可能で、ＯＳのサービスにより両プログラムは非同期にメッセージのやり取りが実行できる
ＳＴＥＰ１５０１で画像入出力システム１はジョブの実行要求を受信する。ジョブは前述のようにスキャン入力や、ＰＤＬプリント出力、Ｅ−ｍａｉｌ送信、Ｅ−ｍａｉｌ受信等画像入出力装置で実行可能なものであり、前述のように実行要求は全て制御部１１０のＣＰＵ３３にて処理される。ＣＰＵ３３では図１５のＳＴＥＰ１５０２でジョブ実行要求受け付けた際には、システム内部でユニークなジョブＩＤを発行とするとともに、ユーザによって予め設定されたジョブの優先度に従って、システム内部でのジョブの優先度を設定する。
【００７１】
ジョブの優先度とはシステム内部でジョブを実行する際にその実行順序を決定するものであり、ユーザが予めジョブの種類に対して設定することも可能であるし、またジョブ要求したユーザに対して設定することも可能である。
【００７２】
例えばＰＤＬプリントジョブがＥ−ｍａｉｌ受信プリントより優先されることが予め設定されている場合にはＰＤＬプリントジョブの優先度を５とし、Ｅ−ｍａｉｌ受信プリントジョブを１０と設定する。
【００７３】
また同じＰＤＬプリントジョブをほぼ同時に受信した場合であってもユーザＡからの要求がユーザＢのそれより優先度が高く設定されている場合にはユーザＡのＰＤＬジョブの優先度を３とし、ユーザＢからのＰＤＬジョブを４とする。
【００７４】
ＳＴＥＰ１５０３ではＣＰＵ３３はジョブ実行に必要なリソースの獲得を行う。受信したジョブがスキャンジョブであった場合には、画像圧縮を実行するＣｏｄｅｃ４０に対応付けられた画像圧縮リソースの獲得を行う。リソース獲得時には図１６に示すフローにしたがってＣＰＵ３３は処理を実行する。
【００７５】
ＳＴＥＰ１６０１で受信したジョブがジョブレベルでリソースを独占する必要があるか否かの判定を行う。ジョブレベルでリソースを獲得する必要があるジョブとは例えばファクシミリ送信ジョブなどであり、ジョブ実行時には、ジョブ開始からジョブ終了までスムーズにリソースを獲得出来る状態にすることでファクシミリ通信のタイムアウトを抑え、通信にかかるコストを削減することが出来る。ジョブレベルでリソース獲得する場合にはＣＰＵ３３は処理をＳＴＥＰ１６０４に進める。
【００７６】
ＳＴＥＰ１６０４ではジョブで必要なリソース要求リストを作成する。図１９にリソース要求リストの１例を図示した。リソース要求リストとはリソース獲得の際に必要な情報を詰めたリストでバンド処理実行可能な場合には最小単位はバンドとする。バンドのリストにはＳＴＥＰ１５０２で発行されたジョブのＩＤを設定するとともにソフトウェアで処理するか、ハードウェアで処理するか、あるいはソフトかハード問わず処理するかを設定する。ハードウェアでのみ処理を要求されるものは処理時間的に予めソフトウェアでの処理では実行不可能であることがわかっているジョブ、ソフトウェアでのみ実行可能が設定されるものは、ジョブの実行に特にパフォーマンスを要求されず、時間をかけても正常に終了すればよいものを設定する。本実施例ではシステムではＦＡＸ送信、ＦＡＸ受信、ＰＤＬプリントのジョブの場合にはハードウェアのみを有効、Ｅ−ｍａｉｌ送信ジョブはソフトウェアのみを有効とし、他のジョブ（スキャン入力、プリント出力、Ｅ−ｍａｉｌ受信ジョブ）は全てソフト／ハードいずれかで処理することとする。またリソース要求リストにはＳＴＥＰ１５０２で設定されるジョブの優先度もあわせて設定する。
【００７７】
ＳＴＥＰ１６０４ではジョブ分のリソース要求リストを作成し、ジョブレベルでリソース獲得する要求を発行する。要求発行先は同じくＣＰＵ３３で実行されるリソースアサイン（調停）制御プログラムである。
【００７８】
また、リソースの獲得期間を合わせて設定する。リソースの獲得期間にはバンド、頁、ジョブがあり、それぞれの期間リソースの解放を行わない。今、ＳＴＥＰ１６０４ではジョブ分のリソースを獲得するためジョブに含まれる全ての頁分、さらに頁に含まれる全てのバンド分のリソース要求リストを作成し、獲得期間はジョブを設定する。
【００７９】
ＳＴＥＰ１６０１でリソース獲得期間がジョブで無い場合にはＳＴＥＰ１６０２に処理を進める。ＳＴＥＰ１６０２では頁の期間、画像処理リソースを解放しないかを確認する。解放しない場合には処理をＳＴＥＰ１６０５に進め、そうでない場合には処理をＳＴＥＰ１６０３に進める。
【００８０】
ＳＴＥＰ１６０５では頁が含む全てのバンドのリソース要求リストを作成し、頁レベルでＳＴＥＰ１６０４同様にリソース獲得する要求を発行する。頁レベルでリソース獲得の獲得が必要なジョブとは例えばプリント出力の際に用いる画像伸張のリソースであり、プリントの読み出しとバンド単位で同期して処理を実行する場合には頁分一度に獲得する。
【００８１】
ＳＴＥＰ１６０２で頁レベルでは獲得しないと判断されたジョブはバンド単位でリソースの獲得、解放を実行するものとあるので、ＳＴＥＰ１６０３でバンド分のリソース要求リストを作成し、ＳＴＥＰ１６０４同様にリソース獲得する要求を発行する。
【００８２】
ＳＴＥＰ１６０３、ＳＴＥＰ１６０４、ＳＴＥＰ１６０５ではリソース獲得要求発行後、処理をＳＴＥＰ１６０６に移行するＳＴＥＰ１６０６ではリソースアサイン制御プログラムからの獲得完了メッセージを待つ。獲得完了のイベントを受けてリソース獲得完了する。
【００８３】
ジョブ実行制御プログラムはＳＴＥＰ１５０４でリソース獲得できた場合にはＳＴＥＰ１５０４で該当する画像処理を実行する。ＳＴＥＰ１６０４でジョブ分のリソースを要求した場合にはＳＴＥＰ１５０４でジョブ分の全ての処理を実行する。ＳＴＥＰ１６０５で頁分のリソースを要求した場合には頁の処理を、ＳＴＥＰ１６０３でバンドのリソース要求をした場合にはバンドの処理を実行してＳＴＥＰ１５０５に処理を進める。
【００８４】
ＳＴＥＰ１５０５ではＳＴＥＰ１５０３で獲得したリソースの解放をリソースアサイン制御プログラムに要求し、ＳＴＥＰ１５０６に処理を進める。
【００８５】
ＳＴＥＰ１５０６ではジョブの処理が全て終了したかをチェックする。全て終了している場合には処理を終了し、そうでない場合にはＳＴＥＰ１５０３から処理を繰り返し実行する。
【００８６】
以上がＣＰＵ３３で実行するジョブ実行制御プログラムの処理フローの一例である。
【００８７】
以降は図１７及び図１８に沿って、リソースアサイン制御プログラムの処理フローの一例を説明する。
【００８８】
リソースアサイン制御プログラムは起動時に処理をＳＴＥＰ１７０１に移行し、ジョブ制御実行プログラム及びリソースアサイン制御プログラムからのメッセージを待つ。図１５のＳＴＥＰ１５０３でジョブ実行制御プログラムによりリソース獲得要求を受けたリソースアサイン制御プログラムは処理をＳＴＥＰ１７０２に移行する。
【００８９】
ＳＴＥＰ１７０２ではＳＴＥＰ１６０３、ＳＴＥＰ１６０４及びＳＴＥＰ１６０５でジョブ実行制御プログラムが作成したリソース要求リストを参照し、ソフトウェアで処理するかどうかの判定を行う。ソフトウェアで処理する場合にはＳＴＥＰ１７０８に処理を移行する。そうでない場合には処理をＳＴＥＰ１７０３に移行する。
【００９０】
今、ハードウェアで処理可能な画像圧縮伸張リソースの要求を受けたとする。このときＣＰＵ３３は処理をＳＴＥＰ１７０３ではプログラム内部の変数ｎを１に初期化し、処理をＳＴＥＰ１７０５に移行する。
【００９１】
ＳＴＥＰ１７０５では獲得するリソースのｎ番目の要求リストよりジョブの優先度が高いかどうかを判定する。ジョブの優先度とはＳＴＥＰ１５０２でジョブ実行制御プログラムにて設定されるものであり、リソース要求リストから読み出すことが出来る。ＣＰＵ３３は要求されたリソース要求リストの優先度がｎ番目の要求リストのそれより高い場合にはＳＥＴＰ１７０６に処理を移行し，そうでない場合にはＳＴＥＰ１７０７に処理を移行する。
【００９２】
ＳＴＥＰ１７０７ではリソース要求リストを参照し、ハードウェアの処理が必須であるかを検査する。必須であれば処理をＳＴＥＰ１７０４へ、そうでない場合には処理をＳＴＥＰ１７０８へ移行する。
【００９３】
ＳＴＥＰ１７０４では変数ｎをインクリメントする。ＳＴＥＰ１７０６では要求されたリソースの獲得待ちキューのｎ番目に登録し、ＳＴＥＰ１７１０に処理を移行する。ＳＴＥＰ１７１０では該当リソースの獲得待ちキューにリソース要求リストがあるかを確認する。リソース要求リストがあるので、ＳＴＥＰ１７１１に処理を進める。ＳＴＥＰ１７１１ではリソース獲得待ちキューの先頭のリソース要求リストを参照し、要求元の該当ジョブ制御プログラムにリソースを割り当てる。リソース獲得完了のイベントをジョブ制御プログラムに送信する。ＳＥＴＰ１７１１でリソースの割り当てを完了したリソースアサイン制御プログラムは処理をＳＴＥＰ１７０１に戻す。
【００９４】
次にリソース解放要求をジョブ実行制御プログラムから受けた場合の処理について説明する。ＳＴＥＰ１７０１でリソース解放要求をジョブ実行制御プログラムから受けた際にはＣＰＵ３３は処理をＳＴＥＰ１７０９に移行する。ＳＴＥＰ１７０９では該当リソースを解放し、リソース獲得待ちキューから削除する。ＳＴＥＰ１７１０では該当リソースの獲得待ちキューのチェックを行う。要求リストがあれば、処理をＳＴＧＥＰ１７１１へ進める。そうでない場合には処理をＳＴＥＰ１７１２に進める。ＳＴＥＰ１７１２では、該当リソースと同様の処理を行うソフトウェア処理のリソース獲得待ちキューにハードウェアで処理可能なリストがあるかどうかを検索する。
【００９５】
例えば、画像圧縮伸張のリソース獲得要求であった場合にはソフトウェアの画像圧縮伸張リソース獲得待ちキューを検索し、ハードウェアでも処理可能なリソース要求リストがあれば、ＳＴＥＰ１７１３に処理を進め、そうでない場合には処理をＳＴＥＰ１７０１に戻す。
【００９６】
ＳＴＥＰ１７１３ではソフトウェアの画像圧縮伸張リソース獲得待ちキューから該当要求を削除し、ハードウェアのリソース獲得要求として再度発行しなおす。再度発行された要求はリソースアサイン制御プログラムによってＳＴＥＰ１７０１にて受信され、適宜処理される。
【００９７】
次にＳＴＥＰ１７０８にてソフトウェアリソース獲得処理にＣＰＵ３３が移行した場合の処理について述べる。
【００９８】
ＣＰＵ３３はＳＴＥＰ１７０８でソフトウェアリソース獲得要求をソフトウェアのリソース獲得待ちキューを監視するリソースアサイン制御プログラム２に送信する。リソースアサイン制御プログラム２はリソースアサイン制御プログラムと同様にＣＰＵ３３によって実行されるプログラムであり、ＯＳのサービスによりで他のプログラムと見かけ上、並列に動作可能である。
【００９９】
リソースアサイン制御プログラム２の処理を図１８に沿って説明する。図１５のＳＴＥＰ１５０３でジョブ実行制御プログラムによりリソース獲得要求を受けたかあるいは、ＳＴＥＰ１７０８リソースアサイン制御プログラムからリソース獲得要求を受けたリソースアサイン制御プログラム２は処理をＳＴＥＰ１８０２に移行する。ＳＴＥＰ１８０２ではＣＰＵ３３は処理をＳＴＥＰ１７０３ではプログラム内部の変数ｎを１に初期化し、処理をＳＴＥＰ１８０４に移行する。
【０１００】
ＳＴＥＰ１８０４では獲得するリソースのｎ番目の要求リストよりジョブの優先度が高いかどうかを判定する。ジョブの優先度とはＳＴＥＰ１５０２でジョブ実行制御プログラムにて設定されるものであり、リソース要求リストから読み出すことが出来る。ＣＰＵ３３は要求されたリソース要求リストの優先度がｎ番目の要求リストのそれより高い場合にはＳＥＴＰ１８０５に処理を移行し，そうでない場合にはＳＴＥＰ１８０６に処理を移行する。
【０１０１】
ＳＴＥＰ１８０６ではソフトウェアリソースが複数あるかを確認する。画像入出力システム１ではＣＰＵ３３の処理速度、機器のサポートするジョブの種類に応じてソフトウェアによる画像処理を同時に動作させることが出来る数を予め決定している。ＳＴＥＰ１８０６でソフトウェアリソースが他にもある場合には処理をＳＴＥＰ１８０７にそうでない場合にはＳＴＥＰ１８０３に処理を移行する。ＳＴＥＰ１８０３では変数ｎをインクリメントする。
【０１０２】
ＳＴＥＰ１８０５では要求されたリソース獲得待ちキューのｎ番目に登録し、ＳＴＥＰ１８０９に処理を移行する。ＳＴＥＰ１８０９では該当リソースの獲得待ちキューにリソース要求リストがあるかを確認する。リソース要求リストがあるので、ＳＴＥＰ１８１０に処理を進める。ＳＴＥＰ１８１０ではリソース獲得待ちキューの先頭のリソース要求リストを参照し、要求元の該当ジョブ制御プログラムにリソースを割り当てる。リソース獲得完了のイベントをジョブ制御プログラムに送信する。ＳＥＴＰ１８１０でリソースの割り当てを完了したリソースアサイン制御プログラム２は処理をＳＴＥＰ１８０１に戻す。
【０１０３】
次にリソース解放要求をジョブ実行制御プログラムから受けた場合の処理について説明する。ＳＴＥＰ１８０１でリソース解放要求をジョブ実行制御プログラムから受けた際にはＣＰＵ３３は処理をＳＴＥＰ１８０８に移行する。ＳＴＥＰ１８０８では該当リソースを解放し、リソース獲得待ちキューから削除する。ＳＴＥＰ１８０９では該当リソースのリソース獲得待ちキューのチェックを行う。要求リストがあれば、処理をＳＴＧＥＰ１８１０へ進める。そうでない場合には処理をＳＴＥＰ１８０１に戻す。ＳＴＥＰ１８０７では、他のソフトウェアリソースの獲得処理を実行する。移行の処理は図１８と繰り返しであるので、説明は省略する。
【０１０４】
上述のような制御フローで、ジョブの優先度、目的に応じてシステムのハードウェア資源とソフトウェア資源を調停、ジョブに割り当てることで効率よく複数のジョブの制御を実行できる。
【０１０５】
図２０には上記の処理をハードウェア資源、ソフトウェア資源のリソース獲得待ちキューを図示して説明する。
【０１０６】
（１）の図ではソフト、ハードどちらでも実行可能なジョブＡの１バンド目のリソース要求リストがハードウェア資源獲得待ちのキューの先頭で実行中であるときに、ハードウェアでのみ実行可能で、かつジョブＡより優先度の高いジョブＢのバンドレベルのリソース要求リスト、同じくハードウェアでのみ実行可能でかつジョブＡより優先度の高いジョブＣの頁レベルのリソース要求リストが要求された場合のリソース獲得待ちキューの状態を図示している。
【０１０７】
ジョブＡの１バンド目が終了するとジョブＡの２バンド目の処理要求が発生するがハードウェアのリソース獲得キューは既に詰まっているので、図１７中のＳＴＥＰ１７０７にてソフトウェアリソース獲得処理に移行する。ソフトウェア資源獲得待ちキューに要求は積まれていないので、ジョブＡの２バンド目の処理要求はそのままソフトウェア獲得待ちキューに積まれ、処理される。
【図面の簡単な説明】
【０１０８】
【図１】データ処理装置としての画像入出力装置の１実施例形態を示すブロック構成図である。
【図２】画像入出力装置の内部構成図である。
【図３】電子部品としてのコントローラ部の詳細を示すブロック構成図である。
【図４】メインコントローラの詳細を示すブロック構成図である。
【図５】原稿移動式のリーダ部２の原稿給紙動作を原稿の向きとあわせて説明する図である。
【図６】原稿固定式の場合のスキャン方向とメモリ入力の方向を説明する図である。
【図７】原稿固定式の場合の原稿向きとメモリ上の画像向きを説明する図である。
【図８】（ａ）（ｂ）（ｃ）原稿固定式の場合のバンド処理によって逐次原稿入力された画像を圧縮する処理を説明する図である。
【図９】（ａ）（ｂ）（ｃ）原稿移動式の場合のスキャン方向とメモリ入力の方向を説明する図である。
【図１０】原稿移動式の場合の原稿向きとメモリ上の画像向きを説明する図である。
【図１１】原稿移動式の場合のバンド処理によって逐次原稿入力された画像を圧縮する処理を説明する図である。
【図１２】実施例中の原稿入力の処理フローを説明するフローチャートである。
【図１３】実施例中の頁画像入力の処理フローを説明するフローチャートである。
【図１４】実施例中のバンド画像入力の処理フローを説明するフローチャートである。
【図１５】実施例中のジョブ実行制御プログラムの処理フローチャートである。
【図１６】実施例中のジョブ実行制御プログラムのリソース獲得時の処理を詳細に説明するフローチャートである。
【図１７】実施例中のリソースアサイン処理のフローを説明するフローチャートである。
【図１８】実施例中のリソースアサイン処理２のフローを説明するフローチャートである。
【図１９】実施例中のリソース獲得待ちキューの状態の一例を表す図である。
【図２０】実施例中のリソース管理キューの状態を示す図である。
【符号の説明】
【０１０９】
１  画像入出力システム
２  リーダ部
３  ＰＣ
４  ＰＣ
６  プリンタ部
７  操作部
８  ハードディスク
１０  ＤＦユニット
１１  スキャナユニット
１２  給紙ユニット
１３  マーキングユニット
１４  排紙ユニット
１１０  コントローラ部
４００  ＬＡＮ
【図２】
2006173843.tif 000003
【図３】
2006173843.tif 000004
【図４】
2006173843.tif 000005
【図５】
2006173843.tif 000006
【図６】
2006173843.tif 000007
【図７】
2006173843.tif 000008
【図８】
2006173843.tif 000009
【図９】
2006173843.tif 000010
【図１０】
2006173843.tif 000011
【図１１】
2006173843.tif 000012
【図１２】
2006173843.tif 000013
【図１３】
2006173843.tif 000014
【図１４】
2006173843.tif 000015
【図１５】
2006173843.tif 000016
【図１６】
2006173843.tif 000017
【図１７】
2006173843.tif 000018
【図１８】
2006173843.tif 000019
【図１９】
2006173843.tif 000020
【図１】
2006173843.tif 000021
【図２０】
2006173843.tif 000022