JP2008134933A - Network card - Google Patents

Network card Download PDF

Info

Publication number
JP2008134933A
JP2008134933A JP2006322008A JP2006322008A JP2008134933A JP 2008134933 A JP2008134933 A JP 2008134933A JP 2006322008 A JP2006322008 A JP 2006322008A JP 2006322008 A JP2006322008 A JP 2006322008A JP 2008134933 A JP2008134933 A JP 2008134933A
Authority
JP
Japan
Prior art keywords
model
network card
printer
application program
network
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.)
Withdrawn
Application number
JP2006322008A
Other languages
Japanese (ja)
Inventor
Takaharu Osawa
隆治 大澤
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.)
Canon Inc
Original Assignee
Canon 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 Canon Inc filed Critical Canon Inc
Priority to JP2006322008A priority Critical patent/JP2008134933A/en
Publication of JP2008134933A publication Critical patent/JP2008134933A/en
Withdrawn legal-status Critical Current

Links

Images

Landscapes

  • Stored Programmes (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To achieve development without being conscious of the model difference of every printer controller in preparing an application program. <P>SOLUTION: The model difference API absorption layer of a mounted printer controller is mounted on an API provided to an application program. <P>COPYRIGHT: (C)2008,JPO&INPIT

Description

本発明は、プリンタ装置に装着されるネットワークカードに関するものである。   The present invention relates to a network card attached to a printer apparatus.

近年、インターネットの普及により、印刷装置もネットワークで使われる形態が一般化してきた。通常、高速機やカラー機などの高価格機ではネットワークインターフェイスは内蔵される傾向にあるが、低価格なモノクロ機の場合には、ネットワークインターフェイスは本体には同梱されない。また、ネットワークカードモジュールとして別に供給される形態が一般的である。   In recent years, with the widespread use of the Internet, a form in which a printing apparatus is used in a network has become common. Usually, high-priced machines such as high-speed machines and color machines tend to have a built-in network interface. However, in the case of a low-priced monochrome machine, the network interface is not included in the main unit. In general, the network card module is supplied separately.

この場合、印刷装置本体とネットワークカードモジュールは個々にCPUを持ったインテリジェントな形態である。また、通常ネットワークカードモジュール側にネットワーク経由での各種プリントサービスの統括制御を行なうプリントサーバ機能を備えている。また、印刷装置とネットワークカードモジュールは接続インターフェイスを介して通信を行ない所望のサービスを実装している。   In this case, the printing apparatus main body and the network card module are intelligent forms each having a CPU. Further, the normal network card module side is provided with a print server function for performing overall control of various print services via the network. In addition, the printing apparatus and the network card module communicate with each other via a connection interface to implement a desired service.

このことは逆に負荷の重いネットワークサービスをネットワークカードモジュールに追い出すことが可能となり、相対的に印刷装置本体のCPUや周辺パフォーマンスを下げることが可能となり、印刷装置本体のコスト削減をもたらしている。   This, on the contrary, makes it possible to drive heavy network services to the network card module, relatively lowering the CPU and peripheral performance of the printing apparatus main body, and reducing the cost of the printing apparatus main body.

従来のネットワークインターフェイスは例えばLPR(RFC1179)に代表されるような印刷データの送信だけできればよかったが、昨今印刷装置に対する情報管理というニーズが高くなり、付加技術として各種の手段が提供されている。   The conventional network interface only needs to be able to transmit print data as typified by LPR (RFC1179), for example. Recently, there is a growing need for information management for printing apparatuses, and various means are provided as additional techniques.

最も単純な例が、印刷データを送信するポートに情報管理データ(ジョブ制御言語=Job Language)を付加する形態である。ジョブ制御言語は印刷データを送るポートを共有する形であるため、サービスポートを増加せずに済み、比較的実装が簡単である。しかし、印刷データ受信中にデータが大量に送信されるとポートを占有するため、情報管理データのやりとりが止まってしまうという問題がある。またネットワークにおけるLPRプロトコルのような片方向型コネクションの場合、そもそも情報取得ができないという欠点がある。   The simplest example is a form in which information management data (job control language = Job Language) is added to a port for transmitting print data. Since the job control language shares a port for sending print data, it is not necessary to increase the service port and is relatively easy to implement. However, if a large amount of data is transmitted during reception of print data, the port is occupied, and there is a problem that the exchange of information management data is stopped. In addition, in the case of a one-way connection such as the LPR protocol in a network, there is a disadvantage that information cannot be acquired in the first place.

次の手法としては、SNMP/MIB(RFC1157)を使った方式がある。これはデータ送受信用の専用ポートを使用し、標準規格であるSNMP(Simple Network Management Protocol)を使う方法である。しかしこの方式はSNMPを受信してUIを提供する専用クライアントプログラムの独自開発が必要である。かつこの方式では、そもそも単純な情報のやり取りを行うプロトコルであるため、数字、文字列などの単純なデータベースしか提供できない。その結果、機器の構成を示すビットマップ画像などUIを構成する情報は、前記クライアントプログラムが所有せねばならず、それに伴いクライアントプログラムを機種対応しなくてはいけないという問題点がある。   As the next method, there is a method using SNMP / MIB (RFC1157). In this method, a dedicated port for data transmission / reception is used, and the standard SNMP (Simple Network Management Protocol) is used. However, this method requires proprietary development of a dedicated client program that receives SNMP and provides a UI. In addition, since this method is a protocol for exchanging simple information in the first place, only simple databases such as numbers and character strings can be provided. As a result, there is a problem that information that constitutes the UI, such as a bitmap image indicating the configuration of the device, must be owned by the client program, and the client program must correspond to the model accordingly.

さらに最近ではHTTPプロトコル(RFC1945,RFC2616)を用いた方式が主流となりつつある。この方式によれば、ネットワークカードモジュールの中にHTTPサービスを提供して、機器情報に関するHTMLデータやビットマップ画像といったWEBコンテンツを提供する。さらにクライアントは一般的なWEBブラウザを使用して前記WEBコンテンツをGUI上に表示し、操作を可能とすれば、クライアントプログラムを提供しなくても同様の効果を得ることが可能である。従来の方式ではクライアントプログラムが多種多様な機器に固有な情報(メッセージ文字列、ビットマップ画像)を管理する必要があっため、機器が自分の機種情報だけ持てばよい上記方式は短期間で製品を提供するためにはもっとも適する方法である。   More recently, methods using the HTTP protocol (RFC1945, RFC2616) are becoming mainstream. According to this method, an HTTP service is provided in the network card module, and WEB contents such as HTML data related to device information and bitmap images are provided. Further, if the client displays the WEB content on the GUI using a general WEB browser and enables the operation, the same effect can be obtained without providing a client program. In the conventional method, the client program needs to manage information (message character strings, bitmap images) unique to a wide variety of devices. It is the most suitable way to provide.

しかしならが、上記述べたいずれの手段もネットワークカードモジュールに予め組み込まれた静的な機能の提供手段であって、後から機能そのものを追加するあるいは、組み込まれた機能による制御方法を変更するといった動的なサービスの追加ができなかった。   However, any of the above-mentioned means is a means for providing a static function incorporated in the network card module in advance, and the function itself is added later, or the control method by the incorporated function is changed. A dynamic service could not be added.

そこで最近になってJava(登録商標)言語を用いて作成されたアプリケーションプログラムモジュールを、組み込み機器上に実装するJava(登録商標)仮想マシン上で動作可能とするプラットフォーム技術が提案されている。この技術を用いることで従来印刷装置等の組み込み機器に後から新たな機能を機器に追加することが可能となってきている。   Therefore, recently, a platform technology has been proposed that enables an application program module created using the Java (registered trademark) language to operate on a Java (registered trademark) virtual machine mounted on an embedded device. By using this technology, it has become possible to add new functions to a device afterwards in an embedded device such as a conventional printing apparatus.

上記述べたJava(登録商標)仮想マシンにはネットワーク通信機能を始め、組み込み機器を制御するために必要な各種機能を提供するためにアプリケーションプログラムインタフェース(API)が備わっておいる。そこで、上記Java(登録商標)言語で作成されたアプリケーションプログラムモジュールはこれらのAPIを呼び出して組み込み機器に対する制御やネットワークで接続されたホストコンピュータからの要求を処理する。   The Java (registered trademark) virtual machine described above has an application program interface (API) for providing various functions necessary for controlling an embedded device, including a network communication function. Therefore, application program modules created in the Java (registered trademark) language call these APIs to control embedded devices and process requests from host computers connected via a network.

また、従来の技術でも、よりJava(登録商標)アプリケーションを効率的に開発可能にする環境を提供するために、PC上で動作するJava(登録商標)開発環境を提供するものも存在している。(例えば、特許文献1参照。)
特開2005-038010号公報
Also, some conventional technologies provide a Java (registered trademark) development environment that runs on a PC in order to provide an environment that enables more efficient development of Java (registered trademark) applications. . (For example, refer to Patent Document 1.)
JP 2005-038010 A

上記Java(登録商標)仮想マシン上で提供されるAPIは、ネットワーク通信に必要な機能を含んでおり、ネットワーク通信プロトコルの処理を行う基本モジュールを共有するため、通常ネットワークカードモジュール上に実装される機能である。   The API provided on the Java (registered trademark) virtual machine includes functions necessary for network communication, and is usually implemented on a network card module in order to share a basic module for processing a network communication protocol. It is a function.

しかしながらそれらのAPIについては、ネットワークカードモジュールが装着される印刷装置本体の機能に依存して、取得可能な情報が異なっていることがあった。このためJava(登録商標)言語でアプリケーションプログラムを作成しようとする場合には、装着される印刷装置の機能を意識して作成する必要があり、複数の印刷装置で動作する共通アプリケーションプログラムの開発を妨げていた。   However, for these APIs, the information that can be acquired may differ depending on the function of the printing apparatus main body in which the network card module is mounted. For this reason, when trying to create an application program in the Java (registered trademark) language, it is necessary to create it in consideration of the functions of the installed printing device, and it is necessary to develop a common application program that runs on multiple printing devices. It was hindering.

本発明は上記問題点に鑑みてなされたものであり、
印刷装置本体に装着可能な、前記印刷装置と別個のCPUを備えるネットワークカードであって、
クライアントから前記ネットワークカードに具備している仮想マシン上で動作可能なアプリケーションプログラムを前記ネットワークカードに追加可能とする手段と、
印刷装置の制御およびクライアントと通信制御を行なうアプリケーションプログラムが動作可能な仮想マシンと、
アプリケーションプログラムから利用可能なアプリケーションプログラムインタフェースを実行したときに、ネットワークカードが装着される印刷装置に応じて機種を判断し、機種に応じた処理を行う機種差分吸収手段と、
機種差分吸収手段によって取得した情報を、アプリケーションプログラムインタフェースに応じた情報に変更する情報変更手段と、とから構成される。
The present invention has been made in view of the above problems,
A network card equipped with a CPU separate from the printing device, attachable to the printing device main body,
Means for allowing an application program operable on a virtual machine included in the network card to be added from the client to the network card;
A virtual machine capable of operating an application program for controlling the printing apparatus and controlling communication with the client;
When executing an application program interface that can be used from an application program, a model difference absorbing unit that determines a model according to a printing device on which a network card is mounted and performs processing according to the model;
And information changing means for changing the information acquired by the model difference absorbing means to information corresponding to the application program interface.

さらに、印刷装置本体に装着可能な、前記印刷装置と別個のCPUを備えるネットワークカードであって、
印刷装置において、アプリケーションプログラムが利用可能なアプリケーションプログラムインタフェースを実行したときに、印刷装置本体の機種を特定する手段、とから構成される。
Furthermore, a network card comprising a CPU separate from the printing apparatus, which can be attached to the printing apparatus body,
In the printing apparatus, when an application program interface that can be used by an application program is executed, the printing apparatus is configured to identify a model of the printing apparatus main body.

さらに、印刷装置本体に装着可能な、前記印刷装置と別個のCPUを備えるネットワークカードであって、
電源投入時に、印刷装置本体の機種を特定する手段、とから構成される。
Furthermore, a network card comprising a CPU separate from the printing apparatus, which can be attached to the printing apparatus body,
And means for specifying the model of the printing apparatus main body when the power is turned on.

さらに、印刷装置本体に装着可能な、前記印刷装置と別個のCPUを備えるネットワークカードであって、
印刷装置本体の機種が未知のものであった場合に、未知な機種と特定された場合の処理を行う機種差分吸収手段、とから構成される。
Furthermore, a network card comprising a CPU separate from the printing apparatus, which can be attached to the printing apparatus body,
When the model of the printing apparatus main body is unknown, it is composed of model difference absorbing means for performing processing when it is identified as an unknown model.

本発明により、アプリケーションプログラムに対して提供するAPIについては、装着されるプリンタコントローラの機種差分API吸収層を実装する。このことによりアプリケーションプログラム作成時にはプリンタコントローラ毎の機種差分を意識することなく開発を行うことが可能となる。   According to the present invention, for the API provided to the application program, the model difference API absorption layer of the installed printer controller is mounted. This makes it possible to develop an application program without being aware of the model differences for each printer controller.

(実施例1)
図1は、本発明の実施形態に関わる印刷システムのハードウェア構成を説明するブロック図である。1000はプリンタで、内部で大きくネットワークプリンタサーバ1500とプリンタコントローラ1600からなる異なる制御系を司る機器で構成されている。ネットワークプリントサーバ1500において、1はネットワークプリントサーバ用CPUである。ネットワークプリントサーバ用CPUは、書き換え可能なFlashROM3に記憶された制御プログラムに基づいて動作する。また、システムバス4に接続されるネットワークコントローラ(LANC5)を介してローカルエリアネットワーク(LAN2000)に接続されたホストコンピュータ等の複数の外部装置(不図示)と通信を行う。通信には、所定のネットワーク通信プロトコルを用いて、前記外部装置から送られる印刷データやプリンタ制御命令等の各種データ送受信要求を統括的に制御する。そして拡張インタフェースコントローラ(EXPC7)を介して接続されるプリンタコントローラ1501に対して適切なデータ転送制御を行なう。
(Example 1)
FIG. 1 is a block diagram illustrating a hardware configuration of a printing system according to an embodiment of the present invention. Reference numeral 1000 denotes a printer, which is mainly composed of devices that control different control systems, including a network printer server 1500 and a printer controller 1600. In the network print server 1500, reference numeral 1 denotes a network print server CPU. The network print server CPU operates based on a control program stored in the rewritable Flash ROM 3. Further, it communicates with a plurality of external devices (not shown) such as a host computer connected to a local area network (LAN2000) via a network controller (LANC5) connected to the system bus 4. For communication, a predetermined network communication protocol is used to comprehensively control various data transmission / reception requests such as print data and printer control commands sent from the external device. Then, appropriate data transfer control is performed for the printer controller 1501 connected via the expansion interface controller (EXPC7).

RAM2はCPU1の主メモリ、ワークエリア等の一時記憶領域をして用いられる。   The RAM 2 is used as a temporary storage area such as the main memory and work area of the CPU 1.

LED6はネットワークプリントサーバの動作状態を示す表示部として用いられている。例えば、ネットワークコントローラ(LANC5)とローカルエリアネットワーク(LAN2000)の電気的な接続状態(LINK)を表示する。あるいは、ネットワーク通信モード(10Baseや100Base、全二重、半二重)等の各種動作状態をLEDの点滅パターンや色で示すこと可能となっている。   The LED 6 is used as a display unit indicating the operation state of the network print server. For example, the electrical connection state (LINK) between the network controller (LANC5) and the local area network (LAN2000) is displayed. Alternatively, various operation states such as the network communication mode (10Base, 100Base, full duplex, half duplex) can be indicated by the blinking pattern and color of the LED.

さらにネットワークプリントサーバ1500とプリンタコントローラ1501を繋ぐ拡張インタフェース17は、図示しないコネクタで構成されている。そのため、ネットワークプリントサーバ1500のみが着脱し、同じ構成を持つ別のプリンタ1000にネットワークプリントサーバ1500を装着することも可能な構成となっている。   Further, the expansion interface 17 that connects the network print server 1500 and the printer controller 1501 is configured by a connector (not shown). Therefore, only the network print server 1500 can be attached and detached, and the network print server 1500 can be attached to another printer 1000 having the same configuration.

プリンタコントローラ1600において、8はプリンタコントローラ用CPUである。プリンタコントローラ用CPUは、ROM9に記憶された制御プログラム等あるいはディスクコントローラ(DKC15)を介して接続された外部メモリ10に記憶された制御プログラムやリソースデータ(資源情報)等に基づいて動作する。また、システムバス11に接続される各種デバイスとのアクセスを統括的に制御する。さらに、拡張インタフェースコントローラ(EXPC13)を介して接続されるネットワークプリントサーバ1500から受信される印刷データを基にラスタコントローラ12によって出力画像情報を生成し、プリントエンジン16に対して画像信号を出力する。   In the printer controller 1600, 8 is a printer controller CPU. The printer controller CPU operates based on a control program or the like stored in the ROM 9 or a control program or resource data (resource information) stored in the external memory 10 connected via the disk controller (DKC 15). Further, it comprehensively controls access to various devices connected to the system bus 11. Further, output image information is generated by the raster controller 12 based on print data received from the network print server 1500 connected via the expansion interface controller (EXPC 13), and an image signal is output to the print engine 16.

14はCPU8の主メモリ、ワークエリア等として機能するRAMで、図示しない増設ポートに接続されるオプションRAMによりメモリ容量を拡張することができるように構成されている。   Reference numeral 14 denotes a RAM that functions as a main memory, a work area, and the like of the CPU 8, and is configured so that the memory capacity can be expanded by an optional RAM connected to an expansion port (not shown).

18は操作パネル(操作部)でプリンタ1000の動作モード等の設定や印刷データの取り消し等の操作を行なうためのボタンおよびプリンタ1000の動作状態を示す液晶パネルやLED等の表示部が配されている。   Reference numeral 18 denotes an operation panel (operation unit) which is provided with buttons for performing operations such as setting the operation mode of the printer 1000 and canceling print data, and a display unit such as a liquid crystal panel and an LED indicating the operation state of the printer 1000. Yes.

なお、本図で示したプリンタエンジン16は既知の印刷技術を利用するものであり、好適な実施系として例えば電子写真方式(レーザービーム方式)やインクジェット方式、昇華方(熱転写)方式等が挙げられる。   The printer engine 16 shown in the figure uses a known printing technology, and examples of suitable implementation systems include an electrophotographic system (laser beam system), an ink jet system, and a sublimation method (thermal transfer) system. .

図2は、本発明の実施形態に好適な印刷システムにおけるプリンタ1000内の制御機器であるネットワークプリントサーバ1500/プリンタコントローラ1600の各記憶デバイスに記憶された制御プログラム内のソフトウェア構成を説明するブロック図である。   FIG. 2 is a block diagram illustrating a software configuration in a control program stored in each storage device of the network print server 1500 / printer controller 1600, which is a control device in the printer 1000 in the printing system suitable for the embodiment of the present invention. It is.

なお上記各制御プログラムは各制御機器のCPUによってプログラムが解析され処理される。   Each control program is analyzed and processed by the CPU of each control device.

1501はネットワークプリントサーバ1500の基本的なデータの入出力制御を統括するオペレーティングシステムである。さらに前記オペレーティングシステム1501内では、ファイルシステム1505、拡張インタフェースドライバ1506、およびネットワークインタフェースドライバ1507を内包する。   An operating system 1501 controls basic data input / output control of the network print server 1500. Further, the operating system 1501 includes a file system 1505, an extended interface driver 1506, and a network interface driver 1507.

ファイルシステム1505では、プログラム/データ記憶部9との入出力制御を行なう。拡張インタフェースドライバ1506では、プリンタコントローラ1600と拡張インタフェース17を介して通信制御を行なう。ネットワークインタフェースドライバ1507では、ローカルエリアネットワーク(LAN2000)の通信媒体を介して不図示のホストコンピュータ等の外部装置と通信を行なう。   The file system 1505 performs input / output control with the program / data storage unit 9. The extension interface driver 1506 performs communication control via the printer controller 1600 and the extension interface 17. The network interface driver 1507 communicates with an external device such as a host computer (not shown) via a local area network (LAN2000) communication medium.

1502はアプリケーションプログラムインタフェース(API)である。APIでは、ネットワークプリントサーバ1500で動作するユーザアプリケーション1503を提供する。さらに、プリンタ1000やユーザアプリケーションの登録・管理を行う管理アプリケーション等のアプリケーションプログラムに対して前記オペレーティングシステムが備える各種機能を提供する。   Reference numeral 1502 denotes an application program interface (API). The API provides a user application 1503 that runs on the network print server 1500. Furthermore, various functions of the operating system are provided to application programs such as a management application for registering and managing the printer 1000 and user applications.

また前記アプリケーションプログラムインタフェース1502で提供される機能は、以下のAPIを備える。   The functions provided by the application program interface 1502 include the following APIs.

印刷データの送受信機能を提供するデータ転送API、ビットマップ画像や表示メッセージ等のリソースデータの入出力制御を行なうリソース制御API。   A data transfer API that provides a print data transmission / reception function, and a resource control API that controls input / output of resource data such as bitmap images and display messages.

プリンタ1000の再起動や設定値の初期化や設定等の制御を行なうプリンタ制御API。印刷ジョブの取り消しや再印刷指示などを制御するジョブ制御API。ネットワークプリントサーバ1500の再起動や設定値の初期化や設定、およびアプリケーションプログラムの起動、登録、削除を行なうプリントサーバ制御API。ハードディスクドライブへの書き込み・読み出しなどを制御するハードディスク制御API、前記印刷装置の操作パネルの表示の切り替えなどを制御するパネルAPIなどである。これらのAPIは、ネットワークプリントサーバ1500と接続されるプリンタコントローラ1600の機能に応じて、取得可否や取得可能な情報の内容が異なるものも含んでいる。   A printer control API that controls the restart of the printer 1000, initialization of setting values, and settings. A job control API that controls cancellation of print jobs and reprint instructions. Print server control API for restarting the network print server 1500, initializing and setting values, and starting, registering, and deleting application programs. A hard disk control API for controlling writing / reading to / from the hard disk drive, a panel API for controlling switching of the operation panel display of the printing apparatus, and the like. These APIs include those having different availability and information that can be acquired depending on the function of the printer controller 1600 connected to the network print server 1500.

また、1512は、上記各種APIの上位に位置する機種差分API吸収層であり、ネットワークプリントサーバ1500と接続されるプリンタコントローラ1600の機能差分によって生じる各種APIの機能差を吸収するためのミドルウェア層である。   Reference numeral 1512 denotes a model difference API absorption layer positioned above the above-mentioned various APIs, which is a middleware layer for absorbing functional differences between various APIs caused by functional differences between the printer controller 1600 connected to the network print server 1500. is there.

1601はプリンタコントローラ1600の各種処理制御を統括するオペレーティングシステムである。そこでは内部にプリントエンジンとの通信制御を行なうプリントエンジン制御部1603およびネットワークプリントサーバ1500から参照されるビットマップ画像やエラーメッセージ等の機種依存リソースを内包している。さらにネットワークプリントサーバ上で動作する機種依存アプリケーションプログラム等を記憶する機種依存リソース/プログラム記憶部との入出力制御を行なうファイルシステム1604を内包している。   Reference numeral 1601 denotes an operating system that controls various processing controls of the printer controller 1600. There, the printer engine control unit 1603 for controlling communication with the print engine and model-dependent resources such as bitmap images and error messages referenced from the network print server 1500 are included. Furthermore, a file system 1604 for controlling input / output with a model-dependent resource / program storage unit that stores a model-dependent application program or the like operating on the network print server is included.

1602は拡張インタフェース制御部であり、拡張インタフェース17を介してネットワークプリントサーバ1500との通信制御を行なう。さらに前記拡張インタフェース制御部は、制御種別毎に印刷データの入出力を制御するデータ転送論理インタフェースを備える。さらに機種依存リソース/プログラム記憶部9に記憶された各種データの入出力を制御するリソース制御論理インタフェース、プリンタ1000の再起動や設定値の初期化や設定等の制御を行なうプリンタ制御論理インタフェースを備える。また、印刷ジョブの取り消しや再印刷指示などを制御するジョブ制御論理インタフェースを備えている。さらに、各論理インタフェースを介してネットワークプリントサーバ1500から要求された命令をオペレーティングシステム1601に対して転送し、その処理結果をネットワークプリントサーバ1500に対して返信する。   Reference numeral 1602 denotes an expansion interface control unit, which controls communication with the network print server 1500 via the expansion interface 17. The extended interface control unit further includes a data transfer logical interface that controls input / output of print data for each control type. Further, a resource control logic interface for controlling input / output of various data stored in the model-dependent resource / program storage unit 9 and a printer control logic interface for controlling restart of the printer 1000, initialization of setting values, setting, and the like are provided. . In addition, a job control logical interface for controlling cancellation of a print job, reprint instruction, and the like is provided. Further, the command requested from the network print server 1500 is transferred to the operating system 1601 via each logical interface, and the processing result is returned to the network print server 1500.

図3は、ネットワークプリントサーバ1500で動作するアプリケーションプログラムの記述例であり、本発明の好適な一例としてJava(登録商標)言語による記述例を示している。図3の301に示される行は図2で説明したデータ転送APIを呼び出す例である。図中では、"printer.outdata("Test")"がデータ転送APIでここでは"Test"というテキストデータを印字データとしてプリンタコントローラを介してプリントエンジンから印刷せよという命令である。処理結果は"result"に数値型として格納される。   FIG. 3 is a description example of an application program operating on the network print server 1500, and shows a description example in Java (registered trademark) language as a preferred example of the present invention. A line indicated by 301 in FIG. 3 is an example of calling the data transfer API described in FIG. In the figure, “printer.outdata (“ Test ”)” is a data transfer API, and here is a command to print text data “Test” as print data from the print engine via the printer controller. The processing result is stored in "result" as a numeric type.

図3の302に示される行は前記301の行で指示された処理結果の標準出力先を示す。例えば、プリンタ1000の操作パネル17のLCD表示部やアプリケーションを呼び出し元であるホストコンピュータのブラウザ表示部にテキストメッセージ変換して表示する命令の記述例である。   A line indicated by 302 in FIG. 3 indicates a standard output destination of the processing result indicated by the line 301. For example, it is a description example of a command for converting a text message into an LCD display part of the operation panel 17 of the printer 1000 or an application and displaying it on a browser display part of a host computer that is a caller.

図4は、本発明に係るユーザアプリケーション1509が、機種差分API吸収層1512によって提供されるAPIを実行したときの一実施形態を示すフローチャートである。   FIG. 4 is a flowchart showing an embodiment when the user application 1509 according to the present invention executes an API provided by the model difference API absorption layer 1512.

S401においてユーザアプリケーションがAPI(XXX)を実行する。S401においてAPI(XXX)が実行されると、機種差分API吸収層は、S402において、ネットワークプリントサーバ1500が装着されているプリンタコントローラ1501の機種と特定する。特定手段は、特に記載はしないが、コントローラ名称やプリンタの製品名称などを利用するなどさまざま考えられる。S402において機種が特定すると、S403においてそのプリンタコントローラがAに該当するかどうか判断する。Yesの場合にはS404に進み、API(XXX)についてプリンタAに対応した処理を実行する。Noの場合には、S405に進み、そのプリンタコントローラがBに該当するかどうか判断する。Yesの場合にはS406に進み、API(XXX)についてプリンタBに対応した処理を実行する。Noの場合には、該当するプリンタではないと判断し、S407において、その他一般のプリンタ用の処理として実行する。   In S401, the user application executes the API (XXX). When API (XXX) is executed in S401, the model difference API absorption layer identifies the model of the printer controller 1501 in which the network print server 1500 is mounted in S402. The specifying means is not particularly described, but various means such as using a controller name or a printer product name can be considered. When the model is specified in S402, it is determined whether or not the printer controller corresponds to A in S403. If Yes, the process proceeds to S404, and processing corresponding to printer A is executed for API (XXX). If No, the process proceeds to S405, and it is determined whether or not the printer controller corresponds to B. If Yes, the process proceeds to S406, and processing corresponding to printer B is executed for API (XXX). In the case of No, it is determined that the printer is not a corresponding printer, and in S407, it is executed as a process for other general printers.

なお、本実施例では、プリンタAおよびプリンタBに該当する場合の処理について記述しているが、該当プリンタの種類についてはそれに限定されるものではない。   In the present embodiment, the processing for the printer A and the printer B is described, but the type of the printer is not limited thereto.

それぞれのプリンタに対する処理を実行した後、S408において各処理の結果を、アプリケーションに対してリプライして処理を終了する。   After executing the process for each printer, the result of each process is replied to the application in S408, and the process ends.

(実施例2)
図5、6は、本発明に係るユーザアプリケーション1509が、機種差分API吸収層1512によって提供されるAPIを実行したときの一実施形態を示すフローチャートである。
(Example 2)
FIGS. 5 and 6 are flowcharts showing an embodiment when the user application 1509 according to the present invention executes an API provided by the model difference API absorption layer 1512.

図5は、電源投入時の機種差分API吸収層における装着されているプリンタコントローラ1501を特定するシーケンス図である。   FIG. 5 is a sequence diagram for identifying the installed printer controller 1501 in the model difference API absorption layer when the power is turned on.

S501において装置の電源が投入されると、機種差分API吸収層は、S502において、ネットワークプリントサーバ1500が装着されているプリンタコントローラ1501の機種を特定する。特定手段は、特に記載はしないが、コントローラ名称やプリンタの製品名称などを利用するなどさまざま考えられる。S502において機種が特定されるとS503において、特定した機種情報を内部メモリに保存する。   When the apparatus is turned on in S501, the model difference API absorption layer identifies the model of the printer controller 1501 in which the network print server 1500 is mounted in S502. The specifying means is not particularly described, but various means such as using a controller name or a printer product name can be considered. When the model is specified in S502, the specified model information is stored in the internal memory in S503.

図6は、本発明に係るユーザアプリケーション1509が、機種差分API吸収層1512によって提供されるAPIを実行したときの一実施形態を示すフローチャートである。   FIG. 6 is a flowchart showing an embodiment when the user application 1509 according to the present invention executes an API provided by the model difference API absorption layer 1512.

S601においてユーザアプリケーションがAPI(XXX)を実行する。S601においてAPI(XXX)が実行されると、機種差分API吸収層は、S602において、ネットワークプリントサーバ1500が装着されているプリンタコントローラ1501の機種情報を内部メモリから取得する。S602において機種が特定すると、S603においてそのプリンタコントローラがAに該当するかどうか判断する。Yesの場合にはS604に進み、API(XXX)についてプリンタAに対応した処理を実行する。Noの場合には、S605に進み、そのプリンタコントローラがBに該当するかどうか判断する。Yesの場合にはS606に進み、API(XXX)についてプリンタBに対応した処理を実行する。Noの場合には、該当するプリンタではないと判断し、S607において、その他一般のプリンタ用の処理として実行する。   In S601, the user application executes API (XXX). When API (XXX) is executed in S601, the model difference API absorption layer acquires the model information of the printer controller 1501 in which the network print server 1500 is mounted from the internal memory in S602. When the model is specified in S602, it is determined whether or not the printer controller corresponds to A in S603. If Yes, the process proceeds to S604, and processing corresponding to printer A is executed for API (XXX). If No, the process proceeds to S605, and it is determined whether or not the printer controller corresponds to B. In the case of Yes, the process proceeds to S606, and processing corresponding to the printer B is executed for API (XXX). In the case of No, it is determined that the printer is not a corresponding printer, and in S607, it is executed as a process for other general printers.

なお、本実施例では、プリンタAおよびプリンタBに該当する場合の処理について記述しているが、該当プリンタの種類についてはそれに限定されるものではない。   In the present embodiment, the processing for the printer A and the printer B is described, but the type of the printer is not limited thereto.

それぞれのプリンタに対する処理を実行した後、S608において各処理の結果を、アプリケーションに対してリプライして処理を終了する。   After executing the process for each printer, the result of each process is replied to the application in S608, and the process ends.

本発明の実施形態に関わる印刷システムのハードウェア構成ブロック図。1 is a block diagram of a hardware configuration of a printing system according to an embodiment of the present invention. 本発明の実施形態に関わる印刷システムソフトウェア構成ブロック図。FIG. 2 is a block diagram of a printing system software configuration according to the embodiment of the present invention. 本発明におけるアプリケーションプログラムのソースコード記述例。The example of a source code description of the application program in this invention. 本発明に係るユーザアプリケーション1509が、機種差分API吸収層1512によって提供されるAPIを実行したときの一実施形態を示すフローチャート。10 is a flowchart showing an embodiment when a user application 1509 according to the present invention executes an API provided by a model difference API absorption layer 1512; 本発明に係る電源投入時の機種差分API吸収層における装着されているプリンタコントローラ1501を特定するシーケンス。The sequence which identifies the printer controller 1501 with which the model difference API absorption layer at the time of power activation concerning this invention is mounted | worn. 本発明に係るユーザアプリケーション1509が、機種差分API吸収層1512によって提供されるAPIを実行したときの一実施形態を示すフローチャート。10 is a flowchart showing an embodiment when a user application 1509 according to the present invention executes an API provided by a model difference API absorption layer 1512;

符号の説明Explanation of symbols

1000 プリンタ
1500 ネットワークプリントサーバ
1600 プリンタコントローラ
2000 ローカルエリアネットワーク
1 CPU
2 RAM
3 フラッシュROM
4 システムバス
5 LANコントローラ
6 LED
7 拡張インタフェースコントローラ
8 CPU
9 ROM
10 外部メモリ
11 システムバス
12 ラスタコントローラ
13 拡張インタフェースコントローラ
14 RAM
15 ディスクコントローラ
16 プリントエンジン
17 拡張インタフェースバス
18 操作パネル
1000 Printer 1500 Network Print Server 1600 Printer Controller 2000 Local Area Network 1 CPU
2 RAM
3 Flash ROM
4 System bus 5 LAN controller 6 LED
7 Expansion interface controller 8 CPU
9 ROM
10 External memory 11 System bus 12 Raster controller 13 Extended interface controller 14 RAM
15 Disk Controller 16 Print Engine 17 Expansion Interface Bus 18 Operation Panel

Claims (5)

印刷装置本体に装着可能な、前記印刷装置と別個のCPUを備えるネットワークカードであって、
クライアントから前記ネットワークカードに具備している仮想マシン上で動作可能なアプリケーションプログラムを前記ネットワークカードに追加可能とする手段と、
印刷装置の制御およびクライアントと通信制御を行なうアプリケーションプログラムが動作可能な仮想マシンと、
アプリケーションプログラムから利用可能なアプリケーションプログラムインタフェースを実行したときに、ネットワークカードが装着される印刷装置に応じて機種を判断し、機種に応じた処理を行う機種差分吸収手段と、
機種差分吸収手段によって取得した情報を、アプリケーションプログラムインタフェースに応じた情報に変更する情報変更手段と、
を備えることを特徴とするネットワークカード。
A network card equipped with a CPU separate from the printing device, attachable to the printing device main body,
Means for allowing an application program operable on a virtual machine included in the network card to be added from the client to the network card;
A virtual machine capable of operating an application program for controlling the printing apparatus and controlling communication with the client;
When executing an application program interface that can be used from an application program, a model difference absorbing unit that determines a model according to a printing device on which a network card is mounted and performs processing according to the model;
Information changing means for changing the information acquired by the model difference absorbing means to information corresponding to the application program interface;
A network card comprising:
前記請求項1に記載のネットワークカードであって、アプリケーションプログラムが利用可能なアプリケーションプログラムインタフェースを実行したときに、印刷装置本体の機種を特定する手段を備えることを特徴とするネットワークカード。   2. The network card according to claim 1, further comprising means for specifying a model of a printing apparatus main body when an application program interface that can be used by an application program is executed. 前記請求項1に記載のネットワークカードであって、電源投入時に、印刷装置本体の機種を特定する手段を備えることを特徴とするネットワークカード。   2. The network card according to claim 1, further comprising means for specifying a model of the printing apparatus main body when the power is turned on. 前記請求項2に記載のネットワークカードであって、印刷装置本体の機種が未知のものであった場合に、未知な機種と特定された場合の処理を行う機種差分吸収手段を備えることを特徴とするネットワークカード。   The network card according to claim 2, further comprising a model difference absorbing unit that performs processing when the printer is identified as an unknown model when the model of the printer main body is unknown. Network card. 前記請求項3に記載のネットワークカードであって、印刷装置本体の機種が未知のものであった場合に、未知な機種と特定された場合の処理を行う機種差分吸収手段を備えることを特徴とするネットワークカード。   The network card according to claim 3, further comprising a model difference absorbing unit that performs processing when the printer is identified as an unknown model when the model of the printer main body is unknown. Network card.
JP2006322008A 2006-11-29 2006-11-29 Network card Withdrawn JP2008134933A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006322008A JP2008134933A (en) 2006-11-29 2006-11-29 Network card

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006322008A JP2008134933A (en) 2006-11-29 2006-11-29 Network card

Publications (1)

Publication Number Publication Date
JP2008134933A true JP2008134933A (en) 2008-06-12

Family

ID=39559738

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006322008A Withdrawn JP2008134933A (en) 2006-11-29 2006-11-29 Network card

Country Status (1)

Country Link
JP (1) JP2008134933A (en)

Similar Documents

Publication Publication Date Title
US8121954B2 (en) Information processor, method for controlling the same, and image forming system
US20120062936A1 (en) Printer, computer readable medium, and method
US8867071B2 (en) Printer for requiring terminal device to supply target data and terminal device for supplying target data in response to requirement from printer
JP3821138B2 (en) Port setting changing device, port setting changing control program, and port setting changing method
JP2008123299A (en) Network device, network device management device, control method of network device, network device management method, program, and storage medium
JP2008165291A (en) Information processing device and program
JP2006338268A (en) Data processor, network interface substrate and application program registering method
JP4040396B2 (en) Notification method, information processing apparatus, and control program
JP2005038011A (en) Network system and its control method
JP2008134933A (en) Network card
US20090180137A1 (en) Device setting system, device setting method, and computer-readable recording medium saving device setting program
JP2008130016A (en) Network card
JP4560313B2 (en) Information processing apparatus, image forming system, and information processing apparatus control method
JP4262007B2 (en) Network device and data processing system control method
JP4387710B2 (en) Network device and control method thereof
JP4498460B2 (en) Network device and control method thereof
CN104898992B (en) Information processing unit, print control system and its method
JP5353833B2 (en) Server, print setting file storage control method, and storage control program
JP2009104282A (en) Printing system and printing program
JP2003256157A (en) Method and program for printer status monitoring in terminal service
JP2005149087A (en) Printer server, method for executing program, storage medium with computer-readable program stored, and the program
JP2007188165A (en) Expansion card and device
JP2022177477A (en) image forming system
JP6299310B2 (en) Control device, information processing device, information processing system, and program
JP4936545B2 (en) Information processing apparatus and program

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20100202