JP2006244009A - ダウンロードシステム、サーバ装置およびドライバ提供方法 - Google Patents

ダウンロードシステム、サーバ装置およびドライバ提供方法 Download PDF

Info

Publication number
JP2006244009A
JP2006244009A JP2005057135A JP2005057135A JP2006244009A JP 2006244009 A JP2006244009 A JP 2006244009A JP 2005057135 A JP2005057135 A JP 2005057135A JP 2005057135 A JP2005057135 A JP 2005057135A JP 2006244009 A JP2006244009 A JP 2006244009A
Authority
JP
Japan
Prior art keywords
driver
client device
module
package
client
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
JP2005057135A
Other languages
English (en)
Inventor
Tsutomu Otani
勤 大谷
Shinpei Kiyama
新平 来山
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 JP2005057135A priority Critical patent/JP2006244009A/ja
Publication of JP2006244009A publication Critical patent/JP2006244009A/ja
Withdrawn legal-status Critical Current

Links

Images

Landscapes

  • Information Transfer Between Computers (AREA)
  • Stored Programmes (AREA)

Abstract

【課題】クライアント装置の環境に適合したデバイスドライバを簡単に用意しクライアン
ト装置に提供すること。
【解決手段】 サーバ11がクライアント装置2a,2bからドライバのパッケージファ
イルのダウンロード要求を受信すると、パッケージ生成手段14は、そのダウンロード要
求の送信元のクライアント装置2a,2bに応じてサブモジュール群からサブモジュール
を選択し、ドライバコアモジュールおよび選択したサブモジュールから、ドライバのパッ
ケージファイルを生成する。サーバ11は、パッケージ生成手段14により生成されたパ
ッケージファイルをそのダウンロード要求の送信元のクライアント装置2a,2bへ送信
する。
【選択図】 図1

Description

