(57)【特許請求の範囲】
【請求項１】
ネットブート用起動ＯＳイメージを備えるネットブートサーバと、
前記ネットブート用起動ＯＳイメージから動作に必要な情報を取得して動作する親クライアント端末及び１以上の子クライアント端末を備え、
前記親クライアント端末が、
ディスク読み込み処理において、前記ネットブート用起動ＯＳイメージから取得した前記動作に必要な情報を格納するメモリキャッシュを含み、
前記メモリキャッシュに前記動作に必要な情報が格納された場合に、前記動作に必要な情報を送信する送信手段を備え、
前記子クライアント端末が、
前記親クライアント端末から送信された前記動作に必要な情報を受信する手段と、受信した前記動作に必要な情報を格納する手段とを備える
ことを特徴とするネットブートシステム。
【請求項２】
前記送信手段が、
マルチキャストを利用して前記動作に必要な情報の送信を行うことを特徴とする請求項１に記載のネットブートシステム。
【請求項３】
前記送信手段が、
ブロードキャストを利用して前記動作に必要な情報の送信を行うことを特徴とする請求項１に記載のネットブートシステム。
【請求項４】
前記親クライアント端末が、
ディスク読み込み処理において、読み込み対象のブロックについて、自端末のＯＳによって書き込まれた履歴が存在する場合に、前記ネットブート用起動ＯＳイメージから対応する情報を取得する情報取得手段を備える
ことを特徴とする請求項１から請求項３の何れか１項に記載のネットブートシステム。
【請求項５】
前記情報取得手段は、
読み込み対象のブロックについて、自端末のＯＳによって書き込まれた履歴が存在しない場合、当該読み込み対象のブロックのデータが存在しなければ、前記ネットブート用起動ＯＳイメージから対応する情報を取得することを特徴とする請求項４に記載のネットブートシステム。
【請求項６】
ネットブートサーバのネットブート用起動ＯＳイメージから動作に必要な情報を取得して動作するクライアント端末であって、
親端末として指定されたクライアント端末が、ディスク読み込み処理において、前記ネットブート用起動ＯＳイメージから取得した前記動作に必要な情報を格納するメモリキャッシュを含み、
前記メモリキャッシュに前記動作に必要な情報が格納された場合に、前記動作に必要な情報を送信する送信手段を備え、
子端末として指定されたクライアント端末が、
送信された前記動作に必要な情報を受信する手段と、受信した前記動作に必要な情報を格納する手段とを備える
ことを特徴とするクライアント端末。
【請求項７】
ネットブート用起動ＯＳイメージを備えるネットブートサーバと、前記ネットブート用起動ＯＳイメージから動作に必要な情報を取得して動作する１以上のクライアント端末を備えるネットブートシステムの負荷低減方法であって、
親端末として指定されたクライアント端末が、ディスク読み込み処理において、前記ネットブート用起動ＯＳイメージから取得した前記動作に必要な情報をメモリキャッシュに格納し、
前記メモリキャッシュに前記動作に必要な情報が格納された場合に、前記動作に必要な情報を送信し、
子端末として指定されたクライアント端末が、送信された前記動作に必要な情報を受信し、受信した前記動作に必要な情報を格納する
ことを特徴とするネットブートシステムの負荷低減方法。
【請求項８】
ネットブートサーバのネットブート用起動ＯＳイメージから動作に必要な情報を取得して動作するクライアント端末上で動作する負荷低減プログラムであって、
親端末として指定されたクライアント端末に、ディスク読み込み処理において、前記ネットブート用起動ＯＳイメージから取得した前記動作に必要な情報をメモリキャッシュに格納する処理を実行させ、
前記メモリキャッシュに前記動作に必要な情報が格納された場合に、前記動作に必要な情報を送信する処理を実行させ、
子端末として指定されたクライアント端末に、送信された前記動作に必要な情報を受信し、受信した前記動作に必要な情報を格納する処理を実行させる
ことを特徴とする負荷低減プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットブート技術に関し、特に、ネットブートにおけるディスク読み込み内容の共有キャッシュ機構に関する。
【背景技術】
【０００２】
ＯＳの起動方法の１つとして、ネットワークを介してＯＳ（ｏｐｅｒａｔｉｎｇ  ｓｙｓｔｅｍ）イメージを取得してコンピュータを起動させるネットブートシステムがある。
【０００３】
ネットブートシステムの一例が、例えば特許文献１に開示されている。
【０００４】
特許文献１では、ブロードキャストを利用してブートプログラムを配信することで、ブートプログラム配信に伴う通信量の増加を低減し、ネットワークの輻輳を低減させることを可能としている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０００−２５０８７５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ネットブートのシステムにおいては、通常クライアント端末内で完結するディスクＩ／Ｏが、ネットワークを通じ、多数のクライアントからサーバへ集中する。そのため、サーバやネットワークにかかる負荷が増大する。
【０００７】
例えば、ネットブートシステムの利用において、多くは学校の教育用端末にて利用がされているが、学校の教育用端末での利用時、教師の説明後に各生徒が一斉に指示された作業を実施する利用方法を想定する。
【０００８】
該利用方法において、各端末が同時に同様の処理を行う場合で、かつディスクアクセスを多量に含む処理を行う場合、サーバには同時にディスクアクセスのためのパケットが多量に発生し、サーバのディスク負荷およびサーバまでのネットワーク負荷が大きくなり、各生徒が利用する端末の動作の遅延が発生するという課題があった。
【０００９】
（発明の目的）
本発明の目的は、上述の課題を解決し、ネットブートシステムにおいて、サーバ及びネットワークへの負荷を低減するネットブートシステム、クライアント端末、負荷低減方法、及び負荷低減プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１０】
本発明の第１のネットブートシステムは、ネットブート用起動ＯＳイメージを備えるネットブートサーバと、ネットブート用起動ＯＳイメージから動作に必要な情報を取得して動作する親クライアント端末及び１以上の子クライアント端末を備え、親クライアント端末が、ディスク読み込み処理において、ネットブート用起動ＯＳイメージから取得した動作に必要な情報を送信する送信手段を備え、子クライアント端末が、親クライアント端末から送信された動作に必要な情報を受信する手段と、受信した動作に必要な情報を格納する手段とを備える。
【００１１】
本発明の第１のクライアント端末は、ネットブートサーバのネットブート用起動ＯＳイメージから動作に必要な情報を取得して動作するクライアント端末であって、親端末として指定されたクライアント端末が、ディスク読み込み処理において、ネットブート用起動ＯＳイメージから取得した動作に必要な情報を送信する送信手段を備え、子端末として指定されたクライアント端末が、送信された動作に必要な情報を受信する受段と、受信した動作に必要な情報を格納する手段とを備える。
【００１２】
本発明の第１の負荷低減方法は、ネットブート用起動ＯＳイメージを備えるネットブートサーバと、ネットブート用起動ＯＳイメージから動作に必要な情報を取得して動作する１以上のクライアント端末を備えるネットブートシステムの負荷低減方法であって、親端末として指定されたクライアント端末が、ディスク読み込み処理において、ネットブート用起動ＯＳイメージから取得した動作に必要な情報を送信し、子端末として指定されたクライアント端末が、送信された動作に必要な情報を受信し、受信した動作に必要な情報を格納する。
【００１３】
本発明の第１の負荷低減プログラムは、ネットブートサーバのネットブート用起動ＯＳイメージから動作に必要な情報を取得して動作するクライアント端末上で動作する負荷低減プログラムであって、親端末として指定されたクライアント端末に、ディスク読み込み処理において、ネットブート用起動ＯＳイメージから取得した動作に必要な情報を送信する処理を実行させ、子端末として指定されたクライアント端末に、送信された動作に必要な情報を受信し、受信した動作に必要な情報を格納する処理を実行させる。
【発明の効果】
【００１４】
本発明によれば、ネットブートシステムにおいて、サーバ及びネットワークへの負荷を低減することができる。
【図面の簡単な説明】
【００１５】
【図１】本発明の第１の実施の形態によるネットブートシステムの構成を示すブロック図である。
【図２】第１の実施の形態による親クライアント端末の構成を示すブロック図である。
【図３】第１の実施の形態による子クライアント端末の構成を示すブロック図である。
【図４】第１の実施の形態によるネットブートシステムの親クライアント端末におけるディスク書き込み処理の動作を示すフローチャートである。
【図５】第１の実施の形態によるネットブートシステムの親クライアント端末におけるディスク読み込み処理の動作を示すフローチャートである。
【図６】第１の実施の形態によるネットブートシステムにおいて、親クライアント端末から送信されたデータを子クライアント端末が受け取った場合の動作を示すフローチャートである。
【図７】第１の実施の形態によるネットブートシステムの機能ブロックとしての最小限の構成を示すブロック図である。
【図８】本発明の親クライアント端末のハードウェア構成例を示すブロック図である。
【発明を実施するための形態】
【００１６】
本発明は、以下の特徴を有し、ネットブート機構におけるディスクイメージへの負荷、ネットワークへの負荷を削減する。
【００１７】
ディスクイメージを共有するタイプのネットブート機構において、親端末として指定した１台でのディスクアクセス情報を他の子端末に通知することで、子端末が行うディスクアクセスを抑制し、サーバおよびネットワークへの負荷を小さくする。また、子端末の内部で処理が完結するため、動作の高速化も見込まれる。
【００１８】
ディスクイメージを共有するタイプのネットブート機構を想定。ネットブートする端末の一台を親端末、それ以外の端末を子端末とする。
【００１９】
親端末におけるネットワーク上のディスクイメージの読み込みが発生した場合に、その読み込み情報と読み込み位置をブロードキャスト／マルチキャストパケットを利用し、子端末に通知を行う。
【００２０】
子端末はその内容をメモリ上に格納を行い、子端末におけるディスクイメージ上の同位置への読み込みが発生した場合、ネットワーク上のディスクイメージを読み込みに行かずに、メモリ上のデータを参照する。
【００２１】
本発明の上記及び他の目的、特徴及び利点を明確にすべく、添付した図面を参照しながら、本発明の実施形態を以下に詳述する。なお、上述の本願発明の目的のほか、他の技術的課題、その技術的課題を解決する手段及びその作用効果についても、以下の実施形態による開示によって明らかとなるものである。
【００２２】
なお、すべての図面において、同様な構成要素には同様の符号を付し、適宜説明を省略する。
【００２３】
（第１の実施の形態）
本発明の第１の実施の形態について、図面を参照して詳細に説明する。以下の図において、本発明の本質に関わらない部分の構成については適宜省略してあり、図示されていない。
【００２４】
図１は、本発明の第１の実施の形態によるネットブートシステム１００の構成を示すブロック図である。
【００２５】
図１を参照すると、ネットブートシステム１００は、ネットブートサーバ１０と、親クライアント端末２０と、１つ以上の子クライアント端末３０（３０−１〜３０−ｎ）とから構成される。
【００２６】
図１に示すように、ネットブートシステム１００では、クライアントに親子関係が予め設定されている。
【００２７】
ネットブートサーバ１０は、ネットブート用起動ＯＳイメージ１１を備える。親クライアント端末２０及び子クライアント端末３０は、ネットブート用起動ＯＳイメージ１１を参照し、ネットワークを介して起動を行う。
【００２８】
ここで、親クライアント端末２０の構成を示すブロック図を図２に示す。
【００２９】
親クライアント端末２０は、クライアントＯＳ２８と、書き込み確認用メモリ領域２７と、キャッシュ用ディスクドライバ（ディスクＩ／Ｏフィルタ）２４と、メモリキャッシュ用領域２５と、キャッシュ用ドライバ（ネットワークフィルタ）２６と、ネットブート部２１とを備える。
【００３０】
ネットブート部２１は、ネットブートドライバ（ディスクＩ／Ｏフィルタ）２２と、ネットブートドライバ（ネットワークフィルタ）２３とを備える。
【００３１】
ネットブートドライバ（ネットワークフィルタ）２３は、ネットブートサーバ１０のネットブート用起動ＯＳイメージ１１から必要な情報の読み出しを行う。
【００３２】
また、ネットブートドライバ（ネットワークフィルタ）２３は、ネットブート用起動ＯＳイメージ１１から必要な情報を読み取ると、ネットブートドライバ（ディスクＩ／Ｏフィルタ）２２に仮想的なディスクＩ／Ｏを発生させる指示を行う。
【００３３】
ネットブートドライバ（ディスクＩ／Ｏフィルタ）２２は、ネットブートドライバ（ネットワークフィルタ）２３の指示に従い、仮想的なディスクＩ／Ｏを発生させる。
【００３４】
通常のネットブートシステムの場合、ネットブートドライバ（ディスクＩ／Ｏフィルタ）２２からクライアントＯＳ２８がデータを受け取り、ディスクＩ／Ｏの処理を行うが、本発明においては、クライアントＯＳ２８及びネットブートドライバ（ディスクＩ／Ｏフィルタ）２２の間にキャッシュ用ディスクドライバ（ディスクＩ／Ｏフィルタ）２４を配置する。
【００３５】
書き込み確認用メモリ領域２７は、クライアントＯＳ２８からの書き込みディスクＩ／Ｏ処理があった場合に、書き換えられたディスクのブロック情報を記録し、キャッシュ用ディスクドライバ（ディスクＩ／Ｏフィルタ）２４を介して、ネットブートドライバ（ディスクＩ／Ｏフィルタ）２２に書き込みの処理を渡す。
【００３６】
読み込みディスクＩ／Ｏ処理が発生した場合には、まず、ネットブートドライバ（ディスクＩ／Ｏフィルタ）２２より送られる読み込みデータをキャッシュ用ディスクドライバ（ディスクＩ／Ｏフィルタ）２４が受け取る。
【００３７】
キャッシュ用ディスクドライバ（ディスクＩ／Ｏフィルタ）２４は、受け取ったデータに関して、ブロック領域がクライアントの動作により書き換えられた領域で無いかを、書き込み確認用メモリ領域２７のブロック情報と照合し、書き換えられた領域の場合は、そのままクライアントＯＳ２８にデータを受け渡す。
【００３８】
書き換えられていない領域の場合、キャッシュ用ディスクドライバ（ディスクＩ／Ｏフィルタ）２４は、クライアントＯＳ２８にデータを渡すとともに、ディスクのブロック情報と実際のデータをメモリキャッシュ用領域２５へ格納する。
【００３９】
キャッシュ用ドライバ（ネットワークフィルタ）２６は、メモリキャッシュ用領域２５を参照し、新たに追加されたデータを、マルチキャストあるいはブロードキャストのパケットとしてネットワーク上に配信する。
【００４０】
なお、メモリ領域書き込み確認用メモリ領域２７、及びメモリキャッシュ用領域２５は、必ずしもＲＡＭメモリ上の領域に限るものではなく、ディスク装置などの外部記憶装置として利用することも可能である。
【００４１】
ここで、子クライアント３０の構成を示すブロック図を、図３に示す。
【００４２】
子クライアント３０は、クライアントＯＳ３８と、書き込み確認用メモリ領域３７と、キャッシュ用ディスクドライバ（ディスクＩ／Ｏフィルタ）３４と、メモリキャッシュ用領域３５と、キャッシュ用ドライバ（ネットワークフィルタ）３６と、ネットブート部３１とを備える。
【００４３】
子クライアント３０のキャッシュ用ドライバ（ネットワークフィルタ）３６は、親クライアント端末２０のキャッシュ用ドライバ（ネットワークフィルタ）２６と異なり、データをマルチキャストあるいはブロードキャストのパケットとして配信する機能はない。その他の各部は、親クライアント端末２０の各部と同様の機能であるため、詳細な説明は省略する。
【００４４】
子クライアント端末３０は、親クライアント端末２０からマルチキャストあるいはブロードキャストで配信されたパケットを、ネットブートドライバ（ネットワークフィルタ）３３で受け取り、キャッシュ用ディスクドライバ（ディスクＩ／Ｏフィルタ）３４が、メモリキャッシュ用領域３５へ書き込みを行う。
【００４５】
子クライアント端末３０上で同一ブロック位置への読み込みが発生した場合、キャッシュ用ディスクドライバ（ディスクＩ／Ｏフィルタ）３４は、メモリキャッシュ用領域３５上にデータが存在するか否かを確認し、データが存在する場合には、ネットブート部３１への問い合わせを行わずにクライアントＯＳ３８へ応答を返し、ディスクＩ／Ｏの処理を完結させる。
【００４６】
（第１の実施の形態の動作の説明）
次に、本実施の形態によるネットブートシステム１００の動作について、図面を参照して詳細に説明する。
【００４７】
（ディスク書き込み処理時の動作の説明）
図４に、親クライアント端末２０におけるディスク書き込み処理時の流れを示す。なお、子クライアント端末３０についても、親クライアント端末２０と同様の処理を行う。
【００４８】
クライアントＯＳ２８がディスクの書き込み処理を発行すると（ステップＳ４０１）、キャッシュ用ディスクドライバ（ディスクＩ／Ｏフィルタ）２４が、該要求を受け取る（ステップＳ４０２）。
【００４９】
次いで、キャッシュ用ディスクドライバ（ディスクＩ／Ｏフィルタ）２４は、書き込み確認用メモリ領域２７へ、書き込みを行うブロック情報を追加する（ステップＳ４０３）。
【００５０】
その後、ネットブート部２１へ書き込み処理を引き継ぐ（ステップＳ４０４）。
【００５１】
ネットブート部２１では、ネットブートドライバ（ネットワークフィルタ）２３が、書き込み情報をネットブートサーバ１０へ送信する、或いは、ネットブートドライバ（ディスクＩ／Ｏフィルタ）２２が、親クライアント端末上の所定のメモリ等で、該書き込み情報を保持することを想定するが、本発明の本質的な部分ではないため、詳細な説明は省略する。
【００５２】
（ディスク読み込み処理時の動作の説明）
図５に、親クライアント端末２０におけるディスク読み込み処理時の流れを示す。
【００５３】
クライアントＯＳ２８がディスクの読み込み処理を発行すると（ステップＳ５０１）、キャッシュ用ディスクドライバ（ディスクＩ／Ｏフィルタ）２４が、該要求を受け取る（ステップＳ５０２）。
【００５４】
次いで、キャッシュ用ディスクドライバ（ディスクＩ／Ｏフィルタ）２４は、読み込み対象のブロックの情報が書き込み確認用メモリ２７に存在するか確認する（ステップＳ５０３）。すなわち、キャッシュ用ディスクドライバ（ディスクＩ／Ｏフィルタ）２４は、読み込み対象のブロック領域が、クライアントＯＳ２８によって書き込まれた履歴が存在するかを確認する。
【００５５】
読み込み対象のブロックの情報が書き込み確認用メモリ２７に存在する場合（ステップＳ５０３”ＹＥＳ”）、キャッシュ用ディスクドライバ（ディスクＩ／Ｏフィルタ）２４は、ネットブート部２１へ読み込み処理を引き継ぐ（ステップＳ５０４）。
【００５６】
読み込み対象のブロックの情報が書き込み確認用メモリ２７に存在しない場合（ステップＳ５０３”ＮＯ”）、キャッシュ用ディスクドライバ（ディスクＩ／Ｏフィルタ）２４は、メモリキャッシュ用領域２５に、読み込み対象のブロックのデータが存在するかを確認する（ステップＳ５０５）。
【００５７】
メモリキャッシュ用領域２５に読み込み対象のブロックのデータが存在する場合（ステップＳ５０５”ＹＥＳ”）、キャッシュ用ディスクドライバ（ディスクＩ／Ｏフィルタ）２４は、ネットブート部２１への問い合わせを行わずに、メモリキャッシュ用領域に存在する該データをクライアントＯＳ２８に返却して、処理を終了する（ステップＳ５０６）。
【００５８】
メモリキャッシュ用領域２５に読み込み対象のブロックのデータが存在しない場合、キャッシュ用ディスクドライバ（ディスクＩ／Ｏフィルタ）２４は、ネットブート部２１へ読み込み処理を引き継ぐ（ステップＳ５０５”ＮＯ”、Ｓ５０４）。
【００５９】
ネットブート部２１へ読み込み処理を引き継がれると、まず、ネットブートドライバ（ネットワークフィルタ）２３が、ネットブートサーバ１０のネットブート用起動ＯＳイメージ１１から読み込み対象のブロックのデータを取得する（ステップＳ５０７）。
【００６０】
次いで、キャッシュ用ディスクドライバ（ディスクＩ／Ｏフィルタ）２４が、メモリキャッシュ用領域２５へ該データの書き込みを行う（ステップＳ５０８）。
【００６１】
メモリキャッシュ用領域２５へのデータの書き込みをきっかけに、キャッシュ用ディスクドライバ（ネットワークフィルタ）２６が、読み込んだブロックの情報と実際のデータとを、マルチキャストもしくはブロードキャストのパケットとしてネットワークに流す（ステップＳ５０９）。
【００６２】
最後に、キャッシュ用ディスクドライバ（ディスクＩ／Ｏフィルタ）２４は、ネットブートドライバ（ネットワークフィルタ）２３が取得した読み込みデータを、クライアントＯＳ２８に渡す（ステップＳ５１０）。
【００６３】
なお、図５では、親クライアント端末２０におけるディスク読み込み処理の動作を説明したが、子クライアント端末３０の場合は、ステップＳ５０８、Ｓ５０９の処理がなく、ステップＳ５０７の後、ステップＳ５１０の処理となる。それ以外の部分についての動作については、親クライアント端末２０と同様である。
【００６４】
ここで、図５のステップＳ５０９で送信されたデータを、子クライアント端末３０が受け取った場合の動作を、図６のフローチャートに示す。
【００６５】
キャッシュ用ディスクドライバ（ネットワークフィルタ）３６が、親クライアント端末２０より送られたディスク読み込みのブロック情報及びブロックデータをネットワークより受け取ると（ステップＳ６０１）、キャッシュ用ディスクドライバ（ネットワークフィルタ）３６は、該ブロック情報及びブロックデータを、メモリキャッシュ用領域３５に書き込む（ステップＳ６０２）。
【００６６】
（第１の実施の形態による効果）
本実施の形態によれば、各子クライアント端末が実施するであろう読み込み情報を親クライアント端末から事前通知することで、追って作業を行う子クライアント端末では、ディスクアクセスの処理を端末内部のみで完結させることができ、これにより、ネットワークへかかる負荷を軽減させることが可能となる。
【００６７】
また、本実施の形態では、サーバやネットワークの負荷軽減のために、ディスクなどの外部記憶装置を必要としない。
【００６８】
なお、本発明の課題を解決できる機能ブロックとしての最小限の構成を図７に示す。ネットブートシステム１００は、ネットブート用起動ＯＳイメージ１１を備えるネットブートサーバ１０と、ネットブート用起動ＯＳイメージ１１から動作に必要な情報を取得して動作する親クライアント端末２０及び１以上の子クライアント端末３０を備え、親クライアント端末２０が、ディスク読み込み処理において、ネットブート用起動ＯＳイメージ１１から取得した動作に必要な情報を送信する送信手段７２１を備え、子クライアント端末３０が、親クライアント端末２０から送信された動作に必要な情報を受信する手段７３１と、受信した動作に必要な情報を格納する手段７３２とを備えることで、ネットブートシステムにおいて、サーバ及びネットワークへの負荷を低減することができる。
【００６９】
次に、本発明の親クライアント端末２０のハードウェア構成例について、図８を参照して説明する。図８は、本発明の親クライアント端末２０のハードウェア構成例を示すブロック図である。
【００７０】
図８を参照すると、親クライアント端末２０は、一般的なコンピュータ装置と同様のハードウェア構成であり、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）８０１、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）等のメモリからなる、データの作業領域やデータの一時退避領域に用いられる主記憶部８０２、ネットワークを介してデータの送受信を行う通信部８０３、入力装置８０５や出力装置８０６及び記憶装置８０７と接続してデータの送受信を行う入出力インタフェース部８０４、上記各構成要素を相互に接続するシステムバス８０８を備えている。記憶装置８０７は、例えば、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、磁気ディスク、半導体メモリ等の不揮発性メモリから構成されるハードディスク装置等で実現される。
【００７１】
本発明の親クライアント端末２０の各機能は、プログラムを組み込んだ、ＬＳＩ（Ｌａｒｇｅ  Ｓｃａｌｅ  Ｉｎｔｅｇｒａｔｉｏｎ）等のハードウェア部品である回路部品を実装することにより、その動作をハードウェア的に実現することは勿論として、その機能を提供するプログラムを、記憶装置８０７に格納し、そのプログラムを主記憶部８０２にロードしてＣＰＵ８０１で実行することにより、ソフトウェア的に実現することも可能である。
【００７２】
なお、前述した子クライアント端末３０も、上記のようなハードウェア構成を有し、該子クライアント端末３０が有する各機能をハードウェア的又はソフトウェア的に実現する。
【００７３】
以上好ましい実施の形態をあげて本発明を説明したが、本発明は必ずしも、上記実施の形態に限定されるものでなく、その技術的思想の範囲内において様々に変形して実施することができる。
【００７４】
なお、以上の構成要素の任意の組合せ、本発明の表現を方法、装置、システム、記録媒体、コンピュータプログラムなどの間で変換したものもまた、本発明の態様として有効である。
【００７５】
また、本発明の各種の構成要素は、必ずしも個々に独立した存在である必要はなく、複数の構成要素が一個の部材として形成されていること、一つの構成要素が複数の部材で形成されていること、ある構成要素が他の構成要素の一部であること、ある構成要素の一部と他の構成要素の一部とが重複していること、等でもよい。
【００７６】
また、本発明の方法およびコンピュータプログラムには複数の手順を順番に記載してあるが、その記載の順番は複数の手順を実行する順番を限定するものではない。このため、本発明の方法およびコンピュータプログラムを実施する時には、その複数の手順の順番は内容的に支障しない範囲で変更することができる。
【００７７】
また、本発明の方法およびコンピュータプログラムの複数の手順は個々に相違するタイミングで実行されることに限定されない。このため、ある手順の実行中に他の手順が発生すること、ある手順の実行タイミングと他の手順の実行タイミングとの一部ないし全部が重複していること、等でもよい。
【００７８】
さらに、上記実施形態の一部又は全部は、以下の付記のようにも記載されうるが、これに限定されない。
【００７９】
（付記１）
ネットブート用起動ＯＳイメージを備えるネットブートサーバと、
前記ネットブート用起動ＯＳイメージから動作に必要な情報を取得して動作する親クライアント端末及び１以上の子クライアント端末を備え、
前記親クライアント端末が、
ディスク読み込み処理において、前記ネットブート用起動ＯＳイメージから取得した前記動作に必要な情報を送信する送信手段を備え、
前記子クライアント端末が、
前記親クライアント端末から送信された前記動作に必要な情報を受信する手段と、受信した前記動作に必要な情報を格納する手段とを備える
ことを特徴とするネットブートシステム。
【００８０】
（付記２）
前記送信手段が、
マルチキャストを利用して前記動作に必要な情報の送信を行うことを特徴とする付記１に記載のネットブートシステム。
【００８１】
（付記３）
前記送信手段が、
ブロードキャストを利用して前記動作に必要な情報の送信を行うことを特徴とする付記１に記載のネットブートシステム。
【００８２】
（付記４）
前記親クライアント端末が、
前記ネットブート用起動ＯＳイメージから取得した前記動作に必要な情報を格納するメモリキャッシュを含み、
前記送信手段が、
前記メモリキャッシュに前記動作に必要な情報が格納された場合に、前記動作に必要な情報を送信することを特徴とする付記１から付記３の何れか１項に記載のネットブートシステム。
【００８３】
（付記５）
前記親クライアント端末が、
ディスク読み込み処理において、読み込み対象のブロックについて、自端末のＯＳによって書き込まれた履歴が存在する場合に、前記ネットブート用起動ＯＳイメージから対応する情報を取得する情報取得手段を備える
ことを特徴とする付記１から付記４の何れか１項に記載のネットブートシステム。
【００８４】
（付記６）
前記情報取得手段は、
読み込み対象のブロックについて、自端末のＯＳによって書き込まれた履歴が存在しない場合、当該読み込み対象のブロックのデータが存在しなければ、前記ネットブート用起動ＯＳイメージから対応する情報を取得することを特徴とする付記５に記載のネットブートシステム。
【００８５】
（付記７）
ネットブートサーバのネットブート用起動ＯＳイメージから動作に必要な情報を取得して動作するクライアント端末であって、
親端末として指定されたクライアント端末が、ディスク読み込み処理において、前記ネットブート用起動ＯＳイメージから取得した前記動作に必要な情報を送信する送信手段を備え、
子端末として指定されたクライアント端末が、
送信された前記動作に必要な情報を受信する受段と、受信した前記動作に必要な情報を格納する手段とを備える
ことを特徴とするクライアント端末。
【００８６】
（付記８）
前記送信手段が、
マルチキャストを利用して前記動作に必要な情報の送信を行うことを特徴とする付記７に記載のクライアント端末。
【００８７】
（付記９）
前記送信手段が、
ブロードキャストを利用して前記動作に必要な情報の送信を行うことを特徴とする付記７に記載のクライアント端末。
【００８８】
（付記１０）
前記親端末としてのクライアント端末が、
前記ネットブート用起動ＯＳイメージから取得した前記動作に必要な情報を格納するメモリキャッシュを含み、
前記送信手段が、
前記メモリキャッシュに前記動作に必要な情報が格納された場合に、前記動作に必要な情報を送信することを特徴とする付記７から付記９の何れか１項に記載のクライアント端末。
【００８９】
（付記１１）
前記親端末としてのクライアント端末が、
ディスク読み込み処理において、読み込み対象のブロックについて、自端末のＯＳによって書き込まれた履歴が存在する場合に、前記ネットブート用起動ＯＳイメージから対応する情報を取得する情報取得手段を備える
ことを特徴とする付記７から付記１０の何れか１項に記載のクライアント端末。
【００９０】
（付記１２）
前記情報取得手段は、
読み込み対象のブロックについて、自端末のＯＳによって書き込まれた履歴が存在しない場合、当該読み込み対象のブロックのデータが存在しなければ、前記ネットブート用起動ＯＳイメージから対応する情報を取得することを特徴とする付記１１に記載のクライアント端末。
【００９１】
（付記１３）
ネットブート用起動ＯＳイメージを備えるネットブートサーバと、前記ネットブート用起動ＯＳイメージから動作に必要な情報を取得して動作する１以上のクライアント端末を備えるネットブートシステムの負荷低減方法であって、
親端末として指定されたクライアント端末が、ディスク読み込み処理において、前記ネットブート用起動ＯＳイメージから取得した前記動作に必要な情報を送信し、
子端末として指定されたクライアント端末が、送信された前記動作に必要な情報を受信し、受信した前記動作に必要な情報を格納する
ことを特徴とするネットブートシステムの負荷低減方法。
【００９２】
（付記１４）
マルチキャストを利用して前記動作に必要な情報の送信を行うことを特徴とする付記１３に記載のネットブートシステムの負荷低減方法。
【００９３】
（付記１５）
ブロードキャストを利用して前記動作に必要な情報の送信を行うことを特徴とする付記１３に記載のネットブートシステムの負荷低減方法。
【００９４】
（付記１６）
前記親端末としてのクライアント端末が、
前記ネットブート用起動ＯＳイメージから取得した前記動作に必要な情報を格納するメモリキャッシュに、前記動作に必要な情報が格納された場合に、前記動作に必要な情報を送信することを特徴とする付記１３から付記１５の何れか１項に記載のネットブートシステムの負荷低減方法。
【００９５】
（付記１７）
前記親端末としてのクライアント端末が、
ディスク読み込み処理において、読み込み対象のブロックについて、自端末のＯＳによって書き込まれた履歴が存在する場合に、前記ネットブート用起動ＯＳイメージから対応する情報を取得することを特徴とする付記１３から付記１６の何れか１項に記載のネットブートシステムの負荷低減方法。
【００９６】
（付記１８）
読み込み対象のブロックについて、自端末のＯＳによって書き込まれた履歴が存在しない場合、当該読み込み対象のブロックのデータが存在しなければ、前記ネットブート用起動ＯＳイメージから対応する情報を取得することを特徴とする付記１７に記載のネットブートシステムの負荷低減方法。
【００９７】
（付記１９）
ネットブートサーバのネットブート用起動ＯＳイメージから動作に必要な情報を取得して動作するクライアント端末上で動作する負荷低減プログラムであって、
親端末として指定されたクライアント端末に、ディスク読み込み処理において、前記ネットブート用起動ＯＳイメージから取得した前記動作に必要な情報を送信する処理を実行させ、
子端末として指定されたクライアント端末に、送信された前記動作に必要な情報を受信し、受信した前記動作に必要な情報を格納する処理を実行させる
ことを特徴とする負荷低減プログラム。
【００９８】
（付記２０）
マルチキャストを利用して前記動作に必要な情報の送信を行うことを特徴とする付記１９に記載の負荷低減プログラム。
【００９９】
（付記２１）
ブロードキャストを利用して前記動作に必要な情報の送信を行うことを特徴とする付記１９に記載の負荷低減プログラム。
【０１００】
（付記２２）
前記親端末としてのクライアント端末に、
前記ネットブート用起動ＯＳイメージから取得した前記動作に必要な情報を格納するメモリキャッシュに、前記動作に必要な情報が格納された場合に、前記動作に必要な情報を送信する処理を実行させる、ことを特徴とする付記１９から付記２１の何れか１項に記載の負荷低減プログラム。
【０１０１】
（付記２３）
前記親端末としてのクライアント端末に、
ディスク読み込み処理において、読み込み対象のブロックについて、自端末のＯＳによって書き込まれた履歴が存在する場合に、前記ネットブート用起動ＯＳイメージから対応する情報を取得する処理を実行させる、ことを特徴とする付記１９から付記２２の何れか１項に記載の負荷低減プログラム。
【０１０２】
（付記２４）
読み込み対象のブロックについて、自端末のＯＳによって書き込まれた履歴が存在しない場合、当該読み込み対象のブロックのデータが存在しなければ、前記ネットブート用起動ＯＳイメージから対応する情報を取得することを特徴とする付記２３に記載の負荷低減プログラム。
【産業上の利用可能性】
【０１０３】
本発明によれば、例えば、学校における教室端末を想定した場合、教師が使用する端末が先行的に操作を行いＯＳイメージの所定の内容を読み出すことで、後追いで作業を行う生徒が使用する端末においても、教師の端末で読み込みを行った内容を共有化し、サーバ及びネットワークに負荷をかけることなく高速に読み込み処理を行うことが可能となる。
【符号の説明】
【０１０４】
１００：ネットブートシステム
１０：ネットブートサーバ
１１：ネットブート用起動ＯＳイメージ
２０：親クライアント端末
２１、３１：ネットブート部
２２、３２：ネットブートドライバ（ディスクＩ／Ｏフィルタ）
２３、３３：ネットブートドライバ（ネットワークフィルタ）
２４、３４：キャッシュ用ディスクドライバ（ディスクＩ／Ｏフィルタ）
２５、３５：メモリキャッシュ用領域
２６、３６：キャッシュ用ドライバ（ネットワークフィルタ）
２７、３７：書き込み確認用メモリ領域
２８、３８：クライアントＯＳ
３０（３０−１〜３０−ｎ）：子クライアント端末
７２１：送信手段
７３１：受信手段
７３２：格納手段
８０１：ＣＰＵ
８０２：主記憶部
８０３：通信部
８０４：入出力インタフェース部
８０５：入力装置
８０６：出力装置
８０７：記憶装置
８０８：システムバス
【図１】
0005664417.tif 000002
【図２】
0005664417.tif 000003
【図３】
0005664417.tif 000004
【図４】
0005664417.tif 000005
【図５】
0005664417.tif 000006
【図６】
0005664417.tif 000007
【図７】
0005664417.tif 000008
【図８】
0005664417.tif 000009