JPS63298430A - 印刷処理方式 - Google Patents

印刷処理方式

Info

Publication number
JPS63298430A
JPS63298430A JP62131113A JP13111387A JPS63298430A JP S63298430 A JPS63298430 A JP S63298430A JP 62131113 A JP62131113 A JP 62131113A JP 13111387 A JP13111387 A JP 13111387A JP S63298430 A JPS63298430 A JP S63298430A
Authority
JP
Japan
Prior art keywords
printer
occupancy
program
laser printer
processing
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
JP62131113A
Other languages
English (en)
Inventor
Teiji Kuwabara
禎司 桑原
Keiichi Nakane
啓一 中根
Hiroyuki Koreeda
浩行 是枝
Naomichi Nonaka
尚道 野中
Kazunari Suzuki
一成 鈴木
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.)
Hitachi Ltd
Hitachi Micro Software Systems Inc
Original Assignee
Hitachi Ltd
Hitachi Micro Software Systems 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 Hitachi Ltd, Hitachi Micro Software Systems Inc filed Critical Hitachi Ltd
Priority to JP62131113A priority Critical patent/JPS63298430A/ja
Publication of JPS63298430A publication Critical patent/JPS63298430A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Facsimiles In General (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 [産業上の利用分野] 本発明はワードプロセッサなどの文書作成及び印刷シス
テムに係わり、特に複数の独立した印刷プログラムがマ
ルチタスクの環境で処理を行うシステムが複数存在し、
それらのシステムが1台のプリンタを共用する場合に好
適な、印刷処理方式[従来の技術] パーソナルコンピュータやワークステーションにおいて
は、計算機とプリンタは1対1で接続されており、複数
の計算機が1台のプリンタを共用するという環境は、L
AN (ローカルエリアネットワーク)上で実現されて
いる。また、低価格なシステムにおいては安価なプリン
タ切り替え器を介して、複数のパーソナルコンピュータ
を1台のプリンタに接続し、マニュアルにてパーソナル
コンピュータとプリンタの接続を切り替えることもでき
る。
マルチユーザ処理が可能なワークステーションの場合に
は、多くのユーザが複数の端末を介してプリンタなどの
資源を共用しているため、OSが強力な資源管理機能を
提供しており、プリンタの共有管理も該機能で実現する
ことができる。この場合は、あたかも複数の計算機が1
台のプリンタを共用しているかのように見える。
[発明が解決しようとする問題点] ワードプロセッサなどの比較的安価な文書処理システム
では、高価なレーザプリンタを1台のワードプロセッサ
で占有するのでは、システム当たりのコストが高くなる
という問題がある。そこで複数のワードプロセッサで1
台のレーザプリンタを共用することが必要となるが、L
ANによりプリンタを共用する方式では、コストの問題
を解決することができない。従来のプリンタ切り替え器
では、操作が煩わしく、また印刷処理中に誤って切り替
えた場合には、レーザプリンタの動作が保証されなくな
り、不特定多数のユーザが使用する環境では、好ましい
方法とは言えない。またマルチユーザ処理の環境とは異
なり、複数のワードプロセッサは、各々のOSで制御さ
れているため、マルチユーザ処理で実現されている方法
により。
プリンタの共用管理を行うことは不可能である。
本発明の目的は、複数のワードプロセッサなどが、1台
のプリンタを共用して印刷処理を行える環境を安価な方
法により実現することにある。
[問題を解決するための手段] さて先に上げた問題点は、このようなシステムに以下の
手段を設けることによって実現できる。
即ち (1)AP (印刷処理プログラム)が印刷処理を開始
するに先立って、OSにプリンタを占有する旨を通知す
る占有要求手段、及び占有の解除を通知する占有解除要
求手段(115a)−(2)OSが前記通知手段に対応
して、占有などの可否をAPに応答する第1の応答手段
(115b)、 (3)O3が占有の可否を判定する第1の判定手段及び
レーザプリンタドライバに対し、プリンタを占有するよ
う指示する占有指示手段及び占有の解除を指示する占有
解除指示手段(125a)、(4)上記指示に対し、レ
ーザプリンタドライバがOSに応答する第2の応答手段
(125b)、(5)レーザプリンタドライバが占有の
可否を判定する第2の判定手段、及びレーザプリンタコ
ントローラにレーザプリンタを接続するよう指示する占
有指示手段、接続を解除する接続解除指示手段(135
a)、 (6)上記指示に対応するレーザプリンタコントローラ
からレーザプリンタドライバへの第3の応答手段(13
6a)。
(7)レーザプリンタコントローラが接続の可否を判定
する第3の判定手段、及びレーザプリンタに接続を要求
する接続要求手段、接続を解除する接続解除要求手段(
145a)、 (8)レーザプリンタの接続を切り替える接続切り替え
手段を設ける。
[作用] 第1図により問題を解決する手段について説明する。ま
ず第1図のシステムにおける構成要素について説明する
。122は文書や帳票のデータを印刷するアプリケーシ
ョン(以下APと略す)対応の印刷処理プログラムであ
る。文書や帳票では、データ構造が大きく異なり、それ
ぞれ専用の印刷処理プログラムが必要となる。これらの
プログラムはオペレーティングシステム(以下osと略
す)120によってタスクとして管理され、マルチタス
クの環境で動作する。レーザプリンタ211はレーザプ
リンタコントローラ210により制御され、該レーザプ
リンタコントローラ210はレーザプリンタドライバ1
30によって制御される。
印刷処理プログラム122は、oS120を介してレー
ザプリンタドライバ130の機能を使うことにより、レ
ーザプリンタ211に処理の結果を出力する。
APは、印刷処理を開始する前に、占有要求手段により
OSに対して、プリンタの占有を要求する。第1の判定
手段は、他のAPにより既にプリンタが占有されていな
いかどうかを調べ、占有されている場合には、第1の応
答手段により占有不可を通知する。そうでない場合には
、占有指示手段によってレーザプリンタドライバに占有
を指示する。第2の判定手段は、レーザプリンタコント
ローラ及びレーザプリンタが動作可能な状態にあるかど
うかを調べ、動作可能であれば、占有指示手段によって
、接続を要求する。動作不可能であれば、第2の応答手
段により、接続不可をOSに通知する。接続不可が通知
されると第1の判定手段は、第1の応答手段によって、
APに占有不可を通知する。第3の判定手段は、占有指
示が為されたときに、レーザプリンタが動作可能である
か否かを判定し、動作可能であれば切り替え器に接続要
求をだし、接続された場合に第3の応答手段により接続
完了を、そうでない場合には、接続不可をレーザプリン
タドライバに通知する。この結果は、第2の判定手段と
応答手段、第1の判定手段と応答手段によりAPに通知
される。APでは接続完了の通知を受けた場合にだけ印
刷処理を開始することが許されている。印刷処理が終了
したときに、APは占有解除要求を発行するが、これも
各々の手段により、占有要求手段と同様に処理される。
[実施例] 以下、本発明の一実施例を図を用いて説明する。
第2図は1本発明を実施するためのハードウェア構成の
一例である。100と110はマイクロプロセッサであ
る。100は文書の編集と印刷に携わるマイクロプロセ
ッサであり以下メインCPUと呼ぶ。110は、メイン
CPU100の指示に基き、グラフィックメモリ111
に文字や直線などを展開するプロセッサであり、以下サ
ブCPUと呼ぶ。展開された結果は、CRT112に表
示される。メインCPU100とサブCPUll0はシ
ェアドメモリ107を介して通信する。サブCPUll
0が実行すべきプログラムはシェアドメモリ107に格
納されている。メインCPU100の実行すべきプログ
ラムは常にメインメモリ105に格納されている常駐プ
ログラムと1通常は、ハードディスク101に格納され
ており、必要に応じてメインメモリ105にロールイン
されたり、メインメモリ105からハードディスク10
1にロールアウトされる非常駐プログラムがある。
108は印刷やCRTの表示に使用する文字のフォント
を格納するCGROMであり、メインCPU100とサ
ブCPUI 10の両方からアクセスすることが出来る
。102はフロッピディスクであり、ユーザ各自の文書
や、操作環境が格納されている。編集や印刷などの指示
、文書の入力操作は、キーボード109及びマウス11
3を介して行われる。103と104はプリンタであり
、第2図では、低速で安価なワイヤドツトプリンタ10
3と高速なレーザプリンタ104の2種類のプリンタを
サポートするシステムの例を示している。ここで言うレ
ーザプリンタ104とは、第1図のレーザプリンタコン
トローラ210とプリンタエンジン211を指す。10
6はIPL (イニシャルプログラムローダ)用ROM
である。
第1図の200はワードプロセッサであり、ボックス2
00a内には、ワードプロセッサのソフトウェア構成が
示されている。122は、AP対応の印刷処理プログラ
ムであり、例えば1“22aは編集済みの文書ファイル
から印刷用のデータを生成し、文書の印刷処理を行う文
書印刷プログラムである。122bは帳票を印刷する帳
票印刷プログラムである。これらの印刷処理プログラム
は、マルチタスク08120により、タスクとして制御
され独立して印刷処理を行う。
08120は基本的なタスク制御や入出力制御を行うカ
ーネル部120bと、印刷処理特有の機能をAPに提供
する印刷制御プログラム120aなどからなる。印刷処
理プログラム122は印刷用マクロを発行して、印刷制
御プログラム120aの機能を呼びだすことにより(1
15a)、印刷処理を遂行する。印刷制御プログラム1
20aの処理結果は、印刷マクロ用リターンコードによ
って、印刷処理プログラムに通知される(115b)。
印刷制御プログラム120aは、ドライバ用マクロによ
って、レーザプリンタドライバ130にレーザプリンタ
コントローラ210aの制御を依頼する(125 a)
 、レーザプリンタドライバ130は印刷コマンド13
5aや割込み136aにより、レーザプリンタコントロ
ーラ210aの制御を行い、レーザプリンタコントロー
ラ210aの状態をドライバマクロ用のリターンコード
で、印刷制御プログラム120aに通知する(125b
)。
以上ワードプロセッサ側の構成について述べてきたが、
次にレーザプリンタ104側の構成について述べる。第
3図は、レーザプリンタ104のコントローラ部210
のハードウェア構成を示している。
コントローラ部210は、文字フォントROM1240
、頁メモリ650と、プリンタエンジン211を制御す
るエンジンコントローラ部1250及びワードプロセッ
サとのシェアドメモリ1210からなる。
シェアドメモリ1210には、第4図に示すような、コ
ントローラ部210の制御プログラム(プリンタエンジ
ン割込み処理部1300、ワードプロセッサ割込み処理
部1310、コマンド処理部1320)が格納されてい
る。また、ワードプロセッサとの通信エリアとして、コ
ミュニケー ゛ジョンバッファ133o、コマンドバッ
ファ1340が確保されている。コマンドバッファ13
40には、ワードプロセッサから転送されてくる印刷コ
マンドが格納され、コミュニケーションバッファ133
0には、第5図で示されるように割込み要因1410.
1420、コマンドバッファの状態1440や、レーザ
プリンタ104の状態などの制御情報1430が設定さ
れる。制御情報1430には、ワードプロセッサからの
割込みによってセットされる中断要求フラグ1430a
、再開フラグ1430b、レーザプリンタ211からの
割込みによってセットされるエラーフラグ1430cと
、プリンタエンジン211とレーザプリンタコントロー
ラ210の接続状態を記録する1430dからなる。
第6図と第7図にに本実施例を実現するための制御デー
タの一例を示す。
300と322は印刷マクロのパラメータボックスであ
り、300は占有要求のマクロ、320は占有解除要求
のマクロのパラメータを表している。301〜305及
び321〜324は個々のパラメータを示している。3
01と321は、ファンクションの種類、302と32
1はデバイスのタイプ、304と323は、リターンコ
ード格納エリア310と330のアドレスを示している
デバイスのタイプには、ワイヤドツトプリンタ、レーザ
プリンタおよびレーザプリンタコントローラが有る。3
03は、他のタスクなどが占有中のばあいに、占有可能
になるまで待つかどうかを指定する待ち指定である。3
11と331は処理の結果を、312と332はプリン
タの状態などを示す。これらは印刷処理プログラム12
2の内部に取られる。08120には以下の制御データ
が存在する。即ち占有されているデバイスを表す占有デ
バイス341、占有中のタスクを表す占有タスク342
、占有処理待ちの要求を管理する占有処理待ち行列35
0とそのへラダ343、ドライバマクロ用パラメータ3
60がある。占有処理待ち行列350は、待ち行列をつ
なぐポインタ351、要求を出したタスクのタスク番号
352、印刷マクロのパラメータ300や320のコピ
ーなどの情報353を持つ。ドライバマクロ用パラメー
タ360には、ファンクション番号361、デバイス番
号362、イベントフラグを指定する363、リターン
コード格納エリア380のアドレスを示す364、各フ
ァンクションに対応するパラメータエリア370のアド
レスを示す365などの情報が保持される。
レーザプリンタドライバ130には、デバイスコントロ
ールユニット(DCU)390、リクエストボックス(
IRB)395、プリンタ状態400などの情報が保持
される。DCU390には、デバイス番号391、IR
Bを管理する待ち行列のヘッダ392、現在処理されて
いるIRBを指すポインタ(CIRB)393.ワーク
エリア394などがある。IRB395には1次のIR
Bを指すポインタ396、処理を要求したタスクのタス
ク制御ブロック(TCB)399を指すポインタ397
及びパラメータ370のコピー398を持つ。TCB3
99は、08120(7)領域で○5120によって管
理されるタスクに関する制御情報であるが、第6図では
、図面の都合上レーザプリンタドライバ130内に記載
した。401は中断状態、402はエラー状態を示すフ
ラグであり、403はレーザプリンタコントローラ21
0のプログラムの有無を示す。
(以下 余白) 次に本実施例を実現するための印刷制御プログラム12
0a、レーザプリンタドライバ130、レーザプリンタ
コントローラ210の処理の例について説明する。なお
、08120のカーネル部120bは、従来から用いら
れているマルチタスク用のOSを使用しており、本発明
は該OSの一般的な機能を使って実現しているので、0
8120のカーネル部120bの処理については詳しく
説明しない。
第8図(a)は、印刷制御プログラムの占有処理の流れ
を示す流れ図である。印刷処理プログラム122が、パ
ラメータ300を設定しoS120に対して印刷マクロ
を発行すると、カーネル部120bは、パラメータ30
0の先頭アドレスと印刷マクロを発行したタスクのタス
ク番号を引数として、占有処理500を起動する。以下
第8図(a)の説明では、デバイスタイプがレーザプリ
ンタであるという場合には、レーザプリンタコントロー
ラを含む。
占有処理500では、まず占有デバイス341をチェッ
クして(501)、占有中であれば514にて待ちの指
定303で待ちが指定されているかどうかをチェックす
る。待ちが指定されていなければ、失敗通知509で、
リターンコード310の311に他のタスクが既に占有
している旨を設定して処理を終了する。待ちが指定され
ている場合は、515で印刷マクロを発行したタスクを
待ち状態として占有待ち行列につなぐ。具体的には、第
7図の410をヘッダとするレディキューに繋がれてい
るタスクのTCB399のタスク状態を、ランニング状
態から待ち状態にして、411をヘッダとする占有待ち
行列に繋ぎ変える。515の処理で印刷制御プログラム
の占有処理は終了する。
占有デバイス341が未占有を示しているときは、50
2でデバイスタイプ302をチェックする。ワイヤドツ
トプリンタの場合は、処理503及び504で341を
ワイヤドツトプリンタ占有状態に設定し、311に占有
が成功した旨をセットして処理を終了する。
レーザプリンタの場合には505で占有デバイス341
を占有処理中に設定して、506でパラメータ360を
生成しドライバマクロを発行する。
361には占有処理を要求するファンクションを、37
0にはデバイスタイプ302を設定する。362にはデ
バイスがレーザプリンタであることを示す固有の番号が
セットされる。363は本発明とは直接関係ないので、
説明を省略する。レーザプリンタドライバ130の処理
が終了すると、507で占有できたかどうかをチェック
するためリターンコード381を調べる。占有できた場
合には、508及び504で占有デバイス341をレー
ザプリンタに設定し、リターンコード380の内容を印
刷処理プログラム122に対するリターンコード310
にコピーして処理を終了する。占有できなかった場合に
は、382の内容によりその原因を調べ(510)、レ
ーザプリンタコントローラ210にプログラムが無いた
めに占有処理が行えない場合には、517でプログラム
のローディング処理を行い、ローディングが完了した後
再び506から占有処理を繰り返す。その他の場合には
、513及び509で占有デバイスを未占有状態としリ
ターンコード380の内容を310にコピーして処理を
終了するが、占有待ち行列に占有待ちのタスクがある場
合には、512で待ち行列の先頭のTCB399eのタ
スク状態をレディとし、レディキューに繋ぎ変える。
印刷制御プログラム120aの占有処理500が終了す
ると、カーネル部120bに制御が移るが、この時カー
ネル部120bはレディキューのレディ状態にあるタス
クの中から、次に実行すべきタスクを選択して該タスク
の処理を再開する。
本実施例の場合には、レーザプリンタコントローラ21
0のプログラムは、ワードプロセッサ200から転送す
る必要がある。レーザプリンタドライバ130が占有処
理を行うときにプログラムの有無をチェックし、プログ
ラムが無い場合には、印刷制御プログラム120aの占
有処理の一部として、レーザプリンタコントローラ21
0のプログラムのローディング処理を行う。第15図に
ローディング処理の概要を示す。(a)は制御データ、
(b)は印刷制御プログラム120aの処理の流れを示
す。
レーザプリンタコントローラ210のプログラム170
1は、ローディング用の制御情報を保持したヘッダ部1
700と一緒にハードディスク101に格納されている
。1710はローディング用制御テーブルであり、シス
テム立ち上げ時の初期処理でハードディスク上のプログ
ラム位置1711がセットされる。1712〜1715
はヘッダ部1700の内容がコピーされる。1712は
プログラム1701の先頭位置、1713はシェアドメ
モリ1210にあるプログラムエリア1703の先頭ア
ドレス、1714はプログラム長である。1715はプ
ログラムのバージョンなどのその他の情報である。17
02はメインメモリ105のワークエリアである。
プログラムのローディング処理517では、まず172
1でヘッダ部1700を制御テーブル1710に読みだ
す。1712と1714からプロダラム1701のハー
ドディスク上の先頭位置及び長さを知り、ワークエリア
1702にプログラム1701を読みだす(1722)
。次にワークエリアに読みだしたプログラムを先頭アド
レス1713で示されるプログラムエリア17o3に転
送する(1723)。最後に1724で403をプログ
ラム有りの状態に設定して、レーザプリンタコントロー
ラのリセット及びホールドを解除して処理を終了する。
レーザプリンタコントローラは初期処理でリセットされ
ホールドがかけられる。
また403は初期処理でプログラム無しの状態の設定さ
れる。
次に第8図(b)により印刷制御プログラム120aの
占有解除処理550について説明する。
印刷処理プログラム122が、パラメータ320を設定
し08120に対して印刷マクロを発行すると、カーネ
ル部120bは、パラメータ320の先頭アドレスと印
刷マクロを発行したタスクのタスク番号を引数として、
占有解除処理550を起動する。
占有解除処理550では、551で占有デバイス341
とデバイスタイプ322を比較して、一致していなけれ
ば555で331にデバイス誤りを設定して処理を終了
する。一致しているときは、デバイスタイプ322をチ
ェックしく552)、ワイヤドツトプリンタもしくはレ
ーザプリンタコントローラの場合には554で占有デバ
イス341を未占有とし、占有処理待ちのタスクが有れ
ば待ちを解除する。555で占有解除が成功した旨を3
31に設定して処理を終了する。レーザプリンタの場合
には、360にパラメータを設定してドライバマクロを
発行する。361に設定するファンクションには、占有
解除を指定する。370に設定するパラメータは無い、
レーザプリンタドライバ130の処理が終了した後、5
54で占有デバイス341を未占有状態とし、占有処理
待ちのタスクが有れば待ちを解除して、555でリター
ンコード380の内容を330にコピーして処理を終了
する。
以上印刷制御プログラム120aの処理の例について述
べたが、次にレーザプリンタドライバ130の処理を第
9図と第10図を用いて説明する。
印刷制御プログラム120aがドライバマクロを発行す
ると、カーネル部120bはパラメータエリア360の
先頭アドレスと印刷マクロを発行したタスクのTCBア
ドレスを引数として、第9図(C)に示すドライバ処理
700を起動する。このとき該タスクを待ち状態とする
まず701でIRB395を生成し、392をヘッダと
するIRB待ち行列に繋ぐ。397には引数として03
120から与えられたTCBアドレスを設定し、398
には364と370の内容を転記する。IRB待ち行列
に他のIRB395が無い場合には、CIRB393を
待ち行列に繋いだIRB395を指すように設定する。
391をチェックしく702)デバイスビジーの場合に
は処理を終了する。
デバイスビジーでない場合には、CIRB393が指す
IRB395に対応する処理を行う。703でレーザプ
リンタコントローラ210の電源がオンかオフかをチェ
ックして、電源が投入されていない場合には、710〜
712で完了処理を行う。そうでない場合には704以
下のドライバの処理を行う。
第9図の710〜712,725〜727,729〜7
31及び803と804,807,808は、IRB3
95に対応する処理が完了したとき(異常が発生し、処
理が正常に終了しなかったときも処理は完了したという
。)に実行される処理で完了処理と呼ぶ。完了処理では
、完了の状態(正常に終了したか、またはどのような異
常が発生したかなど)をリターンコード380に設定し
く710,725.729,803.804)、IRB
395を待ち行列から外し、CIRB393を付は変え
て391にデバイスフリーを設定する(711.726
,730,807)。そして03120に終了を通知す
る(712.727.731.808)。08120の
カーネル部12obでは、ドライバ処理の終了したタス
クのTCBのタスク状態を待ち状態からレディ状態に変
化させる。その後第9図(c)の710では、381に
占有不可、382にレーザプリンタコントローラ電源未
投入を設定する。
704では391をデバイスビジーとし705で361
のファンクションを判定し、対応する処理ルーチンに制
御を移す。個々の処理が終了した後、391とIRB待
ち行列を調べ、デバイスビジーか待ち行列にIRBが無
い場合には、処理を終了する。08120のカーネル部
120bでは、レティキューから次に実行すべきタスク
を選択して該タスクの処理を再開するだけで、タスクの
状態は変化させない。デバイスビジーでなくかつ待ち行
列にIRBがある場合には、CIRB393が指すIR
Bの処理を703から開始する。
次に第9図(b)、(C)を用いて占有要求処理720
と占有解除要求処理740について説明する。まず占有
要求処理720では、403によリレーザプリンタコン
トローラ210に制御プログラムがロードされているか
否かをチェックする(721)。プログラムがロードさ
れていないときは、728でレーザプリンタコントロー
ラ210をリセットしホールドをかける。729〜73
1で完了処理を行い処理を終了するが、このとき729
では、リターンコード381に占有不可、382にプロ
グラム無しを設定する。制御プログラムがロードされて
いるときは、722で398のパラメータ(370の内
容)をチェックし、デバイスタイプがレーザプリンタコ
ントローラのときには、リターンコード381に占有成
功を設定し完了処理を行って(725〜727)処理を
終了する。レーザプリンタの場合は、プリンタエンジン
211の電源をチェックし、投入されていれば724で
レーザプリンタコントローラ210に占有コマンドを発
行する。未投入の場合には、729〜731で完了処理
を行う。このとき729では、381と382に占有不
可、レーザプリンタ1!源未投入を設定する。
占有解除要求処理74′0では、(c)で示すように7
41でレーザプリンタコントローラ210にたいして、
占有解除コマンドを発行する。
占有要求コマンド及び占有解除要求コマンドに対して、
レーザプリンタコントローラ210は割込みによりその
処理結果をワードプロセッサ200に通知する。この割
込みによりレーザプリンタドライバ130の割込み処理
800が起動される。
第10図に従い割込み処理について説明する。801で
割込み要因141oを判定し、正常終了のとき即ち占有
が成功したときには、リターンコード381に占有成功
を設定し完了処理を行う(8o4.807.808)、
失敗シタトキハ、接続状態1430dの値を382に、
占有不可を381に設定して完了処理を行う(803,
807゜808)。完了処理が終わった後、第9図(、
)の708に制御を移す(713,809)。割込み処
理800のその他の処理については、本発明とは直接関
係ないので説明を省略する。
次にレーザプリンタコントローラ210の処理について
第11図〜第14図により説明する。
第13図はコマンド処理部1320の処理について説明
したものである。コマンド処理部1320は、ワードプ
ロセッサ200によってリセットとホールドが解除され
ることにより起動され、ハードウェアや、内部の制御情
報の初期化を行った後(1510)、ワードプロセッサ
からの印刷コマンド(占有要求コマンドや占有解除要求
コマンドなどを指す)待ちとなる。1520ではコミュ
ニケーションバッファ1330にあるコマンドバッファ
1320の制御情報を常に監視しており、ワードプロセ
ッサがコマンドバッファ1320に印刷コマンドを設定
し、制御情報1440を書き換えると直ちに印刷コマン
ドの実行を開始する。
印刷コマンド処理部1320は1530で印刷コマンド
の解析を行い、印刷コマンドに応じた処理ルーチン(1
540)を実行する。コマンドの処理が終了すると、コ
マンドバッファの制御情報1440を書き換えて(15
50)、再び1520で印刷コマンドの取り出しを行う
第12図の割込み処理120でエラーフラグや中断要求
フラグがセットされた場合には、1520の判定で15
60及び1565以下の異常処理を行う。レーザプリン
タコントローラ210に対する割り込みは、ワードプロ
セッサ200からかけられる中断要求、再開、キャンセ
ル指示、プリンタエンジン211のステータスの読みだ
しなどの割込みと、プリンタエンジン211からのエラ
ー発生、印刷終了などの割込みがある。第12図では、
これらの割込みに対する割込み処理1310を示してい
る。先に述べた異常処理や、割込み処理については本発
明と直接係わりが無いので。
これ以上詳細な説明は行わないことにする。
次に第13図と第14図を用いて占有コマンド処理15
40aと占有解除コマンド処理1540bについて説明
する。第14図は本処理と係わりの深いプリンタエンジ
ン211の切り替え器240の回路の一実施例を図示し
たものである。230はプリンタエンジン211の制御
回路であり、制御線、データ線231と232によって
レーザプリンタコントローラ210に接続されている。
本実施例、では、切り替え器240を介して2台のレー
ザプリンタコントローラ210aと210bに接続され
ている。220は3ステートのバッファであり、221
はインバータ、222はアンド回路である。221bの
出力がHi状態(約5ボルト)のとき、220bはハイ
インピーダンス状態となり、230と2108が接続さ
れた状態となる。逆に221bの出力がLow状態(約
0ボルト)のとき、220aはハイインピーダンス状態
となり、230と210bが接続された状態となる。図
から分かるように切り替え器240の状態は、信号線R
EQaで定まり、RE Q aがHi状態のときは21
0aが、REQaがLow状態のときは210bが23
0と接続される。占有コマンド処理は、レーザプリンタ
コントローラ210とプリンタエンジン211を接続す
る処理である。第14図のような回路を用いて行う接続
処理の一例を第13図(a)により説明する。
1540では信号線BUSYのチェックを行い、Hi状
態なら、他のレーザプリンタコントローラが接続されて
いると判断して、1546で割込み要因1410に異常
終了を、接続状態1430dに他システム接続を設定し
て、ワードプロセッサ200に割込みをかける。Low
状態のときには、1542で信号線REQをHi状態に
する。1543で約10μsec待ち、1544で再び
信号線BUSYのチェックを行う。10μseCは、切
り替え器の状態が安定するのに要する時間である。15
44でビジーなら1546の処理を行い、ビジーでない
なら1545で割込み要因1410に正常終了(成功通
知)を、接続状態1430dに自システム接続を設定し
て、ワードプロセッサ200に割込みをかける。
同図(b)は、占有解除コマンド処理を示す。
この処理では、1547で信号線REQをLow状態に
し、1548で1545と同様の成功通知を行う。
最後に第16図を用いて印刷処理プログラム122の処
理の例を説明する。1800でパラメータ300を設定
し印刷マクロ(占有)を発行する。
1801でリターンコード310をチェックし、占有で
きた場合には1802の印刷処理を開始する。印刷処理
が終了すれば、320にパラメータを設定し、印刷マク
ロ(占有解除)を発行して処理を終了する。1802の
印刷処理中に、他のタスクが印刷処理を行うために占有
を要求すると、そのタスクにたいしては、占有不可がリ
ターンコード311に設定されるので、該タスクでは、
1804でリターンコード312をチェックし、ユーザ
にたいして適当なメツセージを表示する。例えば、「他
の印刷プログラムが処理中です。」とか「他のシステム
がレーザプリンタを使用中です。
」などである。そして、処理を続行するか否かを間合せ
、続行する場合には1800から処理を繰返す。
本実施例によれば、印刷制御プログラム120aが高度
な印刷機能を提供しているため、APの印刷処理プログ
ラム122の開発が極めて容易になり、しかもマルチタ
スクの環境で様々な印刷処理プログラム122が独立に
動作しても、矛盾無く印刷処理を実行することが可能と
なる6更にマルチタスク環境で動作する2台のワードプ
ロセッサが1台のレーザプリンタを共用することが可能
となり、資源の有効活用が図れる。
[発明の効果] 本発明によれば、プリンタと計算機との接続を切り替え
るために、安価な切り替え器を用意するだけで、複数の
計算機が高価なプリンタを共用して文書の編集、印刷処
理を行う環境を構築できるという効果がある。
【図面の簡単な説明】 第1図は本発明の一実施例を説明するためのシステム構
成図、第2図は本発明に係わる計算機システムのハード
ウェア構成図、第3図は本発明に係わるレーザプリンタ
コントローラのハードウェア構成図、第4図は本発明に
係わるレーザプリンタコントローラのソフトウェア構成
図、第5図は計算機とレーザプリンタコントローラとの
通信情報を示す図、第6図と第7図は本発明の一実施例
で用いる制御データを示す図、第8図は本発明に係わる
印刷制御プログラムの処理の一例を示す流れ図、第9図
と第10図は本発明に係わるレーザプリンタドライバの
処理の一例を示す流れ図、第11図〜第13図は本発明
に係わるレーザプリンタコントローラの処理の一例を示
す流れ図、第14図はプリンタ切り替え器の例を示す図
、第15図は、プログラムローディング処理の制御デー
タと流れ図、第16図は本発明に係わる印刷処理プログ
ラムの処理の一例を示す流れ図である。 100・・・CP U、  101・・・ハードディス
ク、 104・・・レーザプリンタ、210・・・レー
ザプリンタコントローラ、122・・・印刷プログラム
、120a・・・印刷制御プログラム、130・・・レ
ーザプリンタドライバ、 500・・・占有処理、55
0・・・占有解除処理、700・・・ドライバ処理、 
1320・・・コマンド処理、240・・・切り替え器
、517・・・プログラムローディング処理。 図面の浄書 名 1 聞 Uv 第 3 Z 第 4− 図 第5図 第 q 図 (C) 纂 10  区 栴 73  図 名 14− 習 第 ts  図 手続補正書(方式) 昭和62 年特許願第1511、 発明の名称 印刷処理方式 補正をする者 1げ目の1鵠 特許出願人 呂 称  15+01株式会社 日 立 製作所代  
理   人 t 本願明細書・添付図面・第1図〜第16図を別紙の
とおり補正する。

