JP2006252097A - 情報処理システム、情報処理装置及び情報処理方法、並びにコンピュータ・プログラム - Google Patents
情報処理システム、情報処理装置及び情報処理方法、並びにコンピュータ・プログラム Download PDFInfo
- Publication number
- JP2006252097A JP2006252097A JP2005066648A JP2005066648A JP2006252097A JP 2006252097 A JP2006252097 A JP 2006252097A JP 2005066648 A JP2005066648 A JP 2005066648A JP 2005066648 A JP2005066648 A JP 2005066648A JP 2006252097 A JP2006252097 A JP 2006252097A
- Authority
- JP
- Japan
- Prior art keywords
- client
- information processing
- network
- boot
- activation
- 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.)
- Pending
Links
Images
Landscapes
- Stored Programmes (AREA)
Abstract
【課題】 未使用中の計算機を利用して処理を実行する際の、計算機内のユーザ・データの保護や処理結果のセキュリティを確保する。
【解決手段】 サーバは、クライアントPCに対して、ネットワークを介して呼びかける。クライアントPCは、未使用時にサーバからWakeup on LANされると、サーバのディスクにあるオペレーティング・システムを用いてブート処理され、ディスクレス・クライアントとして起動する。サーバは、自身の計算資源に組み込み、シミュレーション計算などの処理をクライアントPC上でリモート実行する。
【選択図】 図3
【解決手段】 サーバは、クライアントPCに対して、ネットワークを介して呼びかける。クライアントPCは、未使用時にサーバからWakeup on LANされると、サーバのディスクにあるオペレーティング・システムを用いてブート処理され、ディスクレス・クライアントとして起動する。サーバは、自身の計算資源に組み込み、シミュレーション計算などの処理をクライアントPC上でリモート実行する。
【選択図】 図3
Description
本発明は、デジタル・データの処理を行なう情報処理システム、情報処理装置及び情報処理方法、並びにコンピュータ・プログラムに係り、特に、ネットワーク接続されている2以上の機器間における動作を連携させる情報処理システム、情報処理装置及び情報処理方法、並びにコンピュータ・プログラムに関する。
さらに詳しくは、本発明は、ネットワーク接続された複数の計算機における余剰の処理能力を利用して厖大な回数の演算処理を実行する情報処理システム、情報処理装置及び情報処理方法、並びにコンピュータ・プログラムに係り、特に、夜間などにユーザが未使用中の1以上の計算機を起動して特定の処理を連携して行なう情報処理システム、情報処理装置及び情報処理方法、並びにコンピュータ・プログラムに関する。
昨今の情報技術(IT)分野における急速な進歩とともに、さまざまな形態のコンピュータ・システムが開発・製造され、大学やその他の研究機関、企業内のオフィス、さらには一般家庭内に広く普及している。コンピュータ上では、テキスト形式の文書ファイル以外に、音声、画像、自然言語などさまざまなメディアをデジタル化して、数学的に取り扱うことにより、情報の編集・加工、蓄積、管理、伝達、共有などより高度で多岐にわたる処理を行なうことが可能となっている。
さらに最近では、ネットワーク上の複数の計算機を連携させ、その協調動作により高い演算性能を実現するとともに、投資対効果を高める分散コンピューティング技術に関する研究開発が進められている。
本発明者らは、条件やパラメータを変えながら同じ計算を繰り返し行なうような演算処理にはこのような分散コンピューティング技術が適当であると思料する。この種の演算処理の一例として、電子写真技術を利用した複写機やプリンタなどの画像形成装置における粉体挙動解析のためのシミュレーション計算を挙げることができる。この場合、画像構成剤としてのトナー及びトナーを搬送するための磁性体からなるキャリアという2成分からなる粉体を解析対象粒子として取り扱い、例えば攪拌、現像、転写などの各プロセスにおいて粉体挙動解析シミュレーションを適用することで、現実に画像形成実験を行なうことなく、形成される画像を予測し評価することができる。
分散コンピューティング・システムの構成例として、一般的なオフィスで事務用などの目的で使用されるパーソナル・コンピュータをユーザが未使用中に連携させるという形態が挙げられる。例えば、粉体挙動シミュレーションなどの処理を統括的にコントロールする特定のコンピュータが、ユーザが帰宅した後の夜間において、オフィスに残された停止状態のPCの処理能力を利用して、条件やパラメータを設定したシミュレーション計算を行なわせる。
ところが、このようなユーザが未使用中のPCを利用して連携処理を実行する際に、内蔵ハード・ディスク装置などローカルな資源を使用すると、本来のユーザが所有するユーザ・データの保護の問題や、シミュレーションなど連携処理の結果がPCを媒介にして漏洩するというセキュリティの問題が浮上する。
例えば、大量のシミュレーションの複数同時実行を行なうシミュレーションプログラム実行方法について提案がなされているが(例えば、特許文献1を参照のこと)、夜間に停止しているPCを利用するといった、停止中の計算機資源の有効活用を行なうものではない。
また、イーサネット(登録商標)で接続されているバス営業所内LAN中の各コンピュータで、負荷が軽いときは多くのタスクを受け入れ、負荷が重くなると受け入れるタスクを減らすというネットワーク利用方法について提案がなされている(例えば、特許文献2を参照のこと)。しかしながら、このネットワーク利用方法では、各コンピュータのローカル・ディスクを使用してタスクを実行することから、ユーザ・データの保護や処理結果のセキュリティを確保することができない。
本発明の目的は、ネットワーク接続された複数の計算機における余剰の処理能力を利用して厖大な回数の演算処理を好適に実行することができる、優れた情報処理システム、情報処理装置及び情報処理方法、並びにコンピュータ・プログラムを提供することにある。
本発明のさらなる目的は、夜間などにユーザが未使用中の1以上の計算機を起動して特定の処理を連携して好適に行なうことができる、優れた情報処理システム、情報処理装置及び情報処理方法、並びにコンピュータ・プログラムを提供することにある。
本発明のさらなる目的は、夜間などにユーザが未使用中の計算機を利用して処理を実行する際の、計算機内のユーザ・データの保護や処理結果のセキュリティを確保することができる、優れた情報処理システム、情報処理装置及び情報処理方法、並びにコンピュータ・プログラムを提供することにある。
本発明は、上記課題を参酌してなされたものであり、その第1の側面は、ネットワーク上で、サーバが停止状態のクライアントを自己の計算資源に組み込んで所定の処理を実行する情報処理システムであって、前記サーバは、前記クライアントの停止状態を確認してネットワーク経由で起動要求し、前記クライアントは、前記のネットワーク経由の起動要求に応答して起動するときには、前記サーバ側のディスクにあるオペレーティング・システムをブート処理して、ディスクレス・クライアントとして動作し、前記サーバは、前記ディスクレス・クライアントを自己の計算資源に組み込んで所定の処理を実行させることを特徴とする情報処理システムである。
オフィスに存在する事務用途の計算機を連携させる分散コンピューティング・システムによれば、ネットワーク上の複数の計算機を連携させ、その協調動作により高い演算性能を実現することができる。
ところが、ユーザが帰宅した後の夜間などで停止状態のクライアントPCを連携させるというシステム構成をとる場合、クライアントPCの内蔵ハード・ディスク装置などローカルな資源を使用すると、本来のユーザが所有するユーザ・データの保護や、シミュレーション計算など連携処理の結果がPCを媒介にして漏洩するというセキュリティの点で問題がある。
これに対し、本発明によれば、ユーザが帰宅した後の夜間などで停止状態のクライアントPCを利用する際には、ネットワーク・ブートするとともに、クライアントが使用している環境とは異なるオペレーティング・システムをディスクレス・クライアントとして起動して、シミュレーションなどの処理を実行するようになっている。
したがって、本発明によれば、シミュレーション処理実行中のクライアント上のユーザ・データを保護することができるとともに、シミュレーション結果についてのセキュリティを確保することができる。
各クライアントPCは、サーバによりネットワーク経由で起動したのか、あるいはユーザが電源スイッチを操作し、通常の電源投入により起動したのか、自分の起動要因を記憶する手段を備えている。そして、この起動要因に応じてブート処理方法を選択するようになっている。具体的には、いわゆるWakeup on LANのようにネットワーク経由でサーバから起動したときには、サーバにあるオペレーティング・システムを用いてブート処理する。他方、電源スイッチの操作などにより通常の起動を行なうときには、クライアントPC自身のローカル・ディスクにあるオペレーティング・システムを用いて通常のブート処理を行なう。
そして、クライアントPCは、停止状態のときにサーバからのネットワーク経由での起動要求により起動されたときには、サーバのディスクにあるオペレーティング・システムを用いてブート処理が実行され、ローカル・ディスクをマウントしないように設定できるので、ディスクレス・クライアントとして起動することになる。このような場合、クライアントPCは、自身のローカル・ディスクなどの資源をサーバと共有することはないので、サーバからの命令によりシミュレーション計算などの処理を行なう際に、クライアントPC内のユーザ・データは保護されるとともに、シミュレーション結果のセキュリティは確保される。
また、クライアントPCは、ディスクレス・クライアントとして起動する場合には、ローカルに接続されている入力デバイスを無効にすることで、ユーザがクライアントPCにログインすることが不可能となり、シミュレーションを安全に実行することができる。
サーバは、あらかじめ登録してあるクライアントPC(群)に対して、ネットワークを介した呼びかけを行ない、一定期間内に返事があるかどうかにより、各クライアントが停止状態であるかどうかを確認することができる。そして、停止中のクライアントPCをWakeup on LANなどの方法により、ネットワーク経由で起動する。
クライアントPCは、起動する際に起動要因が何であったか、すなわちWakeup on LANであるかどうかを確認する。そして、Wakeup on LAN ならサーバからネットワーク・ブートし、ディスクレス・クライアントとして起動する。そうでないなら、内蔵ハード・ディスクなどのローカルの資源から起動する。
サーバは、Wakeup on LANによりブートしたクライアントPCを、ディスクレス・クライアントとして自身の計算資源に組み込み、シミュレーション計算などの処理をクライアントPC上でリモート実行する。また、サーバは、シミュレーション実行中には、クライアントPCのディスプレイに、実行中のプログラムの概要を表示する。
そして、サーバは、クライアントPCでシミュレーション実行中は、定期的にプロセスのチェック・ポイントを実行する。また、シミュレーションが終了すると、新たなシミュレーションを起動する。また、あらかじめ設定した時間(例えば、始業時間などによりユーザによるクライアントPCの利用が開始する時刻)になると、シミュレーションのチェック・ポイントを実行し、クライアントPCを停止する。
その後、ユーザがクライアントPCを起動すると、内蔵ハード・ディスクなどのローカルの資源を用いてブート処理が行なわれるので、通常のクライアント環境が起動する。
また、あらかじめ設定した時間よりも前にユーザがクライアントPCを使用したいときがある。このような場合、例えばユーザがリセット・スイッチを押すことにより実行中のシミュレーションは中断され、ユーザが使用しているクライアント環境が起動する。サーバは、定期的、あるいは設定時間におけるプロセスのチェック・ポイントに失敗することで、ユーザ操作によるシミュレーションの中断を知ることができる。
また、本発明の第2の側面は、ネットワーク接続されたクライアントを自己の計算資源に組み込んで所定の処理を実行するための情報処理をコンピュータ・システム上で実行するようにコンピュータ可読形式で記述されたコンピュータ・プログラムであって、前記コンピュータ・システムに対し、クライアントの停止状態を確認する状態確認手順と、停止状態が確認されたクライアントに対し、ネットワーク経由で起動要求する起動要求手順と、ネットワーク経由で起動要求し、ネットワーク・ブートしたクライアントをディスクレス・クライアントとして自己の計算資源に組み込んで、所定の処理を実行させる処理実行手順とを実行させることを特徴とするコンピュータ・プログラムである。このコンピュータ・プログラムは、コンピュータ・システムをサーバとして動作させるものであり、サーバは、規定時間(例えば、ユーザの出勤時刻)が到来するまでの間、計算資源に組み込んだディスクレス・クライアントに対し、シミュレーション計算などの処理を実行させることができる。
また、本発明の第3の側面は、所定の情報処理をコンピュータ・システム上で実行するようにコンピュータ可読形式で記述されたコンピュータ・プログラムであって、前記コンピュータ・システムに対し、起動要因を記憶する起動要因記憶手順と、前記起動要因記憶手順により記憶された起動要因に応じたブート方法を選択してオペレーティング・システムをブート処理するブート手順と、ブートされたオペレーティング・システムが提供する実行環境下で処理を実行する処理実行手順とを実行させることを特徴とするコンピュータ・プログラムである。このコンピュータ・プログラムは、コンピュータ・システムをクライアントとして動作させるものであり、クライアントは、Wakeup on LANによりネットワーク・ブートしたときにはディスクレス・クライアントとしてサーバの計算資源に組み込まれるが、それ以外の起動要因のときにはローカル・ディスクからブート処理を行ない、通常のクライアント環境を提供する。
本発明の第2乃至第3の各側面に係るコンピュータ・プログラムは、コンピュータ・システム上で所定の処理を実現するようにコンピュータ可読形式で記述されたコンピュータ・プログラムを定義したものである。換言すれば、本発明の第2乃至第3の各側面に係るコンピュータ・プログラムをコンピュータ・システムにインストールすることによってコンピュータ・システム上では協働的作用が発揮され、それぞれサーバ及びクライアントPCとして動作する。このようなサーバ及び1以上のクライアントPCを起動してネットワーク上で分散コンピューティング・システムを構築することによって、本発明の第1の側面に係る情報処理システムと同様の作用効果を得ることができる。
本発明によれば、ネットワーク接続された複数の計算機における余剰の処理能力を利用して厖大な回数の演算処理を好適に実行することができる、優れた情報処理システム、情報処理装置及び情報処理方法、並びにコンピュータ・プログラムを提供することができる。
また、本発明によれば、夜間などにユーザが未使用中の1以上の計算機を起動して特定の処理を連携して好適に行なうことができる、優れた情報処理システム、情報処理装置及び情報処理方法、並びにコンピュータ・プログラムを提供することができる。
また、本発明によれば、夜間などにユーザが未使用中の計算機を利用して処理を実行する際の、計算機内のユーザ・データの保護や処理結果のセキュリティを確保することができる、優れた情報処理システム、情報処理装置及び情報処理方法、並びにコンピュータ・プログラムを提供することができる。
本発明によれば、計算資源として使われていないクライアントを有効に利用でき、且つローカル・ユーザが使用する環境と計算実行の環境を全く別にすることができる。また、ローカル・ユーザがクライアントPCを使用する場合に全く影響を及ぼすことが無い。また、ユーザのスケジュール管理と組み合わせることで、夜間だけでなく休日や出張時などユーザが不在時には計算資源として終日使用することができる。
本発明のさらに他の目的、特徴や利点は、後述する本発明の実施形態や添付する図面に基づくより詳細な説明によって明らかになるであろう。
以下、図面を参照しながら本発明の実施形態について詳解する。
本発明は、ネットワーク接続されている2以上の機器間における動作を連携させる分散コンピューティングに関する。分散コンピューティングによれば、ネットワーク上の複数の計算機を連携させ、その協調動作により高い演算性能を実現することができる。
図1には、本発明の一実施形態に係る分散コンピューティング・システムの構成を模式的に示している。ネットワーク上には、シミュレーション計算などの演算処理を統括するサーバと、1台以上のクライアントPCが接続されている。
本実施形態では、ユーザが帰宅した後の夜間などの停止状態のクライアントPCを連携させるというシステム構成を想定している。このような場合、サーバは、夜間に停止中のクライアントPCをWakeup on LANにより起動要求して自身の計算資源に組み込む。また、就業時間が近づくと、クライアントPCを停止して、本来のユーザのために解放する。
ここで、ユーザが帰宅した後の夜間などの停止状態のクライアントPCを連携させるというシステム構成をとる場合、クライアントPCの内蔵ハード・ディスク装置などローカルな資源を使用すると、本来のユーザが所有するユーザ・データの保護や、シミュレーションなど演算処理の結果がクライアントPCのローカル・ディスクを媒介にして漏洩するというセキュリティの点で問題がある。
そこで、本実施形態では、ユーザが帰宅した後の停止状態のクライアントPCを利用する際には、ネットワーク・ブートするとともに、クライアントが使用している環境とは異なるオペレーティング・システムをディスクレス・クライアントとして起動するようにしている。クライアントPCは、サーバの計算資源に組み込まれ、シミュレーション計算などを行なう際、サーバとはクライアント・ローカルの資源を共有する必要がない。また、クライアントPCは、ディスクレス・クライアントとして起動しているときには、ローカルのコンソールからの入力を禁止しておくこともできる。したがって、シミュレーション処理実行中のクライアント上のユーザ・データを保護することができるとともに、シミュレーション結果についてのセキュリティを確保することができる。
このような場合、クライアントPCは、ネットワーク経由で起動したのか、あるいはユーザが電源スイッチを操作したことにより起動したのか、起動要因に応じてブート処理方法を選択する必要がある。そこで、クライアントPCは、起動要因を記憶する手段を備えている。そして、この起動要因に応じてブート処理方法を選択して実行するようになっている。具体的には、いわゆるWakeup on LANのようにネットワーク経由でサーバから起動したときには、サーバにあるオペレーティング・システムを用いてブート処理する。他方、電源投入などにより通常の起動を行なうときには、クライアントPC自身のローカル・ディスクにあるオペレーティング・システムを用いて通常のブート処理を行なう。
図2には、クライアントPCのハードウェア構成を模式的に示している。クライアントPCでは、CPU(Central Processing Unit)11は、オペレーティング・システムが提供する実行環境下で、各種の処理演算を実行することができる。
本実施形態では、起動要因に応じてブート処理が切り替えられ、ネットワーク経由で起動したときには、サーバ側が提供するLinuxなどのオペレーティング・システムがブートされる。この場合、ディスクレス・クライアントとしてサーバの計算資源に組み込まれ、サーバが要求するシミュレーション計算などを処理する。また、電源スイッチの投入など通常の起動のときには、クライアントPC内のローカル・ディスク(後述)からWindows(登録商標)などのオペレーティング・システムがブートされる。
CPU11は、チップセット12と呼ばれるコアLSIチップを介して、ROM(Read Only Memory)13やRAM(Random Access Memory)14などのメモリ装置、種々の周辺機器が相互接続されている。
ROM13は、プログラム・コードが恒久的に書き込まれた読み出し専用の記憶装置であり、例えば、チップセットに接続される各周辺機器の入出力操作を制御するプログラムであるBIOS(Basic Input/Output System)や、電源投入時の初期化自己診断を行なうプログラムであるPOST(Power On Self Test)が格納されている。
また、RAM14は、DRAMなどの書き込み可能な記憶装置であり、CPU11が実行するオペレーティング・システムやアプリケーションなどのプログラム・コードをロードしたり、実行中の作業データを一時格納したりするために使用される。
PCを起動すると、最初にBIOSが動作し、BIOSによって起動ディスクの先頭に書かれているMBR(Master Boot Record)がRAM14に読み込まれ、制御が渡される。MBRの先頭にはブート・ストラップ・コードがあり、ブート処理すなわちOSを起動するための処理が行なわれる。
本実施形態では、Wakeup on LANなどネットワーク経由でサーバから起動するときには、起動ディスクはサーバ側にあるリモート・ディスクであり、そこからLinuxなどのオペレーティング・システムがブートされ、ディスクレス・クライアントとして起動する。ディスクレス・クライアントをブートするためのプロトコルとして、BOOTP(Bootstrap Protocol、RFC 951)などが知られている。他方、電源投入による通常の起動時の起動ディスクはクライアントPCのローカル・ディスクであり、そこからWindows(登録商標)などのオペレーティング・システムがブートされる。本実施形態では、ブート・ローダが、クライアントPCの起動要因に応じて起動ディスク、すなわちブート処理すべきオペレーティング・システムを切り替えるようになっている。
チップセット12上に接続される周辺機器として、LANなどのネットワークに相互接続するためのネットワーク・コントローラ15、通常起動時においてクライアントPCのローカル・ディスクとして使用される内蔵ハード・ディスク装置16、表示装置18の表示駆動を制御するビデオ・コントローラ17、キーボードやマウスなどのユーザ入力装置からの入力データを取り扱うユーザ・インターフェース・コントローラ19などが挙げられる。
ネットワーク・コントローラ15は、イーサネット(登録商標)などの通信プロトコルに従い、物理層やMAC層レベルでの通信動作を行なう。本実施形態では、サーバからネットワーク経由での起動要求に応じて当該システムの起動動作を行なうWakeup on LAN機能を備えている。また、ブート・ローダが起動要因に応じた起動ディスクの選択を行なうために、ネットワーク・コントローラ15は、Wakeup on LANにより起動したときはこれを記憶しておくWakeup on LANレジスタを備えている。
本実施形態に係る分散コンピューティング・システム(図1を参照のこと)では、サーバは、あらかじめ登録してあるクライアントPC(群)に対して、ネットワークを介した呼びかけを行ない、一定期間内に返事があるかどうかにより、各クライアントが停止状態であるかどうかを確認する。そして、停止中のクライアントPCをWakeup on LANによりネットワーク経由で起動する。
クライアントPCは、起動中に起動要因が何であったか、すなわちWakeup on LANであるかどうかを確認する。そして、Wakeup on LAN ならサーバからネットワーク・ブートし、ディスクレス・クライアントとして起動する。そうでないなら、内蔵ハード・ディスク16などのローカルの資源から起動する。ネットワーク・ブートしたときには、ユーザ・インターフェース・コントローラ19からの入力を受け付けないが、リセットSWが押下された場合はシステムをリセットする。
サーバは、Wakeup on LANによりブートしたクライアントPCを、自身の計算資源に組み込み、シミュレーション計算などの処理をクライアントPC上でリモート実行する。同時に、実行中の計算内容をクライアントPCの表示装置18に表示する。
そして、サーバは、クライアントPCでシミュレーション実行中は、定期的にプロセスのチェック・ポイントを実行する。また、シミュレーションが終了すると、新たなシミュレーションを起動する。また、あらかじめ設定した時間(例えば、始業時間などによりユーザによるクライアントPCの利用が開始する時刻)になると、シミュレーションのチェック・ポイントを実行し、クライアントPCを停止する。
その後、ユーザがクライアントPCを起動すると、内蔵ハード・ディスクなどのローカルの資源を用いてブート処理が行なわれるので、通常のクライアント環境が起動する。
図3には、本実施形態に係る分散コンピューティング・システムにおける、サーバとクライアントPC間の連携動作によりシミュレーション計算を実行するための動作シーケンスを図解している。ここでは、使用するクライアントPCをサーバに事前登録しているものとする。同図では、簡素化のため、クライアントPCを1台しか描いていないが、ネットワーク上にクライアントPCが複数台ある場合も同様である。
サーバは、クライアントPCに対し、ネットワークを介した起動確認を行なう(SEQ1)。昼間などユーザがクライアントPCを使用中であれば、起動応答があるので、サーバが使用できないことを確認できる。他方、ユーザ使用していないクライアントPCからは一定期間内に返事がないので、各クライアントが停止状態であることを確認することができる(SEQ2)。
そして、サーバは、停止中のクライアントPCをWakeup on LANなどの方法により、ネットワーク経由で起動する(SEQ3)。クライアントPCは、Wakeup on LANにより起動し、サーバ側の提供するLinuxなどのオペレーティング・システムがブートされると、サーバに起動通知を行なう(SEQ4)。
サーバは、クライアントPCをディスクレス・クライアントとしてサーバの計算資源に組み込む。そして、シミュレーション計算処理をクライアントPC上でリモート実行する(SEQ5)。
クライアントPC上でシミュレーション計算をリモート実行している期間中は定期的なチェック・ポイント時間が設定されており、サーバは、このチェック・ポイント時間が到来する度に、チェック・ポイントを実行する(SEQ6)。チェック・ポイントでは、クライアントPC側でのシミュレーション計算の処理状況の確認や処理結果の保存、クライアントPC自体の動作状態の確認などが行なわれる。
規定時間(例えば、始業時間などによりユーザによるクライアントPCの利用が開始する時刻)が到来する前にクライアントPCがシミュレーション計算を終えると(SEQ7)、サーバは、クライアントPCに対し、新たなシミュレーション計算の実行を起動する(SEQ8)。
そして、規定時間が到来すると、サーバは、シミュレーション計算のチェック・ポイントを実行し(SEQ9)、クライアントPCを停止して(SEQ10)、本来のユーザのために解放する。
その後、ユーザがクライアントPCを起動すると、内蔵ハード・ディスクなどのローカルの資源を用いてWindows(登録商標)などのオペレーティング・システムのブート処理が行なわれるので、通常のクライアント環境が起動する。
ユーザが規定時間よりも前にクライアントPCを使用する場合は、リセット・スイッチを押すことにより実行中のシミュレーションは中断され、ユーザが使用しているクライアント環境が起動する。この場合、サーバは、定期的あるいは規定時間内でプロセスのチェック・ポイントに失敗することで、ユーザ操作によるシミュレーションの中断を知ることができる。
このようにしてサーバは停止中のクライアントPCをディスクレス・クライアントとして自己の計算資源に組み込み、例えば電子写真プロセスにおける粉体挙動解析など、厖大量のシミュレーション計算を好適に実行することができる。
図4には、本実施形態に係る分散コンピューティング・システムにおいて、サーバとして動作する計算機が実行する処理動作をフローチャートの形式で示している。
サーバは、クライアントPCに対し、ネットワークを介した呼びかけ(ポーリング)を行ない(ステップS1)、起動しているかどうかを確認する(ステップS2)。昼間などユーザがクライアントPCを使用中であれば、起動応答があるので、サーバが使用できないことを確認できる。他方、ユーザ使用していないクライアントPCからは一定期間内に返事がないので、各クライアントが停止状態であることを確認することができる。
そして、サーバは、停止中のクライアントPCをWakeup on LANなどの方法により、ネットワーク経由で起動する(ステップS3)。クライアントPCは、Wakeup on LANにより起動し、サーバ側の提供するLinuxなどのオペレーティング・システムがブートされると、サーバに起動通知を行なう(ステップS4)。
サーバは、クライアントPCをディスクレス・クライアントとしてサーバ自身の計算資源に組み込む。そして、シミュレーション計算処理をクライアントPC上でリモート実行し(ステップS5)、その実行内容をクライアントPCの表示装置18に表示する。
サーバには、クライアントPCをディスクレス・クライアントとして利用することが許可されている規定時間(例えば、始業時間などによりユーザによるクライアントPCの利用が開始する時刻)があらかじめ設定されている。この規定時間内において、クライアントPCがシミュレーション計算を終えると(ステップS7)、ステップS5に戻り、クライアントPCに対し次のシミュレーション計算の実行を起動する。
また、規定時間内では、サーバは、例えば定期的にチェック・ポイントを実行して、シミュレーション結果を保存する(ステップS8)。そして、チェック・ポイントに成功すると(ステップS9)、ステップS6に戻り、シミュレーション計算の実行を継続する。
他方、クライアントPC側でユーザがリセット・スイッチを押すことにより実行中のシミュレーションは中断され、ユーザが使用しているクライアント環境が起動する。この場合、サーバ側では、チェック・ポイントに失敗するので、次ステップS10に進む。
そして、規定時間が到来すると、サーバは、シミュレーション計算のチェック・ポイントを実行する(ステップS10)。
ステップS9においてチェック・ポイントに失敗したとき、あるいは規定時間が到来してステップS10においてチェック・ポイントを実行した後、サーバは、クライアントPCで実行したシミュレーションの状況を修正する(ステップS11)。そして、クライアントPCを停止して(ステップS12)、本来のユーザのために解放する。
図5には、本実施形態に係る分散コンピューティング・システムにおいて、クライアントPCとして動作する計算機が実行する処理動作をフローチャートの形式で示している。
クライアントPCは、電源スイッチが投入された(若しくは、リセット・スイッチが押された)(ステップS21)、あるいはネットワーク・コントローラ15がネットワーク経由でサーバからWakeup on LAN(WOL)信号を受信したことにより(ステップS22)、起動を開始する。WOLで起動した場合には、ネットワーク・コントローラ15内のWOLレジスタにWOLが起動要因であることを記憶する(ステップS23)。
そして、ROM13からBIOSが動作し、BIOSによって起動ディスクの先頭に書かれているMBRがRAM14に読み込まれ、ブート・ローダに制御が渡され、ブート処理が行なわれる。
本実施形態では、ブート・ローダが、クライアントPCの起動要因に応じて起動ディスク、すなわちブート処理すべきオペレーティング・システムを切り替えるようになっている。すなわち、ネットワーク・コントローラ15内のWOLフラグの値を参照して(ステップS24)、起動要因がWOLであったかどうかをチェックする。
起動要因がWOLであった場合には、起動ディスクはサーバ側にあるリモート・ディスクであり、そこからLinuxなどのオペレーティング・システムがネットワーク・ブートされ(ステップS25)、ディスクレス・クライアントとして起動する。
クライアントPCは、ネットワーク・ブートが完了すると、サーバに起動通知を行なう(ステップS26)。そして、ディスクレス・クライアントとしてサーバの計算資源に組み込まれ、サーバからの指示に応じてシミュレーション計算を実行する(ステップS27)。
サーバには、クライアントPCをディスクレス・クライアントとして利用することが許可されている規定時間(例えば、始業時間などによりユーザによるクライアントPCの利用が開始する時刻)があらかじめ設定されている。この規定時間が到来すると、サーバは、シミュレーション計算のチェック・ポイントを実行した後、クライアントPCに対しシャットダウンを指示する(ステップS28)。クライアントPCは、この指示に応答して、シャットダウンする(ステップS29)。
他方、起動要因がWOL以外であった場合には(ステップS24)、起動ディスクはクライアントPCのローカル・ディスクであり、そこからWindows(登録商標)などのオペレーティング・システムがブートされる(ステップS30)。
この場合、クライアントPCでは通常のクライアント環境が提供され、ローカル・ユーザがローカル・ディスクを用いてさまざまなアプリケーションを実行することができる(ステップS31)。
そして、ローカル・ユーザは、クライアントPCの使用が終了すると(ステップS32)、これをシャットダウンする(ステップS29)。
以上、特定の実施形態を参照しながら、本発明について詳解してきた。しかしながら、本発明の要旨を逸脱しない範囲で当業者が該実施形態の修正や代用を成し得ることは自明である。
本明細書では、サーバとクライアントPC間の連携動作によりシミュレーション計算を実行する実施形態を用いて説明してきたが、本発明の要旨はこれに限定されるものではない。勿論、シミュレーション計算以外の処理を分散コンピューティング・システムで実行する場合であっても、同様に本発明を適用することができる。
要するに、例示という形態で本発明を開示してきたのであり、本明細書の記載内容を限定的に解釈するべきではない。本発明の要旨を判断するためには、特許請求の範囲の記載を参酌すべきである。
11…CPU
12…チップセット
13…ROM
14…RAM
15…ネットワーク・コントローラ
16…内蔵ハード・ディスク装置
17…ビデオ・コントローラ
18…表示装置
19…ユーザ・インターフェース・コントローラ
12…チップセット
13…ROM
14…RAM
15…ネットワーク・コントローラ
16…内蔵ハード・ディスク装置
17…ビデオ・コントローラ
18…表示装置
19…ユーザ・インターフェース・コントローラ
Claims (34)
- ネットワーク上で、サーバがクライアントを自己の計算資源に組み込んで所定の処理を実行する情報処理システムであって、
前記サーバは、前記クライアントの停止状態を確認してネットワーク経由で起動要求し、
前記クライアントは、前記のネットワーク経由の起動要求に応答して起動するときには、前記サーバ側のディスクにあるオペレーティング・システムをブート処理して、ディスクレス・クライアントとして動作し、
前記サーバは、前記ディスクレス・クライアントを自己の計算資源に組み込んで所定の処理を実行させる、
ことを特徴とする情報処理システム。 - 前記クライアントは、ネットワーク経由の起動要求に応答してディスクレス・クライアントとして起動するときには、ローカルに接続する入出力機器を用いた操作を禁止する、
ことを特徴とする請求項1に記載の情報処理システム。 - 前記クライアントは、ネットワーク経由の起動要求以外の要因により起動するときには、自己のローカル・ディスク上のオペレーティング・システムをブート処理して、クライアント環境下で動作する、
ことを特徴とする請求項1に記載の情報処理システム。 - 前記サーバは、前記所定の処理を実行中の前記ディスクレス・クライアントの表示装置に対し、実行中の処理の内容を表示させる、
ことを特徴とする請求項1に記載の情報処理システム。 - 前記サーバは、あらかじめ設定した規定時間が到来すると、前記ディスクレス・クライアントとして起動中のクライアントを停止する、
ことを特徴とする請求項1に記載の情報処理システム。 - 前記サーバは、前記規定時間内に前記ディスクレス・クライアントが前記所定の処理を終了すると、次の処理を実行させる、
ことを特徴とする請求項5に記載の情報処理システム。 - 前記サーバは、前記所定の処理を実行中の前記ディスクレス・クライアントに対し、所定のチェック・ポイント時間毎にチェック・ポイントを実行する、
ことを特徴とする請求項5に記載の情報処理システム。 - 前記サーバは、チェック・ポイントが失敗したことにより、前記クライアント側でユーザ操作による前記所定の処理の実行が中断したことを検知する、
ことを特徴とする請求項7に記載の情報処理システム。 - ネットワーク接続されたクライアントを自己の計算資源に組み込んで所定の処理を実行する情報処理装置であって、
クライアントの停止状態を確認する状態確認手段と、
停止状態が確認されたクライアントに対し、ネットワーク経由で起動要求する起動要求手段と、
ネットワーク経由で起動要求し、ネットワーク・ブートしたクライアントをディスクレス・クライアントとして自己の計算資源に組み込んで、所定の処理を実行させる処理実行手段と、
を具備することを特徴とする情報処理装置。 - 前記処理実行手段は、処理実行中のクライアントの表示装置に対し、実行中の処理の内容を表示させる、
ことを特徴とする請求項9に記載の情報処理装置。 - あらかじめ設定した規定期間が到来したことに応答して、前記処理実行手段によるクライアント上での処理実行を終了し、該クライアントを停止するクライアント停止手段をさらに備える、
ことを特徴とする請求項9に記載の情報処理装置。 - 前記処理実行手段は、前記規定期間内にクライアントが前記所定の処理を終了すると、次の処理を実行させる、
ことを特徴とする請求項11に記載の情報処理装置。 - 前記所定の処理を実行中のクライアントに対し、所定のチェック・ポイント時間毎にチェック・ポイントを実行するチェック・ポイント実行手段をさらに備える、
ことを特徴とする請求項9に記載の情報処理装置。 - 前記チェック・ポイント実行手段は、チェック・ポイントが失敗したことにより、クライアント側でユーザ操作による前記所定の処理の実行が中断したことを検知する、
ことを特徴とする請求項13に記載の情報処理装置。 - 起動要因を記憶する起動要因記憶手段と、
前記起動要因記憶手段に記憶された起動要因に応じたブート方法を選択してオペレーティング・システムをブート処理するブート手段と、
ブートされたオペレーティング・システムが提供する実行環境下で処理を実行する処理実行手段と、
を具備することを特徴とする情報処理装置。 - 前記情報処理装置をネットワークに接続し、ネットワーク経由での起動要求に応答して前記情報処理装置を起動できるネットワーク接続手段をさらに備え、
前記起動要求記憶手段は、ネットワーク経由での起動要求により前記情報処理装置を起動したことを記憶し、
前記ブート手段は、ネットワーク経由での起動要求が起動要因であるときには、起動要求元が提供するオペレーティング・システムをネットワーク・ブートする、ことを特徴とする請求項15に記載の情報処理装置。 - 前記ブート手段によりネットワーク・ブートしたときには、前記処理実行手段は、ディスクレス・クライアントとして起動要求元の計算資源に組み込まれ、起動要求元から指示される処理を実行する、
ことを特徴とする請求項16に記載の情報処理装置。 - ディスクレス・クライアントとして起動したときには、ローカルに接続する入出力機器を用いた操作を禁止する操作禁止手段をさらに備える、
ことを特徴とする請求項16に記載の情報処理装置。 - 前記ブート手段によりネットワーク・ブートしたときに、起動要求元からのシャットダウン指示によりシャットダウンするシャットダウン手段をさらに備える、
ことを特徴とする請求項16に記載の情報処理装置。 - クライアント環境を提供するオペレーティング・システムを備えたローカル・ディスクをさらに備え、
前記ブート手段は、ネットワーク経由での起動要求以外が起動要因であるときには、前記ローカル・ディスク上のオペレーティング・システムをブート処理して、クライアント環境下で動作する、
ことを特徴とする請求項16に記載の情報処理装置。 - ネットワーク接続されたクライアントを自己の計算資源に組み込んで所定の処理を実行するための情報処理方法であって、
クライアントの停止状態を確認する状態確認ステップと、
停止状態が確認されたクライアントに対し、ネットワーク経由で起動要求する起動要求ステップと、
ネットワーク経由で起動要求し、ネットワーク・ブートしたクライアントをディスクレス・クライアントとして自己の計算資源に組み込んで、所定の処理を実行させる処理実行ステップと、
を具備することを特徴とする情報処理方法。 - 前記処理実行ステップでは、処理実行中のクライアントの表示装置に対し、実行中の処理の内容を表示させる、
ことを特徴とする請求項21に記載の情報処理方法。 - あらかじめ設定した規定期間が到来したことに応答して、前記処理実行手段によるクライアント上での処理実行を終了し、該クライアントを停止するクライアント停止ステップをさらに備える、
ことを特徴とする請求項21に記載の情報処理方法。 - 前記処理実行ステップでは、前記規定期間内にクライアントが前記所定の処理を終了すると、次の処理を実行させる、
ことを特徴とする請求項23に記載の情報処理方法。 - 前記所定の処理を実行中のクライアントに対し、所定のチェック・ポイント時間毎にチェック・ポイントを実行するチェック・ポイント実行ステップをさらに備える、
ことを特徴とする請求項21に記載の情報処理方法。 - 前記チェック・ポイント実行ステップでは、チェック・ポイントが失敗したことにより、クライアント側でユーザ操作による前記所定の処理の実行が中断したことを検知する、
ことを特徴とする請求項25に記載の情報処理方法。 - 起動要因を記憶する起動要因記憶ステップと、
前記起動要因記憶ステップにおいて記憶された起動要因に応じたブート方法を選択してオペレーティング・システムをブート処理するブート・ステップと、
ブートされたオペレーティング・システムが提供する実行環境下で処理を実行する処理実行ステップと、
を具備することを特徴とする情報処理方法。 - ネットワーク接続環境下においてネットワーク経由で起動要求を受けるステップをさらに備え、
前記起動要因記憶ステップにおいてネットワーク経由での起動要求を起動要因として記憶しているときには、前記ブート・ステップでは、起動要求元が提供するオペレーティング・システムをネットワーク・ブートする、
ことを特徴とする請求項27に記載の情報処理方法。 - 前記ブート・ステップにおいてネットワーク・ブートしたときには、前記処理実行ステップでは、ディスクレス・クライアントとして起動要求元から指示される処理を実行する、
ことを特徴とする請求項28に記載の情報処理方法。 - ディスクレス・クライアントとして起動したときには、ローカルに接続する入出力機器を用いた操作を禁止する操作禁止ステップをさらに備える、
ことを特徴とする請求項29に記載の情報処理方法。 - 前記ブート・ステップにおいてネットワーク・ブートしたときに、起動要求元からのシャットダウン指示によりシャットダウンするシャットダウン・ステップをさらに備える、
ことを特徴とする請求項28に記載の情報処理方法。 - クライアント環境を提供するオペレーティング・システムを備えたローカル・ディスクが利用可能であり、
ネットワーク経由での起動要求以外が起動要因であるときには、前記ブート・ステップでは、前記ローカル・ディスク上のオペレーティング・システムをブート処理して、クライアント環境下で動作する、
ことを特徴とする請求項28に記載の情報処理方法。 - ネットワーク接続されたクライアントを自己の計算資源に組み込んで所定の処理を実行するための情報処理をコンピュータ・システム上で実行するようにコンピュータ可読形式で記述されたコンピュータ・プログラムであって、前記コンピュータ・システムに対し、
クライアントの停止状態を確認する状態確認手順と、
停止状態が確認されたクライアントに対し、ネットワーク経由で起動要求する起動要求手順と、
ネットワーク経由で起動要求し、ネットワーク・ブートしたクライアントをディスクレス・クライアントとして自己の計算資源に組み込んで、所定の処理を実行させる処理実行手順と、
を実行させることを特徴とするコンピュータ・プログラム。 - 所定の情報処理をコンピュータ・システム上で実行するようにコンピュータ可読形式で記述されたコンピュータ・プログラムであって、前記コンピュータ・システムに対し、
起動要因を記憶する起動要因記憶手順と、
前記起動要因記憶手順により記憶された起動要因に応じたブート方法を選択してオペレーティング・システムをブート処理するブート手順と、
ブートされたオペレーティング・システムが提供する実行環境下で処理を実行する処理実行手順と、
を実行させることを特徴とするコンピュータ・プログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005066648A JP2006252097A (ja) | 2005-03-10 | 2005-03-10 | 情報処理システム、情報処理装置及び情報処理方法、並びにコンピュータ・プログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005066648A JP2006252097A (ja) | 2005-03-10 | 2005-03-10 | 情報処理システム、情報処理装置及び情報処理方法、並びにコンピュータ・プログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2006252097A true JP2006252097A (ja) | 2006-09-21 |
Family
ID=37092534
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005066648A Pending JP2006252097A (ja) | 2005-03-10 | 2005-03-10 | 情報処理システム、情報処理装置及び情報処理方法、並びにコンピュータ・プログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2006252097A (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008077413A (ja) * | 2006-09-21 | 2008-04-03 | Toshiba Corp | シンクライアント、シンクライアントシステム、及びプログラム |
US8185763B2 (en) | 2007-07-25 | 2012-05-22 | Samsung Electronics Co., Ltd. | Method of and apparatus for informing user about setting state of wake-on-LAN function |
JP2017062697A (ja) * | 2015-09-25 | 2017-03-30 | 日本電気株式会社 | 情報処理装置、情報処理システム、情報処理方法およびプログラム |
-
2005
- 2005-03-10 JP JP2005066648A patent/JP2006252097A/ja active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008077413A (ja) * | 2006-09-21 | 2008-04-03 | Toshiba Corp | シンクライアント、シンクライアントシステム、及びプログラム |
JP4564477B2 (ja) * | 2006-09-21 | 2010-10-20 | 株式会社東芝 | シンクライアント、シンクライアントシステム、及びプログラム |
US8185763B2 (en) | 2007-07-25 | 2012-05-22 | Samsung Electronics Co., Ltd. | Method of and apparatus for informing user about setting state of wake-on-LAN function |
JP2017062697A (ja) * | 2015-09-25 | 2017-03-30 | 日本電気株式会社 | 情報処理装置、情報処理システム、情報処理方法およびプログラム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI524205B (zh) | 用以在無作業系統服務環境中供應韌體之方法 | |
US8650556B2 (en) | Virtual machine asynchronous patch management | |
US7356677B1 (en) | Computer system capable of fast switching between multiple operating systems and applications | |
US9032200B2 (en) | Method of installing virtual service processor (VSP) to computing device and application of the same | |
EP3125113B1 (en) | Systems and methods for initializing multiple virtual processors within a single virtual machine | |
US7409536B2 (en) | Computer systems with several operating systems coexisting thereon and swapping between these operating systems | |
US7353375B2 (en) | Method and apparatus for managing processor availability using a microcode patch | |
EP3120238B1 (en) | Access isolation for multi-operating system devices | |
JP2009230549A (ja) | 情報処理装置、情報処理方法及びコンピュータプログラム | |
US20090228889A1 (en) | Storage medium storing job management program, information processing apparatus, and job management method | |
EP1329809B1 (en) | Distributed computing system and method | |
US8006254B2 (en) | Bequeathing privilege to a dynamically loaded module | |
JP2011100431A (ja) | 仮想マシン制御装置及び仮想マシン制御方法 | |
JP2007220086A (ja) | 入出力制御装置、入出力制御システム及び入出力制御方法 | |
WO2008068146B1 (en) | Operating system deployment in a peer-to-peer computing environment | |
US9122478B2 (en) | Power supply and associated methodology of sequential shutdown an information processing system by utilizing a virtualization management function of the power supply | |
GB2448012A (en) | Mobile computer system boots up a first operating system when connected to a home or office network and second OS when operating as a stand alone PC | |
CN107463426B (zh) | 一种kvm虚拟化下虚拟机克隆的方法及装置 | |
WO2022135429A1 (zh) | 快速启动方法 | |
JP5159896B2 (ja) | プロセス分離実行を通じたdrmクライアント衝突防止システム及び方法 | |
JP2007304845A (ja) | 仮想計算機システムおよびソフトウェア更新方法 | |
CN112286633A (zh) | 基于CloudStack平台的虚拟机创建方法、装置、设备及存储介质 | |
JP5998566B2 (ja) | 移動制御プログラム、移動制御方法および制御装置 | |
JP2006252097A (ja) | 情報処理システム、情報処理装置及び情報処理方法、並びにコンピュータ・プログラム | |
KR100735875B1 (ko) | 라이브 부팅매체를 이용한 서버 원격접속과 다중 오에스사용 시스템 및 그 방법 |