JP2002082784A - プリンタ制御装置及び方法、プリンタ装置、並びにコンピュータが読出し可能なプログラムを格納した記憶媒体 - Google Patents

プリンタ制御装置及び方法、プリンタ装置、並びにコンピュータが読出し可能なプログラムを格納した記憶媒体

Info

Publication number
JP2002082784A
JP2002082784A JP2000273568A JP2000273568A JP2002082784A JP 2002082784 A JP2002082784 A JP 2002082784A JP 2000273568 A JP2000273568 A JP 2000273568A JP 2000273568 A JP2000273568 A JP 2000273568A JP 2002082784 A JP2002082784 A JP 2002082784A
Authority
JP
Japan
Prior art keywords
task
control
printer
control command
analysis
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.)
Pending
Application number
JP2000273568A
Other languages
English (en)
Inventor
Makoto Koyanagi
誠 小柳
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.)
Seiko Epson Corp
Original Assignee
Seiko Epson Corp
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 Seiko Epson Corp filed Critical Seiko Epson Corp
Priority to JP2000273568A priority Critical patent/JP2002082784A/ja
Publication of JP2002082784A publication Critical patent/JP2002082784A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Accessory Devices And Overall Control Thereof (AREA)

Abstract

(57)【要約】 【課題】ホスト装置との通信が切断されることのないよ
うに、また、印刷結果に乱れが生じることのないように
しつつ、更に、メモリ領域の食いつぶしを発生させない
ように、プリンタ装置を制御する技術を提供する。 【解決手段】プリンタ装置において、外部のホストコン
ピュータとの間の通信を制御するIFタスクと、外部よ
り受信した制御コマンドを解析する解析タスクと、制御
コマンドに従って給紙等の制御命令を出力するジョブ制
御タスクと、制御命令に基づいて印刷エンジンを制御す
るエンジン制御タスクと、を実行するプロセッサを備え
る。前記プロセッサは、OSをリブートする制御コマン
ドに対しては、ジョブ制御タスクよりも解析タスクの実
行を優先し、それ以外の制御コマンドに対しては、解析
タスクよりもジョブ制御タスクの実行を優先して、実行
する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、複数のタスクの優
先順位を制御する技術に関し、特に、プリンタ装置にお
いて実行されるタスクに適用可能な制御技術に関する。
【0002】
【従来の技術】従来より、ネットワークを介してホスト
コンピュータと接続され、ホストコンピュータから送信
される制御コマンドを受けて種々の動作を行うプリンタ
装置が開発されてきている。特に、近年では、プリンタ
装置のコスト低減等のために、プリンタ装置自体に制御
コマンドを入力するためのパネル等を設けず、制御コマ
ンドは全てホストコンピュータから受け付ける構成とし
たプリンタ装置も提案されている。
【0003】このようなプリンタ装置において実行され
る主なタスク(機能手段)としては、ホストコンピュー
タとの間の通信を制御し、制御コマンドを受信するIF
タスク、受信した制御コマンドを解析する解析タスク、
制御コマンドに従って給紙等の命令を出力するジョブ制
御タスク、命令に基づいて印刷エンジンを制御するエン
ジン制御タスクをあげることができる。
【0004】これらのタスクには優先順位が設定されて
おり、各タスクは、かかる優先順位に従ってリアルタイ
ムOS上で排他的に実行される。すなわち、優先度が低
いタスクの実行中に、これよりも高いタスクの実行要求
があった場合には、優先度の低いタスクの実行を中断し
て、優先度の高いタスクを実行する。
【0005】タスクの排他制御の方法としては、例えば
セマフォを利用することができる。セマフォとはプロセ
ッサを占有する権利を表すフラグであり、タスクはセマ
フォを獲得することにより実行権が与えられる。
【0006】
【発明が解決しようとする課題】ホスト装置との通信が
切断されることのないように、また、印刷結果に乱れが
生じることのないようにという観点から、各タスクの優
先順位を、IFタスク>エンジン制御タスク>ジョブ制
御タスク>解析タスクの順に設定することが考えられ
る。
【0007】しかし、常にこの優先順位に従って実行す
ると、OSをリブートする処理においてメモリの食いつ
ぶし(未解放のメモリ領域が蓄積されていくこと)が発
生し、システム自体がハング(停止)してしまう場合が
ある。以下、その理由を各タスクの処理フローに基づい
て説明する。
【0008】図5は、OSをリブートする場合におけ
る、IFタスク、解析タスク、ジョブ制御タスク、エン
ジン制御タスクの処理フローを示した図である。
【0009】IFタスクは、ホスト装置からの制御コマ
ンドの受信待ち状態で待機しており、リセットコマンド
を受信した場合に処理を開始する(ステップS10
1)。まず、リセットコマンド受信通知を格納するため
のメモリ領域(以下、「メモリ領域A」と呼ぶ。)を確
保する(ステップS102)。次に、リセットコマンド
受信通知を解析タスクに対し出力し、いったん実行権を
手放す(ステップS103)。そして、解析タスクより
後述するリプライ通知を受け取った場合、所定のリプラ
イ処理を実行する(ステップS104)。最後に、後述
するメモリ領域Bを解放し、受信待ち状態に戻る(ステ
ップS105)。
【0010】解析タスクは、IFタスクからの受信通知
待ち状態で待機しており、IFタスクよりリセットコマ
ンドの受信通知を受け取った場合に処理を開始する(ス
テップS201)。まず、受信通知に対するリプライ通
知を格納するためのメモリ領域(以下、「メモリ領域
B」と呼ぶ。)を確保する(ステップS202)。そし
て、リプライ通知をIFタスクに対し出力する(ステッ
プS203)。次に、リセット処理の指示をジョブ制御
タスクに対し出力する(ステップS204)。そして、
メモリ領域Aを解放し、受信通知待ち状態に戻る(ステ
ップS205)。
【0011】ジョブ制御タスクは、解析タスクよりリセ
ット処理の指示を受け取った場合に処理を開始する(ス
テップS301)。まず、エンジン制御タスク等に対し
停止要求を出力し、いったん実行権を手放す(ステップ
S302)。そして、エンジン制御タスク等より停止終
了の通知を受け取ったことを条件として、OSのリブー
トを開始する(ステップS303)。
【0012】OSのリブートにより、全てのタスクはプ
ログラムカウンタ(処理フローにおけるステップに相
当)がリセットされる。また、OSで管理しているメモ
リ領域は、初期化される。ただし、メモリ領域A、メモ
リ領域Bについては、初期化は行われない。外部から受
信するデータにリブートの前後を問わずに応答し、レス
ポンスを返すことができるようにするためである。
【0013】エンジン制御タスクは、ジョブ制御タスク
より停止要求を受け取った場合に、タスク停止処理を開
始する(ステップS401)。
【0014】上記処理フローを実行権の移動という観点
から分析する。〜の記号が付された点線の矢印は、
実行権がタスク間を移動する順番と流れを示す。
【0015】まず、ホスト装置20よりリセットコマン
ドを受信することにより、IFタスクが実行権を獲得
し、ステップS101からS103までを実行する。こ
の段階で、実行権は、受信通知を受け取った解析タスク
に移動する。
【0016】実行権を獲得した解析タスクは、ステップ
S201からS203までを実行する。この段階で、実
行権は、より優先順位の高いIFタスクに移動する。
【0017】実行権を獲得したIFタスクは、ステップ
S104を実行した後、受信待ち状態に入る。この段階
で、実行権は、再び解析タスクに戻る。
【0018】実行権を獲得した解析タスクは、ステップ
S204を実行する。この段階で、実行権は、より優先
順位の高いジョブ制御タスクに移動する。
【0019】実行権を獲得したジョブ制御タスクは、ス
テップS301、S302を実行する。この段階で、実
行権は、より優先順位の高いエンジン制御タスクに移動
する。
【0020】実行権を獲得したエンジン制御タスクは、
ステップS401、S402を実行する。そして、タス
ク停止処理を終了したら、実行権を手放す。
【0021】この段階で、解析タスク、ジョブ制御タス
クは、ともに実行権の獲得を目指すが、解析タスクの優
先順位はジョブ制御タスクの優先順位より低いため、実
行権はジョブ制御タスクが獲得することになる。
【0022】先に述べたように、OSのリブートによっ
てプログラムカウンタが初期化されるため、ステップS
303が実行されると、解析タスクは受信通知待ちの状
態にリセットされる。その結果、ステップS205が実
行されず、メモリ領域Aは未解放のままとなってしま
う。
【0023】このような状態でOSをリブートする処理
を繰り返すと、未解放のメモリ領域が繰り返しごとに蓄
積されていき、最後には、各タスクが必要とするメモリ
領域を確保できなくなって、システム自体がハングして
しまうこととなる。
【0024】そこで、本発明は、ホスト装置との通信が
切断されることのないように、また、印刷結果に乱れが
生じることのないようにしつつ、更に、メモリ領域の食
いつぶしを発生させないように、プリンタ装置を制御す
る技術を提供することを目的とする。
【0025】また、本発明は、OSのリブート処理を複
数回繰り返しても、システムがハングすることのないプ
リンタ制御装置を提供することを目的とする。
【0026】
【課題を解決するための手段】本発明のプリンタ制御方
法は、外部のホストコンピュータとの間の通信を制御す
るIFタスクと、外部より受信した制御コマンドを解析
する解析タスクと、制御コマンドに従って給紙等の制御
命令を出力するジョブ制御タスクと、制御命令に基づい
て印刷エンジンを制御するエンジン制御タスクと、を所
定の優先順位に従って実行するプリンタ制御方法であっ
て、制御コマンドの種類に基づいて、解析タスクとジョ
ブ制御タスクの優先順位を切り替えて実行することを特
徴とする。
【0027】好適には、OSをリブートする制御コマン
ドに対しては、ジョブ制御タスクよりも解析タスクの実
行を優先し、それ以外の制御コマンドに対しては、解析
タスクよりもジョブ制御タスクの実行を優先する。
【0028】好適には、通常の状態では、IFタスク、
エンジン制御タスク、ジョブ制御タスク、解析タスクの
順に優先して実行し、OSをリブートする制御コマンド
を受信した場合には、IFタスク、エンジン制御タス
ク、解析タスク、ジョブ制御タスクの順に優先して実行
する。
【0029】また、本発明のプリンタ制御方法は、外部
のホストコンピュータとの間の通信を制御するIF手段
と、外部より受信したコマンドを解析する解析手段と、
制御コマンドに従って給紙等の制御命令を出力するジョ
ブ制御手段と、制御命令に基づいて印刷エンジンを制御
するエンジン制御手段と、印刷を行う印刷エンジンを備
えたプリンタ装置に対するプリンタ制御方法であって、
IF手段がホストコンピュータよりOSをリブートする
制御コマンドを受け付けた場合、解析手段において前記
受け付けた制御コマンドに関して確保したメモリ領域を
解放してから、ジョブ制御手段においてOSのリブート
処理を実行することを特徴とする。
【0030】本発明の情報処理方法は、コンピュータに
より実施することができるが、そのためのコンピュータ
プログラムは、CD−ROM、磁気ディスク、半導体メ
モリ及び通信ネットワークなどの各種の媒体を通じてコ
ンピュータにインストールまたはロードすることができ
る。
【0031】本発明のプリンタ制御装置は、外部のホス
トコンピュータとの間の通信を制御するIFタスクと、
外部より受信した制御コマンドを解析する解析タスク
と、制御コマンドに従って給紙等の制御命令を出力する
ジョブ制御タスクと、制御命令に基づいて印刷エンジン
を制御するエンジン制御タスクと、を実行するプロセッ
サを備えたプリンタ制御装置であって、前記プロセッサ
は、制御コマンドの種類に基づいて、解析タスクとジョ
ブ制御タスクの優先順位を切り替えて実行することを特
徴とする。
【0032】好適には、前記プロセッサは、OSをリブ
ートする制御コマンドに対しては、ジョブ制御タスクよ
りも解析タスクの実行を優先し、それ以外の制御コマン
ドに対しては、解析タスクよりもジョブ制御タスクの実
行を優先する。
【0033】好適には、前記プロセッサは、通常の状態
では、IFタスク、エンジン制御タスク、ジョブ制御タ
スク、解析タスクの順に優先して実行し、OSをリブー
トする制御コマンドを受信した場合には、IFタスク、
エンジン制御タスク、解析タスク、ジョブ制御タスクの
順に優先して実行する。
【0034】また、本発明のプリンタ制御装置は、プロ
セッサを備えたプリンタ制御装置であって、前記プロセ
ッサは、ホストコンピュータよりOSをリブートする制
御コマンドを受け付けた場合、かかる制御コマンドに関
して確保したメモリ領域を解放してから、OSのリブー
ト処理を実行することを特徴とする。
【0035】また、本発明のプリンタ装置は、本発明の
プリンタ制御装置と、印刷を行う印刷エンジンとを備え
る。
【0036】
【発明の実施の形態】(第1の実施形態)図面を参照し
て本発明の第1の実施の形態を説明する。図1は、本実
施形態のプリンタ装置10のハードウェア構成を表すブ
ロック図である。プリンタ装置10は、用紙をプリンタ
装置内に供給する給紙フィーダ1、印字を行なう印刷エ
ンジン15、及び用紙をプリンタ機外に排出する排紙フ
ィーダ2により動力機構部が構成されている。これらプ
リンタの機構部を制御するのは、CPU(プロセッサ)
3、ROM4、及びRAM5とからなる情報処理システ
ム部である。この情報処理システム部は、ホスト装置2
0とインタフェース装置6を介して接続され、ホスト装
置20から送られてくる印刷データに従い、各機構部を
制御して実際に印字動作を行なわせるプリンタ制御装置
として機能する。
【0037】図2に、第1実施形態に係るプリンタ装置
10の機能構成図を示す。図2に示すように、プリンタ
装置10は、IF手段11、解析手段12、ジョブ制御
手段13、エンジン制御手段14、印刷エンジン15を
備えて構成される。各手段は、ROM4に格納されるア
プリケーションプログラムをCPU3が実行することに
より機能的に実現される。CPU3は、リアルタイムマ
ルチタスクOS上で、各手段を実現するプログラムを実
行することが望ましい。
【0038】このようにアプリケーションプログラムを
実行することにより実現される機能手段は、タスク(又
はプロセス)として把握することができる。すなわち、
IF手段、解析手段、ジョブ制御手段、エンジン制御手
段は、それぞれ、情報処理システム部において実行され
るIFタスク、解析タスク、ジョブ制御タスク、エンジ
ン制御タスクとして把握できる。以下、「手段」と「タ
スク」を特に区別する必要のない限り、「タスク」に統
一して記載する。
【0039】各タスクには所定の優先順位が与えられて
いる。各タスクの実行は、かかる優先順位に従って、例
えばセマフォを用いることにより排他的に制御される。
例えば、共に実行可能な状態のタスクが複数ある場合
は、優先順位の高いタスクがセマフォを獲得する(すな
わち、処理を実行する)。また、優先順位の低いタスク
の実行中に、優先順位の高いタスクに対する実行要求が
あった場合には、優先順位の低いタスクはセマフォを手
放し(すなわち、処理を中断し)、優先順位の高いタス
クがセマフォを獲得する。
【0040】本実施形態では、通常の設定状態では、I
Fタスク、エンジン制御タスク、ジョブ制御タスク、解
析タスクの順番に、高い優先順位が与えられている。I
Fタスクの優先順位を最も高くすることで、通常の設定
状態において、ホスト装置との通信を確実に確保してい
る。また、次に、エンジン制御タスク、ジョブ制御タス
クの優先順位を高くすることで、通常の設定状態におい
て、印刷処理が途中で途切れて印刷結果に乱れが生じな
いように、印刷の安定性を確保している。
【0041】IFタスク11は、ホスト装置20より、
ネットワーク21を介して、例えばIEEE1284.
D4形式で、印刷データ及び制御コマンドを受信する。
【0042】印刷データ及び制御コマンドは、所定のプ
リンタ制御言語によって記述されており、ホスト装置2
0内のプリンタドライバによって生成される。制御コマ
ンドとしては、例えば、ジョブ制御タスク13に対しO
Sのリブートを要求するリセットコマンド、ジョブ制御
タスク13等にタイマー値(時間情報)を通知するタイ
マーコマンド、ジョブ制御タスク13等が管理する所定
の情報(ステータス情報など)を要求するプリンタ情報
取得コマンドなどが考えられる。IFタスク11は、制
御コマンドを受信した場合、制御コマンドの受信通知を
解析タスク12に出力する。
【0043】解析タスク12は、受信した印刷データを
解析して、ラスタ形式のイメージデータを1バンド分又
は1ページ分生成し、イメージバッファ(図示せず)に
格納する。そして、ジョブ制御タスク13に印刷指示を
出力する。
【0044】また、解析タスク12は、IFタスク11
より制御コマンドの受信通知を受け取った場合、制御コ
マンドを解析し、解析結果に応じてジョブ制御タスク1
3や他の手段(例えば外部入出力管理タスクなど)に対
して所定の指示を出力する。また、受信通知に対するリ
プライ通知を、IFタスク11に対し出力する。IFタ
スク11は、かかるリプライ通知を受け取ることによ
り、所定のリプライ処理を実行する。
【0045】ここで解析タスク12は、リセットコマン
ドの受信通知を受け取った場合、解析タスクの優先順位
を、ジョブ制御タスクの優先順位よりも上位に切り替え
る機能を備えている。かかる機能については後述する。
【0046】ジョブ制御タスク13は、ページ管理、色
交換など、印刷エンジン15に依存しない上位レベルの
印刷制御を行うタスクである。
【0047】ジョブ制御タスク13は、印刷指示を受け
取った場合、エンジン制御タスク14に制御命令(紙送
り、印字、給紙、排紙、微少送りなど)を出力する。ま
た、ジョブ制御タスク13は、解析タスク12より印刷
指示以外の指示を受け取った場合、指示内容に応じて、
OSのリブートを行ったり、タイマー値を受け取って記
憶したり、ステータスを取得して出力したりする。
【0048】エンジン制御タスク14は、紙送り機構等
の制御など、印刷エンジン15に依存する具体的な動作
を制御するタスクである。
【0049】エンジン制御タスク14は、制御命令を受
け取った場合、印刷エンジン15の紙送り機構等を制御
して印刷開始に必要な状態を整える。そして、制御命令
が印字を要求するものであった場合、ジョブ制御タスク
13に対し、データ転送要求を出力する。ジョブ制御タ
スク13は、かかるデータ転送要求を受けて、エンジン
制御タスク14から送られる同期信号に従って、イメー
ジバッファからイメージデータをエンジン制御タスク1
4に対し転送する。エンジン制御タスク14は、イメー
ジデータに基づき、印刷エンジン15を制御しながら印
刷を実行する。
【0050】印刷エンジン15は、例えば、印刷ヘッ
ド、紙送り機構(キャリッジ、キャリッジ駆動モータな
ど)等を含んで構成され、エンジン制御タスク14の制
御に従って紙などの印刷記録媒体に印刷を行う。印刷エ
ンジン15としては、レーザプリンタのようにページ単
位で印刷するページプリンタ、インクジェットプリンタ
や熱転写プリンタのように1文字単位で印刷するシリア
ルプリンタ、1行単位で印刷するラインプリンタ等に対
応する各種印刷エンジンを用いることができる。
【0051】(リセットコマンドを受信した場合の処理
フロー)図3は、本実施形態において、OSをリブート
する場合における、IFタスク11、解析タスク12、
ジョブ制御タスク13、エンジン制御タスク14の処理
フローを示した図である。
【0052】IFタスク11は、ホスト装置からの制御
コマンドの受信待ち状態で待機しており、リセットコマ
ンドを受信した場合に処理を開始する(ステップS10
1)。まず、リセットコマンド受信通知を格納するため
のメモリ領域Aを確保する(ステップS102)。次
に、リセットコマンド受信通知を解析タスク12に対し
出力し、いったん実行権を手放す(ステップS10
3)。そして、解析タスク12よりリプライ通知を受け
取った場合、所定のリプライ処理を実行する(ステップ
S104)。最後に、解析タスク12が確保したメモリ
領域Bを解放し、受信待ち状態に戻る(ステップS10
5)。
【0053】解析タスク12は、IFタスク11からの
受信通知待ち状態で待機しており、IFタスク11より
リセットコマンドの受信通知を受け取った場合に処理を
開始する(ステップS201)。まず、受信通知に対す
るリプライ通知を格納するためのメモリ領域Bを確保す
る(ステップS202)。そして、リプライ通知をIF
タスク11に対し出力する(ステップS203)。次
に、リセットコマンドがOSのリブートを伴うリセット
コマンドであるかどうかを判断する(ステップS20
4’)。リセットコマンドは、常にOSのリブートを伴
うとは限らず、印刷ジョブの初期化、印刷エンジンの初
期化など、数種類のリセットコマンドが考えられるため
である。OSのリブートを伴う場合、解析タスク12
は、解析タスク12の優先順位を、ジョブ制御タスク1
3の優先順位に対して相対的に上位となるように、変更
する(ステップS205’)。OSのリブートを伴わな
い場合、優先順位の変更を行わない。次に、リセット処
理の指示をジョブ制御タスク13に対し出力する(ステ
ップS206)。そして、メモリ領域Aを解放し、受信
通知待ち状態に戻る(ステップS207)。
【0054】ジョブ制御タスク13は、解析タスク12
よりリセット処理の指示を受け取った場合に処理を開始
する(ステップS301)。リセットコマンドがOSの
リブートを伴うリセットコマンドである場合、エンジン
制御タスク14等に対し停止要求を出力し、いったん実
行権を手放す(ステップS302)。そして、エンジン
制御タスク14等より停止終了の通知を受け取ったこと
を条件として、OSのリブートを開始する(ステップS
303)。なお、OSのリブートを伴わない場合は、所
定のリセット処理を実行した後、実行権を手放す。
【0055】エンジン制御タスク14は、ジョブ制御タ
スク13より停止要求を受け取った場合に(ステップS
401)、タスク停止処理を開始する(ステップS40
2)。
【0056】本実施形態における上記処理フローを、実
行権の移動という観点から分析する。〜の記号が付
された点線の矢印は、実行権がタスク間を移動する順番
と流れを示す。
【0057】まず、ホスト装置20よりリセットコマン
ドを受信することにより、IFタスク11が実行権を獲
得し、ステップS100からS103までを実行する。
この段階で、実行権は、受信通知を受け取った解析タス
ク12に移動する。
【0058】実行権を獲得した解析タスク12は、ステ
ップS200からS203までを実行する。この段階
で、実行権は、より優先度の高いIFタスク11に移動
する。
【0059】実行権を獲得したIFタスク11は、ステ
ップS104を実行した後、受信待ち状態に入る。この
段階で、実行権は、再び解析タスク12に戻る。
【0060】実行権を獲得した解析タスク12は、ステ
ップS204’からS206までを実行する。この段階
で、実行権は、より優先度の高いジョブ制御タスク13
に移動する。
【0061】実行権を獲得したジョブ制御タスク13
は、ステップS301、S302を実行する。この段階
で、実行権は、より優先度の高いエンジン制御タスク1
4に移動する。
【0062】実行権を獲得したエンジン制御タスク14
は、ステップS401、S402を実行する。そして、
タスク停止処理を終了したら、実行権を手放す。
【0063】この段階で、解析タスク12、ジョブ制御
タスク13は、ともに実行権の獲得を目指す。OSのリ
ブートを伴う場合は、ステップS205’において解析
タスク12の優先順位はジョブ制御タスク13の優先順
位よりも上位に変更されているため、実行権は解析タス
クが獲得することになる。
【0064】実行権を獲得した解析タスク12は、ステ
ップS207を実行する、すなわち、メモリ領域Aを解
放して、受信通知待ちの状態に戻る。この後、ジョブ制
御タスク13に実行権が移り、ステップS303、すな
わち、OSのリブートが実行される。リブートが実行さ
れると、プログラムカウンタの初期化やメモリ領域の初
期化とともに、各タスクの優先順位も初期化され、通常
の設定状態に戻ることとなる。
【0065】かかる処理フローのもとでは、メモリ領域
Aが解放されてからOSのリブートが実行されるため、
優先順位を固定的とした場合に発生するメモリの食いつ
ぶしは生じず、OSのリブートを一定数以上繰り返した
としても、システム自体がハングしてしまうことはな
い。
【0066】ここで、解析タスクの優先順位を変えるこ
とにより、未解放の領域が蓄積されていくことを防ぐの
ではなく、図4に示す参考例のように、ジョブ制御タス
クに対するリセット処理の指示の出力する(ステップS
204)よりも先にメモリ領域Aの解放を行う(ステッ
プS205)ことで、未解放の領域が蓄積されていくこ
とを防ぐ方法も考えられる。
【0067】しかし、かかる方法では、解析タスクがリ
セット処理の指示を出力した段階で、実行権がジョブ制
御タスク13に移り、ふたたび解析タスク12が実行権
を獲得することなく、OSのリブートが実行されてしま
うこととなる。この場合、解析タスク12は、受信通知
待ちの状態に戻れないため、もしOSのリブートが実行
されるまでの間にIFタスク11より受信通知が来たと
しても、これを認識することはできない。
【0068】本実施形態では、先に説明したように、O
Sのリブートが実行されるまでの間、解析タスク12は
受信通知待ちの状態で待機しているため、IFタスク1
1より受信通知が来た場合に、これを確実に認識するこ
とができる。
【0069】(第2の実施形態)次に、本発明の第2の
実施の形態について説明する。第2の実施形態は、情報
処理プログラムを記録した記録媒体を備える。この記録
媒体はCD−ROM、磁気ディスク、半導体メモリその
他の記録媒体であってよく、ネットワークを介して流通
する場合も含む。また、プリンタ用カードやプリンタ用
オプションボードとして流通する場合も含む。
【0070】情報処理プログラムは記録媒体から情報処
理装置に読み込まれ、情報処理装置の動作を制御する。
情報処理装置は、情報処理プログラムの制御により、外
部のホストコンピュータとの間の通信を制御するIFタ
スクと、外部より受信した制御コマンドを解析する解析
タスクと、制御コマンドに従って給紙等の制御命令を出
力するジョブ制御タスクと、制御命令に基づいて印刷エ
ンジンを制御するエンジン制御タスクと、を所定の優先
順位に従って実行する。また、制御コマンドの種類に基
づいて、解析タスクとジョブ制御タスクの優先順位を切
り替えて実行する。例えば、OSをリブートする制御コ
マンドに対しては、ジョブ制御タスクよりも解析タスク
の実行を優先し、それ以外の制御コマンドに対しては、
解析タスクよりもジョブ制御タスクの実行を優先して、
実行する。
【0071】すなわち、情報処理装置は情報処理プログ
ラムの制御により、図1における情報処理システム部、
すなわち、図2における、IFタスク11、解析タスク
12、ジョブ制御タスク13、エンジン制御タスク14
による処理と同一の処理を実行する。
【0072】なお、本発明は上記実施形態に限定される
ことなく、種々に変形して適用することが可能である。
例えば、上記実施形態では、OSをリブートする場合の
優先順位の切り替えを解析タスクが行う構成としている
が、かかる切り替えを他のタスク、例えばIFタスクが
実行するように構成してもよい。
【0073】また、上記実施形態では、情報処理システ
ム部のCPU3が各機能手段を実現する構成としたが、
各機能手段を専用に実行する装置を設ける構成としても
よい。例えば、DMA(Direct Memory Access)装置を
設けて、IFタスク11の一部を実行させる構成が考え
られる。また、例えば、ASIC(Application Specif
ic IC)を設けて、ジョブ制御タスク13の一部を実行
させる構成も考えられる。
【0074】
【発明の効果】本発明の構成によれば、通常の状態では
IFタスク、エンジン制御タスク、ジョブ制御タスク、
解析タスクの順に優先順位を設定しているため、ホスト
装置との通信が切断されることのないように、また、印
刷結果に乱れが生じることのないようにプリンタ装置を
制御することができる。また、OSのリブートを行う場
合には、解析タスクの優先順位をジョブ制御タスクの優
先順位よりも上位に変更するため、OSのリブート処理
を複数回繰り返しても、メモリ領域の食いつぶしを発生
させることなく、プリンタ装置を制御することができ
る。
【図面の簡単な説明】
【図1】 本発明の第1の実施形態におけるプリンタ装
置のハードウェア構成を示すブロック図である。
【図2】 第1の実施形態における機能構成図を示すブ
ロック図である。
【図3】 リセットコマンドを受信した場合における処
理の流れを示すフローチャートである。
【図4】 参考例における処理の流れを示すフローチャ
ートである。
【図5】 従来の処理の流れを示すフローチャートであ
る。
【符号の説明】
10 プリンタ装置 11 IF手段(IFタスク) 12 解析手段(解析タスク) 13 ジョブ制御手段(ジョブ制御タスク) 14 エンジン制御手段(エンジン制御タスク) 15 印刷エンジン 20 ホスト装置