Claims (1)

  1. 【特許請求の範囲】 1、レーザプリンタなどのプリンタを共有するとともに
    、アプリケーションプログラム(以下APと略す)とし
    て動作する印刷処理プログラム、マルチタスク用オペレ
    ーティングシステム(以下OSと略す)、プリンタ用ド
    ライバ(以下単にドライバと呼ぶ)により印刷処理を実
    行する計算機システムにおいて、 APからOSにプリンタの占有要求を発行する占有要求
    手段、占有の解除を要求する占有解除要求手段、該要求
    手段に対する応答をOSからAPに返す第1の応答手段
    、 OSからドライバにプリンタの接続を指示する占有指示
    手段、接続解除を指示する占有解除指示手段、該指示手
    段にたいして、ドライバからOSに応答を返す第2の応
    答手段、 プリンタと複数の計算機の接続を切り替える切り替え手
    段、 AP、OS、ドライバにそれぞれプリンタの占有または
    接続の可否を判定する、第1、第2、第3の判定手段を
    設け、 該第2の判定手段は、上記占有要求手段にたいして、他
    のAPが既にプリンタを占有しているかどうかを判定す
    る手段を持ち、既にプリンタが占有されている場合には
    、上記第1の応答手段により占有不可をAPに通知し、
    そうでない場合には、上記占有指示手段によりプリンタ
    の接続を指示し、また上記第2の応答手段により通知さ
    れた内容を上記第1の応答手段により通知し、 上記第3の判定手段は、上記占有指示手段にたいして、
    上記切り替え手段及びプリンタが動作可能かどうかを判
    定し動作不可能な場合には、上記第2の応答手段により
    占有不可をOSに通知し、そうでない場合には、上記切
    り替え手段に接続要求をだし、接続された場合には上記
    第2の応答手段により占有完了を接続できなかった場合
    には占有不可をOSに通知し、 APは、上記第1の応答手段の内容を上記第1の判定手
    段により判定し、占有完了を通知されたときにだけ、印
    刷処理を開始することを特徴とする印刷処理方式。 2、上記計算機システムから転送されるプログラムによ
    りプリンタを制御するプログラム制御のコントローラと
    プリンタの間に上記切り替え手段が位置し、上記切り替
    え手段に対する接続要求は、該コントローラを経由して
    上記切り替え手段に通知される様に為し、上記第3の判
    定手段で上記コントローラに制御プログラムが存在する
    かどうかを判定し、存在しない場合には、上記計算機シ
    ステムから上記コントローラにプログラムを転送するプ
    ログラム転送ルーチンが起動されることを特徴とする特
    許請求の範囲第1項記載の印刷処理方式。
