UNIX System Vの印刷サブシステムは、 Unix 上で印刷するための標準化されたシステムの 1 つであり、SolarisやSCO OpenServerなどの商用 System V ベースの Unix バージョンで一般的です。この印刷アーキテクチャを実行するシステムは、従来、 BSD lprコマンドではなく、印刷システムへの主要なインターフェイスとしてユーザー コマンドlpを使用することで識別できます(ただし、一部のシステムでは、lpのエイリアスとしてlprが提供されています)。
System V 印刷システムで使用できる一般的なユーザー コマンドは次のとおりです。
- lp : 文書を印刷するためのユーザーコマンド
- lpstat : 現在の印刷キューを表示します
- キャンセル: 印刷キューからジョブを削除します
- lpadmin : 印刷システムを構成するシステム管理コマンド
- lpmove : 印刷キュー間でジョブを移動するシステム管理コマンド
歴史
Unix プログラミング モデルでは、デバイス ファイルは、プリンタなどの周辺機器へのアクセス ポイントとして機能する特別なファイルです。たとえば、Unix システムの最初のライン プリンタは、デバイス ( /dev ) ディレクトリ内のファイルlp1 (つまり、/dev/lp1)で表されます。ファイルのメタファーを使用すると、ファイルをデバイスに「コピー」することでドキュメントを印刷できます。cp document /dev/lp1。これは、ユーザーごとにプリンタが 1 台ある場合には十分に機能しますが、このモデルは、複数のユーザーが1 台のプリンタを共有する場合にはうまく機能しませんでした。[1] 解決策は、印刷するドキュメントのキュー (または「スプール」) を作成し、デーモン(システム プロセス) を使用してこのキューを管理し、ドキュメントを到着順にプリンタに送信することでした。
キューに文書を送るlpコマンドを備えたこのようなシステムは、 1973 年にUnixバージョン 4で初めて導入されました。 [2] System V Release 4のリリースまでに、ユーティリティ スイートは、印刷ジョブのキャンセル、キュー間でのジョブの移動、キューの有効化と無効化、ジョブ スケジューラ デーモンの有効化と無効化、印刷システムのステータス レポートなどのコマンドを含むようになりました。[3] lpコマンドは、印刷するキュー文書を処理し[3]、文書の外観とキュー内の位置を制御する 20 を超えるオプションがあり、[4]文書の印刷が終了したらユーザーに電子メールで通知する処理も行いました。[ 2]このコマンドは「ジョブ ID」を返し、これをcancelコマンドまたはlpstatコマンドで使用して、それぞれジョブをキューから削除したり、進行状況を確認したりすることができます。[5]このシステムはセットアップと管理が非常に複雑であると考えられていましたが、ほとんどのユーザーはこれらの 3 つのコマンドのみを使用することが想定されていました。[4]
影響力のあったAT&T Unix System Vに配布されたことで、実装ではないにしてもインタフェースは、ユーザーがプリンタを制御するための標準となりました。lpコマンドはPOSIX .2標準の要件として含まれており、[6]その後のlpr、LPRng、CUPS印刷システムにもその名前のコマンドが登場しました。( SCO UNIXなどのSVR4派生製品では、lpコマンドはBSDベースのlprシステムで使用されるlprコマンドの別名に過ぎませんでした。[7] )
1996年になっても、Running Linuxには「Linuxの印刷ソフトウェアはUNIX標準のlpとlprソフトウェアから構成されています」と書かれていました[8]。しかし、1999年までにlpのサポートは衰え、第3版では単に「lprコマンドはLinux上で文書を印刷します」と書かれていました[9]。 2003年までに、 Debian、Mandrake、Red Hat、Slackware、SuSEディストリビューション の調査では、これらすべてがlpr、LPRng、CUPSの組み合わせを実行していることが示されました[10] 。
オリジナルの System V 印刷システムは依然として独自のものですが、オリジナルから大幅に変更された Solaris 印刷システムは、OpenSolarisプロジェクトの一部としてオープンソース ソフトウェアとしてリリースされています。Common Unix Printing System は、 System V と Berkeley 印刷アーキテクチャの両方をインターフェイス レベルでエミュレートしますが、その内部アーキテクチャは両者と異なります。
批判
ウーロンゴン大学の著者 Peter Gray は、lp の簡易構成システムの紹介の中で、当時のSolaris (オペレーティング システム)バージョン 2 に同梱されていたバージョンのいくつかの弱点について説明しました。
- より単純な BSD lpr システムで使用される単一のデーモンとは対照的に、lp システムでは、スケジュール用とリモート通信用に別々のデーモンが使用されました。
- lpr システムは単一の構成ファイルで制御できますが、lp では管理用に別のプログラムが必要です。
- lp システムは権限をサポートしていましたが、モデルは数百人のユーザーに対応できませんでした。
その結果、グレイは「多くの管理者がSVR4ボックス上で古いlpr/lpdシステムをそのまま実行することを選択する」と指摘した。[11]
参照
- バークレー印刷システム
- 共通 Unix 印刷システム(CUPS)
- LPRng
参考文献
- ^ Kofler, Michael (1997). 「6.4 プリンタ設定」Linux: インストール、設定、および使用. Addison-Wesley. pp. 146– 150. ISBN 0-201-17809-5。
- ^ ab Arthur, Lowell Jay (1986). Unix Shell Programming . John Wiley & Sons. p. 190. ISBN 0-471-84932-4。
- ^ ab Nemeth, Evi; Snyder, Garth; Seebass, Scott (1989)。「ATT での印刷」。UNIX システム管理ハンドブック (第 1 版)。Prentice Hall。pp. 164–173。ISBN 0-13-933441-6。
- ^ ab Rosen, Kenneth H.; Rosinski, Richard R.; Farber, James M. (1990). UNIX System V Release 4: An Introduction for New and Experienced Users . Osborne McGraw-Hill. pp. 117–121. ISBN 0-07-881552-5。
- ^ Sobell, Mark G. (1985). UNIX System V 実践ガイド. Benjamin/Cummings. pp. 45– 46. ISBN 0-8053-8915-6。
- ^ ガードナー、ジェームズ (1994)。Learning Unix (第 2 版)。SAMS。pp. 144。ISBN 0-672-30457-0。
- ^ カトラー、エリー (1994)。SCO UNIX in a Nutshell。オライリー。pp. 75–76。ISBN 1-56592-037-6。
- ^ ウェルシュ、マット、カウフマン、ラー (1995)。『Running Linux』(第 1 版)。オライリー。p. 33。ISBN 1-56592-100-3。
- ^ ウェルシュ、マット、ダルハイマー、カール、カウフマン、ラー (1999)。『Running Linux』(第 3 版)。オライリー。pp. 323–330。ISBN 1-56592-469-X。
- ^ Smith, Roderick W. (2003). 「プリンターの管理」. Linux Power Tools . SYBEX. pp. 269– 284. ISBN 0-7821-4226-5。
- ^ Gray, Peter (1997 年 8 月). 「簡易 LP 構成」. AUUGN: The Journal of AUUG (Australian Unix Systems User Group) . 18 (3): 9– 11.
外部リンク
- 11/10 11:0 ...
- lpstat
- Solaris 10 での印刷管理