Claims (10)

    【特許請求の範囲】
  1. 【請求項1】 外部のホストコンピュータとの間の通信
    を制御するIFタスクと、外部より受信した制御コマン
    ドを解析する解析タスクと、制御コマンドに従って給紙
    等の制御命令を出力するジョブ制御タスクと、制御命令
    に基づいて印刷エンジンを制御するエンジン制御タスク
    と、を実行するプロセッサを備えたプリンタ制御装置で
    あって、 前記プロセッサは、制御コマンドの種類に基づいて、解
    析タスクとジョブ制御タスクの優先順位を切り替えて実
    行することを特徴とするプリンタ制御装置。
  2. 【請求項2】 前記プロセッサは、OSをリブートする
    制御コマンドに対しては、ジョブ制御タスクよりも解析
    タスクの実行を優先し、それ以外の制御コマンドに対し
    ては、解析タスクよりもジョブ制御タスクの実行を優先
    することを特徴とする請求項1記載のプリンタ制御装
    置。
  3. 【請求項3】 前記プロセッサは、通常の状態では、I
    Fタスク、エンジン制御タスク、ジョブ制御タスク、解
    析タスクの順に優先して実行し、OSをリブートする制
    御コマンドを受信した場合には、IFタスク、エンジン
    制御タスク、解析タスク、ジョブ制御タスクの順に優先
    して実行することを特徴とする請求項1記載のプリンタ
    制御装置。
  4. 【請求項4】 プロセッサを備えたプリンタ制御装置で
    あって、 前記プロセッサは、ホストコンピュータよりOSをリブ
    ートする制御コマンドを受け付けた場合、かかる制御コ
    マンドに関して確保したメモリ領域を解放してから、O
    Sのリブート処理を実行することを特徴とするプリンタ
    制御装置。
  5. 【請求項5】 請求項1乃至4のいずれか1項に記載の
    プリンタ制御装置と、印刷を行う印刷エンジンとを備え
    たプリンタ装置。
  6. 【請求項6】 外部のホストコンピュータとの間の通信
    を制御するIFタスクと、外部より受信した制御コマン
    ドを解析する解析タスクと、制御コマンドに従って給紙
    等の制御命令を出力するジョブ制御タスクと、制御命令
    に基づいて印刷エンジンを制御するエンジン制御タスク
    と、を所定の優先順位に従って実行するプリンタ制御方
    法であって、 制御コマンドの種類に基づいて、解析タスクとジョブ制
    御タスクの優先順位を切り替えて実行することを特徴と
    するプリンタ制御方法。
  7. 【請求項7】 OSをリブートする制御コマンドに対し
    ては、ジョブ制御タスクよりも解析タスクの実行を優先
    し、それ以外の制御コマンドに対しては、解析タスクよ
    りもジョブ制御タスクの実行を優先することを特徴とす
    る請求項6記載のプリンタ制御方法。
  8. 【請求項8】 通常の状態では、IFタスク、エンジン
    制御タスク、ジョブ制御タスク、解析タスクの順に優先
    して実行し、OSをリブートする制御コマンドを受信し
    た場合には、IFタスク、エンジン制御タスク、解析タ
    スク、ジョブ制御タスクの順に優先して実行することを
    特徴とする請求項6記載のプリンタ制御方法。
  9. 【請求項9】 外部のホストコンピュータとの間の通信
    を制御するIF手段と、外部より受信したコマンドを解
    析する解析手段と、制御コマンドに従って給紙等の制御
    命令を出力するジョブ制御手段と、制御命令に基づいて
    印刷エンジンを制御するエンジン制御手段と、印刷を行
    う印刷エンジンを備えたプリンタ装置に対するプリンタ
    制御方法であって、 IF手段がホストコンピュータよりOSをリブートする
    制御コマンドを受け付けた場合、解析手段において前記
    受け付けた制御コマンドに関して確保したメモリ領域を
    解放してから、ジョブ制御手段においてOSのリブート
    処理を実行することを特徴とするプリンタ制御方法。
  10. 【請求項10】 請求項6乃至9のいずれか一項に記載
    のプリンタ制御方法をコンピュータで実行させるための
    プログラムを格納したコンピュータ読み取り可能な記録
    媒体。