本発明は、ダウンロードシステム、サーバ装置およびドライバ提供方法に関するもので
ある。
従来から、プリンタ、スキャナなどといったパーソナルコンピュータ用周辺機器のデバ
イスドライバ(デバイス定義ファイルを含む)が、所定のサーバ装置に、ダウンロード可
能な状態で公開されている(例えば特許文献1)。
このようなサーバ装置では、デバイスドライバは、オペレーティングシステム(以下、
OSという)の種類ごとに用意されることが多い。その場合、ユーザは、パーソナルコン
ピュータ(以下、PCという)に実装されているOSの種類に応じたデバイスドライバを
、そのPCにダウンロードさせ、インストールさせる。
特開2002−229751号公報(要約、図1)
Linuxのように一種類のOSでありながら、複数のディストリビューションが存在
する場合、各ディストリビューションで使用されているカーネルバージョン、各種ライブ
ラリ、API(Application Program Interface )などが完全には統一されていないため
、ディストリビューションごとにデバイスドライバのパッケージファイルを用意する必要
がある。なお、パッケージファイルとは、ソフトウェアのインストールに使用されるファ
イル、設定情報などを含むファイルである。
しかしながら、ディストリビューションの増減、各ディストリビューションのバージョ
ンアップなどが頻繁に起こるため、それらの変化に対応してディストリビューションごと
に適切なデバイスドライバのパッケージファイルを簡単に用意することは困難である。
本発明は、クライアント装置の環境に適合したデバイスドライバを簡単に用意しクライ
アント装置に提供することができるダウンロードシステム、サーバ装置およびドライバ提
供方法を得ることを目的とする。
上記の課題を解決するために、本発明では以下のようにした。
本発明に係るダウンロードシステムは、クライアント装置に接続される周辺機器に対応
するドライバをクライアント装置に供給するサーバ装置とを備えるダウンロードシステム
である。そして、サーバ装置は、クライアント装置に接続される周辺機器に対応するドラ
イバの構成要素となるドライバコアモジュール、およびドライバコアモジュールから呼び
出されるルーチンを含むサブモジュールを複数含むサブモジュール群を格納したデータ格
納装置と、クライアント装置からダウンロード要求を受信する受信手段と、受信手段によ
りダウンロード要求が受信されると、そのダウンロード要求の送信元のクライアント装置
に応じてサブモジュール群からサブモジュールを選択し、ドライバコアモジュールおよび
選択したサブモジュールから、ドライバのパッケージファイルを生成するパッケージ生成
手段と、パッケージ生成手段により生成されたパッケージファイルをそのダウンロード要
求の送信元のクライアント装置へ送信する送信手段とを備える。また、クライアント装置
は、サーバ装置へダウンロード要求を送信する要求送信手段と、サーバ装置からパッケー
ジファイルを受信するパッケージ受信手段とを備える。
これにより、クライアント装置の環境に適合したデバイスドライバを簡単に用意しクラ
イアント装置に提供することができる。つまり、ドライバのパッケージファイルのダウン
ロード時に、クライアント装置に合わせてパッケージファイルが生成されるため、1種類
のOSに関し、クライアント装置の環境のバリエーションが多い場合においても、サブモ
ジュールを適宜追加、変更することで、適切なデバイスドライバのパッケージファイルを
簡単に用意し提供することができる。
本発明に係るサーバ装置は、クライアント装置に接続される周辺機器に対応するドライ
バの構成要素となるドライバコアモジュール、およびドライバコアモジュールから呼び出
されるルーチンを含むサブモジュールを複数含むサブモジュール群を格納したデータ格納
装置と、クライアント装置からダウンロード要求を受信する受信手段と、受信手段により
ダウンロード要求が受信されると、そのダウンロード要求の送信元のクライアント装置に
応じてサブモジュール群からサブモジュールを選択し、ドライバコアモジュールおよび選
択したサブモジュールから、ドライバのパッケージファイルを生成するパッケージ生成手
段と、パッケージ生成手段により生成されたパッケージファイルをそのダウンロード要求
の送信元のクライアント装置へ送信する送信手段とを備える。
これにより、クライアント装置の環境に適合したデバイスドライバを簡単に用意しクラ
イアント装置に提供することができる。つまり、ドライバのパッケージファイルのダウン
ロード時に、クライアント装置に合わせてパッケージファイルが生成されるため、1種類
のOSに関し、クライアント装置の環境のバリエーションが多い場合においても、サブモ
ジュールを適宜追加、変更することで、適切なデバイスドライバのパッケージファイルを
簡単に用意し提供することができる。
また、本発明に係るサーバ装置は、上記のサーバ装置に加え、次のようにしてもよい。
つまり、この場合、送信手段は、パッケージ生成手段により生成されたパッケージファイ
ルとともに、そのパッケージファイルに基づいてクライアント装置でドライバをインスト
ールするインストーラプログラムを送信する。
これにより、ダウンロードしたパッケージファイルに基づいて、クライアント装置にド
ライバを確実にインストールさせることができる。
また、本発明に係るサーバ装置は、上記のサーバ装置のいずれかに加え、次のようにし
てもよい。つまり、この場合、パッケージ生成手段は、クライアント装置から取得された
そのクライアント装置に実装されているオペレーティングシステムのディストリビューシ
ョンの種別に基づいて、サブモジュール群からサブモジュールを選択する。
これにより、OSのディストリビューションごとに適切なデバイスドライバを簡単に用
意しクライアント装置に提供することができる。つまり、ディストリビューションの増減
、各ディストリビューションのバージョンアップなどが頻繁に起こっても、サブモジュー
ルを適宜追加、変更することで、それらの変化に対応してディストリビューションごとに
適切なデバイスドライバのパッケージファイルを簡単に用意し提供することができる。
また、本発明に係るサーバ装置は、上記のサーバ装置のいずれかに加え、次のようにし
てもよい。つまり、この場合、パッケージ生成手段は、クライアント装置から取得された
そのクライアント装置に実装されているオペレーティングシステムのディストリビューシ
ョンの種別に基づいて、パッケージファイルの形式を選択する。
これにより、ダウンロードしたパッケージファイルに基づいて、各ディストリビューシ
ョンが採用しているインストーラを使用してクライアント装置にドライバを確実にインス
トールさせることができる。
また、本発明に係るサーバ装置は、上記のサーバ装置のいずれかに加え、次のようにし
てもよい。つまり、この場合、サブモジュール群は、Linuxについて複数のディスト
リビューションに対応する複数のサブモジュールを含む。
これにより、Linuxに存在する多数のディストリビューションのそれぞれに対して
適切なデバイスドライバを簡単に用意し、クライアント装置へ提供することができる。
本発明に係るドライバ提供方法は、クライアント装置からドライバのパッケージファイ
ルのダウンロード要求を受信するステップと、ダウンロード要求を受信すると、クライア
ント装置に接続される周辺機器に対応するドライバの構成要素となるドライバコアモジュ
ール、およびドライバコアモジュールから呼び出されるルーチンを含むサブモジュールを
複数含むサブモジュール群を格納したデータ格納装置におけるサブモジュール群から、そ
のダウンロード要求の送信元のクライアント装置に応じてサブモジュールを選択するステ
ップと、ドライバコアモジュールおよび選択したサブモジュールから、ドライバのパッケ
ージファイルを生成するステップと、パッケージファイルをそのダウンロード要求の送信
元のクライアント装置へ送信するステップとを備える。
これにより、クライアント装置の環境に適合したデバイスドライバを簡単にクライアン
ト装置に提供することができる。つまり、ドライバのパッケージファイルのダウンロード
時に、クライアント装置に合わせてパッケージファイルが生成されるため、1種類のOS
に関し、クライアント装置の環境のバリエーションが多い場合においても、サブモジュー
ルを適宜追加、変更することで、適切なデバイスドライバのパッケージファイルを簡単に
提供することができる。
以下、図に基づいて本発明の実施の形態を説明する。
実施の形態1.
図1は、本発明の実施の形態1に係るサーバ装置を含むダウンロードシステムの構成を
示すブロック図である。
図1において、サーバ装置1は、実施の形態1に係るサーバ装置であって、クライアン
ト装置2a,2bに接続される周辺機器(図1ではプリンタ3a,3b)に対応するドラ
イバをクライアント装置2a,2bに供給するサーバ装置である。
また、クライアント装置2aは、所定のディストリビューション(以下、ディストリビ
ューションAという)のOS31aがインストールされ稼動するクライアント装置である
。また、クライアント装置2aは、プリンタ3aを接続される。
クライアント装置2bは、クライアント装置2aとは異なる所定のディストリビューシ
ョン(以下、ディストリビューションBという)のOS31bがインストールされ稼動す
るクライアント装置である。また、クライアント装置2bは、プリンタ3bを接続される
この実施の形態1では、クライアント装置2a,2bは、LinuxであるOS31a
,31bをインストールされたパーソナルコンピュータである。
また、通信網4は、サーバ装置1と、クライアント装置2a,2bとが通信可能な、コ
ンピュータネットワーク、電話回線などを適宜含む通信媒体である。
図1に示すサーバ装置1において、サーバ11は、HTTP(HyperText Transfer Pro
tocol )、FTP(File Transfer Protocol )などといった所定の通信プロトコルのサ
ーバであって、サーバプログラムをCPUが実行することにより実現される処理部である
。なお、サーバ11は、クライアント装置2a,2bからドライバのパッケージファイル
のダウンロード要求を受信する受信手段、およびパッケージ生成手段14により生成され
たパッケージファイルをそのダウンロード要求の送信元のクライアント装置2a,2bへ
送信する送信手段として機能する。
また、通信装置12は、ネットワークインタフェース、モデムなどといった通信網4を
介してデータ通信可能な装置である。
また、データ格納装置13は、ハードディスクドライブ、ディスクアレイなどといった
大規模記録媒体である。データ格納装置13には、ドライバコアモジュール21、サブモ
ジュール群22および対応テーブル23が格納される。
ドライバコアモジュール21は、クライアント装置2a,2bの周辺機器(ここではプ
リンタ3a,3b)用のドライバの構成要素であって、ドライバが実行する処理流れを記
述されたプログラムを有するデータファイルである。ドライバコアモジュール21は、サ
ブモジュール群22内の同一種別における複数のサブモジュールに共通な呼び出しを含む
サブモジュール群22は、所定のOSについて複数のディストリビューションに対応す
る複数のサブモジュールを含む。また、サブモジュール群22は、サブモジュールの種別
ごとに、複数のサブモジュールを有する。
各サブモジュールは、当該サブモジュールの属する種別の機能を記述されたプログラム
を有するデータファイルである。ただし、同一種別における複数のサブモジュールは、互
いに異なるプログラムを有する。
例えば、プリンタドライバの場合、サブモジュールの種別としては、スプーラモジュー
ル、GUIツールキットモジュール、画像処理ルーチンモジュール、システムライブラリ
などがある。
図2は、実施の形態1におけるドライバコアモジュール21と、サブモジュール群22
内のサブモジュールとの関係を示す図である。図2に示すサブモジュール群22は、プリ
ンタドライバのためのサブモジュール群22である。
図2に示すサブモジュール群22は、複数のスプーラモジュール22a、複数のGUI
ツールキットモジュール22b、複数の画像処理ルーチンモジュール22c、複数のシス
テムライブラリ22d、および複数のドキュメントモジュール22eといったサブモジュ
ールを含む。
1つのスプーラモジュール22aは、クライアント装置2a,2bにおいてプリンタ用
のスプーラを実現するためのプログラムを含むファイルである。スプーラモジュール22
aは、所定の種類のOS(ここではLinux)においてインストール可能な複数のスプ
ーラのそれぞれに対応して用意される。Linuxの場合、スプーラモジュール22aと
しては、例えばlpr用、CUPS用などがある。
1つのGUIツールキットモジュール22bは、クライアント装置2a,2bにおいて
プリンタドライバのGUIを実現するためのプログラムを含むファイルである。GUIツ
ールキットモジュール22bは、所定の種類のOS(ここではLinux)の各ディスト
リビューションにおいて使用可能な複数のGUIのそれぞれに対応して用意される。Li
nuxの場合、GUIツールキットモジュール22bとしては、例えばGNOME用、K
DE用などがある。
1つの画像処理ルーチンモジュール22cは、クライアント装置2a,2bにおいて、
画像データなどをプリンタにおける印刷処理に適合したデータ形式へ変換する処理(画像
補正、色変換、ハーフトーニングなど)を実現するためのプログラムを含むファイルであ
る。画像処理ルーチンモジュール22cは、クライアント装置2a,2bに接続可能なプ
リンタのそれぞれに対応して用意される。
システムライブラリ22dは、所定の種類のOS(ここではLinux)の各ディスト
リビューションにおけるカーネルバージョンにおいて使用可能な複数のシステムライブラ
リである。
ドキュメントモジュール22eは、リードミー(ReadMe)、ヘルプなどのテキストデー
タを有し、いずれかのスプーラモジュール22a、いずれかのGUIツールキットモジュ
ール22b、いずれかの画像処理ルーチンモジュール22c、およびいずれかのシステム
ライブラリ22dの組み合わせごとに用意されたドキュメントファイルである。
ドライバコアモジュール21は、サブモジュール群22における各種別について共通な
呼び出し(コール)21a,21b,21c,21dを有する。これらの呼び出し21a
,21b,21c,21dは、ドライバコアモジュール21内のプログラムにおいて、必
要に応じてサブモジュールの機能(関数、ルーチンなど)を使用する場合に使用される。
呼び出し21aは、すべてのスプーラモジュール22a内の同一名称のルーチン(関数
を含む)を読み出すためのコードである。また、呼び出し21bは、すべてのGUIツー
ルキットモジュール22b内の同一名称のルーチン(関数を含む)を読み出すためのコー
ドである。また、呼び出し21cは、すべての画像処理ルーチンモジュール22c内の同
一名称のルーチン(関数を含む)を読み出すためのコードである。また、呼び出し21d
は、すべてのシステムライブラリ22d内の同一名称のルーチン(関数を含む)を読み出
すためのコードである。つまり、呼び出し21aは1つであるが、ドライバコアモジュー
ル21に組み合わされるスプーラモジュール22aに応じて、呼び出される処理は異なる
。これは、呼び出し21b,21c,21dとモジュール22b,22c,22dについ
ても同様である。
図1に戻り、対応テーブル23は、クライアント装置2a,2bに実装されているOS
のディストリビューションの種別、コンフィギュレーション情報および周辺機器(ここで
はプリンタ3a,3b)の種別と、サブモジュール群22の各種別において選択すべきサ
ブモジュールとの対応関係の情報を有する。
例えば、周辺機器がプリンタである場合、コンフィギュレーション情報としては、使用
するスプーラの種別、GUI(Graphical User Interface)環境の種別などがある。
図3は、実施の形態1における対応テーブル23の一例を示す図である。図3に示す対
応テーブル23は、OSがLinuxである場合のプリンタドライバ用のものである。
この対応テーブル23は、3つのテーブルを含む。第1のテーブル(図3(A))は、
OSのディストリビューションと、選択すべきGUIツールキットモジュール22b、選
択すべきシステムライブラリ22dおよび選択すべきデフォルトのスプーラモジュール2
2aとの対応関係を示す。
第2のテーブル(図3(B))は、クライアント装置2a,2bからの要求においてス
プーラ種別が指定された場合におけるスプーラ種別と、選択すべきスプーラモジュール2
2aとの対応関係を示す。
第3のテーブル(図3(C))は、クライアント装置2a,2bからの要求におけるプ
リンタ種別と、選択すべき画像処理ルーチンモジュール22cとの対応関係を示す。
図1に戻り、パッケージ生成手段14は、サブモジュール群22から適切なサブモジュ
ールを選択し、ドライバコアモジュール21および選択したサブモジュールから、ドライ
バのパッケージファイルを生成する処理部であって、パッケージ生成プログラムをCPU
が実行することにより実現される処理部である。なお、Linuxの場合、パッケージフ
ァイルとしては、deb形式、rpm形式、tgz形式、slp形式などといった形式の
ファイルがある。
なお、サーバ装置1は、CPU、RAM、ROM、ハードディスクドライブなどを有す
る図示せぬコンピュータを含み、ハードディスクドライブなどに格納されたOSプログラ
ム、サーバプログラム、パッケージ生成プログラムなどがCPUにより実行されることで
、各種処理部が実現される。
図1に示すクライアント装置2aにおいて、OS31aは、ある種類のOSであって、
ディストリビューションAのOSである。実施の形態1では、OS31aは、Linux
であって、例えばSuSE、Mandrake、Fedoraなどのうちのいずれかのデ
ィストリビューションAのOSである。OS31aは、カーネル、GUI環境、システム
ライブラリなどを含む処理部である。
クライアント32は、サーバ装置1のサーバ11と同一の所定の通信プロトコルのクラ
イアントであって、クライアントプログラムをCPUが実行することにより実現される処
理部である。なお、クライアント32は、サーバ装置1へダウンロード要求を送信する要
求送信手段、およびサーバ装置1からパッケージファイルを受信するパッケージ受信手段
として機能する。
また、通信装置33は、ネットワークインタフェース、モデムなどといった通信網4を
介してデータ通信可能な装置である。
また、データ格納装置34は、ハードディスクドライブなどといった大規模記録媒体で
ある。データ格納装置34には、OS31aのプログラム、サーバ装置1からダウンロー
ドされた周辺機器用ドライバのパッケージファイル、そのパッケージファイルに基づいて
インストールされた周辺機器用ドライバファイルなどが格納される。
図1に示すクライアント装置2bにおいて、OS31bは、OS31aと同一種類であ
るがディストリビューションが異なるOSであって、ディストリビューションBのOSで
ある。実施の形態1では、OS31bは、Linuxであって、例えばSuSE、Man
drake、FedoraなどのうちのいずれかのディストリビューションBのOSであ
る。OS31bは、カーネル、GUI環境、システムライブラリなどを含む処理部である
なお、クライアント装置2bにおけるクライアント32、通信装置33およびデータ格
納装置34は、クライアント装置2aのものと同様であるので、その説明を省略する。
次に、上記ダウンロードシステムにおける各装置の動作について説明する。図4は、実
施の形態1におけるドライバダウンロード時の処理の流れを説明する図である。なお、こ
こでは、クライアント装置2aがサーバ装置1からプリンタドライバをダウンロードする
場合について説明する。
まず、クライアント装置2aのクライアント32は、サーバ装置1のサーバ11にアク
セスする(ステップS1)。サーバ装置1のサーバ11は、クライアント32からのアク
セスに対応して、入力フォームページデータを、クライアント装置2aのクライアント3
2へ送信する(ステップS2)。
なお、クライアント32とサーバ11との間の通信は、通信装置33、通信網4および
通信装置12を介して行われる(以下、同様)。
例えば、クライアント32がWebブラウザなどのHTTPクライアントであり、サー
バ11がHTTPサーバである場合、サーバ装置1は、所定のURL(Uniform Resource
Locator)のウェブページデータとして、入力フォームページデータをデータ格納装置1
3などに格納しておき、クライアント32は、そのURLのウェブページを取得するため
のHTTPコマンドを送信し、サーバ11は、そのHTTPコマンドを受信すると、入力
フォームページデータをクライアント32へ送信する。
クライアント装置2aのクライアント32は、その入力フォームページデータを受信す
ると、その入力フォームページデータに基づいて図示せぬディスプレイに、入力フォーム
ページを表示する(ステップS3)。図5は、実施の形態1における入力フォームページ
の表示例を示す図である。図5に示す入力フォームページでは、OSのディストリビュー
ション種別を入力するためのプルダウンメニュー61a、スプーラ種別を入力するための
プルダウンメニュー61b、プリンタ種別を入力するためのプルダウンメニュー61c、
およびダウンロードを開始させるための操作ボタン61dが表示される。
これらのプルダウンメニュー61a〜61cおよび操作ボタン61dに対する操作は、
クライアント装置2aにおける図示せぬディスプレイ、マウスといった入力装置などから
なるGUIで行われる。
例えばクライアント装置2aの場合、ユーザにより、プルダウンメニュー61aでは、
ディストリビューションAが選択され、プルダウンメニュー61cでは、プリンタ3aが
選択される。
プルダウンメニュー61a〜61cによりディストリビューション種別、スプーラ種別
およびプリンタ種別の選択が終了した後、操作ボタン61dが押下されると、クライアン
ト32は、ダウンロード要求を、選択されたディストリビューション種別、スプーラ種別
およびプリンタ種別の情報とともに、サーバ11へ送信する(ステップS4)。
サーバ装置1のサーバ11がそのダウンロード要求を受信すると、パッケージ生成手段
14は、ダウンロード要求とともに受信したディストリビューション種別、スプーラ種別
およびプリンタ種別の情報に基づいて、サブモジュール群22からサブモジュールを選択
し、ドライバコアモジュール21と選択したサブモジュールを含むパッケージファイルを
生成し、データ格納装置13に格納する(ステップS5)。
パッケージファイルの生成が完了すると、サーバ11は、データ格納装置13から、そ
のパッケージファイルを読み出し、クライアント32へ送信する(ステップS6)。
クライアント装置2aのクライアント32は、そのパッケージファイルを受信すると、
データ格納装置34に格納する。その後、クライアント装置2aでは、図示せぬインスト
ーラプログラムが実行され、そのパッケージファイルに基づいて、プリンタ3aに対応し
たプリンタドライバがインストールされる(ステップS7)。
このようにして、クライアント装置2aへプリンタドライバがダウンロードされる。な
お、クライアント装置2bへプリンタドライバがダウンロードされる場合、同様の処理が
実行されるが、OSのディストリビューションとプリンタの種別が異なるため、クライア
ント装置2aの場合とは異なるサブモジュールを含むパッケージファイルがダウンロード
される。
ここで、サーバ装置1におけるドライバのパッケージファイルの生成について詳細に説
明する。図6は、実施の形態1におけるパッケージファイルの生成処理について説明する
フローチャートである。図7は、実施の形態1におけるパッケージファイルの生成処理に
ついて説明する図である。
サーバ装置1のパッケージ生成手段14は、サーバ11によりダウンロード要求が受信
されると、ダウンロード要求とともに受信されたディストリビューション種別、スプーラ
種別およびプリンタ種別の情報を取得する(ステップS21)。
次に、パッケージ生成手段14は、対応テーブル23を参照し、取得したディストリビ
ューション種別、スプーラ種別およびプリンタ種別に対応するスプーラモジュール22a
−i、GUIツールキットモジュール22b−j、画像処理ルーチンモジュール22c−
k、およびシステムライブラリ22d−sを特定するとともに、それらのサブモジュール
の組み合わせに対応するドキュメントモジュール22e−tを特定する(ステップS22
)。なお、スプーラ種別の指定がない場合には、各ディストリビューションのデフォルト
のスプーラが選択される。
その際、図7に示すように、L個のスプーラモジュール22a−1〜22a−Lから1
つのスプーラモジュール22a−iが、M個のGUIツールキットモジュール22b−1
〜22b−Mから1つのGUIツールキットモジュール22b−jが、N個の画像処理ル
ーチンモジュール22c−1〜22c−Nから1つの画像処理ルーチンモジュール22c
−kが、P個のシステムライブラリ22d−1〜22d−Pから1つのシステムライブラ
リ22d−sが、Q個のドキュメントモジュール22e−1〜22e−Qから1つのドキ
ュメントモジュール22e−tが選択される。
そして、パッケージ生成手段14は、ドライバコアモジュール21、並びに対応テーブ
ル23を参照して特定したスプーラモジュール22a−i、GUIツールキットモジュー
ル22b−j、画像処理ルーチンモジュール22c−k、システムライブラリ22d−s
およびドキュメントモジュール22e−tを含むパッケージファイル81を生成し、デー
タ格納装置13に格納する(ステップS23)。このとき、パッケージ生成手段14は、
ディストリビューションに応じた形式のパッケージファイル81を生成する。
このようにして、サーバ装置1では、ドライバのダウンロード要求毎に、パッケージフ
ァイル81が生成され、ダウンロードされる。
以上のように、上記実施の形態1によれば、サーバ装置1のデータ格納装置13は、ク
ライアント装置2a,2bに接続される周辺機器に対応するドライバの構成要素となるド
ライバコアモジュール21、およびドライバコアモジュール21から呼び出されるルーチ
ンを含むサブモジュールを複数含むサブモジュール群22を格納する。パッケージ生成手
段14は、サーバ11によりダウンロード要求が受信されると、そのダウンロード要求の
送信元のクライアント装置2a,2bに応じてサブモジュール群からサブモジュールを選
択し、ドライバコアモジュールおよび選択したサブモジュールから、ドライバのパッケー
ジファイル81を生成する。そして、サーバ11は、パッケージ生成手段14により生成
されたパッケージファイル81をそのダウンロード要求の送信元のクライアント装置2a
,2bへ送信する。
これにより、クライアント装置2a,2bの環境に適合したデバイスドライバを簡単に
用意しクライアント装置2a,2bに提供することができる。つまり、ドライバのパッケ
ージファイル81のダウンロード時に、クライアント装置2a,2bに合わせてパッケー
ジファイル81が生成されるため、1種類のOSに関し、クライアント装置2a,2bの
環境のバリエーションが多い場合においても、サブモジュールを適宜追加、変更すること
で、適切なデバイスドライバのパッケージファイル81を簡単に用意し提供することがで
きる。
特に、サブモジュール群22は、Linuxについて複数のディストリビューションに
対応する複数のサブモジュールを含む。これにより、Linuxに存在する多数のディス
トリビューションのそれぞれに対して適切なデバイスドライバを簡単に用意し、クライア
ント装置2a,2bへ提供することができる。
また、上記実施の形態1によれば、パッケージ生成手段14は、クライアント装置2a
,2bから取得されたそのクライアント装置2a,2bに実装されているオペレーティン
グシステムのディストリビューションの種別に基づいて、サブモジュール群22からサブ
モジュールを選択する。
これにより、OSのディストリビューションごとに適切なデバイスドライバを簡単に用
意しクライアント装置2a,2bに提供することができる。つまり、ディストリビューシ
ョンの増減、各ディストリビューションのバージョンアップなどが頻繁に起こっても、サ
ブモジュールを適宜追加、変更することで、それらの変化に対応してディストリビューシ
ョンごとに適切なデバイスドライバのパッケージファイル81を簡単に用意し提供するこ
とができる。
また、上記実施の形態1によれば、パッケージ生成手段14は、クライアント装置2a
,2bから取得されたそのクライアント装置2a,2bに実装されているオペレーティン
グシステムのディストリビューションの種別に基づいて、パッケージファイル81の形式
を選択する。
これにより、ダウンロードしたパッケージファイル81に基づいて、各ディストリビュ
ーションが採用しているインストーラを使用してクライアント装置2a,2bにドライバ
を確実にインストールすることができる。
実施の形態2.
本発明の実施の形態2に係るサーバ装置は、実施の形態1に係るサーバ装置において、
必要に応じて、同一種別のサブモジュールを複数、パッケージファイルに入れるようにし
たものである。
この場合、ディストリビューション種別およびスプーラ種別に応じて、複数のサブモジ
ュールが同時にインストールされる場合には、対応テーブル23の対応個所に、複数のサ
ブモジュールが登録される。そして、同一種別の複数のサブモジュールがクライアント装
置2a,2bにインストールされる。例えば、lprとCUPSの両方のスプーラがイン
ストールされる場合や、GNOMEとKDEの両方のGUIツールキットがインストール
される場合がある。
例えば、パッケージ生成手段14は、同一の種別について複数のサブモジュールを選択
し、選択したサブモジュールをそれぞれ異なるファイル名あるいはパス名のファイルとし
て、パッケージファイルを生成する。
なお、パッケージ生成手段14は、パッケージファイルが有する同一種別の複数のサブ
モジュールのいずれかへのリンクファイルを含めるようにしてもよい。この場合、ドライ
バコアモジュール21は、そのリンクファイルを、当該種別のサブモジュールのファイル
とした呼び出しを含む。
なお、その他の構成および動作については、実施の形態1の場合と同様であるので、そ
の説明を省略する。
以上のように、上記実施の形態2によれば、サブモジュール群22は、種別ごとに複数
のサブモジュールを有する。そして、パッケージ生成手段14は、同一の種別について複
数のサブモジュールを選択し、選択したサブモジュールをそれぞれ異なるファイル名ある
いはパス名として、パッケージファイルを生成する。
これにより、同一種別について異なる複数のソフトウェアをインストール可能なOSの
ディストリビューションの場合にも、それに対応して適切なデバイスドライバを簡単に用
意することができる。
また、上記実施の形態2によれば、パッケージ生成手段14は、パッケージファイル8
1が有する同一種別の複数のサブモジュールのいずれかへのリンクファイルを含める。そ
して、ドライバコアモジュール21は、リンクファイルを、当該種別のサブモジュールの
ファイルとした呼び出しを含む。
これにより、リンクファイルに記述されるリンク先の指定を変更するだけ、どのサブモ
ジュール内のルーチンを使用することができ、パッケージファイルをダウンロードしたク
ライアント装置において、使用するサブモジュールを簡単に切り替えることができる。
実施の形態3.
本発明の実施の形態3に係るサーバ装置は、実施の形態1,2に係るサーバ装置におい
て、ユーザ入力の代わりに、クライアント装置2a,2bのOSディストリビューション
およびコンフィギュレーションを特定するプログラムを、クライアント装置2a,2bに
ダウンロードさせ、そのプログラムをクライアント装置2a,2bで実行させて、OSデ
ィストリビューション種別およびコンフィギュレーション情報を取得するようにしたもの
である。
この場合、サーバ装置1は、OSディストリビューションおよびコンフィギュレーショ
ンを特定するプログラムをデータ格納装置13に格納しておき、入力フォームページデー
タの代わりにクライアント装置2a,2bに送信する。クライアント装置2a,2bは、
そのプログラムを受信すると、自動的に実行し、OSディストリビューション種別および
コンフィギュレーション情報をサーバ装置1へ送信する。
なお、その他の構成および動作については、実施の形態1,2の場合と同様であるので
、その説明を省略する。
以上のように、上記実施の形態3によれば、ユーザの誤入力による誤ったドライバのダ
ウンロードが発生することを抑制することができる。
実施の形態4.
本発明の実施の形態4に係るサーバ装置は、実施の形態1,2,3に係るサーバ装置に
おいて、プリンタドライバの代わりにスキャナドライバを提供する。
この場合、サブモジュール群22は、GUIツールキットモジュール、スキャナ用の画
像処理ルーチンモジュール、システムライブラリ、ドキュメントモジュールなどを含む。
なお、その他の構成および動作については、実施の形態1,2,3の場合と同様である
ので、その説明を省略する。
以上のように、上記実施の形態4によれば、実施の形態1におけるプリンタドライバと
同様に、各クライアント装置2a,2bに対して適切なスキャナドライバを提供すること
ができる。
なお、上述の各実施の形態は、本発明の好適な例であるが、本発明は、これらに限定さ
れるものではなく、本発明の要旨を逸脱しない範囲において、種々の変形、変更が可能で
ある。
例えば、各実施の形態において、サーバ装置1は、パッケージファイル81をクライア
ント装置2a,2bに送信する場合に、パッケージファイル81とともに、専用インスト
ーラプログラムをダウンロードさせるようにしてもよい。
また、各実施の形態において、ディストリビューションごとに、クライアント装置内で
のドライバのインストール場所が異なる場合には、それに対応してパッケージファイル8
1を生成するようにしてもよい。この場合、インストール場所は、コンフィギュレーショ
ン情報としてクライアント装置2a,2bからサーバ装置1へ通知されるか、ディストリ
ビューション種別に基づいて特定される。
また、上述の実施の形態では、プリンタドライバまたはスキャナドライバがダウンロー
ドされるが、プリンタドライバおよびスキャナドライバ以外のデバイスドライバをダウン
ロードするようにしてもよい。
本発明は、例えば、プリンタドライバのダウンロードサイトのサーバ装置に適用可能で
ある。
実施の形態1に係るサーバ装置を示すブロック図である。 実施の形態1におけるモジュール間の関係を示す図である。 実施の形態1における対応テーブルの一例を示す図である。 実施の形態1におけるダウンロード処理を説明する図である。 実施の形態1での入力フォームページの表示例を示す図である。 実施の形態1のパッケージファイル生成処理を示す図である。 実施の形態1のパッケージファイル生成処理を示す図である。
符号の説明
1 サーバ装置、2a,2b クライアント装置、11 サーバ(受信手段,送信手段
)、13 データ格納装置、14 パッケージ生成手段、21 ドライバコアモジュール
、22 サブモジュール群、22a スプーラモジュール(サブモジュール)、22b
GUIツールキットモジュール(サブモジュール)、22c 画像処理ルーチンモジュー
ル(サブモジュール)、22d システムライブラリ(サブモジュール)、32 クライ
アント(要求送信手段,パッケージ受信手段)、81 パッケージファイル。