JP62131113A 1987-05-29 1987-05-29 印刷処理方式 Pending JPS63298430A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP62131113A JPS63298430A (ja) 1987-05-29 1987-05-29 印刷処理方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP62131113A JPS63298430A (ja) 1987-05-29 1987-05-29 印刷処理方式

Publications (1)

Publication Number Publication Date
JPS63298430A true JPS63298430A (ja) 1988-12-06

Family

ID=15050291

Family Applications (1)

Application Number Title Priority Date Filing Date
JP62131113A Pending JPS63298430A (ja) 1987-05-29 1987-05-29 印刷処理方式

Country Status (1)

Country Link
JP (1) JPS63298430A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006309717A (ja) * 2005-03-31 2006-11-09 Canon Inc プリント要求の受付順保証機能を備える印刷制御装置、制御方法、記憶媒体及びプログラム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006309717A (ja) * 2005-03-31 2006-11-09 Canon Inc プリント要求の受付順保証機能を備える印刷制御装置、制御方法、記憶媒体及びプログラム

Similar Documents

Publication Publication Date Title
JP3007103B2 (ja) 印刷制御装置
JP2002366317A (ja) 印刷システム及び印刷制御装置及び方法
JP2965603B2 (ja) 印刷システム
JPS63298430A (ja) 印刷処理方式
JP2816184B2 (ja) 印刷制御装置
JP2000353066A (ja) 情報処理装置、情報処理方法、及び記憶媒体
JP2885210B2 (ja) 図形処理システム
JP2978493B2 (ja) 印刷システム及びプリンタ装置
JP2997297B2 (ja) コントローラ
JPH09190317A (ja) 印刷装置および印刷方法
JPS63185671A (ja) 印刷装置
JPH0475153A (ja) マルチ受信プリント制御方法
JP2003131934A (ja) メモリ制御回路及び情報処理装置
JPH04233028A (ja) プリンタ装置
JP3528976B2 (ja) 情報出力装置
JP2503318B2 (ja) 文字入出力制御方式
KR19990059515A (ko) 운영체제 상에서의 콘솔 서버 방법 및 장치
JP2544452B2 (ja) マルチタスク処理装置
JPH01222335A (ja) マルチタスク処理方式
JPH0459635B2 (ja)
JPH0796642A (ja) プリンタの制御装置
JP2000010899A (ja) 入出力処理システム及びその周辺装置制御方法並びにその制御プログラムを記録した記録媒体
JPH06110625A (ja) 印刷制御装置とその制御方式
JPS5947626A (ja) 即時復帰型入出力ドライバ
JPH07141125A (ja) ネットワークプリンタシステム