JP2000273568A 2000-09-08 2000-09-08 プリンタ制御装置及び方法、プリンタ装置、並びにコンピュータが読出し可能なプログラムを格納した記憶媒体 Pending JP2002082784A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000273568A JP2002082784A (ja) 2000-09-08 2000-09-08 プリンタ制御装置及び方法、プリンタ装置、並びにコンピュータが読出し可能なプログラムを格納した記憶媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000273568A JP2002082784A (ja) 2000-09-08 2000-09-08 プリンタ制御装置及び方法、プリンタ装置、並びにコンピュータが読出し可能なプログラムを格納した記憶媒体

Publications (1)

Publication Number Publication Date
JP2002082784A true JP2002082784A (ja) 2002-03-22

Family

ID=18759483

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000273568A Pending JP2002082784A (ja) 2000-09-08 2000-09-08 プリンタ制御装置及び方法、プリンタ装置、並びにコンピュータが読出し可能なプログラムを格納した記憶媒体

Country Status (1)

Country Link
JP (1) JP2002082784A (ja)

Similar Documents

Publication Publication Date Title
US8189221B2 (en) Image forming device for executing a designated process with priority without canceling a previously accepted process
US8159709B2 (en) Method for canceling a print job submitted to a printer
JPH11327856A (ja) 印刷制御装置および印刷制御装置のデ―タ処理方法およびコンピュ―タが読み出し可能なプログラムを格納した記憶媒体
US20080106758A1 (en) Print processing apparatus, control method for printing apparatus, and computer readable storage medium
JP3007103B2 (ja) 印刷制御装置
JP2007245673A (ja) 画像形成装置
JP2003127505A (ja) プリンタ
EP1026579B1 (en) Network-connectable printer, controller therefor, and method for controlling this controller
JPH10177464A (ja) 印刷制御装置
JPH07121331A (ja) 印字装置
JP2007245703A (ja) 画像形成装置、画像形成制御方法及び画像形成制御プログラム
JP5268604B2 (ja) 情報処理装置及び情報処理方法
JP3724536B2 (ja) 画像出力制御装置およびその処理実行制御方法
JP2816184B2 (ja) 印刷制御装置
US20040190048A1 (en) Image forming device and method
JP2002082784A (ja) プリンタ制御装置及び方法、プリンタ装置、並びにコンピュータが読出し可能なプログラムを格納した記憶媒体
JP3134539B2 (ja) プリンタ制御装置
JP3173721B2 (ja) プリンタ及びその動作方法
JP4058982B2 (ja) プリンタ
US6633402B1 (en) Printer controller for controlling the priorities of tasks in the printer system
JP2002073301A (ja) 情報処理システム及び方法、プリンタ装置、並びにコンピュータが読出し可能なプログラムを格納した記憶媒体
JP4046892B2 (ja) 印刷装置及び排紙制御方法
JP5062750B2 (ja) 画像形成装置
JP2002073302A (ja) 情報処理システム及び方法、プリンタ装置、並びにコンピュータが読出し可能なプログラムを格納した記憶媒体
JPH09254485A (ja) 画像形成装置