(57)【要約】【課題】ネットワークに接続される制御装置内に格納されたファイルに容易にアクセスすることのできる技術を提供する。【解決手段】制御装置は、ネットワークを介して接続されたコンピュータから互いに異なるプロトコルに従った要求を受け取る複数のサービス部と、複数のサービス部によって共通に利用され、複数のファイルシステムで管理されるファイルに関する処理を実行するファイル制御部と、を備える。ファイル制御部は、複数のサービス部のうちの任意の注目サービス部が、特定ファイルに対するアクセス要求であって、特定ファイルが属するファイルシステムを指定するための情報を含まず、特定ファイルのファイル名を含む、アクセス要求を受け取った場合に、複数のファイルシステムを検索対象に設定して、ファイル名に基づいて特定ファイルを検索する。【選択図】図２
2007188209.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークに接続される制御装置であって、
前記ネットワークを介して接続されるコンピュータと通信する第１の通信部と、
複数のファイルシステムが構築された第１の格納領域と、
前記第１の通信部を介して前記コンピュータから受け取った要求に応じたサービスを提供するための複数のサービス部であって、各サービス部は互いに異なるプロトコルに従った前記要求を受け取る、前記複数のサービス部と、
前記複数のサービス部によって共通に利用され、前記複数のファイルシステムで管理されるファイルに関する処理を実行するための第１のファイル制御部と、
を備え、
前記第１のファイル制御部は、
前記複数のサービス部のうちの任意の注目サービス部が、前記第１の通信部を介して前記コンピュータから、特定ファイルに対するアクセス要求であって、前記特定ファイルが属するファイルシステムを指定するための情報を含まず、前記特定ファイルのファイル名を含む、前記アクセス要求を受け取った場合に、前記複数のファイルシステムを検索対象に設定して、前記ファイル名に基づいて前記特定ファイルを検索することを特徴とする制御装置。
【請求項２】
請求項１記載の制御装置であって、
前記注目サービス部は、前記特定ファイルが見つかった場合に、前記特定ファイルに対するアクセスを前記コンピュータに許容する、制御装置。
【請求項３】
請求項１または２記載の制御装置であって、
前記第１のファイル制御部は、前記複数のファイルシステムを所定の順序で順次検索対象に設定する、制御装置。
【請求項４】
請求項１ないし３のいずれかに記載の制御装置であって、
前記第１の格納領域は、
第１種の記録媒体で構成された第１の部分格納領域と、
前記第１種の記録媒体と異なる第２種の記録媒体で構成された第２の部分格納領域であって、前記第２の部分格納領域からの所定サイズのデータの読み出しに要する時間は、前記第１の部分格納領域からの前記所定サイズのデータの読み出しに要する時間よりも長い、前記第２の部分格納領域と、
を含み、
前記複数のファイルシステムは、
前記第１の部分格納領域に構築された第１のファイルシステムと、
前記第２の部分格納領域に構築された第２のファイルシステムと、
を含み、
前記第１のファイル制御部は、前記第１のファイルシステムを前記第２のファイルシステムよりも先に検索対象に設定する、制御装置。
【請求項５】
請求項１ないし３のいずれかに記載の制御装置であって、
前記複数のファイルシステムは、
第１種のファイルシステムと、
前記第１種のファイルシステムと異なる第２種のファイルシステムと、
を含む、制御装置。
【請求項６】
請求項１ないし３のいずれかに記載の制御装置であって、
前記第１の格納領域は、
第１種の記録媒体で構成された第１の部分格納領域と、
前記第１種の記録媒体と異なる第２種の記録媒体で構成された第２の部分格納領域と、
を含み、
前記複数のファイルシステムは、
前記第１の部分格納領域に構築された第１のファイルシステムと、
前記第２の部分格納領域に構築された第２のファイルシステムと、
を含む、制御装置。
【請求項７】
請求項６記載の制御装置であって、
前記第１のファイルシステムと前記第２のファイルシステムとは、互いに異なる種類のファイルシステムである、制御装置。
【請求項８】
請求項１ないし７のいずれかに記載の制御装置であって、
前記ネットワークを介さずに接続されるローカルデバイスと通信する第２の通信部を備え、
前記第１のファイル制御部は、前記第２の通信部を介して、前記ローカルデバイスに前記特定ファイルの検索の実行を依頼する、制御装置。
【請求項９】
請求項８記載の制御装置であって、
前記第１のファイル制御部は、前記複数のファイルシステムにおいて前記特定ファイルを見つけることができなかった場合に、前記検索の実行を依頼する、制御装置。
【請求項１０】
ネットワーク装置であって、
請求項８または９記載の前記制御装置と、
前記ローカルデバイスと、
を備え、
前記ローカルデバイスは、
前記制御装置と通信する第３の通信部と、
少なくとも１つのファイルシステムが構築された第２の格納領域と、
前記第１のファイル制御部からの前記検索の実行の依頼に応じて、前記少なくとも１つのファイルシステムを検索対象として前記特定ファイルを検索する第２のファイル制御部と、
を備える、ネットワーク装置。
【請求項１１】
請求項１０記載のネットワーク装置であって、
前記第２の格納領域には、複数のファイルシステムが構築されており、
前記第２のファイル制御部は、前記第２の格納領域に構築された前記複数のファイルシステムを検索対象として前記特定ファイルを検索可能である、ネットワーク装置。
【請求項１２】
ネットワークを介して接続されるコンピュータと通信する第１の通信部と、複数のファイルシステムが構築された第１の格納領域と、前記第１の通信部を介して前記コンピュータから受け取った要求に応じたサービスを提供するための複数のサービス部であって、各サービス部は互いに異なるプロトコルに従った前記要求を受け取る、前記複数のサービス部と、を備える制御装置によって実行される処理方法であって、
前記複数のサービス部のうちの任意の注目サービス部が、前記第１の通信部を介して前記コンピュータから、特定ファイルに対するアクセス要求であって、前記特定ファイルが属するファイルシステムを指定するための情報を含まず、前記特定ファイルのファイル名を含む、前記アクセス要求を受け取った場合に、前記複数のファイルシステムを検索対象に設定して、前記ファイル名に基づいて前記特定ファイルを検索する工程を備えることを特徴とする処理方法。
【請求項１３】
ネットワークを介して接続されるコンピュータと通信する第１の通信部と、複数のファイルシステムが構築された第１の格納領域と、前記第１の通信部を介して前記コンピュータから受け取った要求に応じたサービスを提供するための複数のサービス部であって、各サービス部は互いに異なるプロトコルに従った前記要求を受け取る、前記複数のサービス部と、を備える制御装置に処理を実行させるためのコンピュータプログラムであって、
前記複数のサービス部のうちの任意の注目サービス部が、前記第１の通信部を介して前記コンピュータから、特定ファイルに対するアクセス要求であって、前記特定ファイルが属するファイルシステムを指定するための情報を含まず、前記特定ファイルのファイル名を含む、前記アクセス要求を受け取った場合に、前記複数のファイルシステムを検索対象に設定して、前記ファイル名に基づいて前記特定ファイルを検索する機能を、前記制御装置に実現させることを特徴とするコンピュータプログラム。
【請求項１４】
請求項１３記載のコンピュータプログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークに接続される制御装置内に格納されたファイルにアクセスするための技術に関する。
【背景技術】
【０００２】
ネットワークを利用した印刷システムでは、例えば、プリンタがＵＳＢケーブルを介してプリントサーバに接続され、プリントサーバとクライアントコンピュータとがＬＡＮなどのネットワークを介して接続される。
【０００３】
プリントサーバは、通常、ＲＯＭや、フラッシュメモリ、ＲＡＭなどの複数種類の記録媒体を備えており、記録媒体毎に、ファイルシステムが構築されている。また、プリントサーバは、通常、互いに異なるプロトコル（例えば、ＳＭＢやＳＮＭＰなど）に従ってサービスを提供する複数のサービス部を備えており、各サービス部は、複数種類の記憶媒体上に構築された複数のファイルシステムのうち、予め定められた１つのファイルシステムに属するファイルのみにアクセスすることができる。
【０００４】
【特許文献１】特開平７−２００２０１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
上記のように、従来では、１つのプロトコルと１つのファイルシステムとが互いに対応付けられている。このため、従来では、プリントサーバ内に格納された特定のファイルにアクセスすることは困難であった。これは、クライアントコンピュータは、特定のファイルにアクセスするためには、特定のファイルが属するファイルシステムを指定する必要があると共に、該ファイルシステムに対応するプロトコルを利用する必要があるためである。すなわち、従来では、クライアントコンピュータのユーザは、特定のファイルを利用するためには、特定のファイルがいずれのファイルシステムに属するかを予め知っている必要があると共に、特定のファイルが属するファイルシステムに対応するプロトコルを予め知っている必要があった。
【０００６】
なお、上記の問題は、印刷システムだけでなく、プリントサーバなどのネットワークに接続される制御装置を含む他のネットワークシステムに共通する問題である。
【０００７】
本発明は、上述の課題を解決するためになされたものであり、制御装置内に格納されたファイルに容易にアクセスすることのできる技術を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上述の課題の少なくとも一部を解決するため、本発明の装置は、ネットワークに接続される制御装置であって、
前記ネットワークを介して接続されるコンピュータと通信する第１の通信部と、
複数のファイルシステムが構築された第１の格納領域と、
前記第１の通信部を介して前記コンピュータから受け取った要求に応じたサービスを提供するための複数のサービス部であって、各サービス部は互いに異なるプロトコルに従った前記要求を受け取る、前記複数のサービス部と、
前記複数のサービス部によって共通に利用され、前記複数のファイルシステムで管理されるファイルに関する処理を実行するための第１のファイル制御部と、
を備え、
前記第１のファイル制御部は、
前記複数のサービス部のうちの任意の注目サービス部が、前記第１の通信部を介して前記コンピュータから、特定ファイルに対するアクセス要求であって、前記特定ファイルが属するファイルシステムを指定するための情報を含まず、前記特定ファイルのファイル名を含む、前記アクセス要求を受け取った場合に、前記複数のファイルシステムを検索対象に設定して、前記ファイル名に基づいて前記特定ファイルを検索することを特徴とする。
【０００９】
この装置では、任意の注目サービス部が特定ファイルに対するアクセス要求を取得した場合に、第１のファイル制御部は、複数のファイルシステムを検索対象に設定して、特定ファイルを検索することができる。このため、コンピュータは、特定ファイルにアクセスするために、特定のファイルシステムを指定したり、特定のプロトコルを選択したりぜずに済み、この結果、制御装置内に格納された特定ファイルに容易にアクセスすることが可能となる。
【００１０】
上記の装置において、
前記注目サービス部は、前記特定ファイルが見つかった場合に、前記特定ファイルに対するアクセスを前記コンピュータに許容することが好ましい。
【００１１】
上記の装置において、
前記第１のファイル制御部は、前記複数のファイルシステムを所定の順序で順次検索対象に設定するようにしてもよい。
【００１２】
上記の装置において、
前記第１の格納領域は、
第１種の記録媒体で構成された第１の部分格納領域と、
前記第１種の記録媒体と異なる第２種の記録媒体で構成された第２の部分格納領域であって、前記第２の部分格納領域からの所定サイズのデータの読み出しに要する時間は、前記第１の部分格納領域からの前記所定サイズのデータの読み出しに要する時間よりも長い、前記第２の部分格納領域と、
を含み、
前記複数のファイルシステムは、
前記第１の部分格納領域に構築された第１のファイルシステムと、
前記第２の部分格納領域に構築された第２のファイルシステムと、
を含み、
前記第１のファイル制御部は、前記第１のファイルシステムを前記第２のファイルシステムよりも先に検索対象に設定することが好ましい。
【００１３】
こうすれば、第２のファイルシステムを第１のファイルシステムよりも先に検索対象に設定する場合よりも、特定ファイルを迅速に検索することができる可能性が高い。
【００１４】
上記の装置において、
前記複数のファイルシステムは、
第１種のファイルシステムと、
前記第１種のファイルシステムと異なる第２種のファイルシステムと、
を含むようにしてもよい。
【００１５】
上記の装置において、
前記第１の格納領域は、
第１種の記録媒体で構成された第１の部分格納領域と、
前記第１種の記録媒体と異なる第２種の記録媒体で構成された第２の部分格納領域と、
を含み、
前記複数のファイルシステムは、
前記第１の部分格納領域に構築された第１のファイルシステムと、
前記第２の部分格納領域に構築された第２のファイルシステムと、
を含むようにしてもよい。
【００１６】
上記の装置において、
前記第１のファイルシステムと前記第２のファイルシステムとは、互いに異なる種類のファイルシステムであってもよい。
【００１７】
上記の装置において、
前記ネットワークを介さずに接続されるローカルデバイスと通信する第２の通信部を備え、
前記第１のファイル制御部は、前記第２の通信部を介して、前記ローカルデバイスに前記特定ファイルの検索の実行を依頼することが好ましい。
【００１８】
こうすれば、ローカルデバイス内に特定ファイルが格納されている場合にも、特定ファイルを検索することができる。
【００１９】
上記の装置において、
前記第１のファイル制御部は、前記複数のファイルシステムにおいて前記特定ファイルを見つけることができなかった場合に、前記検索の実行を依頼するようにしてもよい。
【００２０】
こうすれば、ローカルデバイスにおける検索の負荷を低減させることができる。
【００２１】
本発明の第２の装置は、ネットワーク装置であって、
上記の前記制御装置と、
前記ローカルデバイスと、
を備え、
前記ローカルデバイスは、
前記制御装置と通信する第３の通信部と、
少なくとも１つのファイルシステムが構築された第２の格納領域と、
前記第１のファイル制御部からの前記検索の実行の依頼に応じて、前記少なくとも１つのファイルシステムを検索対象として前記特定ファイルを検索する第２のファイル制御部と、
を備えることが好ましい。
【００２２】
上記の装置において、
前記第２の格納領域には、複数のファイルシステムが構築されており、
前記第２のファイル制御部は、前記第２の格納領域に構築された前記複数のファイルシステムを検索対象として前記特定ファイルを検索可能であることが好ましい。
【００２３】
こうすれば、ローカルデバイスに複数のファイルシステムが存在する場合にも、特定ファイルを検索することができる。
【００２４】
この発明は、種々の形態で実現することが可能であり、制御装置および該制御装置における制御方法、ローカルデバイスおよび該ローカルデバイスにおける制御方法、制御装置とローカルデバイスとを含むネットワーク装置および該ネットワーク装置における制御方法、これらの方法または装置の機能を実現するためのコンピュータプログラム、そのコンピュータプログラムを記録した記録媒体、そのコンピュータプログラムを含み搬送波内に具現化されたデータ信号、等の形態で実現することができる。
【発明を実施するための最良の形態】
【００２５】
次に、本発明の実施の形態を実施例に基づき以下の順序で説明する。
Ａ．ネットワークシステムの構成：
Ａ−１．デバイスサーバの構成：
Ａ−２．プリンタの構成：
Ｂ．ネットワークシステムの要部：
Ｂ−１．デバイスサーバの要部：
Ｂ−２．プリンタの要部：
Ｂ−３．クライアントコンピュータの要部：
Ｃ．読み出し処理：
【００２６】
Ａ．ネットワークシステムの構成：
図１は、ネットワークシステムの構成を示す説明図である。ネットワークシステムは、デバイスサーバ１００と、プリンタ２００と、クライアントコンピュータ（以下、単に「クライアント」とも呼ぶ）３００と、を備えている。デバイスサーバ１００とクライアント３００とは、ＬＡＮなどのネットワークＮＷを介して互いに接続されている。また、デバイスサーバ１００とプリンタ２００とは、ＵＳＢケーブルを介して互いに接続されている。
【００２７】
本実施例では、デバイスサーバ１００とプリンタ２００とは異なる筐体に収納されているが、共通の筐体に収納されていてもよい。
【００２８】
なお、本実施例におけるデバイスサーバ１００が本発明における制御装置に相当し、プリンタ２００がローカルデバイスに相当する。また、デバイスサーバ１００とプリンタ２００とがネットワーク装置に相当する。
【００２９】
Ａ−１．デバイスサーバの構成：
デバイスサーバ１００（図１）は、制御回路１１０と、ネットワークインタフェース（ＩＦ）部１９２と、ＵＳＢホストインタフェース（ＩＦ）部１９８と、を備えている。
【００３０】
ネットワークＩＦ部１９２は、ネットワークＮＷを介してクライアント３００と通信するためのインタフェースである。
【００３１】
ＵＳＢホストＩＦ部１９８は、ＵＳＢケーブルを介してプリンタ２００などのローカルデバイスと通信するためのインタフェースである。
【００３２】
制御回路１１０は、ＣＰＵとメモリとで構成されている。制御回路１１０は、処理実行部１１２と、第１の通信制御部１１４と、第２の通信制御部１１６と、データ格納領域１７０と、を備えている。処理実行部１１２と第１の通信制御部１１４と第２の通信制御部１１６との機能は、ＣＰＵがコンピュータプログラムを実行することによって実現される。なお、コンピュータプログラムは、例えば、ＣＤ−ＲＯＭなどのコンピュータ読み取り可能な記録媒体に記録された形態で提供される。
【００３３】
第１の通信制御部１１４は、ネットワークＩＦ部１９２を介して、ネットワークに接続されたクライアント３００と通信データを送受信する。なお、第１の通信制御部１１４は、ＴＣＰおよび／またはＵＤＰ層の処理と、ＩＰ層の処理と、を実行する。
【００３４】
第２の通信制御部１１６は、ＵＳＢホストＩＦ部１９８を介して、ＵＳＢケーブルで接続されたプリンタ２００と通信データを送受信する。
【００３５】
処理実行部１１２は、第１の通信制御部１１４から受け取った通信データに基づいて、種々の処理を実行する。なお、処理実行部１１２についてはさらに後述する。
【００３６】
データ格納領域１７０は、種々のデータが格納される領域である。データ格納領域１７０は、ＲＯＭで構成された第１の部分データ格納領域１７１と、フラッシュメモリで構成された第２の部分データ格納領域１７２と、ＲＡＭで構成された第３の部分データ格納領域１７３と、を含んでいる。
【００３７】
なお、本実施例におけるネットワークＩＦ部１９２と第１の通信制御部１１４とが本発明における第１の通信部に相当し、ＵＳＢホストＩＦ部１９８と第２の通信制御部１１６とが第２の通信部に相当する。
【００３８】
Ａ−２．プリンタの構成：
プリンタ２００（図１）は、制御回路２１０と、プリンタエンジン２８０と、ＵＳＢデバイスインタフェース（ＩＦ）部２９８と、を備えている。
【００３９】
ＵＳＢデバイスＩＦ部２９８は、ＵＳＢケーブルを介してデバイスサーバ１００と通信するためのインタフェースである。
【００４０】
制御回路２１０は、ＣＰＵとメモリとで構成されている。制御回路２１０は、処理実行部２１２と、通信制御部２１６と、データ格納領域２７０と、を備えている。処理実行部２１２と通信制御部２１６との機能は、ＣＰＵがコンピュータプログラムを実行することによって実現される。
【００４１】
通信制御部２１６は、ＵＳＢデバイスＩＦ部２９８を介して、ＵＳＢケーブルで接続されたデバイスサーバ１００と通信データを送受信する。なお、通信制御部２１６の機能は、ＵＳＢクラスドライバによって実現される。
【００４２】
処理実行部２１２は、通信制御部２１６が受け取った通信データに基づいて、種々の処理を実行する。例えば、処理実行部２１２は、プリンタエンジン２８０を制御して、印刷を実行させる。なお、処理実行部２１２についてはさらに後述する。
【００４３】
データ格納領域２７０は、種々のデータが格納される領域である。データ格納領域２７０は、ＲＯＭで構成された第４の部分データ格納領域２７１と、フラッシュメモリで構成された第５の部分データ格納領域２７２と、ＲＡＭで構成された第６の部分データ格納領域２７３と、を含んでいる。
【００４４】
なお、本実施例におけるＵＳＢデバイスＩＦ部２９８と通信制御部２１６とが本発明における第３の通信部に相当する。
【００４５】
Ｂ．ネットワークシステムの要部：
図２は、図１のネットワークシステムを構成する各装置１００，２００，３００の要部を模式的に示す説明図である。
【００４６】
Ｂ−１．デバイスサーバの要部：
図２に示すように、デバイスサーバ１００は、３つのサーバモジュール１２１〜１２３と、ファイル制御部１３０と、３つのファイルシステム１４１〜１４３と、を含んでいる。３つのサーバモジュール１２１〜１２３とファイル制御部１３０とは、図１のデバイスサーバ１００内の処理実行部１１２に含まれている。３つのファイルシステム１４１〜１４３は、図１のデバイスサーバ１００内のデータ格納領域１７０上に構築されている。なお、以下では、ファイル制御部１３０を、「サーバファイル制御部」とも呼ぶ。
【００４７】
３つのサーバモジュール１２１〜１２３は、クライアントコンピュータ３００から与えられた互いに異なるプロトコルに従った要求を受け取り、該要求に応じたサービスを提供する。３つのサーバモジュール１２１〜１２３は、例えば、ＳＭＢ（Server Message Block）プロトコルに従ってサービスを提供するＳＭＢサーバプログラムや、ＳＮＭＰ（Simple Network Management Protocol）プロトコルに従ってサービスを提供するＳＮＭＰマネージャプログラム、ＨＴＴＰ（Hyper Text Transfer Protocol）プロトコルに従ってサービスを提供するＨＴＴＰサーバ（Ｗｅｂサーバ）プログラムなどによって実現される。
【００４８】
なお、本実施例におけるサーバモジュール１２１〜１２３が本発明におけるサービス部に相当する。
【００４９】
サーバファイル制御部１３０は、３つのサーバモジュール１２１〜１２３によって共通に利用され、各サーバモジュール１２１〜１２３からの命令に従って、ファイルに関する処理（例えば読み出し処理や書き込み処理）を実行する。なお、サーバファイル制御部１３０は、実際には、ファイル制御用のＡＰＩ（Application Program Interface）プログラムによって実現されている。
【００５０】
３つのファイルシステム１４１〜１４３は、互いに異なる種類のファイルシステムである。なお、ファイルシステムには、通常、ディレクトリ情報等の管理情報が格納される管理領域と、ファイルの実データが格納される実データ領域と、が含まれている。３つのファイルシステム１４１〜１４３としては、種々のファイルシステムを採用可能であり、例えば、メーカによって独自に準備される簡易的なファイルシステムや、ＦＡＴ（File Allocation Table）ファイルシステム、ｅｘｔ２（Second Extended File System）などを採用可能である。
【００５１】
第１のファイルシステム１４１は、ＲＯＭで構成された第１の部分データ格納領域１７１上に構築されている。したがって、第１のファイルシステム１４１で管理されるファイルは、読み出しのみが想定される第１種のファイルである。第１種のファイルとしては、例えば、変更されることのない機器（すなわちデバイスサーバ）に関する情報を含むファイルや、ソースファイルなどが挙げられる。なお、機器に関する情報としては、デバイス名情報や、ＮＩＣ情報などが挙げられる。
【００５２】
第２のファイルシステム１４２は、フラッシュメモリで構成された第２の部分データ格納領域１７２上に構築されている。したがって、第２のファイルシステム１４２で管理されるファイルは、読み出しおよび書き込みが想定され、デバイスサーバ１００の電源オフ時にも保持が必要とされ、使用頻度の比較的高い第２種のファイルである。第２種のファイルとしては、機器（すなわちデバイスサーバ）のサービス情報を含むファイルや、ネットワーク設定情報を含むファイル、Ｗｅｂ用スタイル情報を含むファイル、ユーザインタフェース画面に表示すべきメニューを構成する文字列情報を含むファイルなどが挙げられる。なお、ネットワーク設定情報としては、デバイスサーバ１００のＩＰアドレスや、各種サービスで利用される制御用のフラグ、ＤＮＳ（Domain Name System）サーバのＩＰアドレスなどが挙げられる。
【００５３】
第３のファイルシステム１４３は、ＲＡＭで構成された第３の部分データ格納領域１７３上に構築されている。したがって、第３のファイルシステム１４３で管理されるファイルは、読み出しおよび書き込みが想定され、デバイスサーバ１００の電源オフ時に保持が必要とされず、一時的に利用される第３種のファイル（テンポラリファイル）である。第３種のファイルとしては、機器（すなわちデバイスサーバ）の制御とは無関係の情報を含むファイルが挙げられる。なお、該情報としては、印刷データが挙げられる。
【００５４】
Ｂ−２．プリンタの要部：
図２に示すように、プリンタ２００は、ファイル制御部２３０と３つのファイルシステム２４１〜２４３を含んでいる。ファイル制御部２３０は、図１のプリンタ２００内の処理実行部２１２に含まれている。３つのファイルシステム２４１〜２４３は、図１のプリンタ２００内のデータ格納領域２７０上に構築されている。なお、以下では、ファイル制御部２３０を「プリンタファイル制御部」とも呼ぶ。
【００５５】
プリンタファイル制御部２３０は、サーバファイル制御部１３０からの命令に従って、ファイルに関する処理（例えば読み出し処理や書き込み処理）を実行する。
【００５６】
３つのファイルシステム２４１〜２４３は、互いに異なる種類のファイルシステムである。３つのファイルシステム２４１〜２４３としては、前述の種々のファイルシステムを採用可能である。
【００５７】
第４のファイルシステム２４１は、ＲＯＭで構成された第４の部分データ格納領域２７１上に構築されており、第４のファイルシステム２４１で管理されるファイルは、前述の第１種のファイルである。第５のファイルシステム２４２は、フラッシュメモリで構成された第５の部分データ格納領域２７２上に構築されており、第５のファイルシステム２４２で管理されるファイルは、前述の第２種のファイルである。第６のファイルシステム２４３は、ＲＡＭで構成された第６の部分データ格納領域２７３上に構築されており、第６のファイルシステム２４３で管理されるファイルは、前述の第３種のファイルである。なお、プリンタ２００内の３つのファイルシステム２４１〜２４３で管理されるファイルは、プリンタ２００に関係する情報を含むファイルである。
【００５８】
Ｂ−３．クライアントコンピュータの要部：
図２に示すように、クライアント３００は、３つのクライアントモジュール３２１〜３２３を含んでいる。３つのクライアントモジュール３２１〜３２３は、それぞれ、デバイスサーバ１００の３つのサーバモジュール１２１〜１２３に対応している。３つのクライアントモジュール３２１〜３２３は、例えば、ＳＭＢクライアントプログラムや、ＳＮＭＰエージェントプログラム、ＨＴＴＰクライアント（Ｗｅｂブラウザ）プログラムなどによって実現される。
【００５９】
Ｃ．読み出し処理：
図３は、図１，図２に示すネットワークシステムで実行される読み出し処理の手順を示すフローチャートである。なお、図３に示す処理は、クライアント３００のユーザが、アプリケーションプログラムの実行画面を介して、特定ファイルの読み出しを指示したときに実行される。
【００６０】
ステップＳ１０２では、デバイスサーバ１００は、クライアント３００から、特定ファイルのオープン要求を受信する。
【００６１】
具体的には、クライアント３００のユーザが、３つのクライアントモジュール３２１〜３２３のうちのいずれか（以下、「注目クライアントモジュール」３２０と呼ぶ）に対応するアプリケーションプログラムの実行画面を介して、特定ファイルの読み出しを指示すると、注目クライアントモジュール３２０が、特定ファイルのオープン要求をデバイスサーバ１００に送信する。このとき、デバイスサーバ１００に含まれる対応する１つのサーバモジュール（以下、「注目サーバモジュール」１２０とも呼ぶ）が、オープン要求を受信する。なお、ＳＭＢクライアントプログラムによって実現されている注目クライアントモジュール３２０がオープン要求を送信する場合には、ＳＭＢサーバプログラムによって実現されている注目サーバモジュール１２０がオープン要求を受信する。
【００６２】
オープン要求は、特定ファイルのファイル名と、読み出しを指定するモード（オープンモードとも呼ばれる）と、を含んでいる。本実施例では、オープン要求には、ドライブ名等の特定ファイルが属するファイルシステムを特定する情報は含まれていない。なお、オープン要求には、ファイルシステム内の特定ファイルが属するディレクトリ名を含むパス（相対パス）が含まれていてもよいし、含まれていなくてもよい。
【００６３】
ステップＳ１０４では、デバイスサーバ１００は、特定ファイルを検索する。具体的には、注目サーバモジュール１２０は、受信したオープン要求に基づいて、サーバファイル制御部１３０に特定ファイルの検索を実行させる。この際、サーバファイル制御部１３０は、特定ファイルの「ファイル名」に基づいて、１以上のファイルシステムを順次検索対象に設定し、特定ファイルが見つかるまで、各ファイルシステム内で特定ファイルを検索する。なお、後述するように、本実施例では、最大６つのファイルシステム、すなわち、デバイスサーバ１００内の３つのファイルシステム１４１〜１４３およびプリンタ２００内の３つのファイルシステム２４１〜２４３（図２）が検索対象に設定される。
【００６４】
ステップＳ１０６では、検索結果が判断される。サーバファイル制御部１３０が特定ファイルを見つけることができた場合には、ステップＳ１０８に進む。一方、サーバファイル制御部１３０が特定ファイルを見つけることができない場合には、ステップＳ１１０に進む。
【００６５】
ステップＳ１０８では、サーバファイル制御部１３０は、識別情報（ハンドル）を生成し、特定ファイルと識別情報とを関連付ける。そして、注目サーバモジュール１２０は、サーバファイル制御部１３０から識別情報を受け取り、該識別情報をクライアントコンピュータ３００の注目クライアントモジュール３２０に送信する。
【００６６】
なお、ステップＳ１０８では、特定ファイルが見つかったファイルシステムに応じて、異なる処理が実行される。具体的には、特定ファイルがデバイスサーバ１００内の第３のファイルシステム１４３またはプリンタ２００内の３つのファイルシステム２４１〜２４３のうちのいずれかで見つかった場合には、サーバファイル制御部１３０は、特定ファイルのデータを読み出してキャッシュ（図示せず）に格納する。一方、特定ファイルがデバイスサーバ１００内の第１および第２のファイルシステム１４１，１４２で見つかった場合には、サーバファイル制御部１３０は、特定ファイルのデータをキャッシュに格納しない。
【００６７】
ステップＳ１１２では、注目サーバモジュール１２０は、注目クライアントモジュール３２０から、識別情報を含む読み出し要求を受信する。具体的には、ステップＳ１０８において識別情報を受信した注目クライアントモジュール３２０は、該識別情報を含む読み出し要求を、注目サーバモジュール１２０に送信し、注目サーバモジュール１２０が該読み出し要求を受信する。なお、読み出し要求には、データサイズが含まれている。
【００６８】
ステップＳ１１４では、注目サーバモジュール１２０は、いずれかのファイルシステム１４１〜１４２，２４１〜２４３において見つかった特定ファイルのデータをサーバファイル制御部１３０から受け取り、該特定ファイルのデータをクライアント３００の注目クライアントモジュール３２０に送信する。なお、注目サーバモジュール１２０は、特定ファイルのデータを、読み出し要求に含まれる上記のデータサイズ毎に、順次送信する。この結果、注目クライアントモジュール３２０は、特定ファイルのデータを取得することができ、クライアント３００のユーザは、該特定ファイルを利用することができる。
【００６９】
なお、ステップＳ１０８において、特定ファイルのデータがキャッシュに格納されている場合には、サーバファイル制御部１３０は、キャッシュから該データを読み出して注目サーバモジュール１２０に提供する。一方、特定ファイルのデータがキャッシュに格納されておらず、第１または第２のファイルシステム１４１，１４２に対応する第１または第２の部分データ格納領域１７１，１７２に格納されている場合には、サーバファイル制御部１３０は、第１または第２の部分データ格納領域１７１，１７２から該データを直接読み出して注目サーバモジュール１２０に提供する。
【００７０】
ステップＳ１１０では、サーバファイル制御部１３０は、特定ファイルが見つからないことを注目サーバモジュール１２０に通知する。そして、注目サーバモジュール１２０は、特定ファイルが見つからないことをクライアントコンピュータ３００の注目クライアントモジュール３２０に通知する。
【００７１】
なお、ステップＳ１０８，Ｓ１１２で説明した識別情報は、特定ファイルに対するアクセス権として利用される。すなわち、特定ファイルに既に識別情報が関連付けられている場合には、各サーバモジュール１２１〜１２３は、識別情報を有するクライアントコンピュータ３００のみに特定ファイルに対するアクセスを許容し、識別情報を有していない他のクライアントコンピュータに対しては特定ファイルに対するアクセスを禁止する。
【００７２】
図４は、図３のステップＳ１０４の具体的な処理内容を示すフローチャートである。
【００７３】
ステップＳ２０２では、デバイスサーバ１００内の複数のファイルシステムが順次検索される。具体的には、サーバファイル制御部１３０は、３つの部分データ格納領域１７１〜１７３上に構築された３つのファイルシステム１４１〜１４３を順次検索対象に設定し、特定ファイルを検索する。各ファイルシステムにおける特定ファイルの検索は、各ファイルシステムに含まれる管理情報に特定ファイルのファイル名が登録されているか否かを調べることによって行われる。
【００７４】
本実施例では、第１のファイルシステム１４１，第２のファイルシステム１４２，第３のファイルシステム１４３の順に、優先順位が高く設定されている。このため、ステップＳ２０２では、サーバファイル制御部１３０は、まず、第１のファイルシステム１４１内で特定ファイルを検索する。第１のファイルシステム１４１内で特定ファイルが見つからない場合には、第２のファイルシステム１４２内で特定ファイルを検索する。そして、第２のファイルシステム１４２内で特定ファイルが見つからない場合には、第３のファイルシステム１４３内で特定ファイルを検索する。
【００７５】
本実施例では、第１，第２，第３のファイルシステム１４１，１４２，１４３の順序で特定ファイルが検索されるため、特定ファイルを迅速に検索することができる可能性が高い。すなわち、上記の順序は、各ファイルシステムに対応する記録媒体の種類に基づいて、決定されている。第１のファイルシステム１４１に対応するＲＯＭに対する読み出しに要する第１の時間と、第２のファイルシステム１４２に対応するフラッシュメモリに対する読み出しに要する第２の時間と、第３のファイルシステム１４３に対応するＲＡＭに対する読み出しに要する第３の時間と、を比較すると、第１の時間が最も短く、第３の時間が最も長い。なお、「読み出しに要する時間」は、所定サイズのデータを読み出すのに必要な時間である。このため、上記の順序で特定ファイルを検索すれば、特定ファイルを迅速に検索することができる可能性が高く、この結果、クライアント３００は、特定ファイルのデータを迅速に取得することができる可能性が高い。
【００７６】
ステップＳ２０４では、検索結果が判断される。サーバファイル制御部１３０がデバイスサーバ１００内の３つのファイルシステム１４１〜１４３のうちのいずれかで特定ファイルを見つけることができた場合には、図４の処理（すなわち図３のステップＳ１０４の処理）は完了する。一方、サーバファイル制御部１３０がデバイスサーバ１００内の３つのファイルシステム１４１〜１４３において特定ファイルを見つけることができない場合には、ステップＳ２０６に進む。
【００７７】
ステップＳ２０６では、サーバファイル制御部１３０は、プリンタ２００内のプリンタファイル制御部２３０に特定ファイルの検索の実行を依頼する。
【００７８】
ステップＳ２０８では、プリンタファイル制御部２３０は、サーバファイル制御部１３０から特定ファイルの検索の実行の依頼を受け取る。
【００７９】
ステップＳ２１０では、プリンタ２００内の複数のファイルシステムが順次検索される。具体的には、プリンタファイル制御部２３０は、３つの部分データ格納領域２７１〜２７３上に構築された３つのファイルシステム２４１〜２４３を順次検索対象に設定し、特定ファイルを検索する。
【００８０】
本実施例では、第４のファイルシステム２４１，第５のファイルシステム２４２，第６のファイルシステム２４３の順に、優先順位が高く設定されている。なお、各ファイルシステム２４１〜２４３における検索は、前述のステップＳ２０２と同様に実行される。
【００８１】
ステップＳ２１２では、プリンタファイル制御部２３０は、サーバファイル制御部１３０に検索結果（すなわち、特定ファイルが見つかったか否か）を通知する。また、プリンタファイル制御部２３０は、３つのファイルシステム２４１〜２４３のうちのいずれかで特定ファイルが見つかった場合には、特定ファイルのデータを読み出して、該データをサーバファイル制御部１３０に供給する。
【００８２】
ステップＳ２１４では、サーバファイル制御部１３０は、プリンタファイル制御部２３０から検索結果を受け取る。そして、サーバファイル制御部１３０は、前述のステップＳ１０８（図３）において、プリンタファイル制御部２３０から特定ファイルのデータを受け取った場合には、該データをキャッシュに格納する。
【００８３】
このように、本実施例では、プリンタ２００内の複数のファイルシステムを検索対象として検索が実行されるため、プリンタ２００内に格納された特定ファイルのファイル名が指定された場合にも、特定ファイルを検索することができる。
【００８４】
なお、本実施例では、ステップＳ１０８（図３）において、特定ファイルがデバイスサーバ１００内の第３のファイルシステム１４３またはプリンタ２００内の３つのファイルシステム２４１〜２４３のうちのいずれかで見つかった場合には、特定ファイルのデータが、サーバファイル制御部１３０内のキャッシュに格納される。これにより、特定ファイルのデータを迅速にクライアント３００に供給することができる。すなわち、前述したように、第３のファイルシステム１４３に対応するＲＡＭに対する読み出しに要する第３の時間は、第１および第２のファイルシステム１４１，１４２に対応するＲＯＭ，フラッシュメモリに対する読み出しに要する第１および第２の時間よりも、長い。このため、仮に、特定ファイルが第３のファイルシステム１４３内で見つかり、ステップＳ１１２（図３）において第３のファイルシステム１４３に対応するＲＡＭから特定ファイルのデータを読み出す場合には、該データがクライアント３００に送信されるまでに、比較的長い時間が掛かってしまう。また、プリンタ２００からデバイスサーバ１００への特定ファイルのデータの転送には、比較的長い時間が掛かる。このため、仮に、特定ファイルが第４ないし第６のファイルシステム２４１〜２４３内で見つかり、ステップＳ１１２（図３）においてデバイスサーバ１００がプリンタ２００から特定ファイルのデータを取得する場合には、該データがクライアント３００に送信されるまで、比較的長い時間が掛かってしまう。したがって、本実施例のようにすれば、特定ファイルのデータを比較的迅速にクライアントに供給することができる。
【００８５】
また、図３（および図４）では、読み出し処理について説明したが、書き込み処理の場合にも、同様に検索処理が実行される。具体的には、クライアント３００のユーザが特定ファイルの書き込みを指示する場合には、デバイスサーバ１００は、特定ファイルのファイル名を含むオープン要求を受信し、このとき、ステップＳ１０２，Ｓ１０４，Ｓ１０６，Ｓ１０８，Ｓ１１０の処理が実行される。その後、デバイスサーバ１００は、識別情報と書き込むべきデータとを含む書き込み要求を受信する。
【００８６】
以上説明したように、本実施例では、サーバファイル制御部１３０が設けられているため、注目サーバモジュール１２０が特定ファイルに対するアクセス要求を取得した場合に、サーバファイル制御部１３０は、複数のファイルシステムを検索対象に設定して、特定ファイルを検索することができる。このため、クライアント３００は、特定ファイルにアクセスするために、特定のファイルシステムを指定したり、特定のプロトコル（すなわち、特定のサーバモジュールに対応するクライアントモジュール）を選択したりぜずに済み、この結果、デバイスサーバ１００内に格納された特定ファイルに容易にアクセスすることが可能となる。
【００８７】
なお、本明細書における「アクセス要求」は、本実施例におけるステップＳ１０２のオープン要求と、ステップＳ１１２の読み出し要求と、を含む意味である。
【００８８】
なお、この発明は上記の実施例や実施形態に限られるものではなく、その要旨を逸脱しない範囲において種々の態様において実施することが可能であり、例えば次のような変形も可能である。
【００８９】
（１）上記実施例では、デバイスサーバ１００には、３種類のサーバモジュール１２１〜１２３が設けられており、サーバファイル制御部１３０は、３種類のサーバモジュール１２１〜１２３によって共通に利用されるが、２種類または４種類以上のサービスモジュールによって共通に利用されてもよい。
【００９０】
（２）上記実施例では、デバイスサーバ１００には、３つのファイルシステム１４１〜１４３が構築されているが、これに代えて、２つのファイルシステムが構築されていてもよいし、４つ以上のファイルシステムが構築されていてもよい。
【００９１】
また、上記実施例では、複数のファイルシステムは、互いに異なる種類の複数のファイルシステムであるが、これに代えて、複数のファイルシステムのうちの少なくとも２つは、同じ種類の複数のファイルシステムであってもよい。
【００９２】
（３）上記実施例では、データ格納領域１７０には、互いに異なる種類の記録媒体で構成された３つの部分データ格納領域１７１〜１７３が含まれている。しかしながら、データ格納領域に含まれる複数の部分データ格納領域のうちの少なくとも２つは、同じ種類の記録媒体で構成された部分データ格納領域であってもよい。なお、この場合にも、部分データ記憶領域毎に、ファイルシステムが構築される。
【００９３】
（４）上記実施例では、デバイスサーバ１００において、各ファイルシステムは対応する記録媒体の種類に基づいて決定された順序で順次検索対象に設定され、各ファイルシステムにおいて順次特定ファイルが検索されている。しかしながら、これに代えて、各ファイルシステムは対応する記録媒体の種類とは無関係の所定の順序で順次検索対象に設定され、各ファイルシステムにおいて順次特定ファイルが検索されるようにしてもよい。ただし、上記実施例のように検索順序を設定すれば、特定ファイルを比較的迅速に検索することが可能となる。
【００９４】
また、デバイスサーバ１００において、各ファイルシステムが同時に検索対象に設定され、各ファイルシステムにおいて特定ファイルが同時に検索されるようにしてもよい。こうすれば、特定ファイルをさらに迅速に検索することが可能となる。
【００９５】
一般には、複数のファイルシステムが検索対象に設定され、複数のファイルシステムにおいて特定ファイルが検索されればよい。なお、上記の変形例は、プリンタにおける検索にも同様に適用可能である。
【００９６】
（５）上記実施例では、デバイスサーバ１００内の複数のファイルシステムにおいて特定ファイルが見つからなかった場合に、プリンタ２００内の複数のファイルシステムにおける特定ファイルの検索が実行されているが、これに代えて、デバイスサーバ１００内の複数のファイルシステムの検索と並行して、プリンタ内の複数のファイルシステムにおける特定ファイルの検索が実行されてもよい。ただし、上記実施例のようにすれば、プリンタ２００において検索が実行される頻度が小さくなるため、プリンタ２００における検索の負荷を低減させることができる。
【００９７】
一般には、サーバファイル制御部１３０は、プリンタファイル制御部２３０に検索の実行を依頼すればよい。
【００９８】
（６）上記実施例では、ローカルデバイスとしてプリンタが利用されているが、これに代えて、他のローカルデバイスが利用されてもよい。他のローカルデバイスとしては、スキャナや、ストレージ装置、ファクシミリを利用可能である。また、他のローカルデバイスとしては、複数の機能（印刷，スキャナ等）を有する複合機を利用可能である。
【００９９】
（７）上記実施例において、ハードウェアによって実現されていた構成の一部をソフトウェアに置き換えるようにしてもよく、逆に、ソフトウェアによって実現されていた構成の一部をハードウェアに置き換えるようにしてもよい。
【図面の簡単な説明】
【０１００】
【図１】ネットワークシステムの構成を示す説明図である。
【図２】図１のネットワークシステムを構成する各装置１００，２００，３００の要部を模式的に示す説明図である。
【図３】図１，図２に示すネットワークシステムで実行される読み出し処理の手順を示すフローチャートである。
【図４】図３のステップＳ１０４の具体的な処理内容を示すフローチャートである。
【符号の説明】
【０１０１】
１００…デバイスサーバ
１１０…制御回路
１１２…処理実行部
１１４…第１の通信制御部
１１６…第２の通信制御部
１２１〜１２３…サーバモジュール
１３０…ファイル制御部（サーバファイル制御部）
１４１〜１４３…ファイルシステム
１７０…データ格納領域
１７１〜１７３…部分データ格納領域
１９２…ネットワークＩＦ部
１９８…ＵＳＢホストＩＦ部
２００…プリンタ
２１０…制御回路
２１２…処理実行部
２１６…通信制御部
２３０…ファイル制御部（クライアントファイル制御部）
２４１〜２４３…ファイルシステム
２７０…データ格納領域
２７１〜２７３…部分データ格納領域
２８０…プリンタエンジン
２９８…ＵＳＢデバイスＩＦ部
３００…クライアントコンピュータ
３２１〜３２３…クライアントモジュール
ＮＷ…ネットワーク
【図１】
2007188209.tif 000003
【図２】
2007188209.tif 000004
【図３】
2007188209.tif 000005
【図４】
2007188209.tif 000006