(57)【要約】  課題  実行環境の基本性能を低下させることなく、かつ大量のメモリを必要とするこなく短時間で実行環境の転送を可能にする情報処理装置を提供する。  解決手段  基本処理を実行する基本側ＣＰＵ１００と追加処理を実行する追加側ＣＰＵ２００を備える情報処理装置であり、基本側ＣＰＵ１００に設けられた転送管理手段３００が、追加側ＣＰＵで実行される追加処理の実行環境３０の構成情報と当該実行環境に対応するメモリ内データとを含む実行環境データ１０００を他の情報処理装置に転送し、受信した実行環境データ１０００に基づいて実行環境を復元し追加側ＣＰＵを再起動する。
2008152967.tif 000002
【特許請求の範囲】
【請求項１】
基本処理を実行する基本側処理部と追加処理を実行する追加側処理部を備え、
前記基本側処理部に設けられた転送管理手段が、前記追加側処理部で実行される追加処理の実行環境の構成情報と当該実行環境に対応するメモリ内データとを含む実行環境データを他の情報処理装置に転送し、他の情報処理装置にて受信した前記実行環境データに基づいて前記実行環境を復元し前記追加側処理部を再起動することを特徴とする情報処理装置。
【請求項２】
基本処理を実行する基本側処理部と追加処理を実行する追加側処理部を備え、
前記基本側処理部に設けられた転送管理手段が、前記追加側処理部を停止させ、前記追加側処理部で実行される追加処理の実行環境の構成情報と当該実行環境に対応するメモリ内データを含む実行環境データを、前記他の情報処理装置に転送し、
他の情報処理装置から前記実行環境データを受け取ると、前記実行環境データに基づいてメモリに前記実行環境を復元し前記追加側処理部を再起動することを特徴とする情報処理装置。
【請求項３】
前記実行環境データは、前記追加処理の実行環境の種類、メモリ領域のサイズ、前記メモリ内のデータのアドレス情報を含む前記構成情報を格納するヘッダ部と、前記実行環境に対応するメモリ内データであるプログラムと当該プログラムで扱うデータを格納するデータ部とで構成されることを特徴とする請求項１又は請求項２に記載の情報処理装置。
【請求項４】
前記実行環境データに基づいて前記実行環境を復元する際に、前記構成情報に含まれるアドレス情報と、前記メモリ内データを書き込んだメモリのアドレスとが整合するように前記追加側処理部のメモリアクセスを制御する実行環境監視手段を備えることを特徴とする請求項１から請求項３の何れか１項に記載の情報処理装置。
【請求項５】
前記転送管理手段は、
前記メモリ内のデータをメモリに書き込んだ際に、前記構成情報に含まれるアドレス情報と前記メモリ内のデータを書き込んだメモリのアドレスとを整合させる制御を前記実行環境監視手段に指示することを特徴とする請求項４に記載の情報処理装置。
【請求項６】
前記転送管理手段は、
前記実行環境データを前記他の情報処理装置に移動によって転送する場合、
前記追加側処理部に、前記実行環境の動作をサスペンドさせた後に、前記追加側処理部を停止させ、
前記実行環境に対応するメモリ内データのメモリ上の領域から前記データを読み出し、
前記実行環境の前記構成情報と、読み出した前記メモリ内データとから前記実行環境データを生成し、
生成した前記実行環境データを相手先の情報処理装置に転送する
ことを特徴とする請求項１から請求項５の何れか１項に記載の情報処理装置。
【請求項７】
前記転送管理手段は、
前記実行環境データを前記他の情報処理装置にコピーによって転送する場合、
前記追加側処理部に、前記実行環境の動作をサスペンドさせ、
前記実行環境に対応するメモリ内データのメモリ上の領域から前記データを読み出し、
前記実行環境の前記構成情報と、読み出した前記メモリ内データとから前記実行環境データを生成し、
生成した前記実行環境データを相手先の情報処理装置に転送する
ことを特徴とする請求項１から請求項５の何れか１項に記載の情報処理装置。
【請求項８】
前記転送管理手段は、
他の情報処理装置から前記実行環境データを受け取る場合、
指定された前記実行環境データを受信し、
受信した前記実行環境データに含まれる構成情報に基づいて、メモリ内データを書き込むメモリ領域を決定し、当該メモリ領域を前記追加側処理部がアクセスできるように設定し、
決定した前記メモリ領域に前記実行環境データに含まれるメモリ内データを書き込み、
書き込み完了後に、前記追加側処理部の再起動を行うことを特徴とする請求項１から請求項５の何れか１項に記載の情報処理装置。
【請求項９】
前記実行環境監視手段は、
前記構成情報に含まれるアドレス情報と、前記メモリ内データを書き込んだメモリのアドレスとが整合するように、メモリの領域毎のアクセスの可否情報を格納する管理データ格納手段と、
前記管理データ格納手段の前記管理データに基づいて、前記追加側処理部による前記メモリのアクセスを制御するフィルタ手段とで構成されることを特徴とする請求項４に記載の情報処理装置。
【請求項１０】
前記実行環境監視手段は、
前記メモリ内データを書き込んだメモリのアドレスを、前記構成情報に含まれるアドレス情報と整合するように変換するアドレス変換手段と、
前記アドレス変換手段によって変換されたアドレスに基づいて前記追加側処理部による前記メモリのアクセスを制御するアクセス制御手段とで構成されることを特徴とする請求項４に記載の情報処理装置。
【請求項１１】
前記転送管理手段は、メモリ内データを書き込むメモリ領域を前記追加側処理部がアクセスできるように、前記実行環境監視手段に設定することを特徴とする請求項４、請求項９又は請求項１０の何れか１項に記載の情報処理装置。
【請求項１２】
前記転送管理手段は、
他の情報処理装置へ前記実行環境データを転送し、又は他の情報処理装置から実行環境データを受け付ける機能を有する外部接続手段と、
前記追加側処理部に対する停止と再起動を行う機能と、前記実行環境の構成情報を通知する機能を有する実行環境情報設定手段と、
前記実行環境に対応するメモリ内のデータの読み出しと前記実行環境データのメモリへの書き込みを行う機能を有するメモリアクセス手段と、
前記実行環境情報設定手段から通知される前記構成情報と、前記メモリアクセス手段からの前記実行環境に対応するメモリ内のデータから前記実行環境データを生成する実行環境データ処理手段とを備えることを特徴とする請求項１から請求項８の何れか１項に記載の情報処理装置。
【請求項１３】
基本処理を実行する基本側処理部と追加処理を実行する追加側処理部を備え、
前記基本側処理部に設けられた転送管理手段が、前記追加側処理部で実行される追加処理の実行環境の構成情報と当該実行環境に対応するメモリ内データを含む実行環境データを、前記追加側処理部の動作を実質的に停止させることなく前記他の情報処理装置に転送し、その後前記追加側処理部を再起動させるまでの間に前記追加側処理部によって更新されたデータを、追加更新データとして前記他の情報処理装置に転送し、
他の情報処理装置から前記実行環境データを受け取ると、前記実行環境データと前記追加更新データに基づいて前記実行環境を復元し前記追加側処理部を再起動することを特徴とする情報処理装置。
【請求項１４】
前記実行環境データは、前記追加処理の実行環境の種類、メモリ領域のサイズ、前記メモリ内のデータのアドレス情報を含む前記構成情報を格納するヘッダ部と、前記実行環境に対応するメモリ内データであるプログラムと当該プログラムで扱うデータを格納するデータ部とで構成されることを特徴とする請求項１３に記載の情報処理装置。
【請求項１５】
前記実行環境データに基づいて前記実行環境を復元する際に、前記構成情報に含まれるアドレス情報と、前記メモリ内データを書き込んだメモリのアドレスとが整合するように前記追加側処理部のメモリアクセスを制御する実行環境監視手段を備えることを特徴とする請求項１３又は請求項１４に記載の情報処理装置。
【請求項１６】
前記実行環境監視手段は、
前記更新管理手段からの監視指示によって、前記追加側処理部によって更新されたデータを、読み出したメモリのアドレスと対応させて、アクセス更新データ格納手段に記録するアクセス状態監視手段を有することを特徴とする請求項１５に記載の情報処理装置。
【請求項１７】
前記アクセス更新データ格納手段が、ＦＩＦＯバッファで構成されることを特徴とする請求項１６に記載の情報処理装置。
【請求項１８】
前記アクセス状態監視手段は、同一アドレスのデータが連続的に更新される場合には、少なくとも最新の更新データを前記アクセス更新データ格納手段に記録することを特徴とする請求項１６又は請求項１７に記載の情報処理装置。
【請求項１９】
前記アクセス状態監視手段は、メモリのアドレス範囲毎に予め設定された更新データの記録の可否情報に基づいて、更新データの記録が必要なアドレス範囲のデータの更新データを前記更新データ格納手段に格納することを特徴とする請求項１６又は請求項１７に記載の情報処理装置。
【請求項２０】
前記転送管理手段は、
前記実行環境データを前記他の情報処理装置に転送する場合、
前記更新データの監視を前記アクセス状態監視手段に指示し、
前記実行環境に対応するメモリ内データをメモリから読み出し、
前記実行環境の前記構成情報と、読み出した前記メモリ内データから前記実行環境データを生成し、
生成した前記実行環境データを相手先の情報処理装置に転送し、
前記アクセス更新データ格納手段に前記更新データが存在する場合に、前記更新データを読み出し、追加更新データとして相手先の情報処理装置に転送し、
前記追加側処理部に、前記実行環境の動作のサスペンドを指示し、
前記サスペンド完了後に、前記追加側処理部を一時的に停止させ、
前記アクセス状態監視手段による監視を解除する
ことを特徴とする請求項１３から請求項１９の何れか１項に記載の情報処理装置。
【請求項２１】
前記転送管理手段は、
前記アクセス更新データ格納手段に前記更新データが存在する場合又は前記更新データのあふれが発生した場合に、
前記更新データの量が所定の設定値以下となるまで、前記更新データを読み出しを繰り返し、
読み出した前記更新データを、追加更新データとして相手先の情報処理装置に転送する
ことを特徴等とする請求項２０に記載の情報処理装置。
【請求項２２】
前記転送管理手段は、
前記アクセス更新データ格納手段の前記更新データが空または十分少なくなった時点で、前記追加側処理部に、前記実行環境の動作のサスペンドを指示することを特徴とする請求項２０又は請求項２１に記載の情報処理装置。
【請求項２３】
前記転送管理手段は、
前記追加側処理部に、前記実行環境の動作のサスペンドを指示してから、前記サスペンドが完了するまでの間、
前記更新データの量が所定の設定値以下となるまで、前記更新データを読み出しを繰り返し、
読み出した前記更新データを、追加更新データとして相手先の情報処理装置に転送する
ことを特徴等とする請求項２０から請求項２２の何れか１項に記載の情報処理装置。
【請求項２４】
前記転送管理手段は、
前記アクセス状態監視手段から前記更新データのあふれの通知を受けると、
前記追加側処理部からのメモリへの書き込み要求を待ち状態とし、
前記アクセス更新データ格納手段から前記更新データを読み出し、前記更新データの空きができた時点で前記待ち状態の書き込み要求による更新データを記録する
ことを特徴とする請求項２０から請求項２３の何れか１項に記載の情報処理装置。
【請求項２５】
前記転送管理手段は、
他の情報処理装置から前記実行環境データを受け取る場合、
転送された前記実行環境データを受信し、
受信した前記実行環境データに含まれる構成情報に基づいて、メモリ内データを書き込むメモリ領域を決定し、当該メモリ領域を前記追加側処理部がアクセスできるように設定し、
決定した前記メモリ領域に前記実行環境データに含まれるメモリ内データを書き込み、
追加更新データが転送された場合、受信した前記追加更新データを決定した前記メモリ領域に書き込み、
書き込み完了後に、前記追加側処理部の再起動を行う
ことを特徴とする請求項１３から請求項２３の何れか１項に記載の情報処理装置。
【請求項２６】
前記転送管理手段は、
他の情報処理装置へ前記実行環境データを転送し、又は他の情報処理装置から実行環境データを受け付ける機能を有する外部接続手段と、
前記追加側処理部に対する停止と再起動を行う機能と、前記実行環境の構成情報を通知する機能を有する実行環境情報設定手段と、
前記実行環境に対応するメモリ内のデータの読み出しと前記実行環境データのメモリへの書き込みを行う機能を有するメモリアクセス手段と、
前記実行環境情報設定手段から通知される前記構成情報と、前記メモリアクセス手段からの前記実行環境に対応するメモリ内のデータから前記実行環境データを生成する実行環境データ処理手段とを備えることを特徴とする請求項１３から請求項２５の何れか１項に記載の情報処理装置。
【請求項２７】
基本処理を実行する複数の基本側処理部と、追加処理を実行する複数の追加側処理部を備え、
前記基本側処理部に設けられた転送管理手段が、前記追加側処理部で実行される追加処理の実行環境の情報と当該実行環境に対応するメモリ内データを含む実行環境データを他の基本側処理部に転送し、当該基本側処理部の前記転送手段が、受信した前記実行環境データに基づいた前記実行環境を前記追加側処理部で起動することを特徴とする情報処理装置。
【請求項２８】
基本処理を実行する複数の基本側処理部と、追加処理を実行する複数の追加側処理部を備え、
前記基本側処理部に設けられた転送管理手段が、前記追加側処理部を停止させ、前記追加側処理部で実行される追加処理の実行環境の構成情報と当該実行環境に対応するメモリ内データを含む実行環境データを、前記他の基本側処理部に転送し、
当該他の基本側処理部の転送管理手段が、前記実行環境データに基づいてメモリに前記実行環境を復元し前記追加側処理部を再起動することを特徴とする情報処理装置。
【請求項２９】
基本処理を実行する複数の基本側処理部と、追加処理を実行する複数の追加側処理部を備え、
前記基本側処理部に設けられた転送管理手段が、前記追加側処理部で実行される追加処理の実行環境の構成情報と当該実行環境に対応するメモリ内データを含む実行環境データを、前記追加側処理部の動作を実質的に停止させることなく前記他の基本側処理部に転送し、その後前記追加側処理部を再起動させるまでの間に前記追加側処理部によって更新されたデータを、追加更新データとして前記他の基本側処理部に転送し、
他の基本側処理部の転送管理手段が、前記実行環境データと前記追加更新データに基づいて前記実行環境を復元し前記追加側処理部を再起動することを特徴とする情報処理装置。
【請求項３０】
基本処理を実行する基本側処理部と追加処理を実行する追加側処理部を備える情報処理装置間で、前記追加側処理部で実行される追加処理の実行環境を転送する際に、
転送側の前記情報処理装置の前記基本側処理部が、前記追加側処理部で実行される追加処理の実行環境の構成情報と当該実行環境に対応するメモリ内データとを含む実行環境データを他の情報処理装置に転送し、受信側の前記情報処理装置の基本処理部が受信した前記実行環境データに基づいて前記実行環境を復元し前記追加側処理部を再起動することを特徴とする実行環境転送方法。
【請求項３１】
基本処理を実行する基本側処理部と追加処理を実行する追加側処理部を備える情報処理装置間で、前記追加側処理部で実行される追加処理の実行環境を転送する際に、
転送側の前記情報処理装置の前記基本側処理部が、前記追加側処理部を停止させ、前記追加側処理部で実行される追加処理の実行環境の構成情報と当該実行環境に対応するメモリ内データを含む実行環境データを、前記他の情報処理装置に転送し、
受信側の前記情報処理装置の基本処理部が、受信した前記実行環境データに基づいてメモリに前記実行環境を復元し前記追加側処理部を再起動することを特徴とする実行環境転送方法。
【請求項３２】
前記実行環境データは、前記追加処理の実行環境の種類、メモリ領域のサイズ、前記メモリ内のデータのアドレス情報を含む前記構成情報を格納するヘッダ部と、前記実行環境に対応するメモリ内データであるプログラムと当該プログラムで扱うデータを格納するデータ部とで構成されることを特徴とする請求項３０又は請求項３１に記載の実行環境転送方法。
【請求項３３】
受信側の前記情報処理装置の実行環境監視手段が、前記実行環境データに基づいて前記実行環境を復元する際に、前記構成情報に含まれるアドレス情報と、前記メモリ内データを書き込んだメモリのアドレスとが整合するように前記追加側処理部のメモリアクセスを制御することを特徴とする請求項３０から請求項３２の何れか１項に記載の実行環境転送方法。
【請求項３４】
受信側の前記情報処理装置の実行環境監視手段が、
前記構成情報に含まれるアドレス情報と、前記メモリ内データを書き込んだメモリのアドレスとが整合するように、メモリの領域毎のアクセスの可否情報を格納する管理データに基づいて、前記追加側処理部による前記メモリのアクセスを制御することを特徴とする請求項３３に記載の実行環境転送方法。
【請求項３５】
受信側の前記情報処理装置の実行環境監視手段が、
前記メモリ内データを書き込んだメモリのアドレスを、前記構成情報に含まれるアドレス情報と整合するように変換し、
変換されたアドレスに基づいて前記追加側処理部による前記メモリのアクセスを制御することを特徴とする請求項３３に記載の実行環境転送方法。
【請求項３６】
前記転送管理手段は、
前記実行環境データを前記他の情報処理装置に移動によって転送する場合、
前記追加側処理部に、前記実行環境の動作をサスペンドさせた後に、前記追加側処理部を停止させ、
前記実行環境に対応するメモリ内データのメモリ上の領域から前記データを読み出し、
前記実行環境の前記構成情報と、読み出した前記メモリ内データとから前記実行環境データを生成し、
生成した前記実行環境データを相手先の情報処理装置に転送する
ことを特徴とする請求項３０から請求項３５の何れか１項に記載の実行環境転送方法。
【請求項３７】
転送側の前記情報処理装置の前記基本側処理部は、
前記実行環境データを前記他の情報処理装置にコピーによって転送する場合、
前記追加側処理部に、前記実行環境の動作をサスペンドさせ、
前記実行環境に対応するメモリ内データのメモリ上の領域から前記データを読み出し、
前記実行環境の前記構成情報と、読み出した前記メモリ内データとから前記実行環境データを生成し、
生成した前記実行環境データを相手先の情報処理装置に転送する
ことを特徴とする請求項３０から請求項３６の何れか１項に記載の実行環境転送方法。
【請求項３８】
受信側の前記情報処理装置の基本処理部は、
他の情報処理装置から前記実行環境データを受け取る場合、
指定された前記実行環境データを受信し、
受信した前記実行環境データに含まれる構成情報に基づいて、メモリ内データを書き込むメモリ領域を決定し、当該メモリ領域を前記追加側処理部がアクセスできるように設定し、
決定した前記メモリ領域に前記実行環境データに含まれるメモリ内データを書き込み、
書き込み完了後に、前記追加側処理部の再起動を行うことを特徴とする請求項３０から請求項３５の何れか１項に記載の実行環境転送方法。
【請求項３９】
基本処理を実行する基本側処理部と追加処理を実行する追加側処理部を備える情報処理装置間で、前記追加側処理部で実行される追加処理の実行環境を転送する際に、
転送側の前記情報処理装置の前記基本側処理部が、前記追加側処理部で実行される追加処理の実行環境の構成情報と当該実行環境に対応するメモリ内データを含む実行環境データを、前記追加側処理部の動作を実質的に停止させることなく前記他の情報処理装置に転送し、その後前記追加側処理部を再起動させるまでの間に前記追加側処理部によって更新されたデータを、追加更新データとして前記他の情報処理装置に転送し、
受信側の前記情報処理装置の基本処理部が、前記実行環境データと前記追加更新データに基づいて前記実行環境を復元し前記追加側処理部を再起動することを特徴とする実行環境転送方法。
【請求項４０】
前記実行環境データは、前記追加処理の実行環境の種類、メモリ領域のサイズ、前記メモリ内のデータのアドレス情報を含む前記構成情報を格納するヘッダ部と、前記実行環境に対応するメモリ内データであるプログラムと当該プログラムで扱うデータを格納するデータ部とで構成されることを特徴とする請求項３９に記載の実行環境転送方法。
【請求項４１】
受信側の前記情報処理装置の実行環境監視手段が、前記実行環境データに基づいて前記実行環境を復元する際に、前記構成情報に含まれるアドレス情報と、前記メモリ内データを書き込んだメモリのアドレスとが整合するように前記追加側処理部のメモリアクセスを制御することを特徴とする請求項３９又は請求項４０に記載の実行環境転送方法。
【請求項４２】
転送側の前記情報処理装置の実行環境監視手段が、
監視指示によって、前記追加側処理部によって更新されたデータを、読み出したメモリのアドレスと対応させて、アクセス更新データ格納手段に記録させることを特徴とする請求項４１に記載の実行環境転送方法。
【請求項４３】
前記アクセス更新データ格納手段が、ＦＩＦＯバッファで構成されることを特徴とする請求項４２に記載の実行環境転送方法。
【請求項４４】
前記実行環境監視手段は、同一アドレスのデータが連続的に更新される場合には、少なくとも最新の更新データを前記アクセス更新データ格納手段に記録することを特徴とする請求項４２又は請求項４３に記載の実行環境転送方法。
【請求項４５】
転送側の前記情報処理装置の前記基本側処理部は、
前記実行環境監視手段に前記更新データの監視を指示し、
前記実行環境に対応するメモリ内データをメモリから読み出し、
前記実行環境の前記構成情報と、読み出した前記メモリ内データから前記実行環境データを生成し、
生成した前記実行環境データを相手先の情報処理装置に転送し、
前記アクセス更新データ格納手段に前記更新データが存在する場合に、前記更新データを読み出し、追加更新データとして相手先の情報処理装置に転送し、
前記追加側処理部に、前記実行環境の動作のサスペンドを指示し、
前記サスペンド完了後に、前記追加側処理部を一時的に停止させ、
前記実行環境監視手段による監視を解除する
ことを特徴とする請求項４０から請求項４４の何れか１項に記載の実行環境転送方法。
【請求項４６】
転送側の前記情報処理装置の前記基本側処理部は、
前記アクセス更新データ格納手段に前記更新データが存在する場合又は前記更新データのあふれが発生した場合に、
前記更新データの量が所定の設定値以下となるまで、前記更新データを読み出しを繰り返し、
読み出した前記更新データを、追加更新データとして相手先の情報処理装置に転送する
ことを特徴等とする請求項４５に記載の実行環境転送方法。
【請求項４７】
転送側の前記情報処理装置の前記基本側処理部は、
前記アクセス更新データ格納手段の前記更新データが空または十分少なくなった時点で、前記追加側処理部に、前記実行環境の動作のサスペンドを指示することを特徴とする請求項４５又は請求項４６に記載の実行環境転送方法。
【請求項４８】
転送側の前記情報処理装置の前記基本側処理部は、
前記追加側処理部に、前記実行環境の動作のサスペンドを指示してから、前記サスペンドが完了するまでの間、
前記更新データの量が所定の設定値以下となるまで、前記更新データを読み出しを繰り返し、
読み出した前記更新データを、追加更新データとして相手先の情報処理装置に転送する
ことを特徴等とする請求項４５から請求項４７の何れか１項に記載の実行環境転送方法。
【請求項４９】
転送側の前記情報処理装置の前記基本側処理部は、
前記アクセス状態監視手段から前記更新データのあふれの通知を受けると、
前記追加側処理部からのメモリへの書き込み要求を待ち状態とし、
前記アクセス更新データ格納手段から前記更新データを読み出し、前記更新データの空きができた時点で前記待ち状態の書き込み要求による更新データを記録する
ことを特徴とする請求項４５から請求項４８の何れか１項に記載の実行環境転送方法。
【請求項５０】
受信側の前記情報処理装置の基本処理部は、
他の情報処理装置から前記実行環境データを受け取る場合、
転送された前記実行環境データを受信し、
受信した前記実行環境データに含まれる構成情報に基づいて、メモリ内データを書き込むメモリ領域を決定し、当該メモリ領域を前記追加側処理部がアクセスできるように設定し、
決定した前記メモリ領域に前記実行環境データに含まれるメモリ内データを書き込み、
追加更新データが転送された場合、受信した前記追加更新データを決定した前記メモリ領域に書き込み、
書き込み完了後に、前記追加側処理部の再起動を行う
ことを特徴とする請求項３９から請求項４９の何れか１項に記載の実行環境転送方法。
【請求項５１】
基本処理を実行する基本側処理部と追加処理を実行する追加側処理部を備える情報処理装置間で、前記追加側処理部で実行される追加処理の実行環境を転送するために、
前記情報処理装置に、
転送側の前記情報処理装置の前記基本側処理部が、前記追加側処理部で実行される追加処理の実行環境の構成情報と当該実行環境に対応するメモリ内データとを含む実行環境データを他の情報処理装置に転送する処理と、受信側の前記情報処理装置の基本処理部が受信した前記実行環境データに基づいて前記実行環境を復元し前記追加側処理部を再起動する処理を実行させることを特徴とする実行環境転送プログラム。
【請求項５２】
基本処理を実行する基本側処理部と追加処理を実行する追加側処理部を備える情報処理装置間で、前記追加側処理部で実行される追加処理の実行環境を転送するために、
前記情報処理装置に、
転送側の前記情報処理装置の前記基本側処理部が、前記追加側処理部を停止させ、前記追加側処理部で実行される追加処理の実行環境の構成情報と当該実行環境に対応するメモリ内データを含む実行環境データを、前記他の情報処理装置に転送する処理と、
受信側の前記情報処理装置の基本処理部が、受信した前記実行環境データに基づいてメモリに前記実行環境を復元し前記追加側処理部を再起動する処理を実行させることを特徴とする実行環境転送プログラム。
【請求項５３】
基本処理を実行する基本側処理部と追加処理を実行する追加側処理部を備える情報処理装置間で、前記追加側処理部で実行される追加処理の実行環境を転送するために、
前記情報処理装置に、
転送側の前記情報処理装置の前記基本側処理部が、前記追加側処理部で実行される追加処理の実行環境の構成情報と当該実行環境に対応するメモリ内データを含む実行環境データを、前記追加側処理部の動作を停止することなく前記他の情報処理装置に転送する処理と、その後前記追加側処理部を再起動させるまでの間に前記追加側処理部によって更新されたデータを、追加更新データとして前記他の情報処理装置に転送する処理と、
受信側の前記情報処理装置の基本処理部が、前記実行環境データと前記追加更新データに基づいて前記実行環境を復元し前記追加側処理部を再起動する処理を実行させることを特徴とする実行環境転送プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置に関し、特に基本処理を実行する基本側処理部と追加処理を実行する追加側処理部を備える情報処理装置と、情報処理装置で実行される実行環境を他の情報処理装置に転送する実行環境転送方法、そのプログラムに関するものである。
【背景技術】
【０００２】
これまでサーバ等のコンピュータ装置に導入したアプリケーションやデバイス等のプログラムを、ネットワーク通信を介して他の端末装置上で実行させるサーバ・クライアントシステムが提供されている。【０００３】
このようなサーバ・クライアントシステムでは、サーバ装置上のアプリケーションやデバイスを端末装置上で利用するだけであり、オペレーティングシステム（ＯＳ）とそのＯＳ上で動作するアプリケーションやデバイス等のプログラムとを含めた実行環境を、サーバ装置から端末装置に転送することは不可能であった。【０００４】
ＯＳとＯＳ上で動作するアプリケーションやデバイスとを含めた実行環境そのものを、あるコンピュータ装置から他のコンピュータ装置に転送して利用するための関連技術が、例えば、特許文献１（特開２００６−２４４４８１号公報）に開示されている。【０００５】
この特許文献１に記載のシステムにおいては、クラスタコンピューティングシステムの複数のノードで複数の仮想マシンを実行させると共に、あるノード上の仮想マシンを、他のノードへマイグレーションする技術を開示している。特許文献１に記載の技術を用いることで、ある装置のＯＳを含む実行環境を仮想マシンとして他の装置へ転送（マイグレーション）することが可能になる。【０００６】
また、特許文献２（特開２００４−２３４１１４号公報）には、複数の計算機間でＯＳを移送するための計算機システムが開示されている。この特許文献２では、ある計算機からＯＳのコンテキストを通信路を介して他の計算機に送信し、他の計算機上で受信したＯＳを復元することで計算機間のＯＳの移送を可能にする。
【特許文献１】特開２００６−２４４４８１号公報
【特許文献２】特開２００４−２３４１１４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
上述した特許文献１に記載されるような仮想マシンを利用して実行環境を転送する場合には、仮想マシン環境を一旦ファイルとしてメモリ上に保存し、その後に仮想マシン環境を他の装置へ転送する必要があるため、大量のメモリを必要とする共に、実行環境の転送に時間がかかるという問題点があった。【０００８】
また、実行環境を仮想マシンによって構築しているため、実行環境の基本性能が低くなってしまうという問題点もある。【０００９】
また、特許文献２に記載される計算機システムでは、ＯＳを複数の計算機間で移送するだけであり、ＯＳを含む実行環境そのものを移送することができないという問題点を有していた。【００１０】
（発明の目的）
本発明の目的は上述した課題である、実行環境の基本性能を低下させることなく、かつ大量のメモリを必要とするこなく短時間で実行環境の転送を可能にする情報処理装置、実行環境転送方法及びそのプログラムを提供することにある。
【課題を解決するための手段】
【００１１】
本発明の第１の情報処理装置は、基本処理を実行する基本側処理部と追加処理を実行する追加側処理部を備え、基本側処理部に設けられた転送管理手段が、追加側処理部で実行される追加処理の実行環境の構成情報と当該実行環境に対応するメモリ内データとを含む実行環境データを他の情報処理装置に転送し、受信した実行環境データに基づいて実行環境を復元し追加側処理部を再起動する。【００１２】
本発明の第２の情報処理装置は、基本処理を実行する基本側処理部と追加処理を実行する追加側処理部を備え、基本側処理部に設けられた転送管理手段が、追加側処理部を停止させ、追加側処理部で実行される追加処理の実行環境の構成情報と当該実行環境に対応するメモリ内データを含む実行環境データを、他の情報処理装置に転送し、他の情報処理装置から実行環境データを受け取ると、実行環境データに基づいてメモリに実行環境を復元し追加側処理部を再起動する。【００１３】
本発明の第１の実行環境転送方法は、基本処理を実行する基本側処理部と追加処理を実行する追加側処理部を備える情報処理装置間で、追加側処理部で実行される追加処理の実行環境を転送する際に、転送側の情報処理装置の基本側処理部が、追加側処理部で実行される追加処理の実行環境の構成情報と当該実行環境に対応するメモリ内データとを含む実行環境データを他の情報処理装置に転送し、受信側の情報処理装置の基本処理部が受信した実行環境データに基づいて実行環境を復元し追加側処理部を再起動する。【００１４】
本発明の第２の実行環境転送方法は、基本処理を実行する基本側処理部と追加処理を実行する追加側処理部を備える情報処理装置間で、追加側処理部で実行される追加処理の実行環境を転送する際に、転送側の情報処理装置の基本側処理部が、追加側処理部を停止させ、追加側処理部で実行される追加処理の実行環境の構成情報と当該実行環境に対応するメモリ内データを含む実行環境データを、他の情報処理装置に転送し、受信側の情報処理装置の基本処理部が、受信した実行環境データに基づいてメモリに実行環境を復元し追加側処理部を再起動する。【００１５】
本発明の第１の実行環境転送プログラムは、基本処理を実行する基本側処理部と追加処理を実行する追加側処理部を備える情報処理装置間で、追加側処理部で実行される追加処理の実行環境を転送するために、情報処理装置に、転送側の情報処理装置の基本側処理部が、追加側処理部で実行される追加処理の実行環境の構成情報と当該実行環境に対応するメモリ内データとを含む実行環境データを他の情報処理装置に転送する処理と、受信側の情報処理装置の基本処理部が受信した実行環境データに基づいて実行環境を復元し追加側処理部を再起動する処理を実行させる。【００１６】
本発明の第２の実行環境転送プログラムは、基本処理を実行する基本側処理部と追加処理を実行する追加側処理部を備える情報処理装置間で、追加側処理部で実行される追加処理の実行環境を転送するために、情報処理装置に、転送側の情報処理装置の基本側処理部が、追加側処理部を停止させ、追加側処理部で実行される追加処理の実行環境の構成情報と当該実行環境に対応するメモリ内データを含む実行環境データを、他の情報処理装置に転送する処理と、受信側の情報処理装置の基本処理部が、受信した実行環境データに基づいてメモリに実行環境を復元し追加側処理部を再起動する処理を実行させる。
【発明の効果】
【００１７】
本発明によれば、追加処理の実行環境の基本性能を低下させることなく、かつ大量のメモリを必要とするこなく短時間で実行環境を転送することが可能となる。
【図面の簡単な説明】
【００１８】
【図１】本発明の第１の実施例による情報処理装置の全体構成を示すブロック図である。
【図２】本発明の第１の実施例による転送管理手段の構成を示すブロック図である。
【図３】本発明の第１の実施例による実行環境監視手段の構成を示すブロック図である。
【図４】本発明の第１の実施例によるＣＰＵ管理データ格納手段に格納されるＣＰＵ管理データの構成例を示す。
【図５】本発明の第１の実施例によるメモリの構成例を示すブロック図である。
【図６】本発明の第１の実施例による追加処理側実行環境の転送に用いる実行環境データの構成を示す図である。
【図７】本発明の第１の実施例の停止型転送方式による追加処理側実行環境の移動処理（サスペンド・アップロード）を示す図である。
【図８】本発明の第１の実施例の停止型転送方式による追加処理側実行環境の移動処理（サスペンド・アップロード）における転送管理手段の詳細な動作を示す図である。
【図９】第１の実施例の停止型転送方式による追加処理側実行環境の移動処理（ダウンロード・レジューム）を示す図である。
【図１０】本発明の第１の実施例の停止型転送方式による追加処理側実行環境の移動処理（ダウンロード・レジューム）における転送管理手段の詳細な動作を示す図である。
【図１１】第１の実施例の停止型転送方式による追加処理側実行環境のコピー処理を示す図である。
【図１２】本発明の第１の実施例の停止型転送方式による追加処理側実行環境のコピー処理における転送管理手段の詳細な動作を示す図である。
【図１３】本発明の第２の実施例による情報処理装置の全体構成を示すブロック図である。
【図１４】本発明の第２の実施例による転送管理手段の構成を示すブロック図である。
【図１５】本発明の第２の実施例による実行環境監視手段の構成を示すブロック図である。
【図１６】本発明の第２の実施例によるアクセス更新データ格納手段に格納されるアクセス更新データの例を示す図である。
【図１７】本発明の第２の実施例によるアクセス状態監視手段とアクセス更新データ格納手段の状態遷移を模式的に示す図である。
【図１８】本発明の第２の実施例における実行環境監視手段による更新監視設定と解除の動作を示す図である。
【図１９】本発明の第２の実施例における追加側ＣＰＵによるメモリの読み出し動作を示す図である。
【図２０】本発明の第２の実施例における監視状態中の追加側ＣＰＵによるメモリへの書き込み動作を示す図である。
【図２１】本発明の第２の実施例におけるアクセス更新データの読み出し動作を示す図である。
【図２２】本発明の第２の実施例におけるアクセス更新データのあふれが発生した場合の動作を示す図である。
【図２３】本発明の第２の実施例におけるアクセス更新データのあふれを解消するための動作を示す図である。
【図２４】本発明の第２の実施例における転送管理手段による更新監視設定と解除の指示動作を示す図である。
【図２５】本発明の第２の実施例におけるアクセス更新データのあふれ通知に関する動作を示す図である。
【図２６】本発明の第２の実施例における無停止型転送方式による無停止切替処理の全体的な動作内容を示す図である。
【図２７】本発明の第２の実施例による無停止切替送信における送信側の情報処理装置の基本処理側と追加処理側の動作内容を説明するフローチャートである。
【図２８】本発明の第２の実施例による無停止切替送信における転送管理手段の詳細な動作を示す図である。
【図２９】本発明の第２の実施例による無停止切替受信における受信側の情報処理装置の基本処理側と追加処理側の動作内容を説明するフローチャートである。
【図３０】本発明の第２の実施例による無停止切替受信における受信側の転送管理手段１３００の詳細な動作を示す図である。
【図３１】本発明の第３の実施例による情報処理装置の実行環境監視手段の構成を示すブロック図である。
【図３２】本発明の第４の実施例による情報処理装置の構成を示すブロック図である。
【図３３】本発明による情報処理装置を適用した応用例１を説明する図である。
【図３４】本発明による情報処理装置を適用した応用例２を説明する図である。
【図３５】本発明による情報処理装置を適用した変形例を説明する図である。
【発明を実施するための最良の形態】
【００１９】
以下、本発明の好適な実施例について図面を参照して詳細に説明する。【００２０】
（第１の実施例）
（構成の説明）
図1は、本発明の第１の実施例による情報処理装置の全体構成を示すブロック図である。【００２１】
本発明の第１の実施例による情報処理装置１０は、基本処理の実行環境（以下、基本処理側実行環境２０）を形成する第１のＣＰＵである基本側ＣＰＵ１００と追加処理の実行環境（以下、追加処理側実行環境３０）を形成する第２のＣＰＵである追加側ＣＰＵ２００を備えるマルチコアあるいはマルチプロセッサ構成を有している。【００２２】
ここでは、上記基本側ＣＰＵ１００上で実行されるＯＳ１１０と基本処理を含む環境を基本処理側実行環境２０と、上記追加側ＣＰＵ２００上で実行される、ＯＳ２１０と追加処理（ソフトウェア）を含む環境を追加処理側実行環境３０と定義する。【００２３】
第１の実施例においては、ある情報処理装置から他の情報処理装置に対して追加処理側実行環境３０を転送（移動又はコピー）する際、又はある情報処理装置に現用の追加処理側実行環境３０と異なる他の追加処理側実行環境３０を転送（移動又はコピー）して実行させる際に、現用の追加処理側実行環境３０を明示的に一旦停止させてから新たに追加処理側実行環境３０を転送する停止型転送方式の情報処理装置について説明する。【００２４】
基本側ＣＰＵ１００上では、オペレーティングシステム（ＯＳ）１１０が実行され、そのＯＳ１１０の制御の元で情報処理装置に本来組み込まれている基本処理（ハードウェアやソフトウェアによって実現される各種機能）が実行される。【００２５】
追加側ＣＰＵ２００上では、オペレーティングシステム（ＯＳ）２１０が実行され、そのＯＳ２１０の制御の元で、情報処理装置に任意に追加して使用され又は削除される追加処理（ソフトウェアによって実現される追加機能）が実行される。【００２６】
なお、基本側のＯＳ１１０と追加側のＯＳ２１０の種類は、それぞれ同じＯＳであってもよいし、互いに異なるＯＳであってもよい。【００２７】
基本処理側実行環境２０には、ＯＳ１１０で制御されるハードウェア又はソフトウェアによって実現され、またはＯＳ１１０に依存することなく自律的に動作可能な転送管理手段３００が設けられている。【００２８】
基本側ＣＰＵ１００と追加側ＣＰＵ２００は、実行環境監視手段４００を経由して互いに通信可能に接続され、かつメモリ５００とＩ／Ｏインタフェース６００（ネットワークや他の周辺装置との入出力インタフェース）に接続されている。【００２９】
基本処理側実行環境２０は、基本側ＣＰＵ１００上でマイグレーションされることなく固定的に動作する実行環境である。具体的には、転送管理手段３００や、外部の装置からの通知に応じて、追加側のＯＳ２１０のアップデートなど、ユーザが直接認識することのない処理等を実現する。【００３０】
また、図１では、基本処理側実行環境２０が１つの場合を説明したが、基本用ＣＰＵ１００とＯＳ１１０を複数備えることで複数の基本処理側実行環境２０が存在する構成であってもよい。その場合、少なくと１つの実行環境に１つ転送管理手段３００が必要である。【００３１】
追加処理側実行環境３０は、情報処理装置間で転送（移動又はコピー）することが可能な実行環境であり、割り当てられた追加側ＣＰＵ２００上で動作する。また、この追加処理側実行環境３０は、情報処理装置においてユーザが実際に操作する追加処理（情報処理装置上で実行される各種アプリケーション等による機能）、あるいは、ユーザが情報処理装置上で直接認識できる実行環境を実現する。【００３２】
上記基本処理側実行環境２０に設けられる転送管理手段３００は、実行環境監視手段４００と連携して追加処理側実行環境３０の転送（移動又はコピー）を制御する機能を有する。【００３３】
具体的には、追加処理側実行環境３０の動作を停止（サスペンド）させてアップロードする処理において、転送管理手段３００は、追加処理側実行環境３０のサスペンドを指示する機能、実行環境データのメモリ５００からの読み出す機能、その実行環境データを外部の情報処理装置へ送信する機能、実行環境監視手段４００による設定の解除を指示する機能を提供する。【００３４】
転送管理手段３００への入力情報は、実行環境データであり、出力情報は、実行環境データ、実行環境監視手段による設定解除の指示情報である。【００３５】
また、追加処理側実行環境３０をダウンロードして再開する処理において、実行環境データを外部から受信する機能、受信した実行環境データをメモリ５００への展開させる機能、実行環境監視手段４００に環境設定を指示する機能、追加処理側実行環境３０を起動させる機能を提供する。【００３６】
その場合の転送管理手段３００への入力情報は、実行環境データであり、その出力情報は、実行環境データと、実行環境監視手段４００による環境設定情報である。【００３７】
図２を参照して転送管理手段３００の構成について説明する。
転送管理手段３００は、外部接続手段３１０、イベント受信手段３２０、メモリアクセス手段３３０、実行環境情報設定手段３４０、実行環境データ処理手段３５０を備えて構成される。【００３８】
外部接続手段３１０は、実行環境データ１０００のダウンロード又はアップロード処理において、Ｉ／Ｏインタフェース６００を介して、他の情報処理装置へ実行環境データ１０００を転送し、又は他の情報処理装置から実行環境データ１０００を受け付ける機能を有する。【００３９】
イベント受信手段３２０は、追加処理側実行環境３０のサスペンド・アップロード動作、ダウンロード動作、コピー動作の指示を受け、外部接続手段３１０に実行環境データ１０００のダウンロードを指示し、あるいは実行環境情報設定手段３４０に、追加処理側実行環境３０のサスペンドを指示する機能等を有する。【００４０】
メモリアクセス手段３３０は、実行環境情報設定手段３４０からの読み出し先や書き込み先のメモリ領域の通知によってメモリ５００からデータを読み出し又はメモリ５００にデータを書き込む機能等を有する。【００４１】
実行環境情報設定手段３４０は、イベント受信手段３２０からの追加処理側実行環境３０のサスペンドを指示によって、追加側ＣＰＵ２００に対して、動作中の追加処理側実行環境３０のサスペンドを指示し、追加側ＣＰＵのクロック停止やクロック供給、電源の停止や供給、リセットやリセット解除を行う機能を有する。【００４２】
さらに、実行環境情報設定手段３４０は、追加側ＣＰＵ２００に対するアクセス制御の解除を実行環境監視手段４００に指示する機能、メモリアクセス手段３３０に、読み出し先や書き込み先のメモリ領域を通知する機能、割り当てた物理アドレス・領域サイズなどの情報を実行環境データ処理手段３５０や外部接続手段３１０へ通知する機能、実行環境データ１０００のヘッダ部１１００の情報に基づいた解析を行う機能を有する。【００４３】
実行環境データ処理手段３５０は、実行環境情報設定手段３４０から通知された割り当てた物理アドレス・領域サイズなどの情報、メモリアクセス手段３３０から送信された追加処理側実行環境３０に対応するデータから実行環境データ１０００を生成する機能を有する。【００４４】
実行環境監視手段４００は、追加側ＣＰＵ２００からメモリ５００へのアクセスを制御する機能を提供する。【００４５】
この実行環境監視手段４００は、追加処理側実行環境３０の実行環境データをダウンロードしてメモリ５００に書き込んだ場合に、実行環境データを書き込んだメモリ領域のアドレスが、アップロード元の情報処理装置のメモリ領域のアドレスと異なる場合に、ダウンロード先のメモリ領域のアドレスとアップロード元のメモリ領域のアドレスとが整合するように追加側ＣＰＵ２００からのアクセスを制御する。【００４６】
具体的には、追加処理側実行環境３０を停止（サスペンド）させてアップロードする処理において、後述するＣＰＵ管理データに基づいて、基本処理側実行環境２０及び追加処理側実行環境３０からのアクセスを監視する機能を提供する。ＣＰＵ管理データに設定される設定情報に反する不正なアクセスに対しては、当該アクセスを要求した実行環境に対してエラーを通知する。【００４７】
この場合の実行環境監視手段４００への入力情報は、環境設定情報であり、出力情報は、エラー情報である。【００４８】
また、追加処理側実行環境３０をダウンロードして再開する処理において、ＣＰＵ管理データに従い、実行環境からのアクセスを監視する機能を提供する。ＣＰＵ管理データに設定される設定情報に反する不正なアクセスに対しては、当該アクセスを要求した実行環境に対してエラーを通知する。【００４９】
この場合の実行環境監視手段４００への入力情報は、設定情報であり、出力情報は、エラー情報である。【００５０】
図３を参照して実行環境監視手段４００の構成について説明する。【００５１】
実行環境監視手段４００は、ＣＰＵフィルタ手段４１１と、ＣＰＵ管理データ格納手段４１２から構成されるアクセス制御手段４１０を備えている。【００５２】
ＣＰＵフィルタ手段４１１は、システムバスを介してある基本側ＣＰＵ１００又は追加側ＣＰＵ２００からのアクセス要求を受けると、ＣＰＵ管理データ格納手段４１２から読み出したＣＰＵ管理データ４２１に基づいて、当該アクセス要求の拒否を判定するフィルタ機能を提供する。【００５３】
図４に、ＣＰＵ管理データ格納手段４１２に格納されるＣＰＵ管理データ４２０の構成例を示す。【００５４】
ＣＰＵ管理データ４２０には、図示のように、メモリ５００の各領域に対する基本側ＣＰＵ１００と追加型ＣＰＵ２００のアクセス可能なアドレス範囲（始点アドレスと終点アドレス）が設定されている。【００５５】
許可ビットの「Ｒ」は読み出し可能で、「Ｒ・Ｗ」は読み出し及び書き込み可能であることを示している。【００５６】
ＣＰＵ管理データ４２０によって、例えば、追加側ＣＰＵ２００は、追加処理側に割り当てられているメモリ５００の不揮発メモリ及びＲＡＭの領域にアクセス可能、共有メモリ領域の前半部は読み出しのみ可能で、後半部は読み書きが可能であるといった内容が設定される。【００５７】
図５は、メモリ５００のメモリ構成を示す図である。図示のように、メモリ５００は、不揮発メモリ５１０と、ＲＡＭ（ランダムアクセスメモリ）５２０とで構成されている。【００５８】
不揮発メモリ５１０には、基本処理側領域５１１と、追加処理側領域５１２が設けられている。【００５９】
ＲＡＭ５２０には、基本処理側領域５２１と、追加処理側領域５２２と、共有領域５２３が設けれている。【００６０】
図６は、追加処理側実行環境３０の転送に用いる実行環境データ１０００の構成を示す図である。【００６１】
実行環境データ１０００は、ヘッダ部（ヘッダ情報）１１００と、データ部１２００とで構成されている。【００６２】
ヘッダ部１１００には、追加処理側実行環境３０の環境構成情報が格納されている。【００６３】
この環境構成情報としては、宛先情報１１０１、実行環境種別情報１１０２、領域サイズ情報１１０３、割当アドレス情報１１０４、実行環境資源情報１１０５、検証用情報１１０６が含まれる。【００６４】
上記宛先情報１１０１は、実行環境データ１０００の転送先を示す情報である。実行環境種別情報１１０２は、追加側のＯＳ２１０やファイルシステム等の種類等を含む追加処理側実行環境３０の種類を示す情報ある。【００６５】
領域サイズ情報１１０３は、不揮発メモリ５１０の追加処理側領域５１１、ＲＡＭ５２０の追加処理側領域５２２及び共有領域５２３のサイズを示す情報である。割当アドレス情報１１０４は、追加処理側実行環境３０のデータがメモリ５００のどの物理アドレスを使用しているかを示す情報である。【００６６】
実行環境資源情報１１０５は、追加処理側実行環境３０がどの資源（Ｉ／Ｏインタフェース等）を使用しているかを示す情報である。検証用情報１１０６は、追加処理側実行環境３０のデータの改ざんの有無を検証するための情報である。【００６７】
データ部１２００には、追加処理側実行環境３０で動作する追加側のＯＳ２００やアプリケーションソフトウェアを含む各種プログラム、それらのプログラムが扱うデータが格納されている。【００６８】
このデータ部１２００は、不揮発メモリ５１０の追加処理側領域５１２に格納される不揮発側データ１２０１と、ＲＡＭ５２０の追加処理側領域５２２に格納されるＲＡＭ側データ１２０２を含んでいる。【００６９】
（動作の説明）
以下、第１の実施例による情報処理装置１０による追加処理側実行環境３０の転送、切替の動作について説明する。【００７０】
（１）追加処理側実行環境３０の移動処理（サスペンド・アップロード）
第１の実施例の停止型転送方式による追加処理側実行環境３０の移動処理（サスペンド・アップロード）について、図７を参照して説明する。【００７１】
この移動処理（サスペンド・アップロード）は、情報処理装置１０上で動作している追加処理側実行環境３０を、外部の他の情報処理装置に移動（アップロード）によって転送するための処理である。【００７２】
例えば、情報処理装置１０上で現在動作させている追加処理側実行環境３０と異なる他の追加処理側実行環境３０を組み込む（ダウンロードする）前に、現用の追加処理側実行環境３０を、外部の他の情報処理装置に移動によって転送するための処理である。【００７３】
ステップＳ０１：移動処理に関する指示情報が、ユーザ指示やキーイベントにより、Ｉ／Ｏインタフェース６００経由で転送管理手段３００に通知される。【００７４】
ステップＳ０２：サスペンド・アップロードの指示情報を受信すると、転送管理手段３００は、追加側ＣＰＵ２００に対して動作中の追加処理側実行環境３０のサスペンド（停止）を指示する。【００７５】
このサスペンドの指示を受け、追加側ＣＰＵ２００は、追加処理側実行環境３０を形成するＯＳ２１０及び追加処理の動作を停止させる。【００７６】
ステップＳ０３：転送管理手段３００は、追加側ＣＰＵ２００からサスペンドの完了を受理する。【００７７】
ステップＳ０４：転送管理手段３００は、実行環境監視手段４００に、追加側ＣＰＵ２００の利用領域の設定解除を指示する。【００７８】
これにより、実行環境監視手段４００は、追加処理側実行環境３０のためのメモリ５００の領域を追加側ＣＰＵ２００がアクセスできるよう設定していた設定内容を解除する。【００７９】
ステップＳ０５：転送管理手段３００は、追加処理側実行環境３０に対応するデータをメモリ５００から読み出す。【００８０】
ステップＳ０６：転送管理手段３００は、読み出したデータをデータ部１２００とし、そのデータ部１２００にヘッダ部１１００を付加することにより、実行環境データ１０００を生成し、Ｉ／Ｏインタフェース６００を経由して送信先の他の情報処理装置１０に対してアップロードする。【００８１】
なお、ステップＳ０６において、送信先の情報処理装置を複数指定することで、１対Ｎでのアップロードを行うことも可能である。【００８２】
次いで、上述した移動処理（サスペンド・アップロード）における転送管理手段３００の詳細な動作について、図８に従って説明する。【００８３】
ステップＳ０１：イベント受信手段３２０は、ユーザ指示・キーイベント、あるいは、ネットワーク・Ｉ／Ｏインタフェース６００を介して、動作中の実行環境のサスペンド・アップロード動作の指示を受ける。【００８４】
ステップＳ０２：イベント受信手段３２０は、実行環境情報設定手段３４０に、動作中の実行環境のサスペンドを指示する。【００８５】
ステップＳ０３：実行環境情報設定手段３４０は、プロセッサ間割込みを介して、追加側ＣＰＵ２００に対して、動作中の追加処理側実行環境３０のサスペンドを指示する。【００８６】
ステップＳ０４：実行環境情報設定手段３４０は、プロセッサ間割込みを介して、サスペンドの完了通知を受理する。【００８７】
ステップＳ０５：実行環境情報設定手段３４０は、追加側ＣＰＵのクロック停止、電源停止、リセットを行う。さらに、追加側ＣＰＵ２００に対するアクセス制御の解除を、実行環境監視手段４００に指示する。【００８８】
ステップＳ０６：実行環境情報設定手段３４０は、メモリアクセス手段３３０に、読み出し先のメモリ領域を通知する。【００８９】
ここでは、追加処理側実行環境３０に対応するデータを記憶するメモリ５００の領域が通知される。【００９０】
具体的には、図５に示したメモリ５００構成のうち、不揮発メモリ５１０の追加実行環境用の領域５１１、ＲＡＭ５２０の追加実行環境用の領域５２２及び共有領域５２３が読み出し先として通知される。【００９１】
ステップＳ０７：メモリアクセス手段３３０は、通知されたメモリ５００の各領域に格納されているデータを読み出す。【００９２】
ステップＳ０８：メモリアクセス手段３３０は、該当領域からの読み出し完了を実行環境情報設定手段３４０に通知する。【００９３】
ステップＳ０９：実行環境情報設定手段３４０は、割り当てた物理アドレス・領域サイズなどの追加処理側実行環境３０の環境構成情報を実行環境データ処理手段３５０へ通知する。【００９４】
ステップＳ１０：メモリアクセス手段３３０は、メモリ５００から読み出した追加処理側実行環境３０に対応するデータを実行環境データ処理手段３５０へ送信する。【００９５】
ステップＳ１１：実行環境データ処理手段３５０は、実行環境情報設定手段３４０からの情報をヘッダ部１１００とし、メモリアクセス手段３３０からのデータをデータ部１２００として、実行環境データ１０００を生成し、外部接続手段３１０に送る。【００９６】
ステップＳ１２：外部接続手段３１０は、実行環境データ処理手段３５０からの実行環境データ１０００をネットワーク・Ｉ／Ｏインタフェース６００を介して、送信先の別の情報処理装置１０に対してアップロードを行う。【００９７】
（２）追加処理側実行環境３０の移動処理（ダウンロード・レジューム）
第１の実施例の停止型転送方式による追加処理側実行環境３０の移動処理（ダウンロード・レジューム）について、図９を参照して説明する。【００９８】
このダウンロード・レジューム動作は、他の情報処理装置にアップロードされた追加処理側実行環境３０をダウンロードして追加用ＣＰＵ２００上で実行できるようにするものである。【００９９】
ステップＳ０１：相手先の他の情報処理装置１０から追加処理側実行環境３０を示す実行環境データ１０００のダウンロードに関する指示情報（情報処理装置１０の利用者からのユーザ指示やキーイベントによる）がＩ／Ｏインタフェース６００経由で転送管理手段３００に通知される。【０１００】
ステップＳ０２：通知を受けた情報処理装置１０の転送管理手段３００は、指示情報によって指定された実行環境データ１０００のダウンロード処理を実行する。【０１０１】
ステップＳ０３：転送管理手段３００は、実行環境データ１０００のヘッダ部１１００に含まれる情報に基づいた指示を実行環境監視手段４００に対して行う。【０１０２】
ステップＳ０４：転送管理手段３００は、実行環境データ１０００のデータ部１２００をメモリ５００へ書き込む。【０１０３】
具体的には、データ部１２００を、メモリ５００の追加処理側領域のうち、ヘッダ部１１００の割当アドレス情報１１０４で示される領域に書き込む。【０１０４】
ステップＳ０５：転送管理手段３００は、追加側ＣＰＵ２００の起動を実行する。【０１０５】
次いで、上述した移動処理（ダウンロード・レジューム）における転送管理手段３００の詳細な動作について図１０に従って説明する。【０１０６】
ステップＳ０１：転送管理手段３００のイベント受信手段３２０は、他の情報処理装置１０から追加処理側実行環境３０を形成するある実行環境データ１０００のダウンロードに関する指示情報（ユーザ指示やキーイベントによる）を、Ｉ／Ｏインタフェース６００を介して受ける。【０１０７】
ステップＳ０２：イベント受信手段３２０は、外部接続手段３１０に対して、実行環境データ１０００のダウンロードを指示する。【０１０８】
ダウンロード・レジューム動作を行う情報処理装置１０を一意に識別する宛先情報をヘッダ部１１００に有する実行環境データ１０００がダウンロード対象として指定される。【０１０９】
ステップＳ０３：外部接続手段３１０は、指示された当該実行環境データ１０００のダウンロードを行う。【０１１０】
ステップＳ０４：外部接続手段３１０は、ダウンロードした実行環境データ１０００のヘッダ部１１００を、実行環境情報設定手段３４０に渡す。【０１１１】
ステップＳ０５：実行環境情報設定手段３４０は、ヘッダ部１１００の情報を解析し、情報に基づいた指示を実行環境監視手段４００に対して行う。【０１１２】
この解析においては、例えば、ヘッダ部１１００の領域サイズ情報１１０３に基づいて、必要とされる不揮発メモリ５１０の領域とＲＡＭ５２０の領域が確保できるか等のチェックを行い、割当アドレス情報１１０４に基づいて書き込み先のメモリ５００の領域を決定する。【０１１３】
そして、決定したメモリ５００の領域を追加側ＣＰＵ２００がアクセスできるように、実行環境監視手段４００に対して設定の変更を指示する。【０１１４】
ステップＳ０６：外部接続手段３１０は、ダウンロードした実行環境データ１０００のデータ部１２００を、メモリアクセス手段３３０に渡す。【０１１５】
ステップＳ０７：実行環境情報設定手段３４０は、メモリアクセス手段３３０に、書き込み先のメモリ５００の領域を通知する。【０１１６】
ステップＳ０８：メモリアクセス手段３３０は、当該データ部１２００をメモリ５００の通知された領域に書き込む。【０１１７】
ステップＳ０９：メモリアクセス手段３３０は、メモリ５００への書き込み完了を実行環境情報設定手段３４０に通知する。【０１１８】
ステップＳ１０：実行環境情報設定手段３４０は、追加側ＣＰＵ２００の電源・クロックの供給と、リセット解除を行う。【０１１９】
これにより、追加処理とＯＳ２１０が追加側ＣＰＵ２００上に組み込まれ、追加処理側実行環境３０が形成される。【０１２０】
（３）追加処理側実行環境３０のコピー処理
第１の実施例の停止型転送方式による追加処理側実行環境３０のコピー処理について、図１１を参照して説明する。【０１２１】
このコピー処理は、情報処理装置１０上で現在動作させている追加処理側実行環境３０を残したまま他の情報処理装置に利用させる場合に、現用の追加処理側実行環境３０の実行環境データ１０００を、他の情報処理装置にコピーするものである。【０１２２】
ステップＳ０１：コピーに関する指示情報が、ユーザ指示やキーイベントによってＩ／Ｏインタフェース６００経由で転送管理手段３００に通知される。【０１２３】
ステップＳ０２：転送管理手段３００は、指示情報によって指定される、追加用ＣＰＵ２１０上で動作している追加処理側実行環境３０に対応するデータをメモリ５００から読み出す。【０１２４】
ステップＳ０３：転送管理手段３００は、メモリ５００から読み出したデータをデータ部１２００とし、そのデータ部１２００にヘッダ部１１００を付加することにより、実行環境データ１０００を生成し、Ｉ／Ｏインタフェース６００を経由して相手先の情報処理装置に対してコピーする。【０１２５】
なお、ステップＳ０３において、送信先の情報処理装置を複数指定することで、１対Ｎでのコピーを行うことも可能である。【０１２６】
次いで、上述したコピー処理における転送管理手段３００の詳細な動作について図１２に従って説明する。【０１２７】
ステップＳ０１：イベント受信手段３２０は、ユーザ指示・キーイベント、あるいは、ネットワーク・Ｉ／Ｏインタフェース６００を介して、動作中の実行環境のコピー動作の指示を受ける。【０１２８】
ステップＳ０２：イベント受信手段３２０は、実行環境情報設定手段３４０に、動作中の追加処理側実行環境３０のサスペンドを指示する。【０１２９】
ステップＳ０３：実行環境情報設定手段３４０は、プロセッサ間割込みを介して、追加側ＣＰＵ２００に対して、動作中の追加処理側実行環境３０のサスペンドを指示する。【０１３０】
ステップＳ０４：実行環境情報設定手段３４０は、プロセッサ間割込みを介して、サスペンドの完了通知を受理する。【０１３１】
ステップＳ０５：実行環境情報設定手段３４０は、メモリアクセス手段３３０に、読み出し先のメモリ領域を通知する。【０１３２】
ここでは、追加処理側実行環境３０に対応するデータを記憶するメモリ５００の領域が通知される。【０１３３】
具体的には、図５に示したメモリ５００構成のうち、不揮発メモリ５１０の追加実行環境用の領域５１１、ＲＡＭ５２０の追加実行環境用の領域５２２及び共有領域５２３が読み出し先として通知される。【０１３４】
ステップＳ０６：メモリアクセス手段３３０は、通知されたメモリ５００の各領域に格納されているデータを読み出す。【０１３５】
ステップＳ０７：メモリアクセス手段３３０は、該当領域からの読み出し完了を実行環境情報設定手段３４０に通知する。【０１３６】
ステップＳ０８：実行環境情報設定手段３４０は、割り当てた物理アドレス・領域サイズなどの追加処理側実行環境３０の環境構成情報を実行環境データ処理手段３５０へ通知する。【０１３７】
ステップＳ０９：メモリアクセス手段３３０は、メモリ５００から読み出した追加処理側実行環境３０に対応するデータを実行環境データ処理手段３５０へ送信する。【０１３８】
ステップＳ１０：実行環境データ処理手段３５０は、実行環境情報設定手段３４０からの情報をヘッダ部１１００とし、メモリアクセス手段３３０からのデータをデータ部１２００として、実行環境データ１０００を生成し、外部接続手段３１０に送る。【０１３９】
ステップＳ１１：外部接続手段３１０は、実行環境データ処理手段３５０からの実行環境データ１０００をネットワークやＩ／Ｏインタフェース６００介して、相手先の情報処理装置に対するコピーを実行する。【０１４０】
上述したコピー処理においては、ある情報処理装置の追加処理側実行環境３０を環境構成情報も含めてそのまま相手先の情報処理装置にコピーすることになるため、ダウンロード処理の場合と異なり実行環境監視手段４００に対する設定の変更などの処理は不要となる。【０１４１】
（第１の実施例による効果）
本発明の第１の実施例による情報処理装置は、上記のように構成され動作することから、以下に述べる効果が実現される。【０１４２】
（１）所定の情報処理装置のＯＳを含む追加処理側実行環境３０を、他の情報処理装置に転送することにより、複数の情報処理装置間で同じ追加処理側実行環境３０を簡単に共有できるようになる。【０１４３】
例えば、利用者が使用する情報処理装置の追加処理側実行環境３０を、他の情報処理装置にそのままコピー処理によって転送することにより、複数の端末で同じ実行環境を共有することが可能となる。【０１４４】
特に、実行環境管理手段３００が、追加処理側実行環境３０の状態・環境に関する環境構成情報を格納する実行環境データを生成し、また、実行環境データに基づきダウンロード、アップロードを行うため、大量のメモリを必要とすることなく、かつ、実行環境の基本性能を保ちつつ、複数の情報処理装置において追加処理側実行環境を共有することができる。【０１４５】
（２）これまでのように、仮想マシンを利用したこれまでの実行環境の転送では、実行環境の処理速度等の基本性能が低くなり、かつかつ環境の移動に大量の不揮発メモリが必要であったが、第１の実施例によれば、マルチプロセッサ構成の追加側ＣＰＵ２００上で動作する追加処理側実行環境３０を他の情報処理装置に対して移動又はコピーによって転送するため、実行環境の基本性能を保つことができ、かつ転送に大量のメモリも必要ない。【０１４６】
（３）また、仮想マシンを使用した転送では、仮想マシンに特化させるためにソフトウェア（デバイスドライバ等）を新たに開発する必要であったが、本実施例では、追加側ＣＰＵで動作している追加処理側実行環境３０を実行環境データとして転送する構成であり、ソフトウェア（デバイスドライバ等）を新たに開発する必要がない。【０１４７】
（４）オンライン環境で、追加処理側実行環境３０を他の装置からダウンロードし、オフライン環境で組み込んだ追加処理側実行環境３０を操作してデータの処理を行い、再度オンライン環境に戻って追加処理側実行環境を他の装置にアップロードして戻すようにすることで、セキュリティを保った情報処理装置の利用が可能となる。【０１４８】
（第２の実施例）
（構成の説明）【０１４９】
次に、本発明の第２の実施例による情報処理装置の構成について図１３を参照して説明する。【０１５０】
本発明の第２の実施例による情報処理装置１０の全体構成は、上述した第１の実施例の構成と同様であり、図１３に示すように、基本処理の実行環境（以下、基本処理側実行環境２０）を形成する第１のＣＰＵである基本側ＣＰＵ１００と追加処理の実行環境（以下、追加処理側実行環境３０）を形成する第２のＣＰＵである追加側ＣＰＵ２００を備えるマルチコアあるいはマルチプロセッサ構成を有している。【０１５１】
図１３において、図１の第１の実施例と同じ構成要素について同じ参照番号を付している。【０１５２】
上記基本側ＣＰＵ１００上で実行されるＯＳ１１０と基本処理を含む環境を基本処理側実行環境２０と、上記追加側ＣＰＵ２００上で実行される、ＯＳ２１０と追加処理（ソフトウェア）を含む環境を追加処理側実行環境３０についても第１の実施例と同じである。【０１５３】
第２の実施例においては、ある情報処理装置から相手先の情報処理装置に対して追加処理側実行環境３０を送信し（以下、無停止切替送信と呼ぶ）、転送された追加処理側実行環境３０を情報処理装置で受信して実行する（以下、無停止切替受信と呼ぶ）際に、情報処理装置の追加処理側実行環境３０を動作させながら（実質的に停止させることなく）、新たに追加処理側実行環境３０を転送する無停止型転送方式を実現するものである。【０１５４】
実際上は、全く停止させない訳ではなく、実行環境の動作に影響が無いか、影響が非常に小さい時間単位での停止であるので、情報処理装置の操作を中断することなく、追加処理側実行環境３０の送信と受信を実現する。【０１５５】
基本側ＣＰＵ１００上で、オペレーティングシステム（ＯＳ）１１０が実行され、追加側ＣＰＵ２００上で、オペレーティングシステム（ＯＳ）２１０が実行される点も第１の実施例と同様である。この実施例でも、基本側のＯＳ１１０と追加側のＯＳ２１０の種類は、それぞれ同じＯＳであってもよいし、互いに異なるＯＳであってもよい。【０１５６】
基本処理側実行環境２０には、ＯＳ１１０で制御されるハードウェア又はソフトウェアによって実現され、またはＯＳ１１０に依存することなく自律的に動作可能な転送管理手段１３００が設けられている。【０１５７】
基本側ＣＰＵ１００と追加側ＣＰＵ２００は、実行環境監視手段１４００を経由して互いに通信可能に接続され、かつメモリ５００とＩ／Ｏインタフェース６００（ネットワークや他の周辺装置との入出力インタフェース）に接続されている。【０１５８】
また、図１３の第２の実施例でも、基本処理側実行環境２０が１つの場合を説明したが、基本用ＣＰＵ１００とＯＳ１１０を複数備えることで複数の基本処理側実行環境２０が存在する構成であってもよい。その場合、少なくと１つの実行環境に１つ転送管理手段１３００が必要である。【０１５９】
追加処理側実行環境３０は、情報処理装置間で送受信することが可能な実行環境であり、割り当てられた追加側ＣＰＵ２００上で動作する。また、この追加処理側実行環境３０は、情報処理装置においてユーザが実際に操作する追加処理（情報処理装置上で実行される各種アプリケーション等による機能）、あるいは、ユーザが情報処理装置上で直接認識できる実行環境を実現する。【０１６０】
上記基本処理側実行環境２０に設けられる転送管理手段１３００は、実行環境監視手段１４００と連携して追加処理側実行環境３０の送信と受信を制御する機能を有する。【０１６１】
具体的には、追加処理側実行環境３０を無停止切替送信する処理において、転送管理手段１３００は、追加処理側実行環境３０へ中断を指示する機能、追加処理側実行環境３０のデータをメモリ５００から読み出す機能、読み出したデータを外部へ送信する機能、更新データの監視開始を指示する機能、更新データの読み出し機能、更新データを外部への送信する機能、実行環境監視手段１４００への設定解除を指示する機能を提供する。【０１６２】
その場合の転送管理手段３００への入力情報は、実行環境データや更新データ、更新データのあふれの通知であり、出力情報は、実行環境データや追加更新データ、実行環境監視手段１４００による設定解除の指示情報である。【０１６３】
また、追加処理側実行環境３０を受信する処理において、実行環境データを外部から受信する機能、受信した実行環境データをメモリ５００への展開させる機能、実行環境監視手段１４００に環境設定を指示する機能、追加処理側実行環境３０を起動させる機能を提供する。【０１６４】
その場合の転送管理手段１３００への入力情報は、実行環境データと更新データであり、その出力情報は、実行環境データと更新データ、実行環境監視手段１４００による環境設定情報である。【０１６５】
図１４を参照して転送管理手段１３００の構成について説明する。【０１６６】
転送管理手段１３００は、外部接続手段１３１０、イベント受信手段１３２０、メモリアクセス手段１３３０、実行環境情報設定手段１３４０、実行環境データ処理手段１３５０を備えて構成される。【０１６７】
外部接続手段３１０は、実行環境データ１０００の送信又は受信処理において、Ｉ／Ｏインタフェース６００を介して、別の情報処理装置へ実行環境データ１０００を送信し、又は別の情報処理装置から実行環境データ１０００を受信する機能を有する。【０１６８】
イベント受信手段１３２０は、追加処理側実行環境３０の無停止切替送信、無停止切替受信の指示を受け、外部接続手段１３１０に実行環境データ１０００の受信を指示し、あるいは実行環境情報設定手段１３４０に、追加処理側実行環境３０のサスペンドを指示する機能等を有する。【０１６９】
メモリアクセス手段１３３０は、実行環境情報設定手段１３４０からの読み出し先や書き込み先のメモリ領域の通知によってメモリ５００からデータを読み出し又はメモリ５００にデータを書き込む機能等を有する。【０１７０】
実行環境情報設定手段１３４０は、イベント受信手段１３２０からの追加処理側実行環境３０のサスペンドを指示によって、追加側ＣＰＵ２００に対して、動作中の追加処理側実行環境３０のサスペンドを指示し、追加側ＣＰＵのクロック停止やクロック供給、電源の停止や供給、リセットやリセット解除を行う機能を有する。【０１７１】
さらに、実行環境情報設定手段１３４０は、追加側ＣＰＵ２００に対するアクセス制御の解除を実行環境監視手段１４００に指示する機能、メモリアクセス手段１３３０に、読み出し先や書き込み先のメモリ領域を通知する機能、割り当てた物理アドレス・領域サイズなどの環境構成情報を実行環境データ処理手段１３５０や外部接続手段１３１０へ通知する機能、実行環境データ１０００のヘッダ部１１００の環境構成情報に基づいた解析を行う機能を有する。【０１７２】
実行環境データ処理手段１３５０は、実行環境情報設定手段３４０から通知された割り当てた物理アドレス・領域サイズなどの環境構成情報、メモリアクセス手段１３３０から送信された追加処理側実行環境３０に対応するデータから実行環境データ１０００を生成する機能を有する。【０１７３】
実行環境監視手段１４００は、追加側ＣＰＵ２００からメモリ５００へのアクセスに対するフィルタ機能と、アクセス更新を監視する機能を提供する。【０１７４】
この実行環境監視手段１４００は、追加処理側実行環境３０の実行環境データをダウンロードしてメモリ５００に書き込んだ場合に、実行環境データを書き込んだメモリ領域のアドレスが、アップロード元の情報処理装置のメモリ領域のアドレスと異なる場合に、ダウンロード先のメモリ領域のアドレスとアップロード元のメモリ領域のアドレスとが整合するように追加側ＣＰＵ２００からのアクセスを制御する。【０１７５】
具体的には、追加処理側実行環境３０の実行環境データを送信する処理において、後述するＣＰＵ管理データに基づいて、基本処理側実行環境２０及び追加処理側実行環境３０からのアクセスを監視する機能と、転送管理手段１３００からの更新監視要求によって、データの更新を監視し、更新データのあふれを転送管理手段１３００に通知する機能を提供する。【０１７６】
ＣＰＵ管理データに設定される設定情報に反する不正なアクセスに対しては、当該アクセスを要求した実行環境に対してエラーを通知する。【０１７７】
この場合の実行環境監視手段１４００への入力情報は、環境設定情報や更新監視の要求であり、出力情報は、エラー情報や更新データのあふれ通知である。【０１７８】
また、追加処理側実行環境３０の実行環境データを受信する処理において、ＣＰＵ管理データに従い、実行環境からのアクセスを監視する機能を提供する。ＣＰＵ管理データに設定される設定情報に反する不正なアクセスに対しては、当該アクセスを要求した実行環境に対してエラーを通知する。【０１７９】
この場合の実行環境監視手段１４００への入力情報は、設定情報であり、出力情報は、エラー情報である。【０１８０】
図１５を参照して実行環境監視手段１４００の構成について説明する。【０１８１】
実行環境監視手段１４００は、アクセス制御手段１４１０と、アクセス状態監視手段１４２０と、アクセス更新データ格納手段１４３０を備えて構成されている。【０１８２】
アクセス制御手段１４１０は、第１の実施例のアクセス制御手段４１０と同様に、ＣＰＵフィルタ手段４１１と、ＣＰＵ管理データ格納手段４１２から構成される。【０１８３】
ＣＰＵフィルタ手段１４１１は、システムバスを介してある基本側ＣＰＵ１００又は追加側ＣＰＵ２００からのアクセス要求を受けると、ＣＰＵ管理データ格納手段１４１２から読み出したＣＰＵ管理データ１４２１に基づいて、当該アクセス要求の拒否を判定するフィルタ機能を提供する。【０１８４】
このＣＰＵ管理データ１４２１については、図４に示したＣＰＵ管理データ格納手段４１２に格納されるＣＰＵ管理データ４２０と全く同じであるので、説明を省略する。【０１８５】
アクセス状態監視手段１４２０は、監視状態において、追加処理側実行環境３０の追加側ＣＰＵ１２１０によるメモリ５００の更新を監視し、更新された場合に、その更新データをアクセス更新データ格納手段１４３０に格納する機能を有する。【０１８６】
アクセス更新データ格納手段１４３０には、追加処理側実行環境３０の追加側ＣＰＵ１２１０によるメモリ５００の更新内容が、アクセス状態監視手段１４２０によって一時的にアクセス更新データ２０００として格納される。【０１８７】
このアクセス更新データ格納手段１４３０は、例えば、一番新しく格納されたデータを一番最後に読み出すようにしたＦＩＦＯ方式の記憶手段で実現可能である。【０１８８】
アクセス更新データ格納手段１４３０に格納されるアクセス更新データ２０００の例を図１６に示す。【０１８９】
アクセス更新データ格納手段１４３０は、図１６に示すように、書き込みアドレス２００１と、更新されたデータの値２００２を対応付けたデータ構造のアクセス更新データ２０００を格納する。【０１９０】
監視状態において、アクセス状態監視手段１４２０は、追加側ＣＰＵ２１０によってメモリ５００内のデータの更新がなされる度に、アクセス更新データ格納手段１４３０内のアクセス更新データ２０００の書き込みポインタで示されるエントリに書き込みアドレス３２００１と、更新されたデータの値２００２を順次書き込む。【０１９１】
また、アクセス状態監視手段１４２０は、基本側ＣＰＵ１１００からの要求により、アクセス更新データ格納手段１４３０内のアクセス更新データ２０００の読み出しポインタ（最も以前に格納されたデータを示す）で示されるデータを読み出す。【０１９２】
アクセス更新データ格納手段１４３０内のアクセス更新データ２０００において、書き込みポインタと読み出しポインタの位置が一致する場合は満杯状態であることを示し、読み出しポインタが書き込みポインタの１つ手前である場合は空状態であることを示している。【０１９３】
また、アクセス更新データ格納手段１４３０内のアクセス更新データ２０００に保持する書き込みアドレス２００１とデータの値２００２のビット幅は任意である（例えば、２５６バイトや４Ｋバイト等）。【０１９４】
アクセス更新データ２０００のデータ構造は、ハッシュ・リスト・ツリーなど、アドレスと値の対応付けを保存できるデータ構造であれば、図示の構成例に限定されない。【０１９５】
また、書き込みを行う際に、同じ書き込みアドレスのエントリががあればそのデータの値を更新するようにしてもよい。【０１９６】
このような更新方法を行えば、エントリ数の削減を図ることができる。【０１９７】
また、アドレスのある範囲の更新はアクセス更新データ２０００に記録しなくてよいといった、フィルタ機能を設けることも可能である。例えば、アドレス０ｘ３２８０００００〜０ｘ３２ＦＦＦＦＦＦまでの範囲の更新を記録しないというフィルタ制御を行う。この場合も、エントリ数を削減することができる。【０１９８】
記録する書き込みアドレス２００１として、オフセット値からの増減分だけを記録するようにすることも可能である。このような方法を用いれば、ビット幅を削減することができる。【０１９９】
また、書き込みアドレス２００１だけを保持して、データの値はメモリ５００から読み出すようにしてもよい。【０２００】
アクセス更新データ格納手段１４３０のアクセス更新データ２０００内に、指定された時点（監視状態の設定時点）からの、追加側ＣＰＵ１２００による更新データの書き込みアドレス２００１とそのデータの値２００２が記録されている場合、後述する無停止切替送信において、基本側ＣＰＵ１１００からの要求によりアクセス更新データ２０００を読み出して、逐次的に更新データの転送を可能とする。【０２０１】
アクセス更新データ格納手段１４３０のアクセス更新データ２０００内に、更新データが存在しない場合には、更新データの転送はなされない。この場合、メモリ５００の追加処理側領域のデータが最新状態であり、追加処理側実行環境３０の転送が可能となったことを意味する【０２０２】
本実施例では、メモリ５００の追加処理側領域のデータが最新状態でない、つまり、まだ追加処理側からデータの更新がなされている状況では、そのデータ転送をする必要があるので、追加処理側実行環境３０の転送にかかる時間が長くなる。従って、その場合、無停止型の転送とは言えなくなる可能性がある。【０２０３】
できるだけ転送に要する時間を短くするために、更新データが存在しない状態を移動可能ポイントとして利用している。【０２０４】
なお、データ存在しても、少ない状態であれば、それを移動可能ポイントとしてもよい。【０２０５】
なお、アクセス更新データ格納手段１４３０は、メモリ５００上に設けてもよいし、Ｉ／Ｏインタフェース１６００を介して接続される外部の記憶装置に設けてもよい。【０２０６】
図１７に、アクセス状態監視手段１４２０とアクセス更新データ格納手段１４３０の状態遷移を模式的に示す。【０２０７】
図１７において、状態３００１は監視がなされていない無監視状態、状態３００２は実行環境情報設定手段１３４０からの監視依頼に基づいて監視がなされている監視状態であって、追加側ＣＰＵ２００による書き込みがなされないか、または全ての更新データが読み出されてアクセス更新データ格納手段１４３０が空の状態を示している。また、状態３００３は監視状態でアクセス更新データ格納手段１４３０に更新データが記録されている状態を示し、状態３００４は監視状態でアクセス更新データ格納手段１４３０の更新データにあふれが発生している状態を示している。【０２０８】
また、メモリ５００の構成については、図５に示した構成と同じであり、かつ実行環境データ１０００についても、図６に示した構成と同じであるので、ここでは説明を省略する。【０２０９】
（動作の説明）
（１）まず、上述した第２の実施例による情報処理装置の転送管理手段１３００と実行環境監視手段１４００の動作について説明する。【０２１０】
（ａ）実行環境監視手段１４００による更新監視設定と解除の動作
実行環境監視手段１４００による更新監視設定と解除の動作を図１８に示す。【０２１１】
転送管理手段１３００から、追加側ＣＰＵ２００によるメモリ５００のアクセス更新を監視するように、実行環境監視手段１４００のアクセス状態監視手段１４２０に対して指示が通知される（図１８のステップＳ０１）。これを受けて、アクセス状態監視手段１４２０は、追加側ＣＰＵ２００によるメモリ５００のアクセス更新の監視を開始する。【０２１２】
また、転送管理手段１３００から、追加側ＣＰＵ２００によるメモリ５００のアクセス更新の監視を解除するように、アクセス状態監視手段１４２０に対して指示が通知される（図１８のステップＳ０１）。これを受けて、アクセス状態監視手段１４２０は、追加側ＣＰＵ２００によるメモリ５００のアクセス更新の監視を解除する。【０２１３】
上述のように、メモリ５００のアクセス更新の監視設定と解除を可能にしたことにより、アクセス更新の監視が不要なときは監視を解除することにより、省電力化が可能となる。【０２１４】
（ｂ）追加側ＣＰＵによるメモリの読み出し動作
追加側ＣＰＵ２００によるメモリ５００の読み出し動作を図１９に示す。【０２１５】
ステップＳ０１：追加側ＣＰＵ２００が、実行環境監視手段１４００のアクセス制御手段１４１０によって読み出しが許可されたメモリ５００の領域への読み出し要求を行う。【０２１６】
ステップＳ０２：読み出し要求を受けた実行環境監視手段１４００は、メモリ５００から読み出したデータを追加側ＣＰＵ２００へ返す。【０２１７】
（ｃ）監視状態における追加側ＣＰＵによるメモリへの書き込み動作
監視状態における追加側ＣＰＵ２００によるメモリ５００への書き込み動作を図２０に示す。【０２１８】
ステップＳ０１：追加側ＣＰＵ２００は、実行環境監視手段１４００のアクセス制御手段１４１０によって書き込みが許可されたメモリ５００の領域への書き込み要求を行う。【０２１９】
ステップＳ０２：書き込み要求を受けた実行環境監視手段１４００のアクセス状態監視手段１４２０は、当該書き込み要求を、アクセス更新データ格納手段１４３０内のアクセス更新データ２０００に記録する。【０２２０】
ステップＳ０３：実行環境監視手段１４００のアクセス状態監視手段１４２０は、当該書き込み要求を、メモリ５００へ渡す。【０２２１】
また、アクセス状態監視手段１４２０は、アクセス更新データ２０００に対する読み出しポインタを「１」進める。【０２２２】
（ｄ）アクセス更新データ２０００の読み出し動作
アクセス更新データ２０００の読み出し動作を図２１に示す。【０２２３】
ステップＳ０１：基本側ＣＰＵ１００は、アクセス更新データ２０００のアドレス読み出し要求を行う。【０２２４】
ステップＳ０２：  実行環境監視手段１４００のアクセス状態監視手段１４２０は、アクセス更新データ２０００内の、最も以前に更新されたエントリのアドレスを読み出す。【０２２５】
ステップＳ０３：アクセス状態監視手段１４２０は、読み出したアドレスを基本側ＣＰＵ１００に返す。【０２２６】
ステップＳ０４：基本側ＣＰＵ１００は、アクセス更新データ２０００のデータ読み出し要求を行う。【０２２７】
ステップＳ０５：アクセス状態監視手段１４２０は、アクセス更新データ２０００内の、最も以前に更新されたエントリのデータ値を読み出す。【０２２８】
ステップＳ０６：アクセス状態監視手段１４２０は、読み出したデータ値を基本側ＣＰＵ１００に返す。【０２２９】
また、アクセス状態監視手段１４２０は、アクセス更新データ２０００に対する読み出しポインタを「１」進める。【０２３０】
（ｅ）アクセス更新データのあふれが発生した場合の動作
アクセス更新データのあふれが発生した場合の動作を図２２に示す。【０２３１】
ステップＳ０１：追加側ＣＰＵ２００は、実行環境監視手段１４００のアクセス制御手段１４１０によって書き込みが許可されたメモリ５００の領域への書き込み要求を行う。【０２３２】
ステップＳ０２：実行環境監視手段１４００のアクセス状態監視手段１４２０は、当該書き込み要求を、アクセス更新データ２０００に記録しようとするが、データがフル状態（満杯）で記録できない。【０２３３】
ステップＳ０３：アクセス状態監視手段１４２０は、当該書き込み要求をペンディングし（待ち状態とし）、転送管理手段１３００にアクセス更新データのあふれの通知を行う。【０２３４】
（ｆ）アクセス更新データのあふれを解消するための動作
アクセス更新データのあふれを解消するための動作を図２３に示す。【０２３５】
ステップＳ０１：追加側ＣＰＵ２００が、許可されたメモリ領域への書き込み要求を行う。【０２３６】
ステップＳ０２：アクセス状態監視手段１４２０は、当該書き込み要求を、アクセス更新データ２０００に記録しようするが、満杯で記録できない。【０２３７】
ステップＳ０３：アクセス状態監視手段１４２０は、当該書き込み要求をペンディングし、転送管理手段１３００に通知を行う。【０２３８】
ステップＳ０４：通知を受けた転送管理手段１３００のある基本側ＣＰＵ１００は、アクセス更新データ２０００のアドレス読み出し要求を行う。【０２３９】
ステップＳ０５：アクセス状態監視手段１４２０は、アクセス更新データ２０００内の、最も以前に更新されたアクセスのアドレスを読み出す。【０２４０】
ステップＳ０６：アクセス状態監視手段１４２０は、読み出したアドレスを基本側ＣＰＵ１００に返す。【０２４１】
ステップＳ０７：基本側ＣＰＵ１００は、アクセス更新データ２０００のデータ読み出し要求を行う。【０２４２】
ステップＳ０８：アクセス状態監視手段１４２０は、アクセス更新データ２０００内の、最も以前に更新されたアクセスのデータ値を読み出す。【０２４３】
ステップＳ０９：アクセス状態監視手段１４２０は、読み出したデータ値を基本側ＣＰＵ１００に返す。【０２４４】
ステップＳ１０：アクセス状態監視手段１４２０は、空きエントリができたので、ペンディング状態の書き込み要求をアクセス更新データ２０００に記録する。【０２４５】
ステップＳ１１：アクセス状態監視手段１４２０は、当該アクセスをメモリ５００へ渡す。【０２４６】
（ｇ）転送管理手段１３００による更新監視設定と解除の指示動作
転送管理手段１３００による更新監視設定と解除の指示動作を図２４に示す。【０２４７】
ステップＳ０１：転送管理手段１３００の実行環境情報設定手段１３４０は、実行環境監視手段１４００のアクセス状態監視手段１４２０に対して更新監視設定の指示を行う。追加処理側実行環境３０の実行環境データの送信が完了した後、実行環境情報設定手段１３４０は、実行環境監視手段１４００のアクセス状態監視手段１４２０に対して更新監視解除の指示を行う。【０２４８】
（ｈ）アクセス更新データのあふれ通知に関する動作
アクセス更新データのあふれ通知に関する動作を図２５に示す。【０２４９】
ステップＳ０１：実行環境情報設定手段１３４０は、実行環境監視手段１４００からアクセス更新データ２０００があふれたとの通知を受ける。【０２５０】
ステップＳ０２：実行環境情報設定手段１３４０は、メモリアクセス手段１３３０に、アクセス更新データ２０００の読み出しを指示する。【０２５１】
ステップＳ０３：メモリアクセス手段１３３０は、アクセス更新データ２０００の読み出しを実行する。【０２５２】
（２）第２の実施例による追加処理側実行環境３０の無停止送信と無停止受信の動作について図２６から図３０を参照して説明する。【０２５３】
（ａ）無停止切替処理の全体動作
第２の実施例の無停止型転送方式による無停止切替処理の全体的な動作内容について、無停止切替処理の手順を示す図２６を参照して説明する。【０２５４】
ここでは、既に無停止切替処理の指示を受けた場合の動作を説明している。【０２５５】
ステップＳ０１：送信側の情報処理装置の転送管理手段１３００は、実行環境監視手段１４００に対して更新監視状態への移行を指示する。【０２５６】
ステップＳ０２：送信側の転送管理手段１３００は、メモリ５００の追加処理側実行環境３０に対応する領域からデータを読み出し、最初の実行環境データ１０００を作成する。【０２５７】
ステップＳ０３：送信側の転送管理手段１３００は、受信側の情報処理装置の転送管理手段１３００に最初の実行環境データ１０００を送る。【０２５８】
ステップＳ０４：受信側の転送管理手段１３００は、最初の実行環境データ１０００のうち、ヘッダ部１１００の環境構成情報を実行環境監視手段１４００に送る。【０２５９】
ステップＳ０５：受信側の転送管理手段１３００は、最初の実行環境データ１０００のうち、データ部１２００をメモリ５００へ書き込む。【０２６０】
ステップＳ０６：送信側の転送管理手段１３００は、実行環境監視手段１４００から更新監視状態以降にアクセス更新データ２０００に記録された更新分データを受理する。【０２６１】
ステップＳ０７：送信側の転送管理手段１３００は、更新分データを受信側の情報処理装置の転送管理手段１３００に送る。【０２６２】
ステップＳ０８：受信側の転送管理手段１３００は、受信した更新分データをメモリ５００へ書き込む。【０２６３】
ステップＳ０９：送信側の転送管理手段１３００は、追加側ＣＰＵ２００へサスペンド状態への移行を指示する。【０２６４】
ステップＳ１０：送信側の転送管理手段１３００は、実行環境監視手段１４００から更新分データを受理する。【０２６５】
ステップＳ１１：送信側の転送管理手段１３００は、更新分データを受信側の転送管理手段１３００に送る。【０２６６】
ステップＳ１２：受信側の転送管理手段１３００は、更新分データをメモリ５００へ書き込む。【０２６７】
ステップＳ１３：送信側の転送管理手段１３００は、追加側ＣＰＵ２００からサスペンド状態の移行完了の通知を受ける。【０２６８】
ステップＳ１４：送信側の転送管理手段１３００は、実行環境監視手段１４００から更新分データを受理する。【０２６９】
ステップＳ１５：送信側の転送管理手段１３００は、更新分データを受信側の転送管理手段１３００に送る。【０２７０】
ステップＳ１６：受信側の転送管理手段１３００は、更新分データをメモリ５００へ書き込む。【０２７１】
ステップＳ１７：受信側の転送管理手段１３００は、追加側ＣＰＵ２００のレジューム動作を指示する。【０２７２】
ステップＳ１８：送信側の転送管理手段１３００は、実行環境監視手段１４００の更新監視状態の設定を解除する。【０２７３】
ステップＳ０３、Ｓ１１、Ｓ１５にて、送信先の情報処理装置を複数指定することで、１対Ｎでの無停止切替を実現することが可能である。【０２７４】
（ｂ）無停止切替処理における無停止切替送信
上述した無停止切替処理における無停止切替送信の詳細について、図２７と図２８を参照して説明する。【０２７５】
図２７は、無停止切替送信における送信側の情報処理装置の基本処理側と追加処理側の動作内容を説明するフローチャートである。【０２７６】
送信側の情報処理装置の転送管理手段１３００が実行環境監視手段１４００を更新監視状態に設定する（ステップ２９０１）。【０２７７】
更新監視状態への設定後、送信側の転送管理手段１３００が、メモリ５００から追加処理側実行環境３０に対応するデータを読み出し、最初の実行環境データ１０００として、受信側の転送管理手段１３００に送信する（ステップ２９０２）。【０２７８】
送信側の転送管理手段１３００が、実行環境監視手段１４００から更新監視状態以降にアクセス更新データ２０００に記録された更新分データを読み出し、その更新分データを受信側に送信する（ステップ２９０３）。【０２７９】
次いで、送信側の転送管理手段１３００は、予め設定した追加ＣＰＵ２００へサスペンドを指示するためのサスペンド条件を満足するかを判定する（ステップ２９０４）。【０２８０】
このサスペンド条件は、更新分データの送信回数、更新分データ送信の経過時間、更新分データの送信量等の値によって予め設定されており、送信側の転送管理手段１３００は、現在の状態をそのサスペンド条件としての設定値と比較し、現在の状態が設定値を上回っていれば、サスペンド条件が満足されたと判定する。【０２８１】
サスペンド条件としての更新分データの読み出し回数、更新分データ送信の経過時間、更新分データの送信量等の設定値は、アクセス更新データ２０００が空になるか或いは更新データの残量が十分少なくなっているであろうと推測できる値が設定される。【０２８２】
例えば、実際の運用において更新分データを１０回送信することでアクセス更新データ２０００が空になるか或いは更新データの残量が十分少なくなることが判明していれば、サスペンド条件に更新分データの送信回数の１０回を設定する。【０２８３】
サスペンド条件が満たされると、送信側の転送管理手段１３００は、追加側ＣＰＵ２００へサスペンド状態への移行を指示する（ステップ２９０５）。【０２８４】
サスペンドの指示からサスペンドが完了するまでの間に、追加側でデータ更新が実行されている場合には、送信側の転送管理手段１３００が、実行環境監視手段１４００からアクセス更新データ２０００に記録された更新分データを読み出し、その更新分データを受信側に送信する（ステップ２９０６）。【０２８５】
また、サスペンド状態への完了通知を受けた後は、最終の更新分データを読み出し、その更新分データを受信側に送信する（ステップ２９０７）。【０２８６】
その後、送信側の転送管理手段１３００は、実行環境監視手段１４００を更新監視状態を解除する（ステップ２９０８）。【０２８７】
次いで、上述した無停止切替送信における転送管理手段１３００の詳細な動作について、図２８に従って説明する。【０２８８】
ステップＳ０１：転送管理手段１３００のイベント受信手段１３２０は、ユーザ指示やキーイベントにより、あるいは、ネットワークやＩ／Ｏインタフェース６００を介して、動作中の追加処理側実行環境３０の無停止切替送信の指示を受ける。【０２８９】
ステップＳ０２：イベント受信手段１３２０は、実行環境情報設定手段１３４０に、動作中の追加処理側実行環境３０の無停止切替送信を指示する。【０２９０】
ステップＳ０３：転送管理手段１３００の実行環境情報設定手段１３４０は、実行環境監視手段１４００の監視状態を設定する。【０２９１】
ステップＳ０４：実行環境情報設定手段１３４０は、メモリアクセス手段１３３０に、メモリ５００の読み出し先の領域を通知する。【０２９２】
ステップＳ０５：メモリアクセス手段１３３０は、通知されたメモリ５００の領域から追加処理側実行環境３０に対応するデータを読み出す。【０２９３】
ステップＳ０６：メモリアクセス手段１３３０は、読み出し完了を実行環境情報設定手段１３４０に通知する。【０２９４】
ステップＳ０７：実行環境情報設定手段１３４０は、割り当てた物理アドレス情報、領域サイズ情報などの環境構成情報を実行環境データ処理手段１３５０へ通知する。【０２９５】
ステップＳ０８：メモリアクセス手段１３３０は、読み出したメモリ５００のデータを実行環境データ処理手段１３５０へ通知する。【０２９６】
ステップＳ０９：実行環境データ処理手段１３５０は、実行環境情報設定手段１３４０からの情報をヘッダ部１１００とし、メモリアクセス手段１３３０からのデータをデータ部１２００として、実行環境データ１０００を生成し、外部接続手段１３１０に送る。【０２９７】
ステップＳ１０：外部接続手段１３１０は、実行環境データ処理手段１３５０からの実行環境データ１０００をネットワーク・Ｉ／Ｏインタフェース６００を介して送信先の別の情報処理装置に送信する。【０２９８】
ステップＳ１１：実行環境情報設定手段１３４０は、実行環境監視手段１４００からアクセス更新データ２０００に更新データが存在することの通知、或いは更新データのあふれ通知を受理する。【０２９９】
このステップで、更新データが存在することの通知、更新データのあふれ通知が無ければ、ステップＳ１７の処理に移行する。【０３００】
ステップＳ１２：実行環境情報設定手段１３４０は、メモリアクセス手段１３３０に、アクセス更新データ２０００の読み出しを指示する。【０３０１】
ステップＳ１３：メモリアクセス手段１３３０は、アクセス更新データ２０００の読み出しを繰り返し実行する。【０３０２】
すなわち、上述したサスペンド条件が満たされるまで更新データの読み出しを繰り返す。【０３０３】
ステップＳ１４：メモリアクセス手段１３３０は、サスペンド条件が満足するまで（アクセス更新データ２０００が空又はほぼ空になるまで）更新データの読み出しを行ったことを実行環境情報設定手段１３４０に通知する。【０３０４】
ステップＳ１５：メモリアクセス手段１３３０は、ある程度読み出したアクセス更新データ１０００の値を外部接続手段１３１０に渡す。【０３０５】
ステップＳ１６：  外部接続手段１３１０は、実行環境データ１０００の追加更新分として当該データを送信する。【０３０６】
ステップＳ１７：実行環境情報設定手段１３４０は、プロセッサ間割込みを介して、追加側ＣＰＵ２００に、動作中の実行環境のサスペンドを指示する。【０３０７】
ステップＳ１８：実行環境情報設定手段１３４０は、実行環境監視手段１４００からアクセス更新データ２０００に更新データが存在することの通知、或いは更新データのあふれ通知を受理する。【０３０８】
このステップで、更新データが存在することの通知、更新データのあふれ通知が無ければ、ステップＳ２４の処理に移行する。【０３０９】
ステップＳ１９：実行環境情報設定手段１３４０は、メモリアクセス手段１３３０に、アクセス更新データ２０００の読み出しを指示する。【０３１０】
ステップＳ２０：メモリアクセス手段１３３０は、アクセス更新データ２０００の読み出しを繰り返し実行する。【０３１１】
ステップＳ２１：メモリアクセス手段１３３０は、アクセス更新データ２０００が空又はほぼ空になるまでデータ読み出しを行ったことを実行環境情報設定手段１３４０に通知する。【０３１２】
ステップＳ２２：メモリアクセス手段１３３０は、ある程度読み出したアクセス更新データ２０００の値を外部接続手段１３１０に渡す。【０３１３】
ステップＳ２３：外部接続手段１３１０は、実行環境データ１０００の追加更新分として当該データを送信する。【０３１４】
ステップＳ２４：実行環境情報設定手段１３４０は、プロセッサ間割込みを介してサスペンドの完了通知を受理する。【０３１５】
ステップＳ２５：実行環境情報設定手段１３４０は、追加側ＣＰＵ２００のクロック停止、電源停止、リセットを実行する。【０３１６】
ステップＳ２６：実行環境情報設定手段１３４０は、メモリアクセス手段１３３０に、アクセス更新データ２０００の読み出しを指示する。【０３１７】
ステップＳ２７：メモリアクセス手段１３３０は、アクセス更新データ２０００が空になるまで更新データの読み出しを実行する。【０３１８】
ステップＳ２８：メモリアクセス手段１３３０は、読み出したアクセス更新データ２０００の値を外部接続手段１３１０に渡す。【０３１９】
ステップＳ２９：外部接続手段１３１０は、実行環境データ１０００の最終の追加更新分として当該データをを送信する。【０３２０】
ステップＳ３０：メモリアクセス手段１３３０は、空状態までデータ読み出しを行ったことを実行環境情報設定手段１３４０に通知する。【０３２１】
ステップＳ３１：実行環境情報設定手段１３４０は、追加側ＣＰＵに対する更新監視状態の解除を、実行環境監視手段１４００に指示する。【０３２２】
（ｃ）無停止切替処理における無停止切替受信
上述した無停止切替処理における無停止切替受信の詳細について、図２９と図３０を参照して説明する。【０３２３】
図２９は、無停止切替受信における受信側の情報処理装置の基本処理側と追加処理側の動作内容を説明するフローチャートである。【０３２４】
受信側の情報処理装置の転送管理手段１３００が、無停止切替受信の指示を受理する（ステップ３１０１）。【０３２５】
送信側から送信された最初の実行環境データ１０００を受信し、そのヘッダ部１１００に基づいて追加処理側実行環境３０の設定を行うと共に、データ部１２００のデータをメモリ５００に書き込む（ステップ３１０２）。【０３２６】
実行環境データ１０００の追加更新分を順次受信し、メモリ５００の該当領域に書き込む（ステップ３１０３）。【０３２７】
最終の追加更新分を受信し、メモリ５００の該当領域に書き込む（ステップ３１０４）。【０３２８】
追加処理側実行環境３０の起動を実行する（ステップ３１０５）。【０３２９】
次いで、上述した無停止切替受信における受信側の転送管理手段１３００の詳細な動作について、図３０に従って説明する。【０３３０】
ステップＳ０１：転送管理手段１３００のイベント受信手段１３２０は、ユーザ指示又はキーイベントによって、Ｉ／Ｏインタフェース６００を介して、ある追加処理側実行環境３０の無停止切替受信の指示を受ける。【０３３１】
ステップＳ０２：イベント受信手段１３２０は、外部接続手段１３１０に、実行環境データ１０００の受信を指示する。【０３３２】
ステップＳ０３：外部接続手段１３１０は、指定された当該実行環境データ１０００の最初の受信を行う。【０３３３】
ステップＳ０４：外部接続手段１３１０は、受信した実行環境データ１０００のヘッダ部１１００を、実行環境情報設定手段１３４０に渡す。【０３３４】
ステップＳ０５：実行環境情報設定手段１３４０は、ヘッダ部１１００の解析を行う。【０３３５】
この解析においては、例えば、ヘッダ部１１００の領域サイズ情報１１０３に基づいて、必要とされる不揮発メモリ５１０の領域とＲＡＭ５２０の領域が確保できるか等のチェックを行い、割当アドレス情報１１０４に基づいて書き込み先のメモリ５００の領域を決定する。【０３３６】
そして、決定したメモリ５００の領域を追加側ＣＰＵ２００がアクセスできるように、実行環境監視手段１４００に対して設定の変更を指示する。【０３３７】
ステップＳ０６：外部接続手段１３１０は、受信した実行環境データ１０００のデータ部１２００をメモリアクセス手段１３３０に渡す。【０３３８】
ステップＳ０７：実行環境情報設定手段１３４０は、メモリアクセス手段１３３０に、メモリ５００の書き込み先の領域を通知する。【０３３９】
ステップＳ０８：メモリアクセス手段１３３０は、当該データ部１２００をメモリ５００の通知された領域に書き込む。【０３４０】
ステップＳ０９：メモリアクセス手段１３３０は、メモリ５００への書き込み完了を実行環境情報設定手段１３４０に通知する。【０３４１】
ステップＳ１０：外部接続手段１３１０は、当該実行環境データ１０００の追加更新分の受信を行う。【０３４２】
ステップＳ１１：外部接続手段１３１０は、受信した追加更新分のデータをメモリアクセス手段１３３０に渡す。【０３４３】
ステップＳ１２：メモリアクセス手段１３３０は、受信した当該追加更新分のデータをメモリ５００に書き込む。【０３４４】
ステップＳ１３：メモリアクセス手段１３３０は、メモリ５００への書き込み完了を実行環境情報設定手段１３４０に通知する。【０３４５】
ステップＳ１４：外部接続手段１３１０は、当該実行環境データ１０００の最終の追加更新分の受信を行う。【０３４６】
ステップＳ１５：外部接続手段１３１０は、追加更新分のデータをメモリアクセス手段１３３０に渡す。【０３４７】
ステップＳ１６：メモリアクセス手段１３３０は、当該最終の追加更新分のデータをメモリ５００に書き込む。【０３４８】
ステップＳ１７：メモリアクセス手段１３３０は、メモリ５００への書き込み完了を実行環境情報設定手段１３４０に通知する。【０３４９】
ステップＳ１８：実行環境情報設定手段１３４０は、書き込み完了の通知を受けると、追加側ＣＰＵの電源・クロックの供給、リセット解除を行う。【０３５０】
（第２の実施例による効果）
本発明の第２の実施例による情報処理装置は、上記のように構成され動作することから、以下に述べる効果が実現される。【０３５１】
（１）追加側ＣＰＵ２００上で動作する追加処理側実行環境３０の実行環境データ１００を送信し、その後追加側ＣＰＵ２００によって更新されたデータを実行環境監視手段１４００によって監視してアクセス更新データとして記録し、当該アクセス更新データを追加更新分として転送する構成としたので、追加側ＣＰＵ２００上で追加処理側実行環境３０を動作させながら（極めて短い停止時間で）、追加処理側実行環境３０を他の装置へ転送することが可能となる。【０３５２】
（２）所定の情報処理装置のＯＳを含む追加処理側実行環境３０を、他の情報処理装置に転送することにより、複数の情報処理装置間で同じ追加処理側実行環境３０を簡単に共有できるようになる。これにより、複数の端末で同じ実行環境を共有することが可能となる。【０３５３】
（３）これまでのように、仮想マシンを利用したこれまでの実行環境の転送では、実行環境の処理速度等の基本性能が低くなり、かつかつ環境の移動に大量の不揮発メモリが必要であったが、第１の実施例によれば、マルチプロセッサ構成の追加側ＣＰＵ２００上で動作する追加処理側実行環境３０を他の情報処理装置に対して転送するため、実行環境の基本性能を保つことができ、かつ転送に大量のメモリも必要ない。【０３５４】
（４）また、仮想マシンを使用した転送では、仮想マシンに特化させるためにソフトウェア（デバイスドライバ等）を新たに開発する必要であったが、本実施例では、追加側ＣＰＵで動作している追加処理側実行環境３０を実行環境データとして転送する構成であり、ソフトウェア（デバイスドライバ等）を新たに開発する必要がない。【０３５５】
（５）オンライン環境で、追加処理側実行環境３０を他の装置からダウンロードし、オフライン環境で組み込んだ追加処理側実行環境３０を操作してデータの処理を行い、再度オンライン環境に戻って追加処理側実行環境３０を他の装置にアップロードして戻すようにすることで、セキュリティを保った情報処理装置の利用が可能となる。【０３５６】
（第３の実施例）
次に、本発明の第３の実施例について説明する。【０３５７】
図３１は、第３の実施例による情報処理装置の実行環境監視手段４００（１４００）の構成を示す図である。【０３５８】
第３の実施例における実行環境監視手段４００（１４００）は、第１及び第２の実施例で示した構成と異なり、アドレス変換手段４５０と、アクセス制御手段４６０を備える構成としている。【０３５９】
アドレス変換手段４５０は、情報処理装置間で追加処理側実行環境３０を転送した場合に、メモリ５００の追加処理側実行環境３０のデータ領域のアドレスが装置間で異なる場合に、受信側でデータを書き込んだメモリ５００のアドレスを、実行環境データ１０００のヘッダ部１１００に含まれるアドレス情報と整合するように変換する機能を有する。【０３６０】
また、アクセス制御手段４６０は、アドレス変換手段４５０によって変換されたアドレスに基づいて追加側ＣＰＵ２００によるメモリ５００のアクセスを制御する機能を有する。【０３６１】
なお、上記実施例においては、情報処理装置間において、追加処理側実行環境３０を相互にコピー又は移動によって転送をする例を説明したが、情報処理装置を、携帯端末装置のように独立した単体の装置として構成する場合の他に、上述した情報処理装置を電子装置（車載ＬＳＩ等）のモジュール（又はチップ）として構成し、当該モジュール間で、追加処理側実行環境を相互にコピー又は移動するよう構成することも可能である。【０３６２】
このような第１〜第３の実施例の応用例の構成を図３５に示す。電子装置４０００（例えば、車載のＬＳＩ等）には、第１〜第３の情報処理装置の構成を備える装置をモジュール（又はチップ）５０として複数搭載されており、そのモジュール５０間で、追加処理側実行環境を相互にコピー又は移動できるように構成している。【０３６３】
（第４の実施例）
次に、本発明の第４の実施例について説明する。【０３６４】
図３２は、第４の実施例による情報処理装置の構成を示す図である。【０３６５】
上述した第１と第２の実施例においては、停止型転送方式又は無停止型転送方式によって、複数の情報処理装置間で追加処理側実行環境３０を移動又はコピーによって転送する構成を説明したが、本発明を、複数の基本側ＣＰＵ１００と基本処理側実行環境２０、複数の追加側ＣＰＵ２００と追加処理側実行環境３０を備える処理装置内で、ある追加側ＣＰＵ２００上の追加処理側実行環境３０を、停止型転送方式又は無停止型転送方式によって、他の追加側ＣＰＵ２００上に転送するように構成することもできる。【０３６６】
図３２は、このような構成例を示しており、基本側ＣＰＵ１００と基本処理側実行環境２０と、追加側ＣＰＵ２００と追加処理側実行環境３０の組を複数備えている。【０３６７】
図３２に示す構成例はあくまで一例であり、例えば、２つの基本処理側のそれぞれに、２つ以上の追加処理側を備える構成であってもよい。【０３６８】
この第４の実施例の応用例としては、例えば、自動車の運転を制御するために組み込まれる車載の情報処理装置（例えば、ＬＳＩ）に、図３２に示すような冗長構成を適用することも可能である。【０３６９】
このような構成とすれば、一方の追加側ＣＰＵ２００上で動作している追加処理側実行環境３０によって実現される制御機能に不具合などが発生した場合に、その追加処理側実行環境３０を、他の追加側ＣＰＵ２００に転送することで、制御機能の停止を最小限に抑えて当該機能を復元することが可能となる。【０３７０】
なお、上記第４の実施例では、いわゆるマルチコア構成の情報処理装置に本発明を適用した例を示したが、さらに多数のコアを有するメニーコア構成の情報処理装置に本発明を適用することができるのは言うまでもない。【０３７１】
車載の情報処理装置（ＬＳＩ）に本発明を適用する場合、第１から第３の実施例の応用例として示した図３５の構成のように、分散メモリ構成のモジュール（又はチップ）間で追加処理側実行環境のコピー又は移動を行う構成とすることで、信頼性や安全性を損なうことなく、制御機能のコピー又は移動を行うことが可能である。【０３７２】
また、共有メモリ構成（複数のコアでメモリを共有する構成）のモジュール（又はチップ）間で追加処理側実行環境のコピー又は移動を行う場合には、第４の実施例のようなマルチコア又はメニーコア構成を用いることで、信頼性や安全性を損なうことなく、制御機能のコピー又は移動を行うことが可能である。【０３７３】
（応用例１）
以下、本発明による情報処理装置を適用した応用例１について、図３３を用いて説明する。【０３７４】
図３３においては、ＯＳと追加処理であるアプリケーションを含む環境である追加処理側実行環境３０の提供者が本発明の情報処理装置１０−１から、当該追加処理側実行環境３０の利用者Ａ、Ｂの情報処理装置１０Ａ、１０Ｂに対して、上述した第１又は第２の実施例による方法で追加処理側実行環境３０を転送する例を示している。【０３７５】
利用者Ａ、Ｂの情報処理装置１０Ａ、１０Ｂは、装置間で互いに通信することのできる通信エリア３０００内において、提供者の情報処理装置１０−１から追加処理側実行環境３０を受信し、または提供者の情報処理装置１０−１に対して追加処理側実行環境３０を送信することで、提供者側が有する複数種類の実行環境を入れ替え等によって利用することができる。【０３７６】
（応用例２）
以下、本発明による情報処理装置を適用した応用例２について、図３４を用いて説明する。【０３７７】
図３４においては、ＯＳと追加処理であるアプリケーションを含む環境である追加処理側実行環境３０の提供者が本発明の情報処理装置１０−１から、当該追加処理側実行環境３０の利用者の情報処理装置１０Ａ、１０Ｂに対して、上述した第１又は第２の実施例による方法で追加処理側実行環境３０をコピーにって転送し、利用者の情報処理装置１０Ｂからさらに他の利用者の情報処理装置１０Ｃにコピーによる転送を行う例を示している。【０３７８】
利用者Ａ、Ｂの情報処理装置１０Ａ、１０Ｂは、提供者の情報処理装置１０−１から追加処理側実行環境３０を定期的又は任意にコピーすることにより、新たなアプリケーションやデバイスドライバを追加処理として有する実行環境を入手することが可能となる。また、利用者Ｃの情報処理装置１０Ｃは、利用者Ｂの情報処理装置１０Ｂから追加処理側実行環境３０を定期的又は任意にコピーする。【０３７９】
なお、図３４においては、利用者Ａ、Ｂの情報処理装置１０Ａ、１０Ｂが定期的に自身の実行環境を、提供者の情報処理装置１０−１に転送し、利用者Ｃの情報処理装置１０Ｃが情報処理装置１０Ｂに転送することで、実行環境をバックアップすることも可能である。このようにしてバックアップした実行環境は、上述した提供者の情報処理装置１０−１、利用者の情報処理装置１０Ｂからの実行環境のコピーによって各利用者側で復元することが可能である。【０３８０】
上述した実施例において、実行環境監視手段４００、１４００については、専用のハードウェアによって実現することが可能であると共に、ソフトウェアとして実現することも可能である。また、実行環境監視手段４００、１４００の機能を仮想マシンによって実現することも可能である。【０３８１】
さらに、基本処理側実行環境２０には、必ずしもＯＳ１１０を備える必要はなく、基本側ＣＰＵ１００によって転送管理手段３００、１３００の機能をハードウェア及びソフトウェア的に実現する構成であってもよい。【０３８２】
以上好ましい実施の形態と実施例をあげて本発明を説明したが、本発明は必ずしも、上記実施の形態及び実施例に限定されるものでなく、その技術的思想の範囲内において様々に変形して実施することができる。【０３８３】
この出願は、２００７年６月１２日に出願された日本出願特願２００７−１５５１４９を基礎とする優先権を主張し、その開示の全てをここに取り込む。
【図１】
2008152967.tif 000003
【図２】
2008152967.tif 000004
【図３】
2008152967.tif 000005
【図４】
2008152967.tif 000006
【図５】
2008152967.tif 000007
【図６】
2008152967.tif 000008
【図７】
2008152967.tif 000009
【図８】
2008152967.tif 000010
【図９】
2008152967.tif 000011
【図１０】
2008152967.tif 000012
【図１１】
2008152967.tif 000013
【図１２】
2008152967.tif 000014
【図１３】
2008152967.tif 000015
【図１４】
2008152967.tif 000016
【図１５】
2008152967.tif 000017
【図１６】
2008152967.tif 000018
【図１７】
2008152967.tif 000019
【図１８】
2008152967.tif 000020
【図１９】
2008152967.tif 000021
【図２０】
2008152967.tif 000022
【図２１】
2008152967.tif 000023
【図２２】
2008152967.tif 000024
【図２３】
2008152967.tif 000025
【図２４】
2008152967.tif 000026
【図２５】
2008152967.tif 000027
【図２６】
2008152967.tif 000028
【図２７】
2008152967.tif 000029
【図２８】
2008152967.tif 000030
【図２９】
2008152967.tif 000031
【図３０】
2008152967.tif 000032
【図３１】
2008152967.tif 000033
【図３２】
2008152967.tif 000034
【図３３】
2008152967.tif 000035
【図３４】
2008152967.tif 000036
【図３５】
2008152967.tif 000037
【手続補正書】
【提出日】平成21年4月13日(2009.4.13)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
基本処理の実行環境を形成する第１のＣＰＵと追加処理の実行環境を形成する第２のＣＰＵを含むマルチプロセッサ構成を有する情報処理装置であって、
前記実行環境は、オペレーティングシステムと、当該オペレーティングシステム上で動作するアプリケーションを含み、
前記基本処理を実行する基本側処理部と、前記追加処理を実行する追加側処理部を備え、
前記基本側処理部に設けられた転送管理手段が、前記追加側処理部で実行される追加処理の実行環境の構成情報と当該実行環境に対応するメモリ内データとを含む実行環境データを他の情報処理装置に転送し、他の情報処理装置にて受信した前記実行環境データに基づいて前記実行環境を復元し前記追加側処理部を再起動することを特徴とする情報処理装置。
【請求項２】
基本処理の実行環境を形成する第１のＣＰＵと追加処理の実行環境を形成する第２のＣＰＵを含むマルチプロセッサ構成を有する情報処理装置であって、
前記実行環境は、オペレーティングシステムと、当該オペレーティングシステム上で動作するアプリケーションを含み、
前記基本処理を実行する基本側処理部と、前記追加処理を実行する追加側処理部を備え、
前記基本側処理部に設けられた転送管理手段が、前記追加側処理部を停止させ、前記追加側処理部で実行される追加処理の実行環境の構成情報と当該実行環境に対応するメモリ内データを含む実行環境データを、前記他の情報処理装置に転送し、
他の情報処理装置から前記実行環境データを受け取ると、前記実行環境データに基づいてメモリに前記実行環境を復元し前記追加側処理部を再起動することを特徴とする情報処理装置。
【請求項３】
前記実行環境データは、前記追加処理の実行環境の種類、メモリ領域のサイズ、前記メモリ内のデータのアドレス情報を含む前記構成情報を格納するヘッダ部と、前記実行環境に対応するメモリ内データであるプログラムと当該プログラムで扱うデータを格納するデータ部とで構成されることを特徴とする請求項１又は請求項２に記載の情報処理装置。
【請求項４】
前記実行環境データに基づいて前記実行環境を復元する際に、前記構成情報に含まれるアドレス情報と、前記メモリ内データを書き込んだメモリのアドレスとが整合するように前記追加側処理部のメモリアクセスを制御する実行環境監視手段を備えることを特徴とする請求項１から請求項３の何れか１項に記載の情報処理装置。
【請求項５】
前記転送管理手段は、
前記メモリ内のデータをメモリに書き込んだ際に、前記構成情報に含まれるアドレス情報と前記メモリ内のデータを書き込んだメモリのアドレスとを整合させる制御を前記実行環境監視手段に指示することを特徴とする請求項４に記載の情報処理装置。
【請求項６】
前記転送管理手段は、
前記実行環境データを前記他の情報処理装置に移動によって転送する場合、
前記追加側処理部に、前記実行環境の動作をサスペンドさせた後に、前記追加側処理部を停止させ、
前記実行環境に対応するメモリ内データのメモリ上の領域から前記データを読み出し、
前記実行環境の前記構成情報と、読み出した前記メモリ内データとから前記実行環境データを生成し、
生成した前記実行環境データを相手先の情報処理装置に転送する
ことを特徴とする請求項１から請求項５の何れか１項に記載の情報処理装置。
【請求項７】
前記転送管理手段は、
前記実行環境データを前記他の情報処理装置にコピーによって転送する場合、
前記追加側処理部に、前記実行環境の動作をサスペンドさせ、
前記実行環境に対応するメモリ内データのメモリ上の領域から前記データを読み出し、
前記実行環境の前記構成情報と、読み出した前記メモリ内データとから前記実行環境データを生成し、
生成した前記実行環境データを相手先の情報処理装置に転送する
ことを特徴とする請求項１から請求項５の何れか１項に記載の情報処理装置。
【請求項８】
前記転送管理手段は、
他の情報処理装置から前記実行環境データを受け取る場合、
指定された前記実行環境データを受信し、
受信した前記実行環境データに含まれる構成情報に基づいて、メモリ内データを書き込むメモリ領域を決定し、当該メモリ領域を前記追加側処理部がアクセスできるように設定し、
決定した前記メモリ領域に前記実行環境データに含まれるメモリ内データを書き込み、
書き込み完了後に、前記追加側処理部の再起動を行うことを特徴とする請求項１から請求項５の何れか１項に記載の情報処理装置。
【請求項９】
前記実行環境監視手段は、
前記構成情報に含まれるアドレス情報と、前記メモリ内データを書き込んだメモリのアドレスとが整合するように、メモリの領域毎のアクセスの可否情報を格納する管理データ格納手段と、
前記管理データ格納手段の前記管理データに基づいて、前記追加側処理部による前記メモリのアクセスを制御するフィルタ手段とで構成されることを特徴とする請求項４に記載の情報処理装置。
【請求項１０】
前記実行環境監視手段は、
前記メモリ内データを書き込んだメモリのアドレスを、前記構成情報に含まれるアドレス情報と整合するように変換するアドレス変換手段と、
前記アドレス変換手段によって変換されたアドレスに基づいて前記追加側処理部による前記メモリのアクセスを制御するアクセス制御手段とで構成されることを特徴とする請求項４に記載の情報処理装置。
【請求項１１】
前記転送管理手段は、メモリ内データを書き込むメモリ領域を前記追加側処理部がアクセスできるように、前記実行環境監視手段に設定することを特徴とする請求項４、請求項９又は請求項１０の何れか１項に記載の情報処理装置。
【請求項１２】
前記転送管理手段は、
他の情報処理装置へ前記実行環境データを転送し、又は他の情報処理装置から実行環境データを受け付ける機能を有する外部接続手段と、
前記追加側処理部に対する停止と再起動を行う機能と、前記実行環境の構成情報を通知する機能を有する実行環境情報設定手段と、
前記実行環境に対応するメモリ内のデータの読み出しと前記実行環境データのメモリへの書き込みを行う機能を有するメモリアクセス手段と、
前記実行環境情報設定手段から通知される前記構成情報と、前記メモリアクセス手段からの前記実行環境に対応するメモリ内のデータから前記実行環境データを生成する実行環境データ処理手段とを備えることを特徴とする請求項１から請求項８の何れか１項に記載の情報処理装置。
【請求項１３】
基本処理の実行環境を形成する第１のＣＰＵと追加処理の実行環境を形成する第２のＣＰＵを含むマルチプロセッサ構成を有する情報処理装置であって、
前記実行環境は、オペレーティングシステムと、当該オペレーティングシステム上で動作するアプリケーションを含み、
前記基本処理を実行する基本側処理部と、前記追加処理を実行する追加側処理部を備え、
前記基本側処理部に設けられた転送管理手段が、前記追加側処理部で実行される追加処理の実行環境の構成情報と当該実行環境に対応するメモリ内データを含む実行環境データを、前記追加側処理部の動作を実質的に停止させることなく前記他の情報処理装置に転送し、その後前記追加側処理部を再起動させるまでの間に前記追加側処理部によって更新されたデータを、追加更新データとして前記他の情報処理装置に転送し、
他の情報処理装置から前記実行環境データを受け取ると、前記実行環境データと前記追加更新データに基づいて前記実行環境を復元し前記追加側処理部を再起動することを特徴とする情報処理装置。
【請求項１４】
前記実行環境データは、前記追加処理の実行環境の種類、メモリ領域のサイズ、前記メモリ内のデータのアドレス情報を含む前記構成情報を格納するヘッダ部と、前記実行環境に対応するメモリ内データであるプログラムと当該プログラムで扱うデータを格納するデータ部とで構成されることを特徴とする請求項１３に記載の情報処理装置。
【請求項１５】
前記実行環境データに基づいて前記実行環境を復元する際に、前記構成情報に含まれるアドレス情報と、前記メモリ内データを書き込んだメモリのアドレスとが整合するように前記追加側処理部のメモリアクセスを制御する実行環境監視手段を備えることを特徴とする請求項１３又は請求項１４に記載の情報処理装置。
【請求項１６】
前記実行環境監視手段は、
前記更新管理手段からの監視指示によって、前記追加側処理部によって更新されたデータを、読み出したメモリのアドレスと対応させて、アクセス更新データ格納手段に記録するアクセス状態監視手段を有することを特徴とする請求項１５に記載の情報処理装置。
【請求項１７】
前記アクセス更新データ格納手段が、ＦＩＦＯバッファで構成されることを特徴とする請求項１６に記載の情報処理装置。
【請求項１８】
前記アクセス状態監視手段は、同一アドレスのデータが連続的に更新される場合には、少なくとも最新の更新データを前記アクセス更新データ格納手段に記録することを特徴とする請求項１６又は請求項１７に記載の情報処理装置。
【請求項１９】
前記アクセス状態監視手段は、メモリのアドレス範囲毎に予め設定された更新データの記録の可否情報に基づいて、更新データの記録が必要なアドレス範囲のデータの更新データを前記更新データ格納手段に格納することを特徴とする請求項１６又は請求項１７に記載の情報処理装置。
【請求項２０】
前記転送管理手段は、
前記実行環境データを前記他の情報処理装置に転送する場合、
前記更新データの監視を前記アクセス状態監視手段に指示し、
前記実行環境に対応するメモリ内データをメモリから読み出し、
前記実行環境の前記構成情報と、読み出した前記メモリ内データから前記実行環境データを生成し、
生成した前記実行環境データを相手先の情報処理装置に転送し、
前記アクセス更新データ格納手段に前記更新データが存在する場合に、前記更新データを読み出し、追加更新データとして相手先の情報処理装置に転送し、
前記追加側処理部に、前記実行環境の動作のサスペンドを指示し、
前記サスペンド完了後に、前記追加側処理部を一時的に停止させ、
前記アクセス状態監視手段による監視を解除する
ことを特徴とする請求項１３から請求項１９の何れか１項に記載の情報処理装置。
【請求項２１】
前記転送管理手段は、
前記アクセス更新データ格納手段に前記更新データが存在する場合又は前記更新データのあふれが発生した場合に、
前記更新データの量が所定の設定値以下となるまで、前記更新データを読み出しを繰り返し、
読み出した前記更新データを、追加更新データとして相手先の情報処理装置に転送する
ことを特徴等とする請求項２０に記載の情報処理装置。
【請求項２２】
前記転送管理手段は、
前記アクセス更新データ格納手段の前記更新データが空または十分少なくなった時点で、前記追加側処理部に、前記実行環境の動作のサスペンドを指示することを特徴とする請求項２０又は請求項２１に記載の情報処理装置。
【請求項２３】
前記転送管理手段は、
前記追加側処理部に、前記実行環境の動作のサスペンドを指示してから、前記サスペンドが完了するまでの間、
前記更新データの量が所定の設定値以下となるまで、前記更新データを読み出しを繰り返し、
読み出した前記更新データを、追加更新データとして相手先の情報処理装置に転送する
ことを特徴等とする請求項２０から請求項２２の何れか１項に記載の情報処理装置。
【請求項２４】
前記転送管理手段は、
前記アクセス状態監視手段から前記更新データのあふれの通知を受けると、
前記追加側処理部からのメモリへの書き込み要求を待ち状態とし、
前記アクセス更新データ格納手段から前記更新データを読み出し、前記更新データの空きができた時点で前記待ち状態の書き込み要求による更新データを記録する
ことを特徴とする請求項２０から請求項２３の何れか１項に記載の情報処理装置。
【請求項２５】
前記転送管理手段は、
他の情報処理装置から前記実行環境データを受け取る場合、
転送された前記実行環境データを受信し、
受信した前記実行環境データに含まれる構成情報に基づいて、メモリ内データを書き込むメモリ領域を決定し、当該メモリ領域を前記追加側処理部がアクセスできるように設定し、
決定した前記メモリ領域に前記実行環境データに含まれるメモリ内データを書き込み、
追加更新データが転送された場合、受信した前記追加更新データを決定した前記メモリ領域に書き込み、
書き込み完了後に、前記追加側処理部の再起動を行う
ことを特徴とする請求項１３から請求項２３の何れか１項に記載の情報処理装置。
【請求項２６】
前記転送管理手段は、
他の情報処理装置へ前記実行環境データを転送し、又は他の情報処理装置から実行環境データを受け付ける機能を有する外部接続手段と、
前記追加側処理部に対する停止と再起動を行う機能と、前記実行環境の構成情報を通知する機能を有する実行環境情報設定手段と、
前記実行環境に対応するメモリ内のデータの読み出しと前記実行環境データのメモリへの書き込みを行う機能を有するメモリアクセス手段と、
前記実行環境情報設定手段から通知される前記構成情報と、前記メモリアクセス手段からの前記実行環境に対応するメモリ内のデータから前記実行環境データを生成する実行環境データ処理手段とを備えることを特徴とする請求項１３から請求項２５の何れか１項に記載の情報処理装置。
【請求項２７】
基本処理の実行環境を形成する第１のＣＰＵと追加処理の実行環境を形成する第２のＣＰＵを含むマルチプロセッサ構成を有する情報処理装置であって、
前記実行環境は、オペレーティングシステムと、当該オペレーティングシステム上で動作するアプリケーションを含み、
前記基本処理を実行する複数の基本側処理部と、前記追加処理を実行する複数の追加側処理部を備え、
前記基本側処理部に設けられた転送管理手段が、前記追加側処理部で実行される追加処理の実行環境の情報と当該実行環境に対応するメモリ内データを含む実行環境データを他の基本側処理部に転送し、当該基本側処理部の前記転送手段が、受信した前記実行環境データに基づいた前記実行環境を前記追加側処理部で起動することを特徴とする情報処理装置。
【請求項２８】
基本処理の実行環境を形成する第１のＣＰＵと追加処理の実行環境を形成する第２のＣＰＵを含むマルチプロセッサ構成を有する情報処理装置であって、
前記実行環境は、オペレーティングシステムと、当該オペレーティングシステム上で動作するアプリケーションを含み、
前記基本処理を実行する複数の基本側処理部と、前記追加処理を実行する複数の追加側処理部を備え、
前記基本側処理部に設けられた転送管理手段が、前記追加側処理部を停止させ、前記追加側処理部で実行される追加処理の実行環境の構成情報と当該実行環境に対応するメモリ内データを含む実行環境データを、前記他の基本側処理部に転送し、
当該他の基本側処理部の転送管理手段が、前記実行環境データに基づいてメモリに前記実行環境を復元し前記追加側処理部を再起動することを特徴とする情報処理装置。
【請求項２９】
基本処理の実行環境を形成する第１のＣＰＵと追加処理の実行環境を形成する第２のＣＰＵを含むマルチプロセッサ構成を有する情報処理装置であって、
前記実行環境は、オペレーティングシステムと、当該オペレーティングシステム上で動作するアプリケーションを含み、
前記基本処理を実行する複数の基本側処理部と、前記追加処理を実行する複数の追加側処理部を備え、
前記基本側処理部に設けられた転送管理手段が、前記追加側処理部で実行される追加処理の実行環境の構成情報と当該実行環境に対応するメモリ内データを含む実行環境データを、前記追加側処理部の動作を実質的に停止させることなく前記他の基本側処理部に転送し、その後前記追加側処理部を再起動させるまでの間に前記追加側処理部によって更新されたデータを、追加更新データとして前記他の基本側処理部に転送し、
他の基本側処理部の転送管理手段が、前記実行環境データと前記追加更新データに基づいて前記実行環境を復元し前記追加側処理部を再起動することを特徴とする情報処理装置。
【請求項３０】
基本処理の実行環境を形成する第１のＣＰＵと追加処理の実行環境を形成する第２のＣＰＵを含むマルチプロセッサ構成を有する情報処理装置における実行環境転送方法であって、
前記実行環境は、オペレーティングシステムと、当該オペレーティングシステム上で動作するアプリケーションを含み、
前記基本処理を実行する基本側処理部と前記追加処理を実行する追加側処理部を備える情報処理装置間で、前記追加側処理部で実行される追加処理の実行環境を転送する際に、
転送側の前記情報処理装置の前記基本側処理部が、前記追加側処理部で実行される追加処理の実行環境の構成情報と当該実行環境に対応するメモリ内データとを含む実行環境データを他の情報処理装置に転送し、受信側の前記情報処理装置の基本処理部が受信した前記実行環境データに基づいて前記実行環境を復元し前記追加側処理部を再起動することを特徴とする実行環境転送方法。
【請求項３１】
基本処理の実行環境を形成する第１のＣＰＵと追加処理の実行環境を形成する第２のＣＰＵを含むマルチプロセッサ構成を有する情報処理装置における実行環境転送方法であって、
前記実行環境は、オペレーティングシステムと、当該オペレーティングシステム上で動作するアプリケーションを含み、
前記基本処理を実行する基本側処理部と前記追加処理を実行する追加側処理部を備える情報処理装置間で、前記追加側処理部で実行される追加処理の実行環境を転送する際に、
転送側の前記情報処理装置の前記基本側処理部が、前記追加側処理部を停止させ、前記追加側処理部で実行される追加処理の実行環境の構成情報と当該実行環境に対応するメモリ内データを含む実行環境データを、前記他の情報処理装置に転送し、
受信側の前記情報処理装置の基本処理部が、受信した前記実行環境データに基づいてメモリに前記実行環境を復元し前記追加側処理部を再起動することを特徴とする実行環境転送方法。
【請求項３２】
前記実行環境データは、前記追加処理の実行環境の種類、メモリ領域のサイズ、前記メモリ内のデータのアドレス情報を含む前記構成情報を格納するヘッダ部と、前記実行環境に対応するメモリ内データであるプログラムと当該プログラムで扱うデータを格納するデータ部とで構成されることを特徴とする請求項３０又は請求項３１に記載の実行環境転送方法。
【請求項３３】
受信側の前記情報処理装置の実行環境監視手段が、前記実行環境データに基づいて前記実行環境を復元する際に、前記構成情報に含まれるアドレス情報と、前記メモリ内データを書き込んだメモリのアドレスとが整合するように前記追加側処理部のメモリアクセスを制御することを特徴とする請求項３０から請求項３２の何れか１項に記載の実行環境転送方法。
【請求項３４】
受信側の前記情報処理装置の実行環境監視手段が、
前記構成情報に含まれるアドレス情報と、前記メモリ内データを書き込んだメモリのアドレスとが整合するように、メモリの領域毎のアクセスの可否情報を格納する管理データに基づいて、前記追加側処理部による前記メモリのアクセスを制御することを特徴とする請求項３３に記載の実行環境転送方法。
【請求項３５】
受信側の前記情報処理装置の実行環境監視手段が、
前記メモリ内データを書き込んだメモリのアドレスを、前記構成情報に含まれるアドレス情報と整合するように変換し、
変換されたアドレスに基づいて前記追加側処理部による前記メモリのアクセスを制御することを特徴とする請求項３３に記載の実行環境転送方法。
【請求項３６】
前記転送管理手段は、
前記実行環境データを前記他の情報処理装置に移動によって転送する場合、
前記追加側処理部に、前記実行環境の動作をサスペンドさせた後に、前記追加側処理部を停止させ、
前記実行環境に対応するメモリ内データのメモリ上の領域から前記データを読み出し、
前記実行環境の前記構成情報と、読み出した前記メモリ内データとから前記実行環境データを生成し、
生成した前記実行環境データを相手先の情報処理装置に転送する
ことを特徴とする請求項３０から請求項３５の何れか１項に記載の実行環境転送方法。
【請求項３７】
転送側の前記情報処理装置の前記基本側処理部は、
前記実行環境データを前記他の情報処理装置にコピーによって転送する場合、
前記追加側処理部に、前記実行環境の動作をサスペンドさせ、
前記実行環境に対応するメモリ内データのメモリ上の領域から前記データを読み出し、
前記実行環境の前記構成情報と、読み出した前記メモリ内データとから前記実行環境データを生成し、
生成した前記実行環境データを相手先の情報処理装置に転送する
ことを特徴とする請求項３０から請求項３６の何れか１項に記載の実行環境転送方法。
【請求項３８】
受信側の前記情報処理装置の基本処理部は、
他の情報処理装置から前記実行環境データを受け取る場合、
指定された前記実行環境データを受信し、
受信した前記実行環境データに含まれる構成情報に基づいて、メモリ内データを書き込むメモリ領域を決定し、当該メモリ領域を前記追加側処理部がアクセスできるように設定し、
決定した前記メモリ領域に前記実行環境データに含まれるメモリ内データを書き込み、
書き込み完了後に、前記追加側処理部の再起動を行うことを特徴とする請求項３０から請求項３５の何れか１項に記載の実行環境転送方法。
【請求項３９】
基本処理の実行環境を形成する第１のＣＰＵと追加処理の実行環境を形成する第２のＣＰＵを含むマルチプロセッサ構成を有する情報処理装置における実行環境転送方法であって、
前記実行環境は、オペレーティングシステムと、当該オペレーティングシステム上で動作するアプリケーションを含み、
前記基本処理を実行する基本側処理部と前記追加処理を実行する追加側処理部を備える情報処理装置間で、前記追加側処理部で実行される追加処理の実行環境を転送する際に、
転送側の前記情報処理装置の前記基本側処理部が、前記追加側処理部で実行される追加処理の実行環境の構成情報と当該実行環境に対応するメモリ内データを含む実行環境データを、前記追加側処理部の動作を実質的に停止させることなく前記他の情報処理装置に転送し、その後前記追加側処理部を再起動させるまでの間に前記追加側処理部によって更新されたデータを、追加更新データとして前記他の情報処理装置に転送し、
受信側の前記情報処理装置の基本処理部が、前記実行環境データと前記追加更新データに基づいて前記実行環境を復元し前記追加側処理部を再起動することを特徴とする実行環境転送方法。
【請求項４０】
前記実行環境データは、前記追加処理の実行環境の種類、メモリ領域のサイズ、前記メモリ内のデータのアドレス情報を含む前記構成情報を格納するヘッダ部と、前記実行環境に対応するメモリ内データであるプログラムと当該プログラムで扱うデータを格納するデータ部とで構成されることを特徴とする請求項３９に記載の実行環境転送方法。
【請求項４１】
受信側の前記情報処理装置の実行環境監視手段が、前記実行環境データに基づいて前記実行環境を復元する際に、前記構成情報に含まれるアドレス情報と、前記メモリ内データを書き込んだメモリのアドレスとが整合するように前記追加側処理部のメモリアクセスを制御することを特徴とする請求項３９又は請求項４０に記載の実行環境転送方法。
【請求項４２】
転送側の前記情報処理装置の実行環境監視手段が、
監視指示によって、前記追加側処理部によって更新されたデータを、読み出したメモリのアドレスと対応させて、アクセス更新データ格納手段に記録させることを特徴とする請求項４１に記載の実行環境転送方法。
【請求項４３】
前記アクセス更新データ格納手段が、ＦＩＦＯバッファで構成されることを特徴とする請求項４２に記載の実行環境転送方法。
【請求項４４】
前記実行環境監視手段は、同一アドレスのデータが連続的に更新される場合には、少なくとも最新の更新データを前記アクセス更新データ格納手段に記録することを特徴とする請求項４２又は請求項４３に記載の実行環境転送方法。
【請求項４５】
転送側の前記情報処理装置の前記基本側処理部は、
前記実行環境監視手段に前記更新データの監視を指示し、
前記実行環境に対応するメモリ内データをメモリから読み出し、
前記実行環境の前記構成情報と、読み出した前記メモリ内データから前記実行環境データを生成し、
生成した前記実行環境データを相手先の情報処理装置に転送し、
前記アクセス更新データ格納手段に前記更新データが存在する場合に、前記更新データを読み出し、追加更新データとして相手先の情報処理装置に転送し、
前記追加側処理部に、前記実行環境の動作のサスペンドを指示し、
前記サスペンド完了後に、前記追加側処理部を一時的に停止させ、
前記実行環境監視手段による監視を解除する
ことを特徴とする請求項４０から請求項４４の何れか１項に記載の実行環境転送方法。
【請求項４６】
転送側の前記情報処理装置の前記基本側処理部は、
前記アクセス更新データ格納手段に前記更新データが存在する場合又は前記更新データのあふれが発生した場合に、
前記更新データの量が所定の設定値以下となるまで、前記更新データを読み出しを繰り返し、
読み出した前記更新データを、追加更新データとして相手先の情報処理装置に転送する
ことを特徴等とする請求項４５に記載の実行環境転送方法。
【請求項４７】
転送側の前記情報処理装置の前記基本側処理部は、
前記アクセス更新データ格納手段の前記更新データが空または十分少なくなった時点で、前記追加側処理部に、前記実行環境の動作のサスペンドを指示することを特徴とする請求項４５又は請求項４６に記載の実行環境転送方法。
【請求項４８】
転送側の前記情報処理装置の前記基本側処理部は、
前記追加側処理部に、前記実行環境の動作のサスペンドを指示してから、前記サスペンドが完了するまでの間、
前記更新データの量が所定の設定値以下となるまで、前記更新データを読み出しを繰り返し、
読み出した前記更新データを、追加更新データとして相手先の情報処理装置に転送する
ことを特徴等とする請求項４５から請求項４７の何れか１項に記載の実行環境転送方法。
【請求項４９】
転送側の前記情報処理装置の前記基本側処理部は、
前記アクセス状態監視手段から前記更新データのあふれの通知を受けると、
前記追加側処理部からのメモリへの書き込み要求を待ち状態とし、
前記アクセス更新データ格納手段から前記更新データを読み出し、前記更新データの空きができた時点で前記待ち状態の書き込み要求による更新データを記録する
ことを特徴とする請求項４５から請求項４８の何れか１項に記載の実行環境転送方法。
【請求項５０】
受信側の前記情報処理装置の基本処理部は、
他の情報処理装置から前記実行環境データを受け取る場合、
転送された前記実行環境データを受信し、
受信した前記実行環境データに含まれる構成情報に基づいて、メモリ内データを書き込むメモリ領域を決定し、当該メモリ領域を前記追加側処理部がアクセスできるように設定し、
決定した前記メモリ領域に前記実行環境データに含まれるメモリ内データを書き込み、
追加更新データが転送された場合、受信した前記追加更新データを決定した前記メモリ領域に書き込み、
書き込み完了後に、前記追加側処理部の再起動を行う
ことを特徴とする請求項３９から請求項４９の何れか１項に記載の実行環境転送方法。
【請求項５１】
基本処理の実行環境を形成する第１のＣＰＵと追加処理の実行環境を形成する第２のＣＰＵを含むマルチプロセッサ構成を有する情報処理装置の実行環境転送プログラムであって、
前記実行環境は、オペレーティングシステムと、当該オペレーティングシステム上で動作するアプリケーションを含み、
前記基本処理を実行する基本側処理部と前記追加処理を実行する追加側処理部を備える情報処理装置間で、前記追加側処理部で実行される追加処理の実行環境を転送するために、
前記情報処理装置に、
転送側の前記情報処理装置の前記基本側処理部が、前記追加側処理部で実行される追加処理の実行環境の構成情報と当該実行環境に対応するメモリ内データとを含む実行環境データを他の情報処理装置に転送する処理と、受信側の前記情報処理装置の基本処理部が受信した前記実行環境データに基づいて前記実行環境を復元し前記追加側処理部を再起動する処理を実行させることを特徴とする実行環境転送プログラム。
【請求項５２】
基本処理の実行環境を形成する第１のＣＰＵと追加処理の実行環境を形成する第２のＣＰＵを含むマルチプロセッサ構成を有する情報処理装置の実行環境転送プログラムであって、
前記実行環境は、オペレーティングシステムと、当該オペレーティングシステム上で動作するアプリケーションを含み、
前記基本処理を実行する基本側処理部と前記追加処理を実行する追加側処理部を備える情報処理装置間で、前記追加側処理部で実行される追加処理の実行環境を転送するために、
前記情報処理装置に、
転送側の前記情報処理装置の前記基本側処理部が、前記追加側処理部を停止させ、前記追加側処理部で実行される追加処理の実行環境の構成情報と当該実行環境に対応するメモリ内データを含む実行環境データを、前記他の情報処理装置に転送する処理と、
受信側の前記情報処理装置の基本処理部が、受信した前記実行環境データに基づいてメモリに前記実行環境を復元し前記追加側処理部を再起動する処理を実行させることを特徴とする実行環境転送プログラム。
【請求項５３】
基本処理の実行環境を形成する第１のＣＰＵと追加処理の実行環境を形成する第２のＣＰＵを含むマルチプロセッサ構成を有する情報処理装置の実行環境転送プログラムであって、
前記実行環境は、オペレーティングシステムと、当該オペレーティングシステム上で動作するアプリケーションを含み、
前記基本処理を実行する基本側処理部と前記追加処理を実行する追加側処理部を備える情報処理装置間で、前記追加側処理部で実行される追加処理の実行環境を転送するために、
前記情報処理装置に、
転送側の前記情報処理装置の前記基本側処理部が、前記追加側処理部で実行される追加処理の実行環境の構成情報と当該実行環境に対応するメモリ内データを含む実行環境データを、前記追加側処理部の動作を停止することなく前記他の情報処理装置に転送する処理と、その後前記追加側処理部を再起動させるまでの間に前記追加側処理部によって更新されたデータを、追加更新データとして前記他の情報処理装置に転送する処理と、
受信側の前記情報処理装置の基本処理部が、前記実行環境データと前記追加更新データに基づいて前記実行環境を復元し前記追加側処理部を再起動する処理を実行させることを特徴とする実行環境転送プログラム。
【国際調査報告】
2008152967.tif 000038
2008152967.tif 000039
2008152967.tif 000040
2008152967.tif 000041