デバイスとデバイス制御装置とが通信可能に接続されたシステムであって、前記デバイスは、自装置が実現する固有の機能を処理するためのツールデータを格納するツール格納手段と、前記デバイス制御装置からの要求に応じて、前記ツール格納手段に格納された前記ツールデータを前記デバイス制御装置へ送信する送信手段と、を備え、前記デバイス制御装置は、制御を行う前記デバイスの種別、又は、前記デバイスが実現する機能に共通する処理を実行する共通処理実行手段と、前記デバイスが実現する固有の機能にかかる処理が前記共通処理実行手段から呼び出された際に、前記デバイスから前記ツールデータを取得する取得手段と、前記取得手段により取得された前記ツールデータをもとに、前記デバイスが実現する固有の機能にかかる処理を行うツールデータ実行手段と、を備えることを特徴とするシステム。前記共通処理実行手段は、前記デバイスに関する操作指示をユーザーから受け付けるユーザーインターフェースを実現するための処理を前記共通する処理として実行し、前記ユーザーインターフェースにより受け付けられた前記操作指示に応じて、前記デバイスが実現する固有の機能にかかる処理を呼び出すこと、を特徴とする請求項1記載のシステム。前記取得手段は、前記デバイスが実現する固有の機能にかかる処理が呼び出された際に、当該処理にかかるツールデータが前記デバイス制御装置に記憶されていない場合に、前記デバイスから前記ツールデータを取得すること、を特徴とする請求項1または2記載のシステム。前記デバイスは、記録媒体へ画像を記録する記録装置であり、前記ツールデータは、前記記録装置が記録する画像を生成する処理、前記記録装置の設定を変更する処理、前記記録装置が記録する画像を表示する処理の少なくとも一つを行うためのデータであること、を特徴とする請求項1から3のいずれかに記載のシステム。デバイスと通信可能に接続されたデバイス制御装置であって、前記デバイスの種別、又は、前記デバイスが実現する機能に共通する処理を実行する共通処理実行手段と、前記デバイスが実現する固有の機能にかかる処理が前記共通処理実行手段から呼び出された際に、前記デバイスに格納された前記ツールデータを取得する取得手段と、前記取得手段により取得された前記ツールデータをもとに、前記デバイスが実現する固有の機能にかかる処理を行うツールデータ実行手段と、を備えることを特徴とするデバイス制御装置。デバイスと通信可能に接続されたデバイス制御装置が実行する制御方法であって、前記デバイスの種別、又は、前記デバイスが実現する機能に共通する処理を実行する際に、前記デバイスが実現する固有の機能にかかる処理が呼び出された場合に、前記デバイスに格納された前記ツールデータを取得し、取得した前記ツールデータをもとに、前記デバイスが実現する固有の機能にかかる処理を行うこと、を特徴とする制御方法。デバイスと通信可能に接続されたデバイス制御装置が実行するプログラムであって、前記デバイスの種別、又は、前記デバイスが実現する機能に共通する処理を実行する際に、前記デバイスが実現する固有の機能にかかる処理が呼び出された場合に、前記デバイスに格納された前記ツールデータを取得し、取得した前記ツールデータをもとに、前記デバイスが実現する固有の機能にかかる処理を行うこと、を特徴とするプログラム。しかしながら、上述した従来技術では、デバイスの種別ごと、又は、そのデバイスが実現する機能ごとに対応したツールデータを備える必要があるため、ドライバープログラムのデータ容量が増大していた。本発明は、上述した事情に鑑みてなされたものであり、デバイスを制御するためにデバイス制御装置が記憶するプログラムのデータ容量を低減させることができるようにすることを目的とする。上記課題を解決するため、本発明は、デバイスとデバイス制御装置とが通信可能に接続されたシステムであって、前記デバイスは、自装置が実現する固有の機能を処理するためのツールデータを格納するツール格納手段と、前記デバイス制御装置からの要求に応じて、前記ツール格納手段に格納された前記ツールデータを前記デバイス制御装置へ送信する送信手段と、を備え、前記デバイス制御装置は、制御を行う前記デバイスの種別、又は、前記デバイスが実現する機能に共通する処理を実行する共通処理実行手段と、前記デバイスが実現する固有の機能にかかる処理が前記共通処理実行手段から呼び出された際に、前記デバイスから前記ツールデータを取得する取得手段と、前記取得手段により取得された前記ツールデータをもとに、前記デバイスが実現する固有の機能にかかる処理を行うツールデータ実行手段とを備えることを特徴とする。本発明によれば、デバイス制御装置に接続されたデバイスが、自装置が実現する固有の機能を処理するためのツールデータを格納し、デバイス制御装置からの要求に応じて、格納されたツールデータをデバイス制御装置へ送信し、デバイス制御装置は、デバイスが実現する固有の機能にかかる処理が呼び出された際に、デバイスに格納されたツールデータを取得してデバイスが実現する固有の機能にかかる処理を行う。これにより、デバイスが実現する固有の機能にかかる処理を行うツールデータを必要に応じてデバイス制御装置が取得するので、予めデバイス制御装置が様々なデバイスに対応した多数のツールデータを保持していなくても、デバイス制御装置に様々なデバイスを接続して、各デバイスに固有の機能を実行できる。従って、デバイス制御装置がデバイスを制御するプログラムにツールデータを備える必要がなく、デバイス制御装置が保持すべきデータ容量を低減させることができる。また、本発明は、上記システムにおいて、前記共通処理実行手段は、前記デバイスに関する操作指示をユーザーから受け付けるユーザーインターフェースを実現するための処理を前記共通する処理として実行し、前記ユーザーインターフェースにより受け付けられた前記操作指示に応じて、前記デバイスが実現する固有の機能にかかる処理を呼び出すことを特徴とする。本発明によれば、操作指示をユーザーから受け付けるユーザーインターフェースより受け付けられた操作指示に応じて、デバイスが実現する固有の機能にかかる処理が呼び出され、その処理にかかるツールデータがデバイスから取得されるので、例えば操作指示をユーザーから受け付けるユーザーインターフェースをドライバープログラムとして用意して、共通したユーザーインターフェースを提供できる。また、この共通したユーザーインターフェースを介して呼び出される固有の機能に関しては、ツールデータをデバイスから取得するので、デバイス制御装置はユーザーインターフェースに関するプログラムを記憶していれば、各デバイスに固有の機能のツールデータを保持する必要がなく、効率が良い。また、本発明は、上記システムにおいて、前記取得手段は、前記デバイスが実現する固有の機能にかかる処理が呼び出された際に、当該処理にかかるツールデータが前記デバイス制御装置に記憶されていない場合に、前記デバイスから前記ツールデータを取得することを特徴とする。本発明によれば、ツールデータがデバイス制御装置に記憶されていない場合に、デバイスから前記ツールデータを取得するので、例えば最新のツールデータ等をドライバープログラムとして配布する場合などにおいて、デバイスから古いツールデータが取得されることを防止できる。また、本発明は、上記システムにおいて、前記デバイスは、記録媒体へ画像を記録する記録装置であり、前記ツールデータは、前記記録装置が記録する画像を生成する処理、前記記録装置の設定を変更する処理、前記記録装置が記録する画像を表示する処理の少なくとも一つを行うためのデータであることを特徴とする。本発明によれば、記録装置を制御するドライバープログラムのデータ容量を低減させることができる。特にデバイスが記録装置の場合は、取り扱う記録媒体の種別や、記録する画像の仕様が様々であることから、ドライバープログラムのデータ容量の低減に有利である。また、上記課題を解決するため、本発明は、デバイスと通信可能に接続されたデバイス制御装置であって、前記デバイスの種別、又は、前記デバイスが実現する機能に共通する処理を実行する共通処理実行手段と、前記デバイスが実現する固有の機能にかかる処理が前記共通処理実行手段から呼び出された際に、前記デバイスに格納された前記ツールデータを取得する取得手段と、前記取得手段により取得された前記ツールデータをもとに、前記デバイスが実現する固有の機能にかかる処理を行うツールデータ実行手段と、を備えることを特徴とするデバイス制御装置である。本発明によれば、デバイスを制御するデバイス制御装置が、デバイスが実現する固有の機能にかかる処理が呼び出された際に、デバイスに格納されたツールデータを取得してデバイスが実現する固有の機能にかかる処理を行う。これにより、デバイスが実現する固有の機能にかかる処理を行うツールデータを必要に応じてデバイス制御装置が取得するので、予めデバイス制御装置が様々なデバイスに対応した多数のツールデータを保持していなくても、デバイス制御装置に様々なデバイスを接続して、各デバイスに固有の機能を実行できる。従って、デバイス制御装置がデバイスを制御するプログラムにツールデータを備える必要がなく、デバイス制御装置が保持すべきデータ容量を低減させることができる。また、上記課題を解決するため、本発明は、デバイスと通信可能に接続されたデバイス制御装置が実行する制御方法であって、前記デバイスの種別、又は、前記デバイスが実現する機能に共通する処理を実行する際に、前記デバイスが実現する固有の機能にかかる処理が呼び出された場合に、前記デバイスに格納された前記ツールデータを取得し、取得した前記ツールデータをもとに、前記デバイスが実現する固有の機能にかかる処理を行うことを特徴とする。本発明によれば、デバイスを制御するデバイス制御装置が、デバイスが実現する固有の機能にかかる処理が呼び出された際に、デバイスに格納されたツールデータを取得してデバイスが実現する固有の機能にかかる処理を行う。これにより、デバイスが実現する固有の機能にかかる処理を行うツールデータを必要に応じてデバイス制御装置が取得するので、予めデバイス制御装置が様々なデバイスに対応した多数のツールデータを保持していなくても、デバイス制御装置に様々なデバイスを接続して、各デバイスに固有の機能を実行できる。従って、デバイス制御装置がデバイスを制御するプログラムにツールデータを備える必要がなく、デバイス制御装置が保持すべきデータ容量を低減させることができる。また、上記課題を解決するため、本発明は、デバイスと通信可能に接続されたデバイス制御装置が実行するプログラムであって、前記デバイスの種別、又は、前記デバイスが実現する機能に共通する処理を実行する際に、前記デバイスが実現する固有の機能にかかる処理が呼び出された場合に、前記デバイスに格納された前記ツールデータを取得し、取得した前記ツールデータをもとに、前記デバイスが実現する固有の機能にかかる処理を行うことを特徴とする。本発明によれば、デバイスを制御するデバイス制御装置が、デバイスが実現する固有の機能にかかる処理が呼び出された際に、デバイスに格納されたツールデータを取得してデバイスが実現する固有の機能にかかる処理を行う。これにより、デバイスが実現する固有の機能にかかる処理を行うツールデータを必要に応じてデバイス制御装置が取得するので、予めデバイス制御装置が様々なデバイスに対応した多数のツールデータを保持していなくても、デバイス制御装置に様々なデバイスを接続して、各デバイスに固有の機能を実行できる。従って、デバイス制御装置がデバイスを制御するプログラムにツールデータを備える必要がなく、デバイス制御装置が保持すべきデータ容量を低減させることができる。本発明によれば、デバイスを制御するデバイス制御装置がデバイスを制御するために記憶するデータ容量を低減させることができる。以下、図面を参照して本発明の実施形態について説明する。図1は、実施形態にかかるシステムの構成を示すブロック図であり、より具体的には、記録システム1の構成を示すブロック図である。記録システム1は、紙、コーティング紙または合成樹脂シート等からなる記録媒体としてのカットシートや連続シートに、文字や画像を印刷記録するデバイスとしてのプリンター3と、プリンター3を制御して記録を実行させるデバイス制御装置としてのホストコンピューター2とを、通信線10を介して相互に通信可能に接続して構成される。本実施形態では、システムの構成として、記録媒体へ画像を記録するプリンター3をホストコンピューター2で制御する記録システム1を例示するが、デバイスの種別等のシステムレイアウトは特に限定しない。例えば、デバイスの種類はプリンターに限定されるものではなく、スキャナー等であってもよい。また、本実施形態ではホストコンピューター2とプリンター3とを一対一で接続した構成を例示するが、一台のホストコンピューター2に接続されるプリンター3の数に制限はなく、多数のプリンター3をホストコンピューター2に接続してもよい。また、複数のホストコンピューター2に1台のプリンター3を接続したものでもよい。通信線10は、ホストコンピューター2とプリンター3とを一対一で接続する通信ケーブルや無線通信回線の他、一台のホストコンピューター2に対し多数のプリンター3を接続可能な有線または無線のLAN、または、公衆回線網を介した広域ネットワークにより構成される。また、プリンター3の記録方式についても特に制限はなく、本実施形態では一例として、プリンター3を、発熱素子を備えたラインサーマルヘッドにより感熱ロール紙に印刷するサーマルプリンターで構成した場合について説明する。図1に示すように、ホストコンピューター2は、主として、CPU21と、不揮発性メモリーであるROM22と、揮発性メモリーであるRAM23と、キーボード等の入力デバイスに接続された入力部24と、表示装置等の出力デバイスに接続された出力部25と、大規模記憶装置としての記憶部26と、通信I/F27とを備えている。ホストコンピューター2は、CPU21が記憶部26に記憶されたオペレーティングシステム26A、アプリケーションプログラム26B、及びプリンタードライバー26Cを実行しながら、通信I/F27を介してプリンター3に各種コマンドや印刷データを出力することにより、プリンター3を制御する。ホストコンピューター2は、プリンター3に対し、印刷実行を指示するコマンドと印刷用のデータとを含む印刷ジョブを送信して、印刷を行わせる。プリンター3は、主として、CPU31と、書き換え可能な不揮発性メモリーであるフラッシュROM32と、揮発性メモリーであるRAM33と、LEDランプ34と、通信I/F35と、印刷ヘッド38と、印刷ヘッド38が備える発熱素子に適宜通電させて記録媒体としての感熱ロール紙に熱エネルギーを与え、有色のドットを形成させて記録を行う印刷制御部36と、用紙搬送機構37とを備えている。プリンター3は、CPU31がフラッシュROM32に記憶されたファームウェアを実行しながら、通信I/F35を介してホストコンピューター2と通信を行うことにより、各種コマンドや印刷データを受信する。そして、印刷制御部36が各種コマンドや印刷データに基づき、用紙搬送機構37を介して用紙を搬送しつつ印刷ヘッド38を駆動して用紙への印刷を実行し、レシートやクーポンを発券する。また、プリンター3は、発券時や、エラーの発生時等にはLEDランプ5を点灯または点滅させるたり、スピーカー図示略から音声を報知したりするなどして、ユーザーに各種情報を視覚的または聴覚的に通知する。また、プリンター3は、通信I/F35を介したホストコンピューター2からの要求に応じて、フラッシュROM32に記憶格納されているデータをホストコンピューター2へ送信する。ホストコンピューター2から要求されるデータは、プリンター3が実現する各種機能の制御にかかるツールデータなどである。図2は、ホストコンピューター2とプリンター3の機能ブロック図である。図2に示すホストコンピューター2の各部は、CPU21図1参照が記憶部26に記憶された各種プログラムを実行することにより、ソフトウェアとハードウェアとの協働により実現される。また、プリンター3の各部は、CPU31によりフラッシュROM32に記憶された各種プログラムを実行することにより、ソフトウェアとハードウェアとの協働により実現される。図2に示すように、プリンター3は、ホストコンピューター2から送信される各種コマンドや印刷データを受信する受信部401と、受信部401が受信した各種コマンドや印刷データを一時的に保持する受信バッファー402が設けられている。受信バッファー402によって受信されたデータは、コマンド解析部403によって解析され、制御コマンドの場合は制御コマンドバッファー404に、印刷データの場合には印刷バッファー405にDMA転送等により転送される。印刷バッファー405に一時保存された印刷データは、データ展開処理が行われてデータ変換され、最終的には印刷ヘッド38の発熱素子列に対応したドットパターンデータが生成されて印刷バッファー405に記憶される。一方、制御コマンドバッファー404に一時保存された制御コマンドデータは、主制御部408によって読み出されて、記録媒体としての用紙カット動作など制御コマンドに応じた処理が実行される。ホストコンピューター2から送信される制御コマンドには、プリンター3にデータを要求するコマンドが含まれる。ホストコンピューター2がプリンター3に要求するデータには、プリンター3の状態を示すステータスデータや、ツールデータ格納部406に格納されたツールデータ詳細は後述するなどがある。主制御部408は、制御コマンドバッファー404より読み出した制御コマンドがデータの要求コマンドである場合、要求されたデータを収集して送信部414を介してホストコンピューター2へ送信する。例えば、ステータスデータが要求された場合は、印刷制御部36や用紙搬送機構37の処理の状態例えば印刷中、用紙搬送中など、制御コマンドデータを受付中である待ち状態、プリンター3のエラー状態などを一意に示すステータスコードを生成し、生成したステータスコードをステータスデータとしてホストコンピューター2へ送信する。また、ツールデータが要求された場合、主制御部408は、要求されたツールデータをツールデータ格納部406より読み出してホストコンピューター2へ送信する。また、ホストコンピューター2から送信される制御コマンドには、プリンター3での処理を即時に行わせるリアルタイム制御コマンド即時実行制御コマンドがある。プリンター3では、通常のコマンドが制御コマンドバッファー404に記憶された順に実行されるのに対し、リアルタイム制御コマンドは、受信バッファー402においてコマンド解析部403により検出されると、他の処理に優先して直ちに実行される。ツールデータ格納手段としてのツールデータ格納部406は、プリンター3が実現する固有の機能を処理するために、ホストコンピューター2のプリンタードライバー26Cにプラグインとして追加するツールデータを、フラッシュROM32などに格納する。ツールデータ格納部406に格納されたツールデータは、送信手段としての主制御部408によって、ホストコンピューター2からの要求に応じて読み出され、ホストコンピューター2へ送信される。ツールデータ格納部406に格納されるツールデータは、ホストコンピューター2のプリンタードライバー実行部210が呼び出して、プリンター3が実現する固有の機能にかかる処理を行うプログラム等であり、例えばダイナミックリンクライブラリー等であってよい。プリンター3が実現する固有の機能にかかる処理としては、プリンター3が記録媒体へ記録する画像を生成する画像生成処理、プリンター3の設定を変更する設定変更処理、プリンター3が記録媒体へ記録する画像を表示する表示処理など、プリンター3の種別等で仕様が異なる処理である。例えば、プリンター3がレシートに印刷を行う場合では、印刷を行うレシート幅、ドットピッチ、ロゴ印刷の有無、バーコード印刷の有無、連番印刷の有無、印字前のレシート表示など、一般的なプリンター3が行う汎用的な処理詳細は後述するとは異なった処理が挙げられる。主制御部408は、プリンター3の動作を統括制御する。具体的には、主制御部408は、コマンド解析部403により検出されたリアルタイム制御コマンド等の制御コマンドに応じて、各部の処理を制御する。例えば、制御コマンドによりステータスデータが要求された場合は、プリンター3の状態を示すステータスデータをホストコンピューター2へ送信する。また、ツールデータが要求された場合は、要求されたツールデータをツールデータ格納部406から読み出してホストコンピューター2へ送信する。ツールデータの要求は、例えばダイナミックリンクライブラリー等のファイル名を指定して行われる。したがって、主制御部408は、指定されたファイル名のツールデータをツールデータ格納部406から読み出し、送信部414を介してホストコンピューター2へ送信する。一方、ホストコンピューター2は、記憶部26に記憶されたオペレーティングシステム26Aを実行することにより、ホストコンピューター2の基本的機能を実現する。ホストコンピューター2は、記憶部26に記憶されたアプリケーションプログラム26Bを実行するアプリケーション実行部201と、プリンタードライバー26Cを実行するプリンタードライバー実行部210と、プリンター3との間で印刷ジョブ及びコマンドを送受信する送受信部214とを備える。アプリケーション実行部201は、アプリケーションプログラムを実行してデータを処理し、処理されたデータを随時出力する。また、アプリケーション実行部201は、アプリケーションプログラムの実行中に印刷の指示がなされた場合に、印刷実行の指示と、印刷すべきデータとを、印刷用データ記録用データとしてプリンタードライバー実行部210に出力する。プリンタードライバー実行部210は、アプリケーション実行部201がアプリケーションプログラムの実行により出力する印刷の指示印刷用データに基づき、この印刷用データを印刷するための印刷ジョブや各種制御コマンドを生成して、生成した印刷ジョブや各種制御コマンドをプリンター3に送信させる。この印刷ジョブには、印刷実行を指示する印刷指示コマンドと、印刷用データとが含まれ、印刷指示コマンドとともに他のコマンドを含ませることも可能である。具体的には、プリンタードライバー実行部210は、共通処理部211、ツールデータ取得部212、ツールデータ処理部213、及び、プリンター3との通信を行う送受信部214を備えている。送受信部214は、プリンター3との通信を行うためのポートここではLANポートを介して、APIApplicationProgramInterfaceの指示に応じてプリンター3に各種コマンドを送信したり、プリンター3から情報を受信したりする。共通処理実行手段としての共通処理部211は、上述したプリンタードライバー実行部210の処理の中で、プリンター3の種別、又は、プリンター3が実現する機能に共通する処理を実行する。具体的には、共通処理部211は、プリンター3の機種や、プリンター3が解釈するPDLPageDescriptionLanguage等の相違によって処理の違いが発生しない汎用的な処理を行う、いわゆるコアドライバーとして機能が実装されている。また、共通処理部211は、共通する処理の一つとして、プリンター3にかかる操作指示をユーザーから受け付けるユーザーインターフェースとしての機能を提供する。具体的には、共通処理部211は、GUIグラフィカルユーザーインターフェースとしての機能を提供し、出力部25に接続された表示装置に操作画面を表示させて、入力部24に接続された入力デバイスより操作指示を受け付ける。ここで、図3は、ホストコンピューター2が表示するGUIの一例を示す概念図である。この図3に示すように、共通処理部211は、例えば印刷設定画面G1をプリンター3にかかる操作指示を受け付ける操作画面として表示装置に表示させる。印刷設定画面G1には、ハーフトーンの有無を設定するハーフトーン選択ボタンG11、両面印刷の有無を設定する両面印刷選択ボタンG12、印刷レイアウトの表示を行う印刷レイアウト表示ボタンG13等の操作ボタンが表示される。ユーザーは、入力部24に接続された入力デバイスにより上述した操作ボタンを操作することで、プリンター3にかかる操作を行う。上述したGUIにより、プリンター3が実現する固有の機能にかかる処理が指示された場合、共通処理部211は、その固有の機能にかかる処理を実行するためのツールデータを呼び出す。例えば、ハーフトーンにかかる処理、両面印刷にかかる処理、印刷レイアウトの表示にかかる処理の中で、ハーフトーンにかかる処理と印刷レイアウトの表示にかかる処理とが固有の機能にかかる処理である場合は、ハーフトーン選択ボタンG11、印刷レイアウト表示ボタンG13の操作に応じて、ハーフトーンにかかる処理を行うツールデータや、印刷レイアウト表示にかかる処理を行うツールデータの呼び出しが行われることとなる。このように、共通処理部211がGUIの機能を提供することで、プリンター3の固有の機能に関係なく、共通したユーザーインターフェースでの操作が実現できる。取得手段としてのツールデータ取得部212は、プリンター3が実現する固有の機能にかかる処理が共通処理部211から呼び出された際に、プリンター3に格納されたツールデータを取得する。具体的には、ツールデータ取得部212は、共通処理部211から呼び出されたツールデータを、ダイナミックリンクライブラリー等の呼び出しと同様に、プリンタードライバー26Cに含まれるデータから取得する。ここで、プリンタードライバー26Cに該当するデータが含まれていない場合、すなわち該当するダイナミックリンクライブラリーにかかるファイルがプリンタードライバー26Cに存在しない場合は、そのファイルをプリンター3へ要求する制御コマンドを生成してプリンター3へ送信することで、プリンター3よりツールデータを取得する。ツールデータ実行手段としてのツールデータ処理部213は、ツールデータ取得部212により取得されたツールデータをもとに、共通処理部211より呼び出された、プリンター3が実現する固有の機能にかかる処理を行う。具体的には、ツールデータ処理部213は、取得されたダイナミックリンクライブラリー等のツールデータを実行して、実行結果を戻り値として共通処理部211へ返す。次に、プリンタードライバー実行部210により行われる処理を具体的に説明する。図4は、プリンタードライバー実行部210により行われる処理を示すフローチャートである。より具体的には、共通処理部211によりツールデータが呼び出された際の処理のフローを示すフローチャートである。図4に示す処理は、図3に例示したハーフトーン選択ボタンG11等の、プリンター3が実現する固有の機能にかかる処理が指示されたタイミングで開始される。処理が開始されると、プリンタードライバー実行部210のツールデータ取得部212は、共通処理部211より呼び出されたツールデータをホストコンピューター2が記憶しているか否かを確認するステップS1。ツールデータ取得部212は、呼び出されたツールデータがプリンタードライバー26Cに含まれているか否かを判定するステップS2。この判定は、ダイナミックリンクライブラリー等のツールデータに関するファイルがプリンタードライバー26Cに存在するか否かを検索して行う。そして、ツールデータがプリンタードライバー26Cに含まれており、ホストコンピューター2に存在すると判定した場合ステップS2;Yesは、ツールデータ取得部212は、そのツールデータを読み出して取得する。次いで、ツールデータ処理部213は、取得したツールデータを実行してツールデータによる処理を実行するステップS6。一方、ツールデータがプリンタードライバー26Cに含まれておらず、ホストコンピューター2に存在しない場合ステップS2;No、ツールデータ取得部212は、プリンター3との通信接続が送受信部214で確立され、プリンター3との接続が行われていることを確認するステップS3。ここで、プリンター3がホストコンピューター2に接続されていないと判定した場合ステップS4;No、ツールデータ取得部212は、エラーを示す戻り値を共通処理部211などに返すなどして処理を終了する。これに対し、プリンター3が接続されている場合ステップS4;Yes、ツールデータ取得部212は、ツールデータに関するダイナミックリンクライブラリー等のファイルをプリンター3へ要求する制御コマンドを生成し、生成した制御コマンドを送受信部214を介してプリンター3へ送信することで、プリンター3にツールデータを要求する。この要求に応じてプリンター3がツールデータを送信すると、ツールデータ取得部212は、このツールデータを取得するステップS5。次いで、ツールデータ処理部は、取得されたツールデータを実行してツールデータによる処理を実行するステップS6。このように、記録システム1では、プリンター3が実現する固有の機能にかかる処理を行うツールデータを、プリンター3から取得する構成であるため、プリンター3を制御するプリンタードライバー26Cにツールデータを備える必要がなく、プリンタードライバー26Cのデータ容量を低減させることができる。特にプリンター3などにおいては、取り扱う記録媒体の種別や、記録する画像の仕様例えばドッドピッチなどが様々であることから、プリンタードライバー26Cのデータ容量の低減に有利である。また、記録システム1では、ツールデータがホストコンピューター2に記憶されていない場合に、ツールデータがプリンター3から取得される構成であるため、例えば最新のツールデータ等をプリンタードライバー26Cとして配布する場合などにおいて、プリンター3から古いツールデータが取得されることを防止できる。以上説明したように、本発明を適用した実施形態に係る記録システム1によれば、デバイスとホストコンピューター2とが通信可能に接続された記録システム1において、デバイスとしてのプリンター3が、自装置が実現する固有の機能を処理するためのツールデータをツールデータ格納部406に格納し、ホストコンピューター2からの要求に応じて、主制御部408により、ツールデータ格納部406に格納したツールデータをホストコンピューター2へ送信する構成を有し、ホストコンピューター2は、制御を行うデバイスの種別、又は、デバイスが実現する機能に共通する処理を実行する共通処理部211と、デバイスが実現する固有の機能にかかる処理が共通処理部211から呼び出された際に、ツールデータ取得部212の機能によってデバイスからツールデータを取得し、取得したツールデータをもとに、ツールデータ処理部213によって、プリンター3が実現する固有の機能にかかる処理を行うので、ホストコンピューター2に接続されたデバイスが実現する固有の機能にかかる処理を行うツールデータを必要に応じてホストコンピューター2が取得できる。このため、予めホストコンピューター2が、プリンター3を含む様々なデバイスに対応した多数のツールデータを保持していなくても、ホストコンピューター2に様々なデバイスを接続して、各デバイスに固有の機能を実行できる。従って、ホストコンピューター2がプリンター3を制御するプログラムにツールデータを備える必要がなく、ホストコンピューター2が保持すべきデータ容量を低減させることができる。また、ホストコンピューター2の共通処理部211は、プリンター3に関する操作指示をユーザーから受け付けるユーザーインターフェースを実現するための処理を共通する処理として実行し、ユーザーインターフェースにより受け付けられた操作指示に応じて、プリンター3が実現する固有の機能にかかる処理を呼び出すので、操作指示をユーザーから受け付けるユーザーインターフェースをドライバープログラムとして用意して、共通したユーザーインターフェースを提供できる。また、この共通したユーザーインターフェースを介して呼び出される固有の機能に関しては、ツールデータをプリンター3から取得するので、ホストコンピューター2はユーザーインターフェースに関するプログラムを記憶していれば、各プリンター3に固有の機能のツールデータを保持する必要がなく、効率が良い。ホストコンピューター2のツールデータ取得部212は、制御対象のデバイスであるプリンター3が実現する固有の機能にかかる処理が呼び出された際に、当該処理にかかるツールデータがホストコンピューター2に記憶されていない場合に、このツールデータをプリンター3から取得するので、例えば最新のツールデータ等をドライバープログラムとして配布する場合などにおいて、プリンター3から古いツールデータが取得されることを防止できる。また、ホストコンピューター2に接続されるデバイスが、記録媒体へ画像を記録するプリンター3であり、ツールデータは、プリンター3が記録する画像を生成する処理、プリンター3の設定を変更する処理、プリンター3が記録する画像を表示する処理の少なくとも一つを行うためのデータであるから、プリンター3を制御するドライバープログラムのデータ容量を低減させることができる。特に、デバイスとしてプリンター3を用いる場合は、取り扱う記録媒体の種別や、記録する画像の仕様が様々であることから、ドライバープログラムのデータ容量の低減に有利である。なお、上記実施形態は本発明を適用した一具体例を示すものであり、本発明はこれに限定されるものではない。例えば、上記実施形態ではホストコンピューター2に接続されるデバイスの一例としてプリンター3を挙げて説明したが、本発明はこれに限定されるものではなく、例えば、ディスプレイ表示装置、スキャナー光学読取装置、他のパーソナルコンピューター、ハードディスク装置や半導体メモリーを用いた外部記憶装置、テレビ放送等の放送受信機等が挙げられる。また、これらの各デバイスとホストコンピューター2との接続態様は任意であり、USBケーブル等を用いて1対1で接続してもよいし、LANを介して多対多で接続してもよい。また、上記実施形態ではプリンター3がサーマルプリンターである場合を例に挙げて説明したが、本発明を適用可能な記録装置は、文字や画像を記録できる装置であれば特に制限されず、印刷ヘッドから記録媒体に複数色のインクを吐出することで文字や画像を形成するインクジェットプリンター、記録ワイヤーを突出する記録ヘッドにより記録媒体にドットを形成して印刷するドットインパクトプリンター、レーザープリンター等にも本発明を適用可能であり、他の装置に組み込まれるプリンターにも本発明を適用可能である。また、記録システム1を、ホストコンピューター2を1台又は複数台備える構成や、プリンター3を1台又は複数台備える構成とすることも、勿論可能である。また、上記実施形態では、ホストコンピューター2のCPU21が記憶部26に記憶された各種プログラムを実行し、プリンター3のCPU31がフラッシュROM32に記憶された各種プログラムを実行することにより、図2に示す各部の機能を実現する構成として説明したが、これらの各種プログラムは、他の記憶装置、記憶媒体や外部装置の記憶媒体に記憶させ、ホストコンピューター2のCPU21或いはプリンター3のCPU31により読み出して実行する構成としても良い。さらに、これらのプログラムを、ホストコンピューター2或いはプリンター3が通信ネットワークを介して接続された他の装置からダウンロードして実行しても良い。