Claims (7)

  1. クライアント装置に接続される周辺機器に対応するドライバをクライアント装置に供給
    するサーバ装置を備えるダウンロードシステムにおいて、
    上記サーバ装置は、
    上記クライアント装置に接続される周辺機器に対応するドライバの構成要素となるドラ
    イバコアモジュール、および上記ドライバコアモジュールから呼び出されるルーチンを含
    むサブモジュールを複数含むサブモジュール群を格納したデータ格納装置と、
    上記クライアント装置からダウンロード要求を受信する受信手段と、
    上記受信手段によりダウンロード要求が受信されると、そのダウンロード要求の送信元
    のクライアント装置に応じて上記サブモジュール群からサブモジュールを選択し、上記ド
    ライバコアモジュールおよび選択したサブモジュールから、ドライバのパッケージファイ
    ルを生成するパッケージ生成手段と、
    上記パッケージ生成手段により生成されたパッケージファイルをそのダウンロード要求
    の送信元のクライアント装置へ送信する送信手段とを備え、
    上記クライアント装置は、
    上記サーバ装置へダウンロード要求を送信する要求送信手段と、

    上記サーバ装置からパッケージファイルを受信するパッケージ受信手段とを備えること

    を特徴とするダウンロードシステム。
  2. クライアント装置に接続される周辺機器に対応するドライバをクライアント装置に供給
    するサーバ装置において、
    上記クライアント装置に接続される周辺機器に対応するドライバの構成要素となるドラ
    イバコアモジュール、および上記ドライバコアモジュールから呼び出されるルーチンを含
    むサブモジュールを複数含むサブモジュール群を格納したデータ格納装置と、
    上記クライアント装置からダウンロード要求を受信する受信手段と、
    上記受信手段によりダウンロード要求が受信されると、そのダウンロード要求の送信元
    のクライアント装置に応じて上記サブモジュール群からサブモジュールを選択し、上記ド
    ライバコアモジュールおよび選択したサブモジュールから、ドライバのパッケージファイ
    ルを生成するパッケージ生成手段と、
    上記パッケージ生成手段により生成されたパッケージファイルをそのダウンロード要求
    の送信元のクライアント装置へ送信する送信手段と、
    を備えることを特徴とするサーバ装置。
  3. 前記送信手段は、前記パッケージ生成手段により生成されたパッケージファイルととも
    に、そのパッケージファイルに基づいて前記クライアント装置でドライバをインストール
    するインストーラプログラムを送信することを特徴とする請求項2記載のサーバ装置。
  4. 前記パッケージ生成手段は、前記クライアント装置から取得されたそのクライアント装
    置に実装されているオペレーティングシステムのディストリビューションの種別に基づい
    て、前記サブモジュール群からサブモジュールを選択することを特徴とする請求項2記載
    のサーバ装置。
  5. 前記パッケージ生成手段は、前記クライアント装置から取得されたそのクライアント装
    置に実装されているオペレーティングシステムのディストリビューションの種別に基づい
    て、前記パッケージファイルの形式を選択することを特徴とする請求項2記載のサーバ装
    置。
  6. 前記サブモジュール群は、Linuxについて複数のディストリビューションに対応す
    る複数のサブモジュールを含むことを特徴とする請求項2から請求項5のうちのいずれか
    1項記載のサーバ装置。
  7. サーバ装置からクライアント装置へ、そのクライアント装置に接続される周辺機器に対
    応するドライバを提供するドライバ提供方法において、
    クライアント装置からダウンロード要求を受信するステップと、
    ダウンロード要求を受信すると、上記クライアント装置に接続される周辺機器に対応す
    るドライバの構成要素となるドライバコアモジュール、および上記ドライバコアモジュー
    ルから呼び出されるルーチンを含むサブモジュールを複数含むサブモジュール群を格納し
    たデータ格納装置におけるサブモジュール群から、そのダウンロード要求の送信元のクラ
    イアント装置に応じてサブモジュールを選択するステップと、
    上記ドライバコアモジュールおよび選択したサブモジュールから、ドライバのパッケー
    ジファイルを生成するステップと、
    上記パッケージファイルをそのダウンロード要求の送信元のクライアント装置へ送信す
    るステップと、
    を備えることを特徴とするドライバ提供方法。
