JP3993342B2 - 電子計算機における処理の中断/再開方法 - Google Patents

電子計算機における処理の中断/再開方法 Download PDF

Info

Publication number
JP3993342B2
JP3993342B2 JP17827099A JP17827099A JP3993342B2 JP 3993342 B2 JP3993342 B2 JP 3993342B2 JP 17827099 A JP17827099 A JP 17827099A JP 17827099 A JP17827099 A JP 17827099A JP 3993342 B2 JP3993342 B2 JP 3993342B2
Authority
JP
Japan
Prior art keywords
computer
virtual machine
information
instruction
electronic computer
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.)
Expired - Fee Related
Application number
JP17827099A
Other languages
English (en)
Other versions
JP2001005679A (ja
Inventor
良一 植田
隆裕 廣瀬
敦史 村瀬
淳 前岡
忍 小泉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP17827099A priority Critical patent/JP3993342B2/ja
Publication of JP2001005679A publication Critical patent/JP2001005679A/ja
Application granted granted Critical
Publication of JP3993342B2 publication Critical patent/JP3993342B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

【0001】
【発明の属する技術分野】
本発明は、電子計算機の処理の中断/再開の技術に関するものであり、特に、電子計算機のアーキテクチャの如何を問わず、ある電子計算機上で中断した処理を、異なる電子計算機上で再開する技術に関するものである。
【0002】
【従来の技術】
パーソナルコンピュータやワークステーションなどの電子計算機において、電源がOFFされた時に実行中のプログラムの実行を中断し、処理の実行の再開に必要な全ての情報を主記憶から二次記憶に記録し、再度、電源がONされた時に、前回中断した際に二次記憶に記憶しておいた情報を主記憶に読み込み、実行を中断していた処理の実行を再開する技術が知られている。
【0003】
また、このような中断/再開を異なる電子計算機間で実現する、すなわち、中断と再開を異なる電子計算機上で行うことを可能とする技術として、特開平6−222854号公報記載の技術が知られている。
【0004】
この技術では、中断を行う電子計算機において中断時に、処理の実行の再開に必要な全ての情報を主記憶から可搬型の記憶装置に記憶し、この記憶装置を再開を行う電子計算機に装着し、再開を行う電子計算機において、可搬型の記憶装置から情報を主記憶に読み込み、実行を中断していた処理の実行を再開する技術が知られている。
【0005】
ところで、異なるアーキテクチャのオペレーティングシステムが稼働する電子計算機上で、同じアプリケーションプログラムを同じような実行結果が得られるように実行可能とする技術として、仮想計算機の技術が知られている。
【0006】
この技術によれば、実計算機上で稼働させる仮想計算機においてオペレーティングシステムのアーキテクチャの違いを吸収し、アプリケーションプログラムに対しては共通化した同じインタフェースを提供することにより、仮想計算機用のアプリケーションプログラムを、異なるアーキテクチャのオペレーティングシステムが稼働する電子計算機上で同様に実行することができる。
【0007】
【発明が解決しようとする課題】
前記各中断/再開の技術によれば、中断/再開を行う電子計算機が、同じ電子計算機、もしくは、同じアーキテクチャのオペレーティングシステムが稼働する異なる電子計算機である必要があり、中断を行った電子計算機と異なるアーキテクチャのオペレーティングシステムが稼働する電子計算機上で、再開を行うことができない。
【0008】
また、ネットワークに接続された複数の電子計算機が協調して処理を行う分散処理環境上で行われている処理については、中断/再開を行うことができない。
【0009】
そこで、本発明は、処理の実行の中断を行った電子計算機と異なるアーキテクチャのオペレーティングシステムが稼働する電子計算機上で、処理の実行の再開を行うことを可能とすることを課題とする。
【0010】
また、本発明は、分散処理環境上で行われている処理についても、処理の実行の中断と再開を可能とすることを課題とする。
【0011】
【課題を解決するための手段】
前記課題達成のために、本発明は、たとえば、アプリケーションプログラムを特定の種類の仮想的な電子計算機として実行する仮想計算機を有する電子計算機であって、
第1の指示と第2の指示とを受け付ける受け付け手段と、
前記受け付け手段が前記第1の指示を受け付けた場合に、現時点における前記仮想計算機の前記アプリケーションプログラムの実行状態を特定する情報である仮想計算機状態情報を、記憶媒体に保存する作業状態保存手段と、
前記受け付け手段が第2の指示を受け付けた場合に、仮想計算機状態情報が保存された記憶媒体から保存されている仮想計算機状態情報を読み出し、読み出した仮想計算機状態情報が特定する状態を、現時点における前記仮想計算機の前記アプリケーションプログラムの実行状態として設定し、仮想計算機に、前記アプリケーションプログラムを実行させる作業状態回復手段とを有することを特徴とする電子計算機を提供する。
【0012】
このような電子計算機によれば、第1の電子計算機上の仮想計算機のアプリケーションプログラムの実行を中断し、実行を中断した仮想計算機と同種の仮想計算機が稼働できる第2の電子計算機に、記憶媒体を介して仮想計算機状態情報を与えることにより、第2の電子計算機に中断したアプリケーションプログラムの実行を、その実行が中断された位置から再開させることができる。また、この際に、第1と第2の電子計算機は、同種の仮想計算機が稼働するものであれば、同じ電子計算機であっても、同じアーキテクチャの異なる電子計算機であっても、異なるアーキテクチャの異なる電子計算機であってもよい。したがって、このような電子計算機によれば、処理の実行の中断を行った電子計算機と異なるアーキテクチャのオペレーティングシステムが稼働する電子計算機上で、処理の実行の再開を行うことが可能となる。
【0013】
また、本発明は、前記課題達成のために、上記のような電子計算機において、前記作業状態保存手段は、前記受け付け手段が前記第1の指示を受け付けた場合に、電子計算機がネットワークを介して接続している他の電子計算機を特定する情報である接続状態情報を、前記仮想計算機状態情報と共に、前記記憶媒体に保存し、
前記作業状態回復手段は、前記受け付け手段が第2の指示を受け付けた場合に、仮想計算機状態情報と接続情報とが保存された記憶媒体から保存されている接続状態情報を読み出し、接続状態情報が示す他の電子計算機に、自電子計算機を接続するようにした。
【0014】
このようにすることにより、中断時に第1の計算機が接続していた第3の電子計算機に、再開時に第2の電子計算機が自動的に再接続し、その接続状態を回復することができるので、分散処理環境上で行われている処理についても、処理の実行の中断と再開を可能とすることができるようになる。
【0015】
また、本発明は、前記課題達成のために、アプリケーションプログラムを特定の種類の仮想的な電子計算機として実行する仮想計算機を有する、複数の電子計算機がネットワークを介して接続された電子計算機システムであって、
前記複数の電子計算機は、第1種の電子計算機と、第2種の電子計算機との2種類の電子計算機とを含み、
前記第1種の電子計算機は、
第1の指示と第2の指示とを受け付ける受け付け手段と、
前記受け付け手段が前記第1の指示を受け付けた場合に、自電子計算機がネットワークを介して接続している第2種の電子計算機に対して第3の指示を発行し、当該第3の指示に対する応答として、第2種の電子計算機から送られた接続仮想計算機状態情報と、現時点における自電子計算機の仮想計算機の前記アプリケーションプログラムの実行状態を特定する情報である仮想計算機状態情報とを、記憶媒体に保存する作業状態保存手段と、
前記受け付け手段が第2の指示を受け付けた場合に、仮想計算機状態情報が保存された記憶媒体から保存されている仮想計算機状態情報と接続仮想計算機状態情報とを読み出し、読み出した接続仮想計算機状態情報と共に、自電子計算機が接続可能な第2種の電子計算機の第4の指示を発行し、読み出した仮想計算機状態情報が特定する状態を、現時点における自電子計算機の仮想計算機の前記アプリケーションプログラムの実行状態として設定し、仮想計算機に、前記アプリケーションプログラムを実行させる作業状態回復手段とを有し、
前記第2種の電子計算機は、
前記第1種の電子計算機が発行した第3の指示と第4の指示を受信する受信手段と、
前記受信手段が前記第3の指示を受け付けた場合に、現時点における自電子計算機の仮想計算機の前記アプリケーションプログラムの実行状態を特定する情報である接続仮想計算機状態情報を、受信した第3の指示に対する応答として、第1種の電子計算機に送る作業状態転送手段と、
前記受信手段が第4の指示を受信した場合に、第4の指示と共に発行された接続先仮想計算機状態情報が特定する状態を、現時点における自電子計算機の仮想計算機の前記アプリケーションプログラムの実行状態として設定し、仮想計算機に、前記アプリケーションプログラムを実行させる作業状態復元手段とを有することを特徴とする電子計算機システムを提供する。
【0016】
このような電子計算機システムによれば、第1の電子計算機上の仮想計算機のアプリケーションプログラムの実行を中断し、実行を中断した仮想計算機と同種の仮想計算機が稼働できる第2の電子計算機に、記憶媒体を介して仮想計算機状態情報を与えることにより、第2の電子計算機に中断したアプリケーションプログラムの実行を、その実行が中断された位置から再開させることができる。また、この際に、中断時に第1の計算機の仮想計算機に接続し関連したアプリケーションプログラムの実行を行っていた第3の電子計算機上の仮想計算機の処理を、再開時に第2の電子計算機が接続可能な第4の電子計算機上の仮想計算機に中断時に実行していた位置から再開させ、第4の電子計算機上の仮想計算機が第2の電子計算機の仮想計算機に接続し関連した処理を行うようにさせることができる。したがって、分散処理環境下における異なる電子計算機の組み合わせによる処理の実行の中断と再開が可能となる。また、第3と第4の電子計算機も、同種の仮想計算機が稼働するものであれば、同じ電子計算機であっても、同じアーキテクチャの異なる電子計算機であっても、異なるアーキテクチャの異なる電子計算機であってもよい。
【0017】
【発明の実施の形態】
以下、本発明の実施形態について説明する。
【0018】
まず、第1の実施形態について説明する。
【0019】
図1は、本実施形態に係る中断/再開の処理の流れの概要を示したものである。
【0020】
図中、計算機101は処理を中断する実計算機、計算機106は処理を再開する計算機101とは別の実計算機であり、両計算機は、ハードウエア、オペレーティングシステムのアーキテクチャが異なっていても良い。
【0021】
ここで、図2に、計算機101、106のソフトウエア構成を示す。
【0022】
図中、仮想計算機1701は、実計算機のオペレーティングシステム1902上で稼働し、アプリケーションプログラム1901を実行する。仮想計算機1701は、記憶媒体1903やその他の実計算機の資源または実計算機が接続したネットワーク1904上の資源をオペレーティングシステム1902を介して利用する。
【0023】
仮想計算機1701は、処理実行部1710、保存処理部1705、再開処理部1706、暗号化処理部1905、復号処理部1906を備えている。処理実行部1710は、アプリケーションプログラム1901を実行する。保存処理部1705は、処理実行部1710のアプリケーション1901の実行に関する状態を作業状態情報として取得し、暗号化処理部1905で暗号化して記憶媒体1903に書き込む。再開処理部1706は、記憶媒体1903から作業状態情報を復号処理部1906で復号して読み出し、処理実行部1710に、アプリケーションプログラム1901の実行に関する状態として設定する。
【0024】
なお、作業状態情報は暗号化せずに記憶媒体1903に記憶しても良く、この場合には暗号化処理部1905、復号処理部1906は省略して良い。
【0025】
さて、計算機101と計算機106は、このようなソフトウエア構成を備えているが、計算機101と計算機106とでは、オペレーティングシステム1902のアーキテクチャは異なっていてもよい。また、計算機101の仮想計算機1701と、計算機106の仮想計算機1701は、同じインタフェースをアプリケーションプログラム1901に提供するものではあるが、仮想計算機1701が、その上で稼働するオペレーティングシステム1902のアーキテクチャに依存した仮想計算機プログラムによって実現される。従って、計算機101と計算機106のオペレーティングシステム1902のアーキテクチャが異なる場合には、計算機101と計算機106の仮想計算機1701は異なる仮想計算機プログラムによって実現される。
【0026】
図1に戻り、本実施形態に係る中断/再開の処理の流れの概要について説明する。
【0027】
まず、計算機101上で処理の中断がたとえばユーザから指示されると、計算機101上で作業状態保存処理102が行われ、アプリケーションプログラム1901実行中の計算機101上の処理実行部1710の作業状態情報が作業状態ファイル103として、記憶媒体193に保存される。
【0028】
次に、計算機106が、処理の再開が作業状態ファイル103の指定と共に、たとえばユーザから指示されると、計算機106上で作業状態回復処理104が行われ、記憶媒体193の作業状態ファイル103から作業状態情報が読み出され、計算機106上の処理実行部1710に設定され、計算機106上の処理実行部1710は設定された作業状態情報に従ってアプリケーションプログラム1901の実行を再開する。
【0029】
なお、記憶媒体193は、中断時には計算機101から再開時には計算機106からアクセス可能である必要がある。そこで、記憶媒体193は、可搬型の記憶媒体として、中断時には計算機101に装着し、再開時には計算機106に装着することにより、、中断時には計算機101から再開時には計算機106からアクセス可能とする。または、計算機101と計算機106双方からアクセス可能なネットワーク上の記憶媒体としてもよい。
【0030】
以下、作業状態保存処理102と、作業状態回復処理104の詳細について説明する。
【0031】
まず、これら処理で取り扱う作業状態情報について説明する。
【0032】
一般的に、仮想計算機は、様々なアーキテクチャの計算機上に同じ種類の仮想計算機が実現できるよう、スタックマシンとして構成される。なお、同じ種類の仮想計算機とは、アプリケーションプログラムに対して同じインタフェースを提供する仮想計算機をいうものとする。
【0033】
ここで、代表的なスタックマシン型の仮想計算機の種類としては、JAVA VM(商標)として知られているものがある。
【0034】
この種類の仮想計算機1701は、図3に示すように、スタック1702、プログラムカウンタ1703、オブジェクト領域1704の3つの記憶領域を用いて、アプリケーションプログラムを実行する。
【0035】
スタック1702は、演算の途中データを一時的に記憶しておいたり、メソッドの呼び出し関係を保存しておくために使用する領域である。プログラムカウンタ1703は、アプリケーションプログラムの現在実行中の命令を指し示すものである。オブジェクト領域1704は、オブジェクトインスタンスとクラス定義情報をオブジェクトとして格納しておく領域であり、クラス定義情報には、アプリケーションプログラムのコード(アプリケーションプログラム自体)も含まれる。
【0036】
そして、このスタック1702、プログラムカウンタ1703、オブジェクト領域1704の3つの要素の値によって、仮想計算機204のアプリケーションプログラムの実行に関する状態が一意に特定される。
【0037】
ただし、これは仮想計算機の一例であり、アプリケーションプログラムの実行に関する状態を特定するために必要となる情報は、仮想計算機の種類毎に異なる場合がある。例えば呼び出しフレームへのポインタ等の情報を保存しなくてはならない場合もある。
【0038】
以下では、アプリケーションプログラムの実行に関する状態が、スタック1702、プログラムカウンタ1703、オブジェクト領域1704の3つの要素の値によって、仮想計算機204の一意に特定される場合を例にとり、本実施形態を説明する。
【0039】
なお、図3では、スタック1702には、底から数値100、8、2が格納されている。プログラムカウンタ1703はアドレス256を指している。この例では、オブジェクト領域1704には、整数オブジェクト2001と文字列オブジェクト2002が格納されている。オブジェクトは、オブジェクト識別子とオブジェクトフィールドからなる。整数オブジェクト2001のオブジェクト識別子2003は「int」であり、オブジェクトフィールド2004には整数値「16」が格納されている。文字列オブジェクト2002のオブジェクト識別子2005は「string」であり、オブジェクトフィールド2006には文字列「ABC」が格納されている。
【0040】
次に、作業状態保存処理102について説明する。
【0041】
この処理では、保存処理部206は、処理実行部1710の処理を中断させ、処理実行部1710から作業状態情報を抽出し作業情報ファイル103として保存する。
【0042】
また、作業状態情報は、作業情報ファイル103へ、実計算機に依存しないバイト列形式に変換して保存する。
【0043】
図4は、作業状態情報をバイト列形式に変換した例を示したものである。なお、図は、スペースの制約でバイト列を分割して示したものであり、これらは実際は一続きのバイト列である。
【0044】
さて、このバイト列は、先頭は目印となる開始コードとする。そして、次にプログラムカウンタの値を格納する。プログラムカウンタのサイズが1バイトを超える場合は、処理実行部1710の内部表現と同じ形式で値を格納するようにしてもよい。そして、プログラムカウンタの値の次に区切りコードを挿入する。区切りコードは文字通りデータの区切りを分かりやすくするためのものである。そして、続いてスタックの値を格納する。スタックの値は、スタックの底にあるデータから順に格納する。図3の例の場合は、100、8、2の順に格納することになる。なお、スタックのデータサイズが1バイトを超える場合は、処理実行部1710の内部表現と同じ形式で格納するようにしてもよい。そして、スタックの値の次に区切りコードを挿入し、その後にオブジェクト領域の内容を格納する。
【0045】
オブジェクト領域に記憶されるオブジェクトはオブジェクト識別子とオブジェクトフィールドから構成されている。バイト列には、各オブジェクトについて、まずオブジェクト識別子を格納し、続けてオブジェクトフィールドを格納する。図3の例の場合は、最初のオブジェクトは整数型のオブジェクトであり、オブジェクト識別子は「int」でありオブジェクトフィールドの値は「16」であるので、まず、これらをこの順に格納する。次の2番目のオブジェクトは文字列オブジェクトであり、オブジェクト識別子は「string」であり、オブジェクトフィールドは文字列「ABC」なので、オブジェクト識別子「string」の後に、文字列を先頭の文字から順に、「A」「B」「C」の順序で格納する。3番目以降のオブジェクトについても同様に格納する。
【0046】
そして、オブジェクト領域の内容の後に、終了コードを設ける。
【0047】
以下、このような作業状態ファイル103を保存する作業状態保存処理102の処理手順を図5に示す。
【0048】
図示するように、この処理では、処理実行部1710の処理の実行を停止させた後、まず、ステップ301で処理実行部1710のプログラムカウンタ1703の値を保存し、ステップ302で処理実行部1710のスタック1702の内容を取得する。そしてステップの304で、処理実行部1710のオブジェクト領域1704を取得する。なお、標準クラスライブラリに含まれるクラスのクラス定義情報は再開処理を行う計算機上にも存在するため取得しないようにしてもよい。そして、最後にステップ305で、ステップ301、302、304で取得した各情報に、開始コード、区切りコード、終了コードを付加して、図4に示したバイト列形式の作業状態情報を作成し、暗号化を行う場合にはこれを暗号化処理部1905で暗号化し、オペレーティングシステム1902を介して作業状態ファイル103に書き込む。そして、仮想計算機1701のプロセスを終了する。
【0049】
図6に、ステップ302のスタック1702の内容を取得する処理の詳細な手順を示す。
【0050】
図示するように、この処理では、まず、ステップ2201でポインタをスタックの底に設定する。そして、ステップ2202ではポインタがスタックのトップを過ぎたかどうか判定し、トップを過ぎていたら処理を終了する。トップを過ぎていなければ、ステップ2203で、ポインタが指している項目を読み取り、ステップ2204でバイト列として保存する。そして、ステップ2205でポインタを一つスタック上部側に移し、ステップ2202の処理に戻る。
【0051】
次に、図7に、ステップ203のオブジェクト領域の内容を保存する処理の詳細の手順を示す。
【0052】
図示するように、この処理では、まず、ステップ2301ですべてのオブジェクトに対して処理が終わったかどうか判定し、終わっていれば処理を終了し、終わっていなければ、ステップ2302でオブジェクト識別子を読み取る。そして、ステップ2303でオブジェクト識別子をバイト列に書き出す。次に、ステップ2304ですべてのオブジェクトフィールドについて処理が終わったかどうか判定し、終わっていなければ、終わるまで、ステップ2305でオブジェクトフィールドの値を読み取り2306で読み取った値をバイト列に書き出す処理を繰り返す。そして、すべてのオブジェクトフィールドについて処理が終わったならば、ステップ2301の処理に戻る。
【0053】
以上、作業状態保存処理102について説明した。なお、ステップ305に代えて、ステップ301、302、303において、直接、各情報を、暗号化を行う場合にはこれを暗号化処理部1905で暗号化し、オペレーティングシステム1902を介して作業状態ファイル103に書き込むようにしてもよい。
【0054】
次に、作業状態回復処理104の詳細について説明する。
【0055】
この処理では、再開処理部207が、作業状態ファイル103から作業状態情報を読み取り、処理実行部1710内に設定する。
【0056】
図8に、作業状態回復処理104の手順を示す。
【0057】
図示するように、この処理では、仮想計算機1701のプロセスが起動された後に、ユーザより再開の指示が成されると、再開処理部207は、まず、ステップ502で、ユーザより再開の指示と共に指定された作業状態ファイル103から作業状態情報を読み出し、作業状態情報が、暗号化されている場合には、復号処理部1906で復号し、ステップ503で、作業状態情報中のプログラムカウンタの値を処理実行部1710のプログラムカウンタ1703に設定する。次にステップ504で、作業状態情報中のスタックの値を処理実行部1710のスタック201に書き込む。そして、ステップ505で、作業状態情報中のオブジェクト領域の内容を処理実行部1710のオブジェクト領域203に書き込む。最後に、ステップ506で、表示画面を中断時と同様に再現するための再描画処理を行い、処理実行部1710の実行を再開させる。実行を再開した処理実行部1710は、プログラムカウンタ1703の値の命令の次の命令からアプリケーションプログラム1901の実行を再開する。
【0058】
以上、本発明の第1実施形態について説明した。
【0059】
本第1実施形態によれば、実計算機のアーキテクチャによらず、ある実計算機上で処理を中断し、他の実計算機上で中断した処理を再開することができるという効果を達成することができる。
【0060】
以下、本発明の第2実施形態について説明する。
【0061】
図9は、本実施形態に係る中断/再開の処理の流れの概要を示したものである。
【0062】
図中、計算機603は処理を中断する実計算機、計算機605は処理を再開する計算機603とは別の実計算機であり、両計算機は、ハードウエア、オペレーティングシステムのアーキテクチャが異なっていても良い。ここで、計算機603が実行を中断する処理は、ネットワーク602を介して一台以上のサーバ計算機601と接続し、サーバ計算機601のサービスを受けている。計算機603、計算機605のソフトウエア構成は、図2に示したものと同様である。
【0063】
このような場合、計算機603で処理を中断する際には、サーバ計算機601との接続を切断すると共に、計算機605で処理を再開する際には、再開に先立ちサーバ計算機601と再接続する必要がある。
【0064】
本実施形態では、このような再開時のサーバ計算機601との再接続を可能とするために、サーバ計算機601との再接続に必要なアドレス等の情報を取得し、これも作業状態ファイル604に保存するようにする。
【0065】
すなわち、本第2実施形態では、図10に示すように、作業状態ファイル604に、第1実施形態で示した情報をマシン内部状態情報として、サーバのネットワークアドレスをネットワーク状態情報として含めた作業状態情報を作業状態ファイル604に保存する。
【0066】
以下、中断、再開時の動作の詳細について説明する。
【0067】
本第2実施形態では、計算機603上で処理の中断がたとえばユーザから指示されると、計算機603上で作業状態保存処理102が行われ、作業状態情報が作業状態ファイル604として、記憶媒体193に保存される。次に、計算機605が、処理の再開が作業状態ファイル604の指定と共に、たとえばユーザから指示されると、計算機106上で作業状態回復処理104が行われ、記憶媒体193の作業状態ファイル604から作業状態情報が読み出され、処理が再開される。
【0068】
以下、本第2実施形態に係る作業状態保存処理102と作業状態回復処理104の詳細について説明する。
【0069】
まず、作業状態保存処理102について説明する。
【0070】
図11に、この作業状態保存処理102の手順を示す。
【0071】
図示するように、この処理では、保存処理部206は、ステップ302から304で前記第1実施形態と同様に仮想計算機204のプログラムカウンタ、スタックの値、オブジェクト領域の内容を取得する。そして、ステップ801で、計算機603が接続しているサーバ計算機を検索する。図9の場合は、ネットワーク602を介して、サーバ計算機601が検索される。そして、接続しているサーバが見つかったら、ステップ802に移り、検索したサーバ計算機のネットワークアドレスを取得する。接続しているすべてのサーバに対してステップ802の処理を行い、最後に、ステップ305で、取得した各情報を作業状態情報として作業状態ファイル604に書き込む。そして、仮想計算機1701のプロセスを終了する。
【0072】
次に、作業状態回復処理104について説明する。
【0073】
図12に、作業状態回復処理104の手順を示す。
【0074】
図示するように、仮想計算機1701のプロセスが起動された後に、再開が指示されると、再開処理部207は、まず、ステップ502から505において前記第1実施形態と同様に、指定された作業状態ファイル604から作業状態情報を取得し、処理実行部1701のプログラムカウンタ、スタック、オブジェクト領域を作業状態情報に従って設定する。そして、ステップ901で、計算機605が接続しているネットワーク602にアクセスし、作業状態情報に含まれるサーバ計算機のネットワークアドレスのサーバ計算機を探す。図9の場合は、サーバ計算機601が見つかるはずである。サーバが見つかったら。ステップ902で、そのサーバ計算機に再接続を行う。作業状態情報に含まれるサーバ計算機のネットワークアドレスの全てについてステップ902を行ったなら、最後に、ステップ506で、表示画面を中断時と同様に再現するための再描画処理を行い、処理実行部1710の実行を再開させる。実行を再開した処理実行部1710は、プログラムカウンタ1703の値の命令の次の命令からアプリケーションプログラム1901の実行を再開する。
【0075】
以上、本発明の第2の実施形態について説明した。
【0076】
本第2実施形態によれば、前記第1実施形態の効果に加え、サーバ計算機からサービスの提供を受けながら行われている処理についても、実計算機のアーキテクチャによらず、ある実計算機上で中断し、他の実計算機上で再開することができるという効果を達成することができる。
【0077】
以下、本発明の第3の実施形態について説明する。
【0078】
図13は、本実施形態に係る中断/再開の処理の流れの概要を示したものである。
【0079】
図中、計算機1003は処理を中断する実計算機、計算機1007は処理を再開する計算機1003とは別の実計算機であり、両計算機は、ハードウエア、オペレーティングシステムのアーキテクチャが異なっていても良い。ここで、計算機1003が実行を中断する処理は、ネットワーク1002を介して一台以上のサーバ計算機1001と接続し、サーバ計算機1001上の仮想計算機のサービスを受けている。ここで前記第2実施形態と異なり、本実施形態では、処理を再開する計算機1003は、処理を中断する計算機1003が接続していたサーバ計算機1001と異なるサーバ計算機1005にネットワーク1006を介して接続し、処理を再開し、サーバ計算機1005上の仮想計算機からサーバ計算機1001上の仮想計算機と同じサービスを受けながら処理を実行する。ただし、ここでは、サーバ計算機上の仮想計算機は、その仮想計算機がサービスを提供する、計算機上の仮想計算機毎に起動され稼働するものとする。
【0080】
計算機1003、1005、サーバ計算機1001、1005のソフトウエア構成は、図2に示したものと同様である。
【0081】
このような場合、前記第2実施形態のように処理を再開する際にサーバ計算機と再接続するだけでは足りず、中断時にサーバ計算機1001上の仮想計算機の処理も中断させ、再開時に、この処理をサーバ計算機1005の仮想計算機に再開させる必要がある。
【0082】
本実施形態では、このような再開時のサーバ計算機1005の処理の再開を可能とするために、サーバ計算機2002上の仮想計算機のアプリケーションプログラムの実行に関する状態も、作業状態情報として作業状態ファイル1004に保存するようにする。
【0083】
すなわち、本第3実施形態では、図14に示すように、第2実施形態で示した情報に加え、サーバ計算機2002上の仮想計算機のアプリケーションプログラムの実行に関する状態を示すプログラムカウンタ、スタック、オブジェクト領域の内容をサーバマシン状態情報として作業状態情報に含め、作業状態ファイル1004に保存する。
【0084】
本第3実施形態では、計算機1003上で処理の中断がたとえばユーザから指示されると、計算機1003とサーバ計算機1001上で作業状態保存処理102が行われ、計算機1003上の作業状態保存処理102によって作業状態情報が作業状態ファイル1004として、記憶媒体193に保存される。次に、計算機1007が、処理の再開が作業状態ファイル1004の指定と共に、たとえばユーザから指示されると、計算機1007とサーバ計算機1005上で作業状態回復処理104が行わ記憶媒体193の作業状態ファイル1004から作業状態情報が読み出され、処理が再開される。ここで、サーバ計算機1001上の作業状態保存処理102は、計算機1003上の作業状態保存処理102から起動され、サーバ計算機1005上の作業状態回復処理104は、計算機1007上の作業状態回復処理104から起動される。
【0085】
以下、本第3実施形態に係る作業状態保存処理102と作業状態回復処理104の詳細について説明する。
【0086】
まず、作業状態保存処理102について説明する。
【0087】
図15に、この作業状態保存処理102の手順を示す。
【0088】
まず、計算機1003上の作業状態保存処理102の動作について説明する。
【0089】
図示するように、この処理では、ユーザから処理の中断を指示された仮想計算機1701の保存処理部206は、ステップ302から304で前記第1実施形態と同様に仮想計算機1701のプログラムカウンタ、スタックの値、オブジェクト領域の内容を取得する。ステップ801で、計算機1003が接続しているサーバ計算機を検索する。図13の場合は、サーバ計算機1001が検索される。次にステップ1202で、検索されたサーバ計算機の、計算機1003上の仮想計算機にサービスを提供している仮想計算機に対して処理の中断を要求する。そして、ステップ1203で、処理の中断を指示したサーバ計算機から送り返されてきたサーバ状態情報を取得する。そして、最後にステップ1204で、自分が最初に処理の中断を指示された計算機(つまり計算機1003)であるかどうか調べ、この場合はそうであるので、ステップ1206で、取得した各情報を作業状態情報として作業状態ファイル1004に書き込み、自仮想計算機1701のプロセスを終了する。
【0090】
次に、サーバ計算機1001上の作業状態保存処理102の動作について説明する。
【0091】
計算機1003の作業状態保存処理102から処理の中断を要求されたサーバ計算機1001上の仮想計算機1701の保存処理部206は、計算機1003の作業状態保存処理102と同様に各情報を取得する。ただし、計算機1003の作業状態保存処理102と異なり、ステップ1204で、自分が最初に処理の中断を指示された計算機(つまり計算機1003)であるかどうか調べた結果が、そうではないと判定されるので、ステップ1205で取得した各情報を、処理の中断の要求元の計算機1003に取得した情報をサーバ状態情報として送り、自仮想計算機1701のプロセスを終了する。
【0092】
次に、作業状態回復処理104について説明する。
【0093】
図16に、この作業状態回復処理104の手順を示す。
【0094】
まず、計算機1007上の作業状態回復処理104の動作について説明する。
【0095】
図示するように、計算機1007上で仮想計算機1701のプロセスが起動された後に、ユーザから処理の再開を指示された仮想計算機1701の再開処理部207は、ステップ1302で、自分が最初に再開を指示された計算機(つまり計算機1007であるかどうか)判断する。この場合は、そうであるので、ステップ1304で、作業状態ファイル1004から作業状態情報を読み取り、ステップ503から505で、作業状態情報に含まれるマシン内部状態情報に従い、自仮想計算機1701のプログラムカウンタ、スタック、オブジェクト領域を設定する。そして、作業状態情報中のサーバ状態情報のそれぞれについて(ステップ1305)、ステップ1306で、ネットワーク状態情報が示すサーバ計算機と同一のサーバ計算機に接続できるかどうか調べる。そして、接続できたら、ステップ1307でそのサーバ計算機を選択し、接続できない場合には、ステップ1307で接続できる他のサーバ計算機を選択する。そして、ステップ1308で、選択したサーバ計算機上に仮想計算機のプロセスを起動し、その仮想計算機1701に作業状態情報中のサーバ状態情報と共に、処理の再開を要求する。
【0096】
そして、全てのサーバ状態情報について以上の処理を終了したならば、ステップ506で、表示画面を中断時と同様に再現するための再描画処理を行い、処理実行部1710の実行を再開させる。実行を再開した処理実行部1710は、プログラムカウンタ1703の値の命令の次の命令からアプリケーションプログラム1901の実行を再開する。
【0097】
次に、サーバ計算機1005上の作業状態回復処理104の動作について説明する。
【0098】
計算機1007上の作業状態回復処理104によって起動され、処理の再開を要求されたサーバ計算機1005上の仮想計算機1701の再開処理部207は、ステップ1302で自分が最初に再開を指示された計算機でないと判断し、ステップ1303で要求と共に送られたサーバ状態情報を取得し、取得したサーバ状態情報を作業状態情報と見なして、以降のステップ503からの処理を、計算機1007上の作業状態回復処理104と同様に行う。
【0099】
ところで、以上の第3実施形態において、中断時に処理を中断させたサーバ計算機より少ない台数のサーバ計算機にしか、処理を再開する計算機が接続できない場合がある。このような場合には、図17に示すように、一つのサーバ計算機上に、複数の仮想計算機を起動し、起動した各仮想計算機に、異なるサーバ計算機上の仮想計算機が中断した複数の処理のそれぞれを再開させることになる。
【0100】
しかし、このとき、各サーバ計算機の負荷が均等になるように、各サーバ計算機に再開する処理を割り当てることが好ましい。
【0101】
このような割当は、たとえば、図18に示す処理手順によって実現することができる。
【0102】
すなわち、ステップ1601で、ネットワーク1409にアクセスし、接続可能なサーバ計算機を検索する。この検索をネットワーク上でブロードキャストを行い、応答したサーバを記録する方法が一般的である。次に検索したサーバ計算機をリストにし、ステップ1602で、リストの先頭にポインタを移す。次にステップ1603で、作業状態情報中のマシン状態情報を調べ、すべてのマシン状態情報が情報割り付け終わっていたら処理を終了する。
【0103】
割り付けられていないマシン状態情報があれば、ステップ1604で、ポインタの示しているサーバ計算機にマシン状態情報を割り付ける。そしてステップ1605で、ポインタがリストの最後に達しているかどうか調べる。もしポインタがリストの最後に達していたら、ステップ1606に進み、ポインタをリストの先頭に戻す。ポインタがリストの最後に達していない場合には、ステップ1607で、リストのポインタを進め、ステップ1603からの処理に戻る。
【0104】
さて、このような割り付けを行った後、各マシン状態情報について、そのマシン状態情報を割り付けたサーバ計算機に、割り付けたマシン状態情報数分の仮想計算機を起動し、各仮想計算機のそれぞれ、その仮想計算機が稼働しているサーバ計算機に割り付けたマシン状態情報の一つの共に処理の再開を要求する。これにより、少なくとも処理の数に関して、各サーバ計算機の負荷が均等になるように、各サーバ計算機に再開する処理を割り当てたことになる。
【0105】
なお、以上の手順は、ラウンドロビン方式の簡易な手順であるが、この他にサーバ計算機の能力等の情報が利用できる場合は、その情報を反映して適正な負荷分散を図るように割り付けるようにしてもよい。
【0106】
以上、第3実施形態について説明した。
【0107】
本第3実施形態によれば、上記第1、第2実施形態の効果に加え、サーバ計算機からサービスの提供を受けながら行われている処理についても、実計算機のアーキテクチャによらず、ある実計算機上で中断し、処理を再開させる他の実計算機が利用できる任意のサーバ計算機から、中断時に中断した処理が受けていたものと同様のサービスを受けて実行できるように、他の実計算機上で処理を再開することができる。また、別の観点から述べれば、あるサーバ計算機の処理と計算機の処理との組み合わせにより行われている作業を中断し、任意のサーバ計算機上の処理と計算機上の処理の組み合わせにより中断した作業が行われるように、各処理を再開できる。
【0108】
また、本第3実施形態によれば、さらに、所定台数のサーバ計算機からサービスの提供を受けながら行われている処理についても、実計算機のアーキテクチャによらず、ある実計算機上で中断し、処理を再開させる他の実計算機が利用できる前記所定台数より少ない台数の任意のサーバ計算機から、中断時に中断した処理が受けていたものと同様のサービスを受けて実行できるように、他の実計算機上で処理を再開することができる。また、別の観点から述べれば、所定台数のサーバ計算機の処理と計算機処理の組み合わせにより行われていた作業を中断し、任意の所定台数以下のサーバ計算機上の処理と任意の計算機上の処理の組み合わせにより中断した作業が行われるように、各処理を再開できる。
【0109】
ところで、以上の各実施形態における計算機、サーバ計算機のハードウエア構成は、たとえば、CPUや、主記憶、ハードディスク装置である外部記憶装置、他の外部記憶装置、通信制御装置、キーボードやポインティングデバイスなどの入力装置、表示装置などの出力装置などを備えた、一般的な電子計算機のハードウエア構成を有する。
【0110】
この場合、仮想計算機の各部は、CPUが主記憶にロードされたプログラムを実行することにより電子計算機上に具現化されるプロセスとして実現される。
【0111】
また、この主記憶にロードされCPU301によって実行されることにより、電子計算機上に仮想計算機の各部を構成するためのプログラムは、予め、外部記憶装置に記憶され、必要に応じて主記憶にロードされ、CPUによって実行される。または、可搬型の記憶媒体、たとえば、CD-ROMを扱う外部記憶装置を介して、直接、必要に応じて、可搬型の記憶媒体から主記憶にロードされ、CPUによって実行される。もしくは、一旦、可搬型の記憶媒体を扱う外部記憶装置を介して、可搬型の記憶媒体から、オペレーティングシステムの管理下となるように、ハードディスク装置などの外部記憶装置にインストールされた後、必要に応じて主記憶にロードされ、CPUによって実行される。
【0112】
たとえば、図19に示すように、記憶媒体1801は、保存処理部1705および再開処理部1706を含む仮想計算機1701を実現するプログラムを格納している記憶媒体から、インストールするようにしてもよい。また、この記憶媒体には前記プログラムを処理データと共に外部記憶装置に書き込み、実行可能とするインストーラを含めるようにしてもよい。なお、記憶媒体として、FD、MO、CD-ROM、DVD、フラッシュメモリカード、リムーバブルハードディスクなどの各種可搬な記憶媒体を用いることができる。
【0113】
また、記憶媒体からではなく、ネットワークを介して計算機、サーバ計算機に転送してインストールするようにしてもよい。
【0114】
以上、本発明の実施形態について説明した。
【0115】
なお、以上の実施形態では、計算機またはサーバ計算機の仮想計算機に処理を中断させた後に、その仮想計算機のプロセスを終了させるようにしたが、これは仮想計算機のプロセスを終了させずに、その仮想計算機に中断させた処理を継続して実行するように修正してもよい。
【0116】
また、以上の実施形態では、計算機またはサーバ計算機上に仮想計算機を起動し、起動した仮想計算機に処理を再開させたが、これは、計算機またはサーバ計算機上の既存の仮想計算機に処理を再開させるように修正してもよい。
【0117】
【発明の効果】
以上のように本発明によれば、処理の実行の中断を行った電子計算機と異なるアーキテクチャのオペレーティングシステムが稼働する電子計算機上で、処理の実行の再開を行うことを可能とすることができる。
【0118】
また、本発明は、分散処理環境上で行われている処理についても、処理の実行の中断と再開を可能とすることができる。
【図面の簡単な説明】
【図1】本発明の第1実施形態に係る処理の中断/再開の処理の流れの概要を示した図である。
【図2】本発明の第1実施形態に係る計算機のソフトウエア構成を示した図である。
【図3】本発明の第1実施形態に係る仮想計算機の処理実行部が保持するプログラムの実行に関する状態情報を示した図である。
【図4】本発明の第1実施形態に係る作業状態情報の作業状態フィルへの記憶形式を示した図である。
【図5】本発明の第1実施形態に係る作業状態保存処理の手順を示したフローチャートである。
【図6】本発明の第1実施形態に係るスタックの値の取得手順を示したフローチャートである。
【図7】本発明の第1実施形態に係るオブジェクト領域の内容の取得手順を示したフローチャートである。
【図8】本発明の第1実施形態に係る作業状態回復処理の手順を示したフローチャートである。
【図9】本発明の第2実施形態に係る処理の中断/再開の処理の流れの概要を示した図である。
【図10】本発明の第2実施形態に係る作業状態情報を示した図である。
【図11】本発明の第2実施形態に係る作業状態保存処理の手順を示したフローチャートである。
【図12】本発明の第2実施形態に係る作業状態回復処理の手順を示したフローチャートである。
【図13】本発明の第3実施形態に係る処理の中断/再開の処理の流れの概要を示した図である。
【図14】本発明の第3実施形態に係る作業状態情報を示した図である。
【図15】本発明の第3実施形態に係る作業状態保存処理の手順を示したフローチャートである。
【図16】本発明の第3実施形態に係る作業状態回復処理の手順を示したフローチャートである。
【図17】本発明の第3実施形態に係る処理の中断/再開の処理の流れの概要を示した図である。
【図18】本発明の第3実施形態に係るサーバ計算機への処理の割当手順を示したフローチャートである。
【図19】本発明の第3実施形態に係る仮想計算機を実現するプログラムのインストール手法の一例を示した図である。
【符号の説明】
101、603、1003 処理を中断する計算機
106、605、1007 処理を再開する計算機
601 サーバ計算機
1001、1401処理を中断するサーバ計算機
1005 処理を再開するサーバ計算機
1701 仮想計算機
1710 処理実行部
1705 保存処理部
1706 再開処理部
1702 スタック
1703 プログラムカウンタ
1704 オブジェクト領域
1901 アプリケーションプログラム
1902 オペレーティングシステム
1903 記憶媒体
1904 ネットワーク

Claims (6)

  1. アプリケーションプログラムを特定の種類の仮想的な電子計算機として実行する仮想計算機を有する、複数の電子計算機がネットワークを介して接続された電子計算機システムであって、
    前記複数の電子計算機は、第1種の電子計算機と、第2種の電子計算機との2種類の電子計算機とを含み、
    前記第1種の電子計算機は、
    第1の指示と第2の指示とを受け付ける受け付け手段と、
    前記受け付け手段が前記第1の指示を受け付けた場合に、自電子計算機がネットワークを介して接続している第2種の電子計算機に対して第3の指示を発行し、当該第3の指示に対する応答として、第2種の電子計算機から送られた接続仮想計算機状態情報と、現時点における自電子計算機の仮想計算機の前記アプリケーションプログラムの実行状態を特定する情報である仮想計算機状態情報と、自電子計算機がネットワークを介して接続している第2種の電子計算機を特定する情報である接続状態情報とを、記憶媒体に保存する作業状態保存手段と、
    前記受け付け手段が第2の指示を受け付けた場合に、仮想計算機状態情報が保存された記憶媒体から保存されている仮想計算機状態情報と接続仮想計算機状態情報と接続状態情報とを読み出し、接続状態情報が特定する第2種の電子計算機に自電子計算機が接続可能な場合には接続状態情報が特定する第2種の電子計算機に、接続状態情報が特定する第2種の電子計算機に自電子計算機が接続可能でない場合には自電子計算機が接続可能な第2種の電子計算機に、読み出した接続仮想計算機状態情報と共に、自電子計算機が接続可能な第2種の電子計算機の第4の指示を発行し、読み出した仮想計算機状態情報が特定する状態を、現時点における自電子計算機の仮想計算機の前記アプリケーションプログラムの実行状態として設定し、仮想計算機に、前記アプリケーションプログラムを実行させる作業状態回復手段とを有し、
    前記第2種の電子計算機は、
    前記第1種の電子計算機が発行した第3の指示と第4の指示を受信する受信手段と、
    前記受信手段が前記第3の指示を受け付けた場合に、現時点における自電子計算機の仮想計算機の前記アプリケーションプログラムの実行状態を特定する情報である接続仮想計算機状態情報を、受信した第3の指示に対する応答として、第1種の電子計算機に送る作業状態転送手段と、
    前記受信手段が第4の指示を受信した場合に、第4の指示と共に発行された接続先仮想計算機状態情報が特定する状態を、現時点における自電子計算機の仮想計算機の前記アプリケーションプログラムの実行状態として設定し、仮想計算機に、前記アプリケーションプログラムを実行させる作業状態復元手段とを有することを特徴とする電子計算機システム。
  2. アプリケーションプログラムを特定の種類の仮想的な電子計算機として実行する仮想計算機を有する、複数の電子計算機がネットワークを介して接続された電子計算機システムであって、
    前記複数の電子計算機は、第1種の電子計算機と、第2種の電子計算機との2種類の電子計算機とを含み、
    前記第1種の電子計算機は、
    第1の指示と第2の指示とを受け付ける受け付け手段と、
    前記受け付け手段が前記第1の指示を受け付けた場合に、自電子計算機がネットワークを介して接続している第2種の電子計算機に対して第3の指示を発行し、当該第3の指示に対する応答として、第2種の電子計算機から送られた接続仮想計算機状態情報と、現時点における自電子計算機の仮想計算機の前記アプリケーションプログラムの実行状態を特定する情報である仮想計算機状態情報とを、記憶媒体に保存する作業状態保存手段と、
    前記受け付け手段が第2の指示を受け付けた場合に、仮想計算機状態情報が保存された記憶媒体から保存されている仮想計算機状態情報と接続仮想計算機状態情報とを読み出し、読み出した接続仮想計算機状態情報が複数ある場合には、接続仮想計算機状態情報のそれぞれに対応する第4の指示を、対応する接続仮想計算機状態情報と共に発行し、自電子計算機が接続可能な第2種の電子計算機の数が、読み出した接続仮想計算機状態情報の数より少ないときには、自電子計算機が接続可能な第2種の電子計算機に複数の第4の指示を発行し、読み出した仮想計算機状態情報が特定する状態を、現時点における自電子計算機の仮想計算機の前記アプリケーションプログラムの実行状態として設定し、仮想計算機に、前記アプリケーションプログラムを実行させる作業状態回復手段とを有し、
    前記第2種の電子計算機は、少なくとも受信した第4の指示のそれぞれに対応する仮想計算機と作業状態復元手段と、
    前記第1種の電子計算機が発行した第3の指示と第4の指示を受信する受信手段と、
    前記受信手段が前記第3の指示を受け付けた場合に、現時点における自電子計算機の仮想計算機の前記アプリケーションプログラムの実行状態を特定する情報である接続仮想計算機状態情報を、受信した第3の指示に対する応答として、第1種の電子計算機に送る作業状態転送手段と、
    前記受信手段が第4の指示を受信した場合に、第4の指示と共に発行された接続先仮想計算機状態情報が特定する状態を、現時点における自電子計算機の前記第4の指示に対応する仮想計算機の前記アプリケーションプログラムの実行状態として設定し、仮想計算機に、前記アプリケーションプログラムを実行させる作業状態復元手段とを有する、
    ことを特徴とする電子計算機システム。
  3. 請求項1または2記載の電子計算機システムであって、
    前記仮想計算機は、アプリケーションプログラムの実行中の命令をカウントするプログラムカウンタと、アプリケーションプログラムの実行に際してデータの一時格納に用いるスタックと、アプリケーションプログラムの実行に用いる情報を格納するオブジェクト領域とを備え、前記仮想計算機の前記アプリケーションプログラムの実行状態を特定する情報とは、プログラムカウンタとスタックとオブジェクト領域の内容であることを特徴とする電子計算機システム。
  4. 請求項1、2または3記載の電子計算機システムであって、
    前記第1種の電子計算機の前記作業状態保存手段と作業状態回復手段は、第1種の電子計算機の仮想計算機内に設けられており、前記第2種の電子計算機の前記作業状態転送手段と作業状態復元手段は、第2種の電子計算機の仮想計算機内に設けられていることを特徴とする電子計算機システム。
  5. アプリケーションプログラムを特定の種類の仮想的な電子計算機として実行する仮想計算機を有する電子計算機であって、
    第1の指示と第2の指示とを受け付ける受け付け手段と、
    前記受け付け手段が前記第1の指示を受け付けた場合に、
    現時点における前記仮想計算機の前記アプリケーションプログラムの実行状態を特定する情報である仮想計算機状態情報と、
    前記電子計算機がネットワークを介して接続している他の電子計算機を特定する情報である接続状態情報と、
    前記ネットワークを介して接続している他の電子計算機の仮想計算機の前記アプリケーションプログラムの実行状態を特定する情報である接続仮 前記作業状態保存手段は、前記記憶媒体に保存する情報を暗号化する手段を有し、
    前記作業状態回復手段は、前記記憶媒体から読み出した情報を復号する手段を有する想計算機状態情報と、
    を記憶媒体に保存する作業状態保存手段と、
    前記受け付け手段が第2の指示を受け付けた場合に、前記記憶媒体から、前記仮想計算機状態情報と、前記接続状態情報と、前記接続仮想計算機状態情報と、を読み出し、読み出した前記仮想計算機状態情報が特定する状態を、現時点における前記仮想計算機の前記アプリケーションプログラムの実行状態として設定し、前記仮想計算機に、前記アプリケーションプログラムを実行させ、前記接続状態情報が示す他の電子計算機に、自電子計算機を接続して、前記接続仮想計算機状態情報を送信する作業状態回復手段と、を有し、
    前記作業状態保存手段は、前記記憶媒体に保存する情報を暗号化する手段を有し、
    前記作業状態回復手段は、前記記憶媒体から読み出した情報を復号する手段を有する、
    ことを特徴とする電子計算機。
  6. 請求項1、2、3または4記載の電子計算機システムであって、
    前記第1種の電子計算機の前記作業状態保存手段は、前記記憶媒体に保存する情報を暗号化する手段を有し、
    前記第1種の電子計算機の前記作業状態回復手段は、前記記憶媒体から読み出した情報を復号する手段を有することを特徴とする電子計算機システム。
JP17827099A 1999-06-24 1999-06-24 電子計算機における処理の中断/再開方法 Expired - Fee Related JP3993342B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP17827099A JP3993342B2 (ja) 1999-06-24 1999-06-24 電子計算機における処理の中断/再開方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP17827099A JP3993342B2 (ja) 1999-06-24 1999-06-24 電子計算機における処理の中断/再開方法

Publications (2)

Publication Number Publication Date
JP2001005679A JP2001005679A (ja) 2001-01-12
JP3993342B2 true JP3993342B2 (ja) 2007-10-17

Family

ID=16045555

Family Applications (1)

Application Number Title Priority Date Filing Date
JP17827099A Expired - Fee Related JP3993342B2 (ja) 1999-06-24 1999-06-24 電子計算機における処理の中断/再開方法

Country Status (1)

Country Link
JP (1) JP3993342B2 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1533711A4 (en) * 2002-07-08 2007-10-24 Fujitsu Ltd PARALLEL CALCULATION PROGRAM, PARALLEL CALCULATION SYSTEM AND PARALLEL CALCULATION CONTROL DEVICE
US8037474B2 (en) 2005-09-27 2011-10-11 Sony Computer Entertainment Inc. Task manager with stored task definition having pointer to a memory address containing required code data related to the task for execution
US7734827B2 (en) 2005-09-27 2010-06-08 Sony Computer Entertainment, Inc. Operation of cell processors
US8141076B2 (en) 2005-09-27 2012-03-20 Sony Computer Entertainment Inc. Cell processor methods and apparatus
US8316220B2 (en) 2005-09-27 2012-11-20 Sony Computer Entertainment Inc. Operating processors over a network
US8595747B2 (en) 2005-12-29 2013-11-26 Sony Computer Entertainment Inc. Efficient task scheduling by assigning fixed registers to scheduler
JP5365051B2 (ja) 2008-03-31 2013-12-11 富士通株式会社 管理プログラム、管理装置及び管理方法
WO2014125643A1 (ja) * 2013-02-18 2014-08-21 株式会社レイトロン アプリケーション転送システム、アプリケーション転送方法、端末、およびプログラム

Also Published As

Publication number Publication date
JP2001005679A (ja) 2001-01-12

Similar Documents

Publication Publication Date Title
US6356932B1 (en) Data processing method and device
CN102402458B (zh) 具有非对称处理器核的系统上的虚拟机和/或多级调度支持
US8418169B2 (en) Management method for managing software module and information processor
US20070113069A1 (en) Method, system, apparatus, and program product for temporary personalization of a computer terminal
KR100892417B1 (ko) 이동식 컴퓨팅 체제를 지원하는 이동식 저장 장치 및 이를이용한 이동식 컴퓨팅 체제 시스템
JP4251669B2 (ja) データ処理方法および装置
US20020174265A1 (en) Method and apparatus for caching active computing environments
JP2004234114A (ja) 計算機システム、計算機装置、オペレーティングシステムの移送方法及びプログラム
JP3993342B2 (ja) 電子計算機における処理の中断/再開方法
US7802253B2 (en) System for session management of resources and tasks having records in the lookup table for the session
KR20040087898A (ko) 프로그램 처리 시스템 및 프로그램 처리 방법, 및컴퓨터·프로그램
KR100334903B1 (ko) 내장형 실시간 소프트웨어의 원격 개발을 위한 타겟 서버 장치 및 그 제어 방법
US6594661B1 (en) Method and system for controlling access to a source application
CN110568996A (zh) 基于设备驱动程序的本地存储容量扩充系统
CN111597011A (zh) 一种基于私有云资源模型的连接方法和系统
US20010025324A1 (en) Data communication method and apparatus, and storage medium storing program for implementing the method and apparatus
US10452408B1 (en) System and method for intercepting data flow between a computer process and a file
WO2024130565A1 (zh) 任务处理方法、装置及电子设备
JP2005302055A (ja) データ処理方法および装置
CN117608654A (zh) 一种业务系统配置方法及终端
CN116244038A (zh) 虚拟机eBPF程序管理方法、系统、终端及存储介质
CN117692359A (zh) 一种端口监听方法、装置、设备及介质
JP2001043089A (ja) プログラム実行方法
JP2005284630A (ja) オペレーティングシステム
WO2000034866A1 (fr) Ordinateur, support d'enregistrement stockant un programme de traitement d'exceptions et procede de traitement d'exceptions

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040217

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20040217

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20060724

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060815

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20061013

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20070130

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070402

A911 Transfer of reconsideration by examiner before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20070406

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20070724

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070726

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100803

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110803

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees