(57)【要約】【課題】プログラムの実行時にブロックファイルをキャッシュメモリに読み込む時間を短縮できる多台数同一環境配信システムを提供する。【解決手段】本発明では、プログラム２００の実行時の情報通信ログを解析して、プログラム２００の実行に必要なブロックファイル３０２を予めプログラム２００で必要となる順序に配置した高速化用アーカイブ２０５を作成することにより、すなわち、必要なブロックファイル３０２を高速化用アーカイブ２０５に先読みすることにより、プログラム２００を実行する際のブロックファイル３０２をキャッシュメモリに読み込む時間を短縮できる多台数同一環境配信システム１を提供する。【選択図】図３
2013242663.tif 000002
【特許請求の範囲】
【請求項１】
サーバと前記サーバから同一のプログラムを取得して同一の利用環境で前記プログラムの処理を実行する複数のクライアントから構成され、前記サーバと複数の前記クライアントが通信ネットワークを介して通信可能に接続される多台数同一環境配信システムであって；
前記サーバは、前記プログラムを格納する第１のプログラム格納部と、
前記プログラムの実行時に必要なファイルを記憶する第１のファイル記憶部とを備え；
各前記クライアントは、前記サーバから取得した前記プログラムを格納する第２のプログラム格納部と、
前記プログラムの実行時に必要なファイルを、前記サーバから取得して記憶する第２のファイル記憶部とを備え；
前記サーバ又は前記クライアントは、前記クライアントによる前記プログラムの実行時の通信情報ログを記録する通信情報ログ記録部と、
通信情報ログ記録部に記録された通信情報ログを解析する通信情報ログ解析部と、
前記通信情報ログ解析部で解析された結果を使用して、前記プログラムの実行時に必要なファイルと当該ファイルが時系列的に必要になる順序とがわかるように記録された高速化用プロファイルを作成する高速化用プロファイル作成部とを備え；
また、前記サーバ又は前記クライアントは、前記プログラムの実行時に必要なファイルが時系列的に必要になる順序に記録された高速化用アーカイブを、自己の前記ファイル記憶部に、前記高速化用プロファイルに記録された順序に従って蓄積することにより作成する高速化用アーカイブ作成部を備える；
多台数同一環境配信システム。
【請求項２】
前記クライアントは、前記プログラムの実行時の通信情報ログを記録する第２の通信情報ログ記録部と；
前記第２の通信情報ログ記録部に記録された前記通信情報ログを解析する第２の通信情報ログ解析部と；
前記第２の通信情報ログ解析部で解析された結果を使用して前記高速化用プロファイルを作成する第２の高速化用プロファイル作成部とを備える；
請求項１に記載の多台数同一環境配信システム。
【請求項３】
前記第２の高速化用プロファイル作成部で作成された前記高速化用プロファイルを前記サーバにアップロードする第２の送信部を備える；
請求項２に記載の多台数同一環境配信システム。
【請求項４】
前記サーバは、いずれかの前記クライアントによる前記プログラムの実行時の通信情報ログを記録する第１の通信情報ログ記録部と；
前記第１の通信情報ログ記録部に記録された前記通信情報ログを解析する第１の通信情報ログ解析部と；
前記第１の通信情報ログ解析部で解析された結果を使用して前記高速化用プロファイルを作成する第１の高速化用プロファイル作成部とを備える；
請求項１に記載の多台数同一環境配信システム。
【請求項５】
前記サーバは、いずれかの前記クライアントが前記サーバにアップロードした又は前記第１の高速化用プロファイル作成部で作成された前記高速化用プロファイルを各前記クライアントに配布する第１の送信部を備える；
請求項２又は請求項４に記載の多台数同一環境配信システム。
【請求項６】
前記クライアントは、前記プログラムの実行時に必要なファイルを、前記第２のファイル記憶部に、前記高速化用プロファイルに記録された順序に従って蓄積することにより前記高速化用アーカイブを作成する第２の高速化用アーカイブ作成部を備える；
請求項２又は請求項５に記載の多台数同一環境配信システム。
【請求項７】
前記クライアントは、前記サーバから配布された高速化用プロファイル及び／又は前記高速化用プロファイルを用いて前記第２の高速化用アーカイブ作成部で作成された前記高速化用アーカイブを備える；
請求項６に記載の多台数同一環境配信システム。
【請求項８】
前記クライアントは、前記高速化用アーカイブを作成後に、前記プログラムを実行するために必要なファイルを読み込む際に、前記高速化用アーカイブから優先的にファイルを読み込んで処理を行うプログラム実行部を備える；
請求項１ないし請求項７のいずれか１項に記載の多台数同一環境配信システム。
【請求項９】
前記高速化用プロファイル及び前記高速化用アーカイブは、前記クライアントが過去に前記サーバから取得したファイルから構成されている；
請求項１ないし請求項８のいずれか１項に記載の多台数同一環境配信システム。
【請求項１０】
前記高速化用プロファイル及び前記高速化用アーカイブは、オペレーティングシステム毎に又はアプリケーションプログラム毎に設けられる；
請求項１ないし請求項９のいずれか１項に記載の多台数同一環境配信システム。
【請求項１１】
前記高速化用アーカイブは、当該オペレーティングシステム又はアプリケーションプログラムに専用の部分と複数のオペレーティングシステム又はアプリケーションプログラムに共通に使用される共用部分とで構成されている；
請求項１０に記載の多台数同一環境配信システム。
【請求項１２】
サーバと前記サーバから同一のプログラムを取得して同一の利用環境で前記プログラムの処理を実行する複数のクライアントから構成され、前記サーバと複数の前記クライアントが通信ネットワークを介して通信可能に接続される多台数同一環境配信システムのサーバであって；
前記プログラムを格納する第１のプログラム格納部と、
前記プログラムの実行時に必要なファイルを記憶する第１のファイル記憶部と；
いずれかの前記クライアントによる前記プログラムの実行時の通信情報ログを記録する第１の通信情報ログ記録部と；
前記第１の通信情報ログ記録部に記録された前記通信情報ログを解析する第１の通信情報ログ解析部と；
前記第１の通信情報ログ解析部で解析された結果を使用して、前記プログラムの実行時に必要なファイルと当該ファイルが時系列的に必要になる順序とがわかるように記録された高速化用プロファイルを作成する第１の高速化用プロファイル作成部とを備える；
サーバ。
【請求項１３】
いずれかの前記クライアントが前記サーバにアップロードした又は前記第１の高速化用プロファイル作成部で作成された前記高速化用プロファイルを各前記クライアントに配布する第１の送信部を備える；
請求項１２に記載のサーバ。
【請求項１４】
サーバと前記サーバから同一のプログラムを取得して同一の利用環境で前記プログラムの処理を実行する複数のクライアントから構成され、前記サーバと複数の前記クライアントが通信ネットワークを介して通信可能に接続される多台数同一環境配信システムのクライアントであって；
前記サーバから取得した前記プログラムを格納する第２のプログラム格納部と、
前記プログラムの実行時に必要なファイルを、前記サーバから取得して記憶する第２のファイル記憶部と；
前記プログラムの実行時の通信情報ログを記録する第２の通信情報ログ記録部と；
前記第２の通信情報ログ記録部に記録された前記通信情報ログを解析する第２の通信情報ログ解析部と；
前記第２の通信情報ログ解析部で解析された結果を使用して、前記プログラムの実行時に必要なファイルと当該ファイルが時系列的に必要になる順序とがわかるように記録された高速化用プロファイルを作成する第２の高速化用プロファイル作成部とを備える；
クライアント。
【請求項１５】
前記プログラムの実行時に必要なファイルが時系列的に必要になる順序に記録された高速化用アーカイブを、前記第２のファイル記憶部に、前記高速化用プロファイルに記録された順序に従ってファイルを蓄積することにより作成する第２の高速化用アーカイブ作成部を備える；
請求項１４に記載のクライアント。
【請求項１６】
サーバと前記サーバから同一のプログラムを取得して同一の利用環境で前記プログラムの処理を実行する複数のクライアントから構成され、前記サーバと複数の前記クライアントが通信ネットワークを介して通信可能に接続される多台数同一環境配信システムにおける情報処理時間短縮方法であって；
前記クライアントが行なう工程として、
前記プログラムを前記サーバから取得して第２のプログラム格納部に格納するプログラム格納工程と、
前記プログラムの実行時の通信情報ログを記録する第２の通信情報ログ記録工程と；
前記第２の通信情報ログ記録工程で記録された前記通信情報ログを解析する第２の通信情報ログ解析工程と、
前記第２の通信情報ログ解析工程で解析された結果を使用して、前記プログラムの実行時に必要なファイルと当該ファイルが時系列的に必要になる順序とがわかるように記録された高速化用プロファイルを作成する第２の高速化用プロファイル作成工程とを備える；
多台数同一環境配信システムにおける情報処理時間短縮方法。
【請求項１７】
サーバと前記サーバから同一のプログラムを取得して同一の利用環境で前記プログラムの処理を実行する複数のクライアントから構成され、前記サーバと複数の前記クライアントが通信ネットワークを介して通信可能に接続される多台数同一環境配信システムにおける情報処理時間短縮方法であって；
前記サーバが行なう工程として、
第１のファイル記憶部に、前記プログラムの実行時に必要なファイルを記憶しておく工程と、
いずれかの前記クライアントによる前記プログラムの実行時の通信情報ログを記録する第１の通信情報ログ記録工程と、
前記第１の通信情報ログ記録工程で記録された前記通信情報ログを解析する第１の通信情報ログ解析工程と、
前記第１の通信情報ログ解析工程で解析された結果を使用して、前記プログラムの実行時に必要なファイルと当該ファイルが時系列的に必要になる順序とがわかるように記録された高速化用プロファイルを作成する第１の高速化用プロファイル作成工程とを備える；
多台数同一環境配信システムにおける情報処理時間短縮方法。
【請求項１８】
前記サーバが行なう工程として、
いずれかの前記クライアントにより前記サーバにアップロードされた又は前記第１の高速化用プロファイル作成工程で作成された前記高速化用プロファイルを各前記クライアントに配布する高速化用プロファイル配布工程を備える；
請求項１６又は請求項１７に記載の多台数同一環境配信システムにおける情報処理時間短縮方法。
【請求項１９】
前記クライアントが行なう工程として、
前記プログラムの実行時に必要なファイルが時系列的に必要になる順序に記録された高速化用アーカイブを、前記第２のファイル記憶部に、前記高速化用プロファイルに記録された順序に従ってファイルを蓄積することにより作成する第２の高速化用アーカイブ作成工程と、
前記高速化用アーカイブを作成工程の後に、前記プログラムを実行するために必要なファイルを読み込む際に、前記第２の高速化用アーカイブ作成工程で作成した前記高速化用アーカイブから優先的にファイルを読み込んで処理を行うプログラム実行工程とを備える；
請求項１６に記載の多台数同一環境配信システムにおける情報処理時間短縮方法。
【請求項２０】
サーバと前記サーバから同一のプログラムを取得して同一の利用環境で前記プログラムの処理を実行する複数のクライアントから構成され、前記サーバと複数の前記クライアントが通信ネットワークを介して通信可能に接続される多台数同一環境配信システムを制御するためのプログラムであって；
請求項１７又は請求項１８に記載の多台数同一環境配信システムにおける情報処理時間短縮方法をサーバに実行させるためのコンピュータ読み取り可能なプログラム。
【請求項２１】
サーバと前記サーバから同一のプログラムを取得して同一の利用環境で前記プログラムの処理を実行する複数のクライアントから構成され、前記サーバと複数の前記クライアントが通信ネットワークを介して通信可能に接続される多台数同一環境配信システムを制御するためのプログラムであって；
請求項１６又は請求項１９に記載の多台数同一環境配信システムにおける情報処理時間短縮方法をクライアントに実行させるためのコンピュータ読み取り可能なプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は多台数同一環境配信システムに関する。詳しくはサーバと複数のクライアントが通信ネットワークを介して接続されたネットブート方式かつ差分配信方式のシステムで、情報処理時間を短縮できる多台数同一環境配信システムに関する。
【背景技術】
【０００２】
図２２はネットブート方式を説明するための図である。図２２（ａ）は通常のネットブート方式を示し、ブート用サーバ２Ｚから各クライアント３Ｚにディスクイメージ全体２０１を配信する。図２２（ｂ）は本発明で採用する差分配信方式を示す（非特許文献１参照）。ブート用サーバ２はディスクイメージ２０１をブロックファイル２０２に分割して配信し、クライアント３が既に有するブロックファイルを除き、未だ有しないブロックファイルのみを配信する。配信量が少なくなるので、配信に要する時間が短縮され、サーバ２の負荷が軽くなる。なお、サーバ２に記憶されたディスクイメージを２０１、ブロックファイルを２０２、クライアント３に記憶されたディスクイメージを３０１、ブロックファイルを３０２とする。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】「Ｗｉｎｄｏｗｓ／Ｌｉｎｕｘデュアルネットブート「Ｖ−Ｂｏｏｔ」の販売について」、株式会社アルファシステムズ、Ｎｅｗｓ  Ｒｅｌｅａｓｅ  平成２１年１２月２日発表（株式会社アルファシステムズホームページより）、［ｏｎｌｉｎｅ］、［平成２４年４月１８日検索］、ＵＲＬ：ｈｔｔｐ：／ｗｗｗ．ａｌｐｈａ．ｃｏ．ｊｐ／ｎｅｗｓｒｅｌｅａｓｅ／２００９１２０２．ｓｈｔｍｌ
【発明の概要】
【発明が解決しようとする課題】
【０００４】
図２３に、差分配信方式で配信されたクライアント３Ｚのディスクイメージ３０１の状態を示す。ディスクイメージ２０１を分割して配信する場合、分割されたブロックファイル３０２−１〜３０２−Ｚがクライアント３のディスクイメージ３０１内に断片化された状態でランダムに配置されてしまう。このようにランダムに配置された状態では、プログラムの実行時にディスクイメージ３０１から必要なブロックファイル３０２を例えばキャッシュメモリに読み込むのに、要求があるたびに実行に必要なブロックファイル３０２−１〜３０２−Ｚをディスクイメージ３０１内から順次サーチして読み出さねばならないことになり、時間がかかるという問題があった。
【０００５】
本発明は、プログラムの実行時にブロックファイル３０２をキャッシュメモリに読み込む時間を短縮できる多台数同一環境配信システム及び多台数同一環境配信システムにおける情報処理時間短縮方法を提供することを目的とする。
【課題を解決するための手段】
【０００６】
上記課題を解決するために、本発明では、例えば図１６に示すように、プログラム２００の実行時の情報通信ログを解析して、プログラム２００の実行に必要なブロックファイル３０２を予めプログラム２００で必要となる順序に配置した高速化用アーカイブ２０５を作成することにより、すなわち、必要なブロックファイル３０２を高速化用アーカイブ２０５に先読みすることにより、プログラム２００を実行する際のブロックファイル３０２をキャッシュメモリに読み込む時間を短縮できる多台数同一環境配信システム及び多台数同一環境配信システムにおける情報処理時間短縮方法を提供する。
【０００７】
上記課題を解決するために、本発明の第１の態様に係る多台数同一環境配信システム１Ｄは、例えば図１６に示すように、サーバ２とサーバ２から同一のプログラム２００を取得して同一の利用環境でプログラム２００の処理を実行する複数のクライアント３から構成され、サーバ２と複数のクライアント３が通信ネットワーク４を介して通信可能に接続される多台数同一環境配信システム１Ｄであって、サーバ２は、プログラム２００を格納する第１のプログラム格納部２１と、プログラム２００の実行時に必要なファイルを記憶する第１のファイル記憶部２０とを備え、各前記クライアント３は、サーバ２から取得したプログラム２００を格納する第２のプログラム格納部３１と、プログラム２００の実行時に必要なファイルを、サーバ２から取得して記憶する第２のファイル記憶部３０とを備え、サーバ２又はクライアント３は、クライアント３によるプログラム２００の実行時の通信情報ログを記録する通信情報ログ記録部（２２又は３２）と、通信情報ログ記録部（２２又は３２）に記録された通信情報ログを解析する通信情報ログ解析部（２３又は３３）と、通信情報ログ解析部（２３又は３３）で解析された結果を使用して、プログラム２００の実行時に必要なファイル（２０２又は３０２）と当該ファイルが時系列的に必要になる順序とがわかるように記録された高速化用プロファイル２０４を作成する高速化用プロファイル作成部（２４又は３４）とを備え、また、サーバ２又はクライアント３は、プログラム２００の実行時に必要なファイル（２０２又は３０２）が時系列的に必要になる順序に記録された高速化用アーカイブ２０５を、自己のファイル記憶部（２０又は３０）に、高速化用プロファイル２０４に記録された順序に従って蓄積することにより作成する高速化用アーカイブ作成部（２５又は３５）を備える。
【０００８】
ここにおいて、本態様の多台数同一環境配信システムとしてシステム１Ｄを挙げていますが、これは例示であって、１，１Ａ〜１Ｇのいずれを挙げることも可能であります。他の態様においても、必ずしも例示されたシステムに限定されず、他のシステムも可能な場合があります。また、複数のクライアント３がサーバ２から同一のプログラム２００を取得して同一の利用環境でプログラム２００の処理を実行する多台数同一環境配信システムは、例えば教育システム、会議システム、コールセンターに採用される。また、多台数同一環境配信システムのクライアントは複数で良いのですが、例えば教育システム用としては、利用する教室に合わせて最適な台数が設定される。同一のプログラム２００として例えばオペレーティングシステム（ＯＳ）、アプリケーションプログラム（ＡＰ）等がある。例えば教科毎に異なるプログラムを使用しても良く、例えば授業等において、教員と全ての受講者でこのような単数又は複数のプログラムを同一環境で利用できる。また、クライアント３には、教員用端末と学生用端末、管理者用端末とオペレータ用端末のように利用者の立場が異なるものを含んでも良く、このような単数又は複数のプログラムを同一環境で利用できる。また、同一環境とは、複数のクライアント３が同一ディスクイメージ２０１を配信されることによって同一ＯＳ及び同一ＡＰを利用できる環境にあることをいう。ただし、必ずしもシステム全体でなく、例えば教室単位等（同じ目的でまとまった1つのグループ）で同一環境が実現されれば良い。
【０００９】
また、プログラム２００の実行時に必要なファイルには、ＯＳ用ファイル、プログラム用ファイルの他に、データファイル、イメージファイル、コンテンツファイル等を含むが、これらのファイルはサーバ２のファイル記憶部２０又はプログラム格納部２１から読み出され、コピーがクライアント３に送信された後にクライアント３のファイル記憶部３０又はプログラム格納部３１に書き込まれる。ファイル記憶部（２０又は３０）に記憶されるファイルには、サーバ２からクライアント３に配信され実行されるプログラム２００及びプログラム２００を実行するためのファイルを収納するディスクイメージ（２０１又は３０１）、ディスクイメージ（２０１又は３０１）をブロック単位に分割したブロックファイル（２０２又は３０２）、ディスクイメージ（２０１又は３０１）を構成するブロックファイル情報を記載しているインデックスファイル２０３、ブロックファイル（２０２又は３０２）をクライアント３が読み込むために最適化した状態で格納した高速化用アーカイブ２０５、高速化用アーカイブ２０５を作成するための情報が記載されている高速化用プロファイル２０４が含まれる。また、ディスクイメージ（２０１又は３０１）は仮想ＨＤＤ、及び仮想ＨＤＤ内にインストールされたＯＳやＡＰを総称するものである。ディスクイメージ（２０１）はブロック化され、サーバ２からクライアント３にブロックファイル（２０２）として送信される。つまり、ディスクイメージ（２０１）に格納されているプログラム２００もブロック化されて送信される。インデックスファイル２０３、高速化用プロファイル２０４、高速化用アーカイブ２０５は分割されずに利用される。なお、インデックスファイル２０３、高速化用プロファイル２０４、高速化用アーカイブ２０５はサーバ２とクライアント３間で送信して利用される場合と参照して利用される場合がある。また、プログラム２００にはメインルーチンの他に諸階層のサブルーチンが含まれ、使用時にはサブルーチンを取捨選択可能であるが、送受信されるブロックファイル２０２はこのようにサブルーチンが取捨選択されたものであっても良い。つまり、実行に必要なプログラムはサブルーチンが取捨選択されたものであっても良い。
【００１０】
また、ファイル記憶部、通信情報ログ記録部、通信情報ログ解析部、高速化用プロファイル作成部及び高速化用アーカイブ作成部は、それぞれ、第１又は第２のファイル記憶部（２０又は３０）、第１又は第２の通信情報ログ記録部（２２又は３２）、第１又は第２の通信情報ログ解析部（２３又は３３）、第１又は第２の高速化用プロファイル作成部（２４又は３４）及び第１又は第２の高速化用アーカイブ作成部（２５又は３５）を意味する。また、「当該ファイルが時系列的に必要になる順序とがわかるように記録された」とは、順序（順番）自体が記録されても良く、順番通りに配列され、数えれば順序（順番）がわかるように記録されていても良い。また、通信情報ログ解析部（２３又は３３）が行う解析は、主として、通信情報ログからブロックファイル（２０２又は３０２）の情報（例えばブロック番号と送信時刻又は受信時刻）を抽出し、時系列順序に並べることをいう。ブロック番号以外にブロックファイル（２０２又は３０２）を識別する情報があればそれを用いても良い。さらに、第１の通信情報ログ解析部２３ではプログラム２００を実行中のクライアント３の情報を抽出する必要があるが、第２の通信情報ログ解析部３３ではこの抽出を要しない。解析された結果とは例えば抽出されたブロックファイル（２０２又は３０２）のブロック番号と送信時刻又は受信時刻等をいう。
【００１１】
本態様のように構成すると、ブロックファイルを予めプログラムで必要となる順序に配置した高速化用アーカイブを作成することにより、ブロックファイルをキャッシュメモリに読み込む時間を短縮できる多台数同一環境配信システムを提供することができる。
【００１２】
また、本発明の第２の態様に係る多台数同一環境配信システム１は、第１の態様において、例えば図２に示すように、クライアント３は、プログラム２００の実行時の通信情報ログを記録する第２の通信情報ログ記録部３２と、第２の通信情報ログ記録部３２に記録された通信情報ログを解析する第２の通信情報ログ解析部３３と、第２の通信情報ログ解析部３３で解析された結果を使用して高速化用プロファイル２０４を作成する第２の高速化用プロファイル作成部３４とを備える。
このように構成すると、クライアント側で、プログラム実行時の通信情報ログを解析することにより、プログラムの実行時に必要なファイルと、当該ファイルが時系列的に必要になる順序とがわかるように記録された高速化用プロファイルを作成できる。
【００１３】
また、本発明の第３の態様に係る多台数同一環境配信システムは、第２の態様において、例えば図２に示すように、クライアント３は、第２の高速化用プロファイル作成部３４で作成された高速化用プロファイル２０４をサーバ２にアップロードする第２の送信部３６２を備える。
このように構成すると、１つのクライアントで作成した高速化用プロファイルを各クライアントで使用可能にできる。
【００１４】
また、本発明の第４の態様に係る多台数同一環境配信システム１Ｂは、第１の態様において、例えば図１０に示すように、サーバ２は、いずれかのクライアント３によるプログラム２００の実行時の通信情報ログを記録する第１の通信情報ログ記録部２２と、第１の通信情報ログ記録部２２に記録された通信情報ログを解析する第１の通信情報ログ解析部２３と、第１の通信情報ログ解析部２３で解析された結果を使用して高速化用プロファイル２０４を作成する第１の高速化用プロファイル作成部２４とを備える。
ここにおいて、いずれかのクライアント３は、グループを代表する代表クライアント３Ｐ（クライアントを代表して最初にプログラムの実行を試みるクライアント、例えば教室では教員用端末）として良いが、代表クライアント３Ｐとしてグループ（例えば教室）内のどのクライアントを選んでも良い。本態様のように構成すると、サーバ側で、プログラム実行時の通信情報ログを解析することにより、プログラムの実行時に必要なファイルと、当該ファイルが時系列的に必要になる順序とがわかるように記録された高速化用プロファイルを作成できる。
【００１５】
また、本発明の第５の態様に係る多台数同一環境配信システム１は、第２の態様又は第５の態様において、例えば図２に示すように、サーバ２は、いずれかのクライアント３がサーバ２にアップロードした又は第１の高速化用プロファイル作成部３４で作成された高速化用プロファイル２０４を各クライアント３に配布する第１の送信部２６２を備える。
このように構成すると、全てのクライアントで、同じ高速化用プロファイルを使用して高速化用アーカイブを作成できる。
【００１６】
また、本発明の第６の態様に係る多台数同一環境配信システム１は、第２の態様又は第５の態様において、例えば図２に示すように、クライアント３は、プログラム２００の実行時に必要なファイルを、第２のファイル記憶部３０に、高速化用プロファイル２０４に記録された順序に従って蓄積することにより高速化用アーカイブ２０５を作成する第２の高速化用アーカイブ作成部３５を備える。
このように構成すると、プログラムの実行時に必要なファイルと、当該ファイルが時系列的に必要になる順序とがわかるように記録された高速化用プロファイルを使用するので、高速化用アーカイブを容易に作成できる。
【００１７】
また、本発明の第７の態様に係る多台数同一環境配信システム１は、第６の態様において、例えば図２に示すように、クライアント３は、サーバ２から配布された高速化用プロファイル２０４及び／又は高速化用プロファイル２０４を用いて第２の高速化用アーカイブ作成部３５で作成された高速化用アーカイブ２０５を備える。
このように構成すると、高速化用プロファイル及び／又は高速化用アーカイブを備えるので、プログラム実行時のブロックメモリのキャッシュメモリへの読み込みを速くでき、プログラム処理を速く実行できる。
【００１８】
また、本発明の第８の態様に係る多台数同一環境配信システム１は、第１ないし第７のいずれかの態様において、例えば図２に示すように、クライアント３は、高速化用アーカイブ２０５を作成後に、プログラム２００を実行するために必要なファイルを読み込む際に、高速化用アーカイブ２０５から優先的にファイルを読み込んで処理を行うプログラム実行部３９を備える。
このように構成すると、高速化用アーカイブから優先的にファイルを読み込むので、プログラム実行時のブロックメモリのキャッシュメモリへの読み込みを速くでき、プログラム処理を速くできる。
【００１９】
また、本発明の第９の態様に係る多台数同一環境配信システム１は、第１ないし第８のいずれかの態様において、高速化用プロファイル２０４及び高速化用アーカイブ２０５は、クライアント３が過去にサーバ２から取得したファイルから構成されている。
このように構成すると、過去に利用したファイルを有効に活用して、プログラム処理を速くできる。
【００２０】
また、本発明の第１０の態様に係る多台数同一環境配信システム１Ｅは、第１ないし第９のいずれかの態様において、例えば図１７に示すように、高速化用プロファイル２０４及び高速化用アーカイブ２０５は、オペレーティングシステム毎に又はアプリケーションプログラム毎に設けられる。
このように構成すると、オペレーティングシステムに又はアプリケーションプログラムに対応して、高速化用プロファイル及び高速化用アーカイブを使用できるので、プログラム処理を速くできる。
【００２１】
また、本発明の第１１の態様に係る多台数同一環境配信システム１Ｆは、第１０の態様において、例えば図２０に示すように、高速化用アーカイブ２０５は、当該オペレーティングシステム又はアプリケーションプログラムに専用の部分２０５（Ａ），２０５（Ａ−）と複数のオペレーティングシステム又はアプリケーションプログラムに共通に使用される共用部分２０５Ｃとで構成されている。
ここにおいて、専用部分２０５（Ａ）と共用部分２０５Ｃを併せて１つの高速化用アーカイブ２０５を構成するが、高速化用アーカイブ２０５はこのように複数の部分２０５（Ａ），２０５Ｃを併せて構成されても良い。このとき、物理的に１つの高速化用アーカイブ２０５に合成しても良く、物理的に２つ以上の高速化用アーカイブ２０５（Ａ），２０５Ｃを設け、プログラム実行時には１つの高速化用アーカイブ２０５とみなせるように連結して使用しても良い。このように構成すると、共通に使用される共用部分２０５Ｃを、有効に利用し、使いまわしすることができる。
【００２２】
上記課題を解決するために、本発明の第１２の態様に係るサーバ２は、例えば図１０に示すように、サーバ２とサーバ２から同一のプログラム２００を取得して同一の利用環境でプログラム２００の処理を実行する複数のクライアント３から構成され、サーバ２と複数のクライアント３が通信ネットワーク４を介して通信可能に接続される多台数同一環境配信システム１Ｂのサーバ２であって、プログラム２００を格納する第１のプログラム格納部２１と、プログラム２００の実行時に必要なファイルを記憶する第１のファイル記憶部２０と、いずれかのクライアント３によるプログラム２００の実行時の通信情報ログを記録する第１の通信情報ログ記録部２２と、第１の通信情報ログ記録部２２に記録された通信情報ログを解析する第１の通信情報ログ解析部２３と、第１の通信情報ログ解析部２３で解析された結果を使用して、プログラム２００の実行時に必要なファイル２０２と当該ファイルが時系列的に必要になる順序とがわかるように記録された高速化用プロファイル２０４を作成する第１の高速化用プロファイル作成部２４とを備える。
本態様に係るサーバは第４の態様に係る多台数同一環境配信システムに対応するサーバである。
【００２３】
また、本発明の第１３の態様に係るサーバ２は、第１２の態様において、例えば図１０に示すように、いずれかのクライアント３がサーバ２にアップロードした又は第１の高速化用プロファイル作成部２４で作成された高速化用プロファイル２０４を各クライアント３に配布する第１の送信部２６２を備える。
本態様に係るサーバは第５の態様に係る多台数同一環境配信システムに対応するサーバである。
【００２４】
上記課題を解決するために、本発明の第１４の態様に係るクライアント３は、例えば図２に示すように、サーバ２とサーバ２から同一のプログラム２００を取得して同一の利用環境でプログラム２００の処理を実行する複数のクライアント３から構成され、サーバ２と複数のクライアント３が通信ネットワーク４を介して通信可能に接続される多台数同一環境配信システム１のクライアント３であって、サーバ２から取得したプログラム２００を格納する第２のプログラム格納部３１と、プログラム２００の実行時に必要なファイルを、サーバ２から取得して記憶する第２のファイル記憶部３０と、プログラム２００の実行時の通信情報ログを記録する第２の通信情報ログ記録部３２と、第２の通信情報ログ記録部３２に記録された記通信情報ログを解析する第２の通信情報ログ解析部３３と、第２の通信情報ログ解析部３２で解析された結果を使用して、プログラム２００の実行時に必要なファイル３０２と当該ファイルが時系列的に必要になる順序とがわかるように記録された高速化用プロファイル２０４を作成する第２の高速化用プロファイル作成部３４とを備える。
本態様に係るクライアントは第２の態様に係る多台数同一環境配信システムに対応するクライアントである。
【００２５】
また、本発明の第１５の態様に係るクライアント３は、第１４の態様において、例えば図２に示すように、プログラム２００の実行時に必要なファイルが時系列的に必要になる順序に記録された高速化用アーカイブ２０５を、第２のファイル記憶部３０に、高速化用プロファイル２０４に記録された順序に従ってファイルを蓄積することにより作成する第２の高速化用アーカイブ作成部３５を備える。
本態様に係るクライアントは第６の態様に係る多台数同一環境配信システムに対応するクライアントである。
【００２６】
上記課題を解決するために、本発明の第１６の態様に係る多台数同一環境配信システムにおける情報処理時間短縮方法は、例えば図４に示すように、サーバ２とサーバ２から同一のプログラム２００を取得して同一の利用環境でプログラム２００の処理を実行する複数のクライアント３から構成され、サーバ２と複数のクライアント３が通信ネットワーク４を介して通信可能に接続される多台数同一環境配信システム１における情報処理時間短縮方法であって、クライアント３が行なう工程として、プログラム２００をサーバ２から取得して第２のプログラム格納部３１に格納するプログラム格納工程（Ｓ２）と、プログラム２００の実行時の通信情報ログを記録する第２の通信情報ログ記録工程（Ｓ２０）と、第２の通信情報ログ記録工程（Ｓ２０）で記録された通信情報ログを解析する第２の通信情報ログ解析工程（Ｓ３０）と、第２の通信情報ログ解析工程（Ｓ３０）で解析された結果を使用して、プログラム２００の実行時に必要なファイル３０２と当該ファイルが時系列的に必要になる順序とがわかるように記録された高速化用プロファイル２０４を作成する第２の高速化用プロファイル作成工程（Ｓ４０）とを備える。
本態様に係る多台数同一環境配信システムにおける情報処理時間短縮方法は第２の態様に係る多台数同一環境配信システムに対応する情報処理時間短縮方法である。
【００２７】
また、本発明の第１７の態様に係る多台数同一環境配信システムにおける情報処理時間短縮方法は、例えば図１１に示すように、サーバ２とサーバ２から同一のプログラム２００を取得して同一の利用環境でプログラム２００の処理を実行する複数のクライアント３から構成され、サーバ２と複数のクライアント３が通信ネットワーク４を介して通信可能に接続される多台数同一環境配信システム１Ｂにおける情報処理時間短縮方法であって、サーバ２が行なう工程として、第１のファイル記憶部２０に、プログラム２００の実行時に必要なファイルを記憶しておく工程（Ｓ１）と、いずれかのクライアント３Ｐによるプログラム２００の実行時の通信情報ログを記録する第１の通信情報ログ記録工程（Ｓ１２０）と、第１の通信情報ログ記録工程（Ｓ１２０）で記録された通信情報ログを解析する第１の通信情報ログ解析工程（Ｓ１３０）と、第１の通信情報ログ解析工程（Ｓ１３０）で解析された結果を使用して、プログラム２００の実行時に必要なファイル２０２と当該ファイルが時系列的に必要になる順序とがわかるように記録された高速化用プロファイル２０４を作成する第１の高速化用プロファイル作成工程（Ｓ１４０）とを備える。
本態様に係る多台数同一環境配信システムにおける情報処理時間短縮方法は第４の態様に係る多台数同一環境配信システムに対応する情報処理時間短縮方法である。
【００２８】
また、本発明の第１８の態様に係る多台数同一環境配信システム１Ｂにおける情報処理時間短縮方法は、第１６の態様又は第１７の態様において、例えば図１１に示すように、サーバ２が行なう工程として、いずれかのクライアント３Ｐによりサーバ２にアップロードされた又は第１の高速化用プロファイル作成工程（Ｓ１４０）で作成された高速化用プロファイル２０４を各クライアント３に配布する高速化用プロファイル配布工程（Ｓ４３）を備える。
本態様に係る多台数同一環境配信システムにおける情報処理時間短縮方法は第５の態様に係る多台数同一環境配信システムに対応する情報処理時間短縮方法である。
【００２９】
また、本発明の第１９の態様に係る多台数同一環境配信システム１における情報処理時間短縮方法は、第１６の態様において、例えば図４に示すように、クライアント３が行なう工程として、プログラム２００の実行時に必要なファイルが時系列的に必要になる順序に記録された高速化用アーカイブ２０５を、第２のファイル記憶部３０に、高速化用プロファイル２０４に記録された順序に従ってファイルを蓄積することにより作成する第２の高速化用アーカイブ作成工程（Ｓ５０）と、高速化用アーカイブを作成工程（Ｓ５０）の後に、プログラム２００を実行するために必要なファイルを読み込む際に、第２の高速化用アーカイブ作成工程（Ｓ５０）で作成した高速化用アーカイブ２０５から優先的にファイルを読み込んで処理を行うプログラム実行工程（Ｓ６０）とを備える。
本態様に係る多台数同一環境配信システムにおける情報処理時間短縮方法は第６の態様に係る多台数同一環境配信システムに対応する情報処理時間短縮方法である。
【００３０】
また、本発明の第２０の態様に係るプログラムは、サーバ２とサーバ２から同一のプログラム２００を取得して同一の利用環境でプログラム２００の処理を実行する複数のクライアント３から構成され、サーバ２と複数のクライアント３が通信ネットワーク４を介して通信可能に接続される多台数同一環境配信システムを制御するためのプログラムであって、第１７の態様又は第１８の態様の多台数同一環境配信システムにおける情報処理時間短縮方法をサーバに実行させるためのコンピュータ読み取り可能なプログラムである。
【００３１】
また、本発明の第２１の態様に係るプログラムは、サーバ２とサーバ２から同一のプログラム２００を取得して同一の利用環境でプログラム２００の処理を実行する複数のクライアント３から構成され、サーバ２と複数のクライアント３が通信ネットワーク４を介して通信可能に接続される多台数同一環境配信システム１を制御するためのプログラムであって、第１６の態様又は第１９の態様の多台数同一環境配信システムにおける情報処理時間短縮方法をクライアントに実行させるためのコンピュータ読み取り可能なプログラムである。
【発明の効果】
【００３２】
本発明によれば、プログラムの実行時にブロックファイルをキャッシュメモリに読み込む時間を短縮できる多台数同一環境配信システム及び多台数同一環境配信システムにおける情報処理時間短縮方法を提供できる。
【図面の簡単な説明】
【００３３】
【図１】多台数同一環境配信システムのネットワーク構成例を示す図である。
【図２】実施例１におけるシステム構成例を示す図である。
【図３】実施例１における高速化の概念を模式的に示す図である。
【図４】実施例１における情報処理時間短縮方法の処理フロー例を示す図である。
【図５】実施例１における高速化用プロファイル作成工程の例を示す図である。
【図６】実施例１における高速化用プロファイル配布工程の例を示す図である。
【図７】実施例１における高速化用アーカイブ作成工程の例を示す図である。
【図８】実施例２におけるシステム構成例を示す図である。
【図９】実施例２における情報処理時間短縮方法の処理フロー例を示す図である。
【図１０】実施例３におけるシステム構成例を示す図である。
【図１１】実施例３における情報処理時間短縮方法の処理フロー例を示す図である。
【図１２】実施例３における高速化用プロファイル作成工程の例を示す図である。
【図１３】実施例４におけるシステム構成例を示す図である。
【図１４】実施例４における高速化用アーカイブ作成工程の例を示す図である。
【図１５】実施例４における高速化用アーカイブ配布工程の例を示す図である。
【図１６】実施例５におけるシステム構成例を示す図である。
【図１７】ＯＳ毎に高速化用アーカイブを有する例を示す図である。
【図１８】ファイルアクセス管理工程の例を示す図である。
【図１９】最適アーカイブ選択工程の例を示す図である。
【図２０】複数の高速用アーカイブで、共用のブロックファイルを使いまわす例を説明するための図である。
【図２１】具体的システム構成例として教育システムの例を示す図である。
【図２２】ネットブート方式を説明するための図である。
【図２３】差分配信方式で配信されたクライアントのディスクイメージの状態を示す図である。
【発明を実施するための形態】
【００３４】
以下、図面を参照して、本発明の実施の形態について説明する。尚、各図において、互いに同一又は相当する部分には同一符号を付し、重複した説明は省略する。
【実施例１】
【００３５】
実施例１では、いずれかのクライアント３で高速化用プロファイル２０４を作成してサーバ２にアップロードし、サーバ２が各クライアント３に配布し、各クライアント３は配布された高速化用プロファイル２０４を使用して高速化用アーカイブ２０５を作成し、さらに作成された高速化用アーカイブ２０５を使用してプログラム２００を実行する例を説明する。
【００３６】
図１に本実施例における多台数同一環境配信システム１のネットワーク構成例を示す。サーバ２と複数のクライアント３が通信ネットワーク４を介して接続されている。サーバ２は通信ネットワーク４を介して各クライアント３をネットブートし、各クライアント３はサーバ２に登録され、サーバ２から同一のプログラムを取得して同一の利用環境でプログラムの処理を実行する。同一環境とは、複数のクライアント３が同一ディスクイメージを配信されることによって同一ＯＳ及び同一ＡＰを利用できる環境にあることをいう。例えば、教育システム、会議システム、コールセンター等のように、多数のクライアントが同じ目的で、同一のプログラムを取得して同一の利用環境でプログラムの処理を実行する。このようなシステムを多台数同一環境配信システムと称することとする。通信ネットワーク４は主として、イントラネットや無線ＬＡＮが使用される。なお、サーバ２を構成するものとして通信ネットワークサーバ群（ファイルを保有・管理・配信するファイルサーバ、コンピュータやユーザのログオン認証を行なうためのアカウント情報（ドメイン情報）を一括管理するドメインコントローラ、自己が管理する通信ネットワークのドメイン名をＩＰアドレスに変換するサーバであるドメインネームサーバ等）と通信ネットワーク４経由でクライアント３を起動するブート用サーバが設置されている。
【００３７】
図２に本実施例におけるシステム構成例を示す。図２の左側にサーバ２の構成を、右側にクライアント３の構成を示す。図２において、サーバ２は、プログラム２００を格納する第１のプログラム格納部２１、ディスクイメージ２０１、ブロックファイル２０２、インデックスファイル２０３、その他のプログラム２００の実行に必要な各種ファイルを記憶する第１のファイル記憶部２０、通信情報ログを記録する第１の通信情報ログ記録部２２、各クライアントとプログラム、ファイル及び制御信号の送受信を行う第１の通信部２６、プログラム２００を実行する上で必要な操作情報、管理情報、処理結果（中間結果を含む）等を表示する第１の表示部２７、サーバ２及びその各部を制御してサーバ２にその機能を実行させる第１の制御部２８とを備える。
【００３８】
第１のファイル記憶部２０に記憶されるファイルには、クライアント３に配信され実行されるプログラム２００及びプログラム２００を実行するためのファイルを収納するディスクイメージ２０１、ディスクイメージ２０１をブロック単位に分割したブロックファイル２０２、ディスクイメージ２０１を構成するブロックファイル情報を記載しているインデックスファイル２０３、ブロックファイル２０２をクライアントが読み込むために最適化した状態で格納した高速化用アーカイブ２０５（本実施例ではなくても良いが、照合用にあっても良い）、高速化用アーカイブ２０５を作成するための情報が記載されている高速化用プロファイル２０４が含まれる。ディスクイメージ２０１、ブロックファイル２０２、インデックスファイル２０３は１組に限られず、複数組存在しても良い。例えば、ＯＳ対応、アプリケーション対応に存在しても良いが、ここでは、代表的に１つのＯＳ用として１組２０１〜２０３を示すこととする。
【００３９】
第１の通信情報ログ記録部２２には、通信情報ログとして、通信先を識別する情報、送受信されたファイルの識別情報、通信の開始・終了時間等が自動的かつ時系列的に記録される。したがって、いずれかのクライアント３（代表クライアントの場合は３Ｐ）でのプログラムの実行時には、サーバ２と当該クライアント３間で送受信されるファイルの送受信情報が時系列的に記録され、通信先の当該クライアント３を特定すれば、プログラム実行ログとして機能する。ここで、サーバ２からクライアント３にプログラム２００を実行するために必要な全てのファイル（ブロックファイル２０２）を供給するように条件設定してプログラム２００を実行し、その時の通信情報ログを記録すれば、プログラム２００を実行するために必要な全てのファイル（ブロックファイル２０２）の識別情報とそのブロックファイル２０２の供給時間が通信情報ログに記録されることになる。第１の通信部２６には、受信を行なう第１の受信部２６１と送信を行なう第１の送信部２６２が含まれる。
【００４０】
各クライアント３は、プログラム２００を格納する第２のプログラム格納部３１、ディスクイメージ３０１、ブロックファイル３０２、インデックスファイル２０３、高速化用アーカイブ２０５、高速化用プロファイル２０４等のプログラム２００の実行に必要な各種ファイルを記憶する第２のファイル記憶部３０、通信情報ログを記録する第２の通信情報ログ記録部３２、第２の通信情報ログ記録部３２に記憶された通信情報ログを解析する第２の通信情報ログ解析部３３、通信情報ログの解析された結果を用いて高速化用プロファイル２０４を作成する第２の高速化用プロファイル作成部３４、高速化用プロファイル２０４を用いて高速化用アーカイブ２０５を作成する第２の高速化用アーカイブ作成部３５、サーバ２とプログラム、ファイル及び制御信号の送受信を行う第２の通信部３６、プログラム２００を実行する上で必要な操作情報、管理情報、処理結果（中間結果を含む）等を表示する第２の表示部３７、クライアント３及びその各部を制御してクライアント３にその機能を実行させる第２の制御部３８とを備える。第２の通信部３６には、受信を行なう第２の受信部３６１と送信を行なう第２の送信部３６２が含まれる。
【００４１】
第２のファイル記憶部３０に記憶されるファイルには、サーバ２から配信され実行されるプログラム２００及びプログラム２００を実行するためのファイルを収納するディスクイメージ３０１、ディスクイメージ３０１をブロック単位に分割したブロックファイル３０２、ディスクイメージ３０１を構成するブロックファイル情報を記載しているインデックスファイル２０３、ブロックファイル３０２をクライアントが読み込むために最適化した状態で格納した高速化用アーカイブ２０５、高速化用アーカイブ２０５を作成するための情報が記載されている高速化用プロファイル２０４が含まれる。
【００４２】
ディスクイメージ３０１はディスクイメージ２０１の全部又は一部が配信されたもの、ブロックファイル３０２はブロックファイル２０２の全部又は一部が配信されたものであるが、目的とするプログラム２００を実行するために必要なものはプログラム２００の実行前にサーバ２から取得しておく必要がある。インデックスファイル２０３はサーバ２から配信されたものである。また、ディスクイメージ３０１、ブロックファイル３０２、インデックスファイル２０３、高速化用プロファイル２０４及び高速化用アーカイブ２０５は１組に限られず、複数組存在しても良い。例えば、ＯＳ対応、ＡＰ対応に存在しても良いが、ここでは、代表的に１つのＯＳ用として１組３０１，３０２，２０３〜２０５を示すこととする。ディスクイメージ３０１はブロック化され、サーバ２からクライアント３にブロックファイル３０２として受信される。ディスクイメージ３０１に格納されるプログラム２００もブロック化されて受信される。インデックスファイル２０３、高速化用プロファイル２０４、高速化用アーカイブ２０５は分割されずに利用される。また、プログラム２００にはメインルーチンの他に諸階層のサブルーチンが含まれ、使用時にはサブルーチンを取捨選択可能であるが、受信されるブロックファイル３０２はこのようにサブルーチンが取捨選択されたものであっても良い。つまり、実行に必要なプログラムはサブルーチンが取捨選択されたものであっても良い。
【００４３】
第２の通信情報ログ記録部３２には、通信情報ログとして、第１の通信情報ログ記録部２２で記録されたと同様の通信情報ログが自動的かつ時系列的に記録される。サーバ２からクライアント３にプログラム２００を実行するために必要な全てのブロックファイル２０２を供給するように条件設定してプログラム２００を実行し、その時の通信情報ログを記録すれば、プログラム２００を実行するために必要な全てのブロックファイル２０２の識別情報とそのブロックファイル２０２の供給時間が通信情報ログに記録されることになる。使用するプログラムによっては外部（例えばインターネット）からファイルを得る場合もあるが、かかるファイルの識別情報と供給時間も通信情報ログにとして第２の通信情報ログ記録部２２に記録される。なお、当該クライアント３はプログラム２００の実行中は殆どサーバ２と交信しているので、自明であるが通信情報ログから他のクライアントに係る情報を除去することを要しない。
【００４４】
第２の通信情報ログ解析部３３では、第２の通信情報ログ記録部３２に記録された通信情報ログを解析する。これにより、上記条件のもとで記録された通信情報ログを解析すれば、プログラム２００を実行するために必要な全てのブロックファイル３０２の識別情報とそのブロックファイル３０２の供給順序を検出できる。
第２の高速化用プロファイル作成部３４では、第２の通信情報ログ解析部３３で解析された結果を用いて、プログラム２００の実行時に必要なブロックファイル３０２を、必要となる順序と共に記載した高速化用プロファイル２０４を作成する。この場合、上記のプログラム２００の実行により必要なブロックファイル３０２は全て第２のファイル記憶部３０に記憶される。
また、第２の通信情報ログ解析部３３が行う解析は、主として、通信情報ログからブロックファイル３０２の識別情報（例えばブロック番号と受信時刻）を抽出し、時系列順序に並べることをいう。ブロック番号以外にブロックファイル３０２を識別する情報（例えばファイル名称、ハッシュ値等）があればそれを用いても良い。解析された結果とは例えば抽出されたブロックファイル３０２のブロック番号と受信時刻等をいう。
【００４５】
高速化用アーカイブファイル作成部３５では、いずれかのクライアント３（代表クライアントの場合は３Ｐ）で作成され、サーバ２により配布された高速化用プロファイル２０４を用いて、プログラム２００の実行時に必要なブロックファイル３０２を、高速化用プロファイル２０４に記載された順序に従って、第２のファイル記録部３２に蓄積して、高速化用アーカイブ２０５を作成する。この際に、過去に取得したアーカイブファイルを有効に利用しようという観点から、蓄積するブロックファイル３０２をクライアント３が過去にサーバ２から取得したアーカイブファイルに限定しても良い。これにより、ブロックファイル３０２をプログラム２００が必要とする順序に蓄積した状態、すなわち、ブロックファイル３０２をクライアント３が読み込むために最適化した状態に格納した高速化用アーカイブ２０５が作成される。
【００４６】
プログラム実行部３７は、プログラム２００の処理を実行する。プログラム２００の処理に必要なブロックファイル３０２を読み込む際には、インデックスファイル２０３を参照して、高速化用アーカイブ２０５から優先的にブロックファイル３０２を読み込んで、プログラムの処理を実行する。詳しくは、読み込みの優先順位は、例えば（ａ）高速化用アーカイブ２０５（キャッシュメモリ内）、（ｂ）高速化用アーカイブ２０５（ＨＤＤ内）、（ｃ）ブロックファイル３０２（ＨＤＤ内）（ｄ）ブロックファイル２０２（サーバ内）とする。なお、ブロックファイル３０２の読み込みにインデックスファイル２０３に代えて高速化用プロファイル２０４を参照しても良い。高速化用プロファイル２０４はプログラム２００がブロックファイル３０２を必要とする順序がわかるように記載されているので、これを参照すると、ブロックファイル３０２のキャッシュメモリへの読み込み時間を短縮するのに好ましい。
【００４７】
図３に本実施例における高速化の概念を模式的に示す。図３（ａ）に高速化の概念を、図３（ｂ）にクライアント３の第２のファイル記憶部３０内の一部を示す。プログラム２００の実行に必要なブロックファイル３０２を、通信情報ログを取得して分析し、プログラム２００の実行に必要なブロックファイル３０２を必要となる順序に配列した高速化用アーカイブ２０５を自己のディスクイメージ３０１（ＨＤＤ内）の一部として作成する。プログラム２００の実行時に、高速化用アーカイブ２０５に必要なブロックファイル３０２を先読みしておくことにより、ブロックファイル３０２のキャッシュメモリへの読み込み時間を短縮し、プログラム２００の処理を高速化する。
【００４８】
図４に、本実施例における情報処理時間短縮方法の処理フロー例を示す。クライアント３の処理を左側に、サーバ２の処理を右側に示す。クライアント３の処理では、プログラムの格納（Ｓ２）からサーバにアップロード（Ｓ４１）までを代表クライアント３Ｐが行い、高速化用プロファイル受信・記録（Ｓ４４）以後は各クライアント３が行う。代表クライアント３Ｐとはクライアント３を代表して最初にプログラムの実行を試みるクライアントで、例えば教育システムにおいては教員用のクライアントを代表として選んでも良く、学生用のクライアントから１つを選んでも良い。初期状態として、サーバ２のディスクイメージ２０１に多量のブロックファイル２０２が記憶されている（Ｓ１）。また、代表クライアント３Ｐのプログラム格納部３１にプログラム２００を格納しておく（Ｓ２）。代表クライアント３Ｐがプログラム２００を実行し（Ｓ１０）、実行したときの通信情報ログを自己の第２の通信情報ログ記憶部３０に記録する（Ｓ２０）。このとき、代表クライアント３Ｐはプログラム３０１を実行するために必要なブロックファイル３０２を未だ１つも自己のファイル記憶部３０に記憶していないという条件で、すなわち、自己のファイル記憶部３０からのブロックファイル３０２の読み込みを禁止するという条件でプログラムを実行する。そうすると、全ての必要なブロックファイル３０２がサーバ２から代表クライアント３Ｐに送信されるので、サーバ２の第１の通信情報ログ記録部２２及び代表クライアント３Ｐの第２の通信情報ログ記録部３２にプログラム２００を実行するために必要な全てのブロックファイル（２０２又は３０２）の識別情報がそのブロックファイル（２０２又は３０２）が時系列的に必要となる順序に記録される。なお、プログラム２００を実行するために必要な全てのブロックファイル３０２自体も代表クライアント３Ｐの第２のファイル記憶部３０に記録される。なお、代表クライアント３Ｐが実行するプログラムは必ずしもプログラム全体を実行しなくても良い。使用目的に応じて、例えば、講義に必要な部分をカバーするものであれば、講義に不要なサブルーチン部分の実行は省略可能である。これにより、各クライアント３が読み込むべきブロックファイル３０２の容量を抑えることができる。
【００４９】
次に、代表クライアント３Ｐにおいて、第２の通信情報ログ解析部３３にて第２の通信情報ログ記録部３２に記録された通信情報ログを解析する（Ｓ３０）。これにより、プログラム２００を実行するために必要な全てのブロックファイル３０２の識別情報とそのブロックファイル３０２が必要となる順序が解る。次に、第２の高速化用プロファイル作成部３４にて、第２の通信情報ログ解析部３３にて解析された結果を用いて、プログラム２００を実行するのに必要な全てのブロックファイル３０２の識別情報とこれらのブロックファイル３０２が必要となる順序が解るように記載された高速化用プロファイル２０４を作成する（Ｓ４０）。次に、代表クライアント３Ｐは、第２の高速化用プロファイル作成部３４にて作成した高速化用プロファイル２０４を第２の送信部３６２からサーバ２にアップロードする（Ｓ４１）。
【００５０】
サーバ２はアップロードされた高速化用プロファイル２０４を第１の受信部２６１で受信し、第１のファイル記憶部２０に記憶し（Ｓ４２）、第１の送信部２６１から各クライアント３に配布する（Ｓ４３）。各クライアント３は第２の受信部３６１で配布された高速化用プロファイル２０４を受信し、第２のファイル記憶部３０に保存する（Ｓ４４）。なお、代表クライアント３Ｐへの配布は省略できる。
【００５１】
次に、各クライアント３は、第２の高速化用アーカイブ作成部３５にて、サーバ２から配布され、第２のファイル記憶部３０に保存された高速化用プロファイル２０４を使用して、高速化用アーカイブ２０５を作成する（Ｓ５０）。すなわち、高速化用プロファイル２０４を使用して、プログラムの実行時に必要なブロックファイル３０２を収集し、高速化用プロファイル２０４に記載された順序に従って、第２のファイル記憶部３０内に蓄積して、高速化用アーカイブ２０５を作成する。このようにして作成された高速化用アーカイブ２０５には、プログラムの実行時に必要なブロックファイル３０２が、プログラムの実行時に必要な順序に配列されて蓄積されることになる。つまり、クライアント３の第２のファイル記憶部３０には、ブロックファイル３０２をプログラム２００が必要とする順序に蓄積した状態、すなわち、ブロックファイル３０２をクライアント３が読み込むために最適化した状態に格納した高速化用アーカイブ２０５が作成される。したがって、プログラムの実行時に、ブロックファイル３０２を読み込む際には、ブロックファイル３０２が分散して収納されたディスクイメージ３０１にアクセスする代わりに、ブロックファイル３０２がプログラムの実行順に蓄積された高速化用アーカイブ２０５にアクセスすれば、キャッシュメモリへの読み込み時間を大いに短縮できる。また、過去に作成したアーカイブファイルを有効に利用しようという観点から、蓄積するブロックファイル３０２をクライアント３が過去にサーバ２から取得したファイルに限定しても良い。この場合には、プログラムの実行時に必要なブロックファイル３０２で、クライアント３が過去にサーバ２から取得したブロックファイル３０２が、プログラムの実行時に必要な順序に配列されて蓄積されることになるが、同様にキャッシュメモリへの読み込み時間を短縮できる。
【００５２】
図５に高速化用プロファイル作成工程の例を示す。この例は代表クライアント３Ｐで高速化用プロファイル２０４を作成して、サーバ２にアップロードする例である。まず、代表クライアント３Ｐでプログラム２００を起動する（Ｓ１０）。次に、第２の通信情報ログ記憶部３２にて、プログラム２００を実行している時の通信情報ログを取得する（Ｓ２０）。プログラム２００の実行に必要なブロックファイル３０２が自己のファイル記憶部３０に無い場合には、代表クライアント３Ｐはサーバ２にブロックファイル２０２の送信を要求し（Ｓ２１）、サーバ２は代表クライアント３Ｐに要求されたブロックファイル２０２を第１の送信部２６２から送信する（Ｓ２２）。ここで、プログラム２００に必要な全てのブロックファイル２０２を要求すると、プログラム２００に必要な全てのブロックファイル２０２がサーバ２の第１の通信ログ記録部２２及び代表クライアント３Ｐの第２の通信情報ログ記録部３２に、全ての必要なブロックファイル３０２の識別情報とそのブロックファイル３０２の供給時刻を含んだ通信情報ログが記録される。
【００５３】
次に、代表クライアント３Ｐは通信情報ログの取得を終了し（Ｓ２３）、第２の通信情報ログ解析部３３にて第２の通信情報ログ記録部３２に記録された通信情報ログを解析し（Ｓ３０）、第２の高速化用プロファイル作成部３４にて、第２の通信情報ログ解析部３３で解析された結果を用いて、プログラム２００の実行時に必要な全てのブロックファイル３０２の識別情報とそのブロックファイル３０２の時系列的に必要になる順序とがわかるように記録された高速化用プロファイル２０４を作成する（Ｓ４０）。次に、作成された高速化用プロファイル２０４をサーバ２に第２の送信部３６２からアップロードする（Ｓ４１）。サーバ２はアップロードされた高速化用プロファイル２０４を第１の受信部２６１で受信し、第１のファイル記憶部２０に記録する（Ｓ４２）。
【００５４】
図６に高速化用プロファイル配布工程（Ｓ４３）の例を示す。サーバ２は代表クライアント３Ｐからアップロードされた高速化用プロファイル２０４を各クライアント３に配布する。
まず、各クライアント３は第１の高速化用プロファイル２０４の取得要求をサーバ２に送信する（Ｓ４５）。サーバ２は、ディスクイメージ２０１毎に（すなわち、ＯＳ又はＡＰ毎に）高速化用プロファィル２０４を管理しているので、クライアント３から要求された高速化用プロファィル２０４を探索し（Ｓ４６）、探索された高速化用プロファイル２０４を第１の送信部２６２からクライアント３に送信する（Ｓ４７）。これにより、各クライアント３に高速化用プロファイル２０４が配布される。クライアント３は第２の受信部３６１で配布された高速化用プロファイル２０４を受信し、第２のファイル記憶部３０に記録する（Ｓ４４）。なお、高速化用プロファイル配布工程（Ｓ４３）はＳ４５〜Ｓ４７を含み、一部（Ｓ４５）にクライアント３の工程を含むが、図４では便宜的にサーバ２の工程として表記する。
【００５５】
図７に高速化用アーカイブ作成工程の例を示す。各クライアント３はサーバ２から配布された高速化用プロファイル２０４を用いて高速化用アーカイブ２０５を作成する。
クライアント３は、まず、サーバ２から配布され、自己の第２のファイル記憶部３０に保存された高速化用プロファイル２０４を用いて、必要なブロックファイル３０２を集める（Ｓ５１）。例えば該当するブロックファイル３０２が自己の第２のファイル記憶部３０に存在するか否かを調べ、プログラム２００の実行に必要なブロックファイル３０２が無い場合には、サーバ２に不足のブロックファイル２０２を要求し（Ｓ５２）、サーバ２は要求されたブロックファイル２０２を送信する（Ｓ５３）。プログラム２００の実行に必要なブロックファイル３０２が有る場合には、第２のファイル記憶部３０に高速化用アーカイブ２０５を作成する領域を確保し、その領域にコピーして蓄積する。また、サーバ２から送信されたブロックファイル２０２も同様にその領域に記憶して蓄積する。集めたブロックファイル(２０２及び３０２）をその領域にコピー又は記憶して蓄積するに際して、高速化用プロファィル２０４に記録された順序で、すなわち、プログラムの実行に必要になる順序で蓄積し、第２の高速化用アーカイブ２０５を作成する（Ｓ５４）。次に蓄積が完了した高速化用アーカイブ２０５を保存する（Ｓ５５）。これにより、各クライアント３の第２のファイル記憶部３０に高速化用アーカイブ２０５が保存される。
プログラム２００の実行時に、ディスクイメージ３０１（ＨＤＤ内）から高速化用アーカイブ２０５（主としてキャッシュメモリ内）に必要なブロックファイル３０２を先読みしておくことにより、ブロックファイル３０２のキャッシュメモリへの読み込み時間を短縮し、プログラム２００の処理を高速化できる。
【００５６】
以上により、本実施例によれば、プログラムの実行時にブロックファイルをキャッシュメモリに読み込む時間を短縮できる多台数同一環境配信システム及び多台数同一環境配信システムにおける情報処理時間短縮方法を提供できる。
【実施例２】
【００５７】
実施例２では、クライアント３がプログラム実行したときの通信情報ログを解析して高速化用プロファイル２０４を作成し、作成された高速化用プロファイル２０４を使用して高速化用アーカイブ２０５を作成し、作成された高速化用アーカイブ２０５を使用してプログラム２００を実行する例を説明する。この場合、代表クライアント３Ｐが高速化用プロファイル２０４と高速化用アーカイブ２０５を一貫して作成し、代表クライアント３Ｐで作成された高速化用アーカイブ２０５を、サーバ２を介して各クライアント３に配布する場合と、各クライアント３がそれぞれ、高速化用プロファイル２０４と高速化用アーカイブ２０５を一貫して作成し、自ら使用する場合とがあるが、前者を本実施例として説明する。
【００５８】
図８に実施例２における多台数同一環境配信システム１Ａのシステム構成例を示す。実施例１の構成（図２参照）に比して、第１のファイル記憶部２０に高速化用プロファイル２０４の記録を省略でき、高速化用アーカイブ２０５の記録が追加される。代表クライアント３Ｐは、高速化用プロファイル２０４をサーバ２にアップロードせずに、第２の高速化用アーカイブ作成部３５にて、自己が作成した高速化用プロファイル２０４を使用して高速化用アーカイブ２０５を作成する。そして、作成された高速化用アーカイブ２０５を第２の送信部３６２からサーバ２にアップロードする。サーバ２ではアップロードされた高速化用アーカイブ２０５を第１の受信部２６１で受信し、第１のファイル記憶部２０に高速化用アーカイブ２０５を記録し、第１の送信部２６２から各クライアント３に配布する。
図９に実施例２における情報処理時間短縮方法の処理フロー例を示す。実施例１の処理フロー例（図４参照）に比して、代表クライアント３Ｐで、高速化用プロファイル作成工程（Ｓ４０）の次に、高速化用アーカイブ作成工程（Ｓ５０）、高速化アーカイブ２０５のサーバ２へのアップロード工程（Ｓ５６）を行ない、サーバ２で、高速化用アーカイブの受信・記録工程（Ｓ５７）の後、各クライアント３への高速化用アーカイブの配布工程（Ｓ５８）を行う。なお、代表クライアント３Ｐへの配布は省略できる。各クライアント３は配布された高速化用アーカイブ２０５の受信・記録工程（Ｓ５９）の後に、配布された高速化用アーカイブ２０５を用いてプログラムを実行する（Ｓ６０）。サーバ２は、クライアント３が作成した高速化用プロファイル２０４を受信しなくても良いので、高速化用プロファイル２０４が第１のファイル記録部２０に記録されなくても良い。また、実施例１（図４参照）における、高速化用プロファイル２０４のアップロード工程（Ｓ４１）、高速化用プロファイル配布工程（Ｓ４３）が省略される。
【００５９】
次に、本実施例の変形例として、各クライアント３がそれぞれ、高速化用プロファイル２０４と高速化用アーカイブ２０５を一貫して作成し、自ら使用する場合について説明する。この場合、クライアントの全ての工程は各クライアント３が一貫して行う。実施例２（図８参照）の構成に比してサーバ２での第１のファイル記憶部２０への高速化用アーカイブ２０５の記録を省略できる。高速化用プロファイル作成後に、各クライアント３は第２の高速化用アーカイブ作成部３５にて、自己が作成した高速化用プロファイル２０４を使用して高速化用アーカイブ２０５を作成する。そして、作成された高速化用アーカイブ２０５を用いてプログラムを実行する。処理フローでは、実施例２（図９参照）に比して、代表クライアント３Ｐでの高速化アーカイブ２０５のサーバ２へのアップロード工程（Ｓ５６）、サーバ２での、高速化用アーカイブの受信・記録工程（Ｓ５７）、各クライアント３への高速化用アーカイブの配布工程（Ｓ５８）、各クライアントでの配布された高速化用アーカイブ２０５の受信工程が省略される。これにより、クライアント３毎に高速化用プロファイル２０４を作成しなければならず、また、過去にサーバ２から取得したブロックファイル３０２の差異により、異なる高速化用アーカイブ２０４ができる可能性があるが、他のクライアントやサーバ２に依存せず、自己自身で高速化用アーカイブ２０４を作成できるというメリットがある。
【００６０】
その他のシステム構成及び処理フローは実施例１と同様であり、実施例１と同様に、プログラムの実行時にブロックファイルをキャッシュメモリに読み込む時間を短縮できる多台数同一環境配信システム及び多台数同一環境配信システムにおける情報処理時間短縮方法を提供できる。
【実施例３】
【００６１】
実施例３では、サーバ２でいずれかのクライアント（代表クライアント）３Ｐがプログラム実行したときの通信情報ログを解析し、高速化用プロファイル２０４を作成して各クライアント３に配布し、各クライアント３で配布された高速化用プロファイル２０４を使用して高速化用アーカイブ２０５を作成し、作成された高速化用アーカイブ２０５を使用してプログラム２００を実行する例を説明する。
【００６２】
図１０に実施例３における多台数同一環境配信システム１Ｂのシステム構成例を示す。実施例１の構成（図２参照）に比して、サーバ２に、第１の通信情報ログ記録部２２に記憶された通信情報ログを解析する第１の通信情報ログ解析部２３、通信情報ログの解析された結果を用いて高速化用プロファイル２０４を作成する第１の高速化用プロファイル作成部２４が追加され、クライアント３では、第２の通信情報ログ解析部３２、第２の高速化用プロファイル作成部３３がなくなっている。第１の通信情報ログ解析部２３にて第１の通信情報ログ記録部２２に記録された通信情報ログを解析し、第１の高速化用プロファイル作成部２４にて、第１の通信情報ログ解析部２３で解析した結果を使用して、高速化用プロファイル２０４を作成する。
【００６３】
図１１に実施例３における情報処理時間短縮方法の処理フロー例を示す。実施例１の処理フロー例（図４参照）に比して、通信情報ログの記録工程（Ｓ１２０）、通信情報ログの解析工程（Ｓ１３０）、高速化用プロファイルの作成工程（Ｓ１４０）をサーバ２が行ない、クライアント３が行っていたこれらの工程（Ｓ２０，Ｓ３０，Ｓ４０）と高速化用プロファイルのアップロード工程（Ｓ４１）、サーバ２のアップロード受信工程（Ｓ４２）がなくなっている。サーバ２による高速化用プロファイルの配布工程（Ｓ４３）以後の工程は実施例１と同様である。なお、高速化用プロファイル配布工程（Ｓ４３）はＳ４５〜Ｓ４７を含み、一部（Ｓ４５）にクライアント３の工程を含むが（図６参照）、図１１では便宜的にサーバ２の工程として表記する。
【００６４】
図１２に、実施例３における高速化用プロファイル作成工程の例を示す。まず、代表クライアント３Ｐでプログラム２００を起動する（Ｓ１０）。次に、サーバ２は、第１の通信情報ログ記憶部２２にて、プログラム２００を実行している時の通信情報ログを取得する（Ｓ１２０）。サーバ２からプログラムの実行に必要な全てのブロックファイル２０２がクライアント３に送信される条件（実施例１と同じ条件）で通信情報ログを取得すれば、サーバ２の第１の通信情報ログ記録部２２に、全ての必要なブロックファイル２０２の識別情報とそのブロックファイル２０２の供給時刻が通信情報ログとして記録される。サーバ２はプログラム２００の実行に必要なブロックファイル２０２が足りない時は外部から取得する（Ｓ１２１）。次に、通信情報ログの取得を終了し（Ｓ１２３）、第１の通信情報ログ解析部２３にて第１の通信情報ログ記録部２２に記録された通信情報ログを解析する（Ｓ１３０）。第１の通信情報ログ解析部３３が行う解析は、主として、プログラム２００を実行している代表クライアント３Ｐに係る通信情報ログを抽出し、抽出された通信情報ログからさらにブロックファイル２０２の情報（例えばブロック番号と受信時刻）を抽出し、時系列順序に並べることをいう。また、ブロック番号以外にブロックファイル２０２を識別する情報（例えばファイル名称、ハッシュ値等）があればそれを用いても良い。解析された結果とは例えば抽出されたブロックファイル２０２のブロック番号と受信時刻等をいう。
【００６５】
第１の高速化用プロファイル作成部２４にて、その解析された結果を用いて高速化用プロファイル２０４を作成すると、プログラム２００の実行時に必要な全てのブロックファイル２０２の識別情報とそのブロックファイル２０２の時系列的に必要になる順序とがわかるように記録された高速化用プロファイル２０４を作成することができる（Ｓ１４０）。サーバ２による高速化用プロファイルの配布工程（Ｓ４３）以後の工程は実施例１と同様である。
【００６６】
その他のシステム構成及び処理フローは実施例１と同様であり、実施例１と同様に、プログラムの実行時にブロックファイルをキャッシュメモリに読み込む時間を短縮できる多台数同一環境配信システム及び多台数同一環境配信システムにおける情報処理時間短縮方法を提供できる。
【実施例４】
【００６７】
実施例４では、サーバ２で高速化用プロファイル２０４及び高速化用アーカイブ２０５を作成して、高速化用アーカイブ２０５を各クライアント３に配布し、各クライアント３で配布された高速化用アーカイブ２０５を使用してプログラム２００を実行する例を説明する。
【００６８】
図１３に実施例４における多台数同一環境配信システム１Ｃのシステム構成例を示す。
実施例３の構成（図１０参照）に比して、サーバ２に、第１の高速化用アーカイブ作成部２５が追加され、クライアント３では、高速化用アーカイブ作成部３５がなくなっている。また、実施例３の処理フロー例（図１１参照）に比して、高速化用アーカイブ作成工程（Ｓ１５０、図１４参照）をクライアントに代わりサーバ２が行い、また、サーバ２は作成された高速化用アーカイブ２０５を各クライアント３に配布する。
【００６９】
図１４に、高速化用アーカイブ作成工程（Ｓ１５０）の例を示す。サーバ２は、自己の第１のファイル記憶部２０に保存された高速化用プロファイル２０４を用いて、必要なブロックファイル２０２を集める（Ｓ１５１）。サーバ２はプログラム２００の実行に必要な全てのブロックファイル２０２を有している。第１のファイル記憶部２０に高速化用アーカイブ２０５を作成する領域を確保し、集めたブロックファイル２０２をその領域にコピーする。集めたブロックファイル２０２をその領域にコピーするに際して、高速化用プロファイル２０４に記載された順序で、すなわち、プログラム２００の実行に必要になる順序で蓄積し、高速化用アーカイブ２０５を作成する（Ｓ１５４）。次に作成された高速化用アーカイブ２０５を第１のファイル記憶部２０に保存する（Ｓ１５５）。次に、第１の送信部２６２から各クライアント３に高速化用アーカイブ２０５を配布する（Ｓ１６０）。各クライアント３は配布された高速化用アーカイブ２０５を第２の受信部３６１で受信し、第２のファイル記憶部３０に記録する（Ｓ１６６）。
【００７０】
図１５に高速化用アーカイブ配布工程（Ｓ１６０）の例を示す。サーバ２は高速化用アーカイブ作成工程（Ｓ１５０）で作成された高速化用アーカイブ２０５を各クライアント３に配布する。
まず、各クライアント３は第１の高速化用アーカイブ２０５の取得要求をサーバ２に送信する（Ｓ１６３）。サーバ２は、ディスクイメージ２０１毎に（すなわち、ＯＳ又はＡＰ毎に）高速化用アーカイブ２０５を管理しているので、クライアント３から要求された高速化用アーカイブ２０５を探索し（Ｓ１６４）、探索された高速化用アーカイブ２０５を第１の送信部２６２からクライアント３に送信する。これにより、各クライアント３に高速化用アーカイブ２０５が配布される（Ｓ１６５）。各クライアント３は配布された高速化用アーカイブ２０５を第２の受信部３６１で受信し、第２のファイル記憶部３０に記録する（Ｓ１６６）。なお、代表クライアント３Ｐへの配布は省略できる。また、高速化用アーカイブ配布工程（Ｓ１６０）はＳ１６３〜Ｓ１６５を含み、一部（Ｓ１６３）にクライアント３の工程を含むが、図１４では便宜的にサーバ２の工程として表記する。
【００７１】
その他のシステム構成及び処理フローは実施例３と同様であり、実施例３と同様に、プログラムの実行時にブロックファイルをキャッシュメモリに読み込む時間を短縮できる多台数同一環境配信システム及び多台数同一環境配信システムにおける情報処理時間短縮方法を提供できる。
【実施例５】
【００７２】
実施例５では、実施例１〜４の全ての機能を備える例を説明する。すなわち、サーバ２とクライアント３のいずれでも高速化用プロファイル２０４の作成と高速化用アーカイブ２０５の作成が可能な例である。
【００７３】
図１６に実施例５における多台数同一環境配信システム１Ｄのシステム構成例を示す。サーバ２に、第１の通信情報ログ解析部２３、第１の高速化用プロファイル作成部２４、第１の高速化用アーカイブ作成部２５を備え、クライアント３に、第２の通信情報ログ解析部３３、第２の高速化用プロファイル作成部３４、第２の高速化用アーカイブ作成部３５を備える。これにより、実施例１〜実施例４の処理工程のいずれかを選択することができる。状況に応じていずれかを選択することができるというメリットを有する。
本実施例においても、実施例１〜実施例４と同様に、プログラムの実行時にブロックファイルをキャッシュメモリに読み込む時間を短縮できる多台数同一環境配信システム及び多台数同一環境配信システムにおける情報処理時間短縮方法を提供できる。
【実施例６】
【００７４】
以上の実施例では、高速化用プロファイル２０４及び高速化用アーカイブ２０５がそれぞれ１つの例を説明したが、実施例６では、高速化用プロファイル２０４及び高速化用アーカイブ２０５をＯＳ毎又はＡＰ毎に有する例を説明する。
【００７５】
図１７にＯＳ毎に高速化用アーカイブ２０５を有する多台数同一環境配信システム１Ｅの例を示す。例えば、ＯＳとして、Ｗｉｎｄｏｗｓ（登録商標）とＬｉｎｕｘ（登録商標）を有するシステムでは、ディスクイメージ３０１内にＷｉｎｄｏｗｓ（登録商標）起動用の高速化用アーカイブ２０５ＡとＬｉｎｕｘ（登録商標）起動用の高速化用アーカイブ２０５Ｂとを有する。ＯＳ毎に専用の高速化用アーカイブを有するので、各ＯＳに対応してプログラムの実行を早く行うことができる。システムの構成、プログラムを実行するための処理については、高速化用アーカイブ２０５の選択（２０５Ａ又は２０５Ｂを選択する）に関する構成、処理を除いて実施例１〜実施例５で説明したことを適用できる。ＡＰ毎に高速化用アーカイブ２０５を有する場合、クライアント３はＡＰに対応して高速化用アーカイブ２０５を選択する必要がある。
【００７６】
図１８にファイルアクセス管理工程の例を示す。クライアント３は、まず、プログラムを起動する（Ｓ７１）。次に、プログラム２００に対して最適な高速化用アーカイブ２０５を選択する（Ｓ８０）。次に、選択した高速化用アーカイブ２０５をキャッシュメモリに読み込む（Ｓ７２）。キャッシュメモリへの読み込みに際して、高速化用アーカイブ２０５から優先的にブロックファイル３０２を読み込んで、プログラムの処理を実行する。詳しくは、読み込みの優先順位は、例えば（ａ）高速化用アーカイブ２０５（キャッシュメモリ内）、（ｂ）高速化用アーカイブ２０５（ＨＤＤ内）、（ｃ）ブロックファイル３０２（ＨＤＤ内）（ｄ）ブロックファイル２０２（サーバ内）とする。
【００７７】
図１９に最適アーカイブ選択工程（Ｓ８０）の例を示す。図１９（ａ）に処理フロー例を、図１９（ｂ）に一致率について説明するための図を示す。図１９（ａ）より、クライアント３は、プログラム２００に対応する高速化用アーカイブ２０５を検索する（Ｓ８１）。高速化用アーカイブ２０５の検索は例えばファイル名で行う。これで、選択する高速化用アーカイブ２０５の候補数を絞ることができる。次に、候補とされた高速化用アーカイブ２０５について、候補数分のループ（Ｓ８２）において、例えばインデックスファイル２０３との一致率を求め（Ｓ８３）、ループを終了した後に（Ｓ８４）、各高速化用アーカイブ２０５について、一致率を比較して最も一致率の高いものを最適な高速化用アーカイブ２０５ｂｅｓｔとして選択する（Ｓ８５）。なお、一致率を求める際にインデックスファイル２０３に代えて高速化用プロファイル２０４を参照しても良い。なお、最適な高速化用アーカイブ２０５ｂｅｓｔとして選択する工程（Ｓ８５）をループ処理後に行なう方法に代えて、インデックスファイル２０３との一致率を求める工程（Ｓ８３）に続けて、それまでに選択された高速化用アーカイブと新たな高速化用アーカイブとを比較し、一致率の高い方を選択する工程をループ内に挿入し、最適な高速化用アーカイブ２０５ｂｅｓｔとして選択する工程（Ｓ８５）を除いても良い。この方法でも結果として最適な高速化用アーカイブ２０５ｂｅｓｔを得ることができる。
【００７８】
図１９（ｂ）において、左側にインデックスファイル２０３に記録されたブロックファイル３０２のブロック番号及びハッシュ値を、中央に高速化用アーカイブＡｒｃ１に記録されたブロックファイル３０２のブロック番号及びハッシュ値を、右側に高速化用アーカイブＡｒｃ２に記録されたブロックファイル３０２のブロック番号及びハッシュ値を示す。インデックスファイル２０３と高速化用アーカイブＡｒｃ１では、Ｈａｓｈ２，Ｈａｓｈ３，ＨａｓｈＸがブロック番号とハッシュ値で一致している。結果として一致ペア数は３となる。インデックスファイル２０３と高速化用アーカイブＡｒｃ２では、Ｈａｓｈ３，ＨａｓｈＺがブロック番号とハッシュ値で一致している。結果として一致ペア数は２となる。したがって、高速化用アーカイブＡｒｃ１が高速化用アーカイブＡｒｃ２より一致率（ここでは一致ペア率）が高いといえる。このような一致率の比較を全ての候補とされた高速化用アーカイブ２０５について行う。
【００７９】
なお、高速化用アーカイブを選択するに当たり、概略的には配列順序を一致ペアより優先度を高くするのが望ましいが、クライアント３のメモリ容量が一般に大きいこと、プログラム２００の処理実行時にブロックファイル３０２が順番に読まれていることを考慮して、本実施例では一致ペア数を効率よく読み出せるように構成した。クライアント３のメモリ容量が小さいときには、順序が多く一致するものを読み出すアルゴリズムが望ましい。また、一般に多台数同一環境配信システムでは、ディスクイメージ３０１をブロック単位に分割して管理する際に、例えばブロックファイル３０２の識別情報としてハッシュ値を用いることができる。ハッシュ関数としては例えばＳＨＡ−１を使用できる。
【００８０】
本実施例においても、高速化用アーカイブ２０５の選択に関する構成、処理を除けば、実施例１〜実施例５と同様であり、実施例１〜実施例５と同様に、プログラムの実行時にブロックファイルをキャッシュメモリに読み込む時間を短縮できる多台数同一環境配信システム及び多台数同一環境配信システムにおける情報処理時間短縮方法を提供できる。
【実施例７】
【００８１】
実施例６では、複数の高速化用アーカイブ２０５が独立して存在する例を説明したが、実施例７では、高速化用アーカイブ２０５が共有部分を有する例を説明する。
【００８２】
図２０に複数の高速化用アーカイブ２０５で、共用のブロックファイルを使いまわす多台数同一環境配信システム１Ｆの例を説明する。左側のＬｉｎｕｘ（Ａ）のディスクイメージと右側のＬｉｎｕｘ（Ａ−）のディスクイメージでは、Ｌｉｎｕｘ（Ａ）の右側のブロックファイル群とＬｉｎｕｘ（Ａ−）の中央のブロックファイル群が共通している。この共通部分はプログラムの主要部分（メインルーチン）と解される。共通に使用されるブロックファイル群を１つの高速化用共用アーカイブ２０５Ｃとして作成すれば、Ｌｉｎｕｘ（Ａ）の実行時には、Ｌｉｎｕｘ（Ａ）用の高速化用アーカイブ２０５（Ａ）（高速化用共用アーカイブとの共通ファイルを除く）と高速化用共用アーカイブ２０５Ｃを使用し、Ｌｉｎｕｘ（Ａ−）の実行時には、Ｌｉｎｕｘ（Ａ−）用の高速化用アーカイブ２０５（Ａ−）（高速化用共用アーカイブとの共通ファイルを除く）と高速化用共用アーカイブ２０５Ｃを使用することができる。
【００８３】
ここにおいて、専用部分と共用部分を併せて１つの高速化用アーカイブ２０５を構成するが、このように複数の部分を併せて構成されても良い。このとき、物理的に１つの高速化用アーカイブ２０５に合成しても良く、物理的に２つ以上の高速化用アーカイブ２０５（Ａ），２０５Ｃを設け、プログラム実行時には１つの高速化用アーカイブ２０５とみなせるように連結して使用しても良い。このように構成すると、共通に使用される共用部分を、有効に利用し、使いまわしすることができる。
【００８４】
本実施例においても、高速化用共用アーカイブの使用を除けば、実施例１〜実施例５と同様であり、実施例１〜実施例５と同様に、プログラムの実行時にブロックファイルをキャッシュメモリに読み込む時間を短縮できる多台数同一環境配信システム及び多台数同一環境配信システムにおける情報処理時間短縮方法を提供できる。
【実施例８】
【００８５】
実施例８では、具体的な多台数同一環境配信システムとしての教育システム１Ｇの例を示す。
図２１に教育システム１Ｇの構成例を示す。Ａキャンパスはサーバ室であり、サーバ２を構成するものとして通信ネットワークサーバ群（ファイルサーバ、ドメインコントローラ、ドメインネームサーバ等）とブート用サーバが設置されている。ブート用サーバはクライアント数に対応して複数設置されている。ＢキャンパスにはＡ教室とＢ教室があり、ＣキャンパスにはＡ教室〜Ｄ教室があり、各教室にはクライアント３として、１台の教員用端末とＸ台の学生用端末が設置されている。サーバ２と複数クライアント３とは通信ネットワーク４を構成しており、１教室内に配置された１台の教員用端末とＸ台の学生用端末とは、上記サーバ２から同一のプログラム２００を取得して、同一の利用環境でプログラム２００の処理を実行する。ネットブート方式と差分配信方式を採用しており、クライアント３の起動時に、ブロックファイル３０２をキャッシュメモリに読み込むが、読み込むときに高速化用アーカイブ２０５を使用し、プログラムの処理時間を短縮することができる。なお、この教育システム１Ｇには、ＯＳとして、例えばＷｉｎｄｏｗｓ（登録商標）とＬｉｎｕｘ（登録商標）を採用し、この場合にＯＳに対応して、２つの高速化用アーカイブ２０５を作成できる。
ここでは、本発明を教育システムに適用する例を説明したが、会議システム、コールセンター、その他の多台数同一環境配信システムにも適用可能である。
【００８６】
以上、本発明の実施の形態について説明したが、実施の形態は以上の例に限られるものではなく、本発明の趣旨を逸脱しない範囲で、種々の変更を加え得ることは明白である。
【００８７】
例えば、以上の実施例では通信情報ログ記録、通信情報ログ解析及び高速化用プロファイル作成を一貫してサーバ側で行うか一貫してクライアント側で行なうように説明したが、一方から他方への送受信を介して両側で分担して行なっても良い。また、プログラム実行時のブロックファイルの読み込みは、インデックスファイルを使用しても良く、高速化用プロファイルを使用しても良い。また、最初にプログラムを実行する代表クライアントとして、教員用端末を使用する例を説明したが、学生用端末、管理者用端末、オペレータ用端末を用いても良い。また、以上の実施例では、高速化用アーカイブ作成時に、ブロックファイルが不足する時にサーバにブロックファイルを要求する例を説明したが、大部分のブロックファイルがクライアントにある場合には、サーバに要求する工程を省略し、クライアントにあるブロックファイルのみを用いて作成しても良い。その他、作成する高速化用プロファイルや高速化用アーカイブの数、クライアントの端末数、ブロックファイルのサイズ等は適切な値に決められる。
【産業上の利用可能性】
【００８８】
本発明は、多台数同一環境配信システムにおいて、情報処理時間を短縮するために利用される。
【符号の説明】
【００８９】
１，１Ａ〜１Ｇ  多台数同一環境配信システム
２，２Ｚ  サーバ
３，３Ｚ  クライアント
３Ｐ  代表クライアント
４    通信ネットワーク
２０  第１のファイル記憶部
２１  第１のプログラム格納部
２２  第１の通信情報ログ記録部
２３  第１の通信情報ログ解析部
２４  第１の高速化用プロファイル作成部
２５  第１の高速化用アーカイブ作成部
２６  第１の通信部
２７  第１の表示部
２８  第１の制御部
３０  第２のファイル記憶部
３１  第２のプログラム格納部
３２  第２の通信情報ログ記録部
３３  第２の通信情報ログ解析部
３４  第２の高速化用プロファイル作成部
３５  第２の高速化用アーカイブ作成部
３６  第２の通信部
３７  第２の表示部
３８  第２の制御部
３９  プログラム実行部
２００  プログラム
２０１  ディスクイメージ
２０２  ブロックファイル
２０３  インデックスファイル
２０４  高速化用プロファイル
２０５，２０５Ａ〜２０５Ｃ  高速化用アーカイブ
２６１  第１の受信部
２６２  第１の送信部
３０１  ディスクイメージ
３０２，３０２−１〜３０２−Ｚ  ブロックファイル
３６１  第２の受信部
３６２  第２の送信部
【図１】
2013242663.tif 000003
【図２】
2013242663.tif 000004
【図３】
2013242663.tif 000005
【図４】
2013242663.tif 000006
【図５】
2013242663.tif 000007
【図６】
2013242663.tif 000008
【図７】
2013242663.tif 000009
【図８】
2013242663.tif 000010
【図９】
2013242663.tif 000011
【図１０】
2013242663.tif 000012
【図１１】
2013242663.tif 000013
【図１２】
2013242663.tif 000014
【図１３】
2013242663.tif 000015
【図１４】
2013242663.tif 000016
【図１５】
2013242663.tif 000017
【図１６】
2013242663.tif 000018
【図１７】
2013242663.tif 000019
【図１８】
2013242663.tif 000020
【図１９】
2013242663.tif 000021
【図２０】
2013242663.tif 000022
【図２１】
2013242663.tif 000023
【図２２】
2013242663.tif 000024
【図２３】
2013242663.tif 000025