JP2005057135A 2005-03-02 2005-03-02 ダウンロードシステム、サーバ装置およびドライバ提供方法 Withdrawn JP2006244009A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005057135A JP2006244009A (ja) 2005-03-02 2005-03-02 ダウンロードシステム、サーバ装置およびドライバ提供方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005057135A JP2006244009A (ja) 2005-03-02 2005-03-02 ダウンロードシステム、サーバ装置およびドライバ提供方法

Publications (1)

Publication Number Publication Date
JP2006244009A true JP2006244009A (ja) 2006-09-14

Family

ID=37050378

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005057135A Withdrawn JP2006244009A (ja) 2005-03-02 2005-03-02 ダウンロードシステム、サーバ装置およびドライバ提供方法

Country Status (1)

Country Link
JP (1) JP2006244009A (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012043381A (ja) * 2010-08-23 2012-03-01 Konica Minolta Business Technologies Inc プリンタドライバ更新プログラム、およびプリンタドライバ更新方法
JP2012203656A (ja) * 2011-03-25 2012-10-22 Nippon Telegraph & Telephone East Corp 通信装置及びコンピュータプログラム
JP2013514576A (ja) * 2009-12-16 2013-04-25 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ ユニバーサル医療デバイスドライバアダプタ
US8615756B2 (en) 2009-02-05 2013-12-24 Ricoh Company, Ltd. Server device and computer-readable recording medium for generating a driver package
JP2018508083A (ja) * 2015-04-10 2018-03-22 グーグル エルエルシー 共有オブジェクト・レベルにおけるバイナリ変換
WO2020026335A1 (ja) * 2018-07-31 2020-02-06 Quadrac株式会社 サーバ装置及びシステム

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8615756B2 (en) 2009-02-05 2013-12-24 Ricoh Company, Ltd. Server device and computer-readable recording medium for generating a driver package
JP2013514576A (ja) * 2009-12-16 2013-04-25 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ ユニバーサル医療デバイスドライバアダプタ
JP2012043381A (ja) * 2010-08-23 2012-03-01 Konica Minolta Business Technologies Inc プリンタドライバ更新プログラム、およびプリンタドライバ更新方法
JP2012203656A (ja) * 2011-03-25 2012-10-22 Nippon Telegraph & Telephone East Corp 通信装置及びコンピュータプログラム
JP2018508083A (ja) * 2015-04-10 2018-03-22 グーグル エルエルシー 共有オブジェクト・レベルにおけるバイナリ変換
WO2020026335A1 (ja) * 2018-07-31 2020-02-06 Quadrac株式会社 サーバ装置及びシステム
WO2020026456A1 (ja) * 2018-07-31 2020-02-06 Quadrac株式会社 サーバ装置及びシステム

Similar Documents

Publication Publication Date Title
US10630857B2 (en) Electronic apparatus and method to update firmware of the electronic apparatus when adding a web application to the electronic apparatus
US8595720B2 (en) Program management system, program management method, client, and computer program product
JP5884542B2 (ja) 機器、情報処理システム、情報処理方法、及び情報処理プログラム
JP2004326776A (ja) 分散型周辺デバイス制御システムおよび方法
JP5655402B2 (ja) プリントシステム
JP6728691B2 (ja) ソフトウェア及びファームウェアダウンロード及びインストール支援計算処理システム及びソフトウェアダウンロード支援方法
JP2005302031A (ja) プリンタドライバの自動カスタマイズ
JP2006260356A (ja) 画像形成システム、画像形成装置、端末装置、管理装置及び端末装置のドライバの更新方法
JP2009031851A (ja) ライセンス管理装置、ライセンス管理方法、及びコンピュータプログラム
JP2011191951A (ja) 電子機器、情報処理方法、及び情報処理プログラム
JP2009301127A (ja) プリンタドライバプログラム及び印刷指示装置
US20200310701A1 (en) Image processing system including image processing apparatus and information processing apparatus configured to inform user that specific image processing program for image processing apparatus is available
JP2006244009A (ja) ダウンロードシステム、サーバ装置およびドライバ提供方法
JP2009301289A (ja) 情報処理装置、データ出力システム、データ生成プログラム及びその記録媒体
JP5819203B2 (ja) 多機能装置に接続する大容量記憶装置にネットワークアクセスを可能にするシステム及び方法
JP2013191196A (ja) 情報処理装置、機器、情報処理システム、情報処理方法、及び情報処理プログラム
JP2004303218A (ja) 情報提供装置及び情報表示装置
JP2007206999A (ja) ヘルプシステム
JP2008287671A (ja) サーブレット起動プログラムおよびホームゲートウェイ装置
JP4291856B2 (ja) Webサービス機能を有する画像形成装置
JP2011175461A (ja) 通信システム及びサーバ及び端末装置及び通信システムの通信方法及びサーバ用プログラム及び端末用プログラム
JP2008294820A (ja) ネットワーク通信装置
US20060123411A1 (en) Rendering device installation methods and systems
JP2016177535A (ja) データ送信装置、データ送信システムおよびプログラム
JP2009193444A (ja) ソフトウェア更新システムおよび管理装置および端末

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20070404

A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20080513