JP4114632B2 - チェックポインティング方式及びプログラム - Google Patents
チェックポインティング方式及びプログラム Download PDFInfo
- Publication number
- JP4114632B2 JP4114632B2 JP2004140371A JP2004140371A JP4114632B2 JP 4114632 B2 JP4114632 B2 JP 4114632B2 JP 2004140371 A JP2004140371 A JP 2004140371A JP 2004140371 A JP2004140371 A JP 2004140371A JP 4114632 B2 JP4114632 B2 JP 4114632B2
- Authority
- JP
- Japan
- Prior art keywords
- program
- library
- interruption point
- variable
- intermediate data
- 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
Links
Images
Landscapes
- Retry When Errors Occur (AREA)
Description
第1には、中途で何らかの原因によって、計算機システムが停止した場合、それまでの結果が失われてしまう。この場合、通常、計算を最初から再実行する必要あるため、結果が得られるまでの時間が長くなってしまう。
チェックポインティングを実現するには、OS(Operating System)レベルでプログラムとしての計算が使用しているデータを制御用の情報を含めてすべて退避させる方式と、アプリケーションレベルでプログラムの所定の場所において実行の再開に必要なデータを明示的に退避させる2つの方式がある。
また、本発明は、アプリケーションレベルでのチェックポインティングを容易に行うことを可能にするためのプログラムを提供することを課題としている。
また、前記被初期化変数識別手段は、前記プログラムを解析して、指定されたプログラム中断点までに更新される変数のリストを被初期化変数リストとして被初期化変数リスト記憶手段に記憶し、前記更新変数識別手段は、前記プログラムを解析して、指定されたプログラム中断点から開始して次に該指定されたプログラム中断点に制御が戻ってくるまでに更新される変数のリストを更新変数リストとして更新変更リスト記憶手段に記憶し、前記中間データ退避・復帰ライブラリ生成手段は、前記被初期化変数リスト記憶手段に記憶された被初期化変数リストに登録されていて、かつ、前記更新変更リスト記憶手段に記憶された更新変数リストに登録された変数を、プログラムの実行を再開するために必要とする中間データとして退避するサブルーチンと中間データを復帰させるサブルーチンを生成し、中間データ退避・復帰ライブラリとして中間データ退避・復帰ライブラリ記憶手段に記憶するように構成してもよい。
また、本発明のプログラムをコンピュータが実行することにより、アプリケーションレベルでのチェックポインティングを容易に行うことが可能になる。
図1は、本実施の形態に係るチェックポインティング方式の構成を示す機能ブロック図であり、コンピュータ及び該コンピュータに実行させるためのプログラムを用いて実現される機能を用いて表したブロック図である。
図1を参照すると、本発明の実施の形態は、被初期化変数識別手段1と、更新変数識別手段2と、中間データ退避・復帰ライブラリ生成手段3と、ライブラリコール生成手段4と、被初期化変数リスト記憶手段121と、更新変更リスト記憶手段211と、中間データ退避・復帰ライブラリ記憶手段321とを含んでいる。尚、被初期化変数リスト記憶手段121、更新変更リスト記憶手段211及び中間データ退避・復帰ライブラリ記憶手段321は記憶手段を構成している。
尚、被初期化変数識別手段1及び更新変数識別手段2は、プログラム11を解析することによって、プログラム11のプログラム中断点において退避及び復帰が必要な変数を識別する変数識別手段を構成している。
なお、プログラムの中断を指示するファイルにより中間データを出力しプログラムの実行を中断する制御を例に挙げたが、プログラムの中断を指示する方法は問わないし、中間データを書き出す動作とプログラムを中断させる操作に分割しても何等支障はない。
図2乃至図4は、本実施の形態の動作を示す流れ図である。
まず、被初期化変数識別手段1によりプログラム11を入力として被初期化変数リスト12を、更新変数識別手段2によりプログラム11を入力として更新変数リスト21をそれぞれ得る。被初期化変数識別手段1は、プログラム11に基づいて得た被初期化変数リスト12を被初期化変数リスト記憶手段121に記憶し又、更新変数識別手段2は、プログラム11に基づいて得た更新変数リスト21を更新変数リスト記憶手段211に記憶する。
また、被初期化変数識別手段1は、プログラム11のフローを解析し、指定されたプログラム中断点までに更新される変数のリストを被初期化変数リスト12として被初期化変数リスト記憶手段121に記憶するようにしている。
また、更新変数識別手段2は、プログラム11を解析し、指定されたプログラム中断点から開始して次に該指定されたプログラム中断点に制御が戻ってくるまでに更新される変数のリストを更新変数リスト21として更新変更リスト記憶手段211に記憶するようにしている。
また、アプリケーションレベルでのチェックポインティングを容易に実現することが可能になる。
また、アプリケーションレベルのチェックポインティングをプログラムの実行を中断する点の指定を行う作業のみでよいため、アプリケーションレベルのチェックポインティングを実現するために必要とするプログラムの変更作業を極めて少なくすることができる。この結果、容易にアプリケーションレベルのチックポインティングを利用できるようになる。
また、本実施の形態に係るチェックポインティング用プログラムをコンピュータが実行することにより、前記チェックポインティング方式を実現することが可能になる。したがって、アプリケーションレベルでのチェックポインティングを容易に行うことを可能にするためのプログラムを提供することが可能になる。
2・・・変数識別手段を構成する更新変数識別手段
3・・・中間データ退避・復帰ライブラリ生成手段
4・・・ライブラリコール生成手段
11・・・アプリケーションレベルのチェックポインティングを可能としたいプログラム
12・・・被初期化変数リスト
21・・・更新変数リスト
31・・・中間データ
32・・・中間データ退避・復帰ライブラリ
41・・・アプリケーションレベルのチェックポインティングに対応したプログラム
51・・・実行形式のプログラム
121・・・記憶手段を構成する被初期化変数リスト記憶手段
211・・・記憶手段を構成する更新変数リスト記憶手段
321・・・記憶手段を構成する中間データ退避・復帰ライブラリ記憶手段
Claims (5)
- プログラムの実行を中断する位置であるプログラム中断点における実行結果を退避し、前記プログラムの実行再開時に前記退避したデータを復帰させて、前記プログラム中断点から前記プログラムを実行再開するようにしたアプリケーションレベルのチェックポインティング方式において、
前記プログラムの構造を解析し、前記プログラムの実行が開始されてから最初に前記プログラム中断点に到るまでに更新される変数を識別する被初期化変数識別手段と、
前記プログラムの構造を解析し、最初に前記プログラム中断点を通過し次に該プログラム中断点に到るまでに更新される変数を識別する更新変数識別手段と、
前記被初期化変数識別手段及び前記更新変数識別手段で得られた変数のうち、共通する変数を前記プログラム中断点において実行を再開するために必要となる中間データとして退避及び復帰させるためのライブラリを生成する中間データ退避・復帰ライブラリ生成手段と、
前記プログラムのプログラム中断点に前記ライブラリをコールするプログラムを組み込むライブラリコール生成手段とを備え、
前記ライブラリをコールするプログラムが前記プログラム中断点において前記ライブラリをコールし、前記プログラムが前記プログラム中断点において実行再開することを特徴とするアプリケーションレベルのチェックポインティング方式。 - 前記プログラム中断点の情報は前記プログラムに組み込まれて成ることを特徴とする請求項1記載のチェックポインティング方式。
- 前記被初期化変数識別手段は、前記プログラムを解析して、指定されたプログラム中断点までに更新される変数のリストを被初期化変数リストとして被初期化変数リスト記憶手段に記憶し、
前記更新変数識別手段は、前記プログラムを解析して、指定されたプログラム中断点から開始して次に該指定されたプログラム中断点に制御が戻ってくるまでに更新される変数のリストを更新変数リストとして更新変更リスト記憶手段に記憶し、
前記中間データ退避・復帰ライブラリ生成手段は、前記被初期化変数リスト記憶手段に記憶された被初期化変数リストに登録されていて、かつ、前記更新変更リスト記憶手段に記憶された更新変数リストに登録された変数を、プログラムの実行を再開するために必要とする中間データとして退避するサブルーチンと中間データを復帰させるサブルーチンを生成し、中間データ退避・復帰ライブラリとして中間データ退避・復帰ライブラリ記憶手段に記憶することを特徴とする請求項1または2記載のチェックポインティング方式。 - コンピュータを、
実行するプログラムの構造を解析し、前記プログラムの実行が開始されてから最初にプログラムの実行を中断するプログラム中断点に到るまでに更新される変数を識別する被初期化変数識別手段と、
前記プログラムの構造を解析し、最初に前記プログラム中断点を通過し次に該プログラム中断点に到るまでに更新される変数を識別する更新変数識別手段と、
前記被初期化変数識別手段及び前記更新変数識別手段で得られた変数のうち、共通する変数を前記プログラム中断点において実行を再開するために必要となる中間データとして退避及び復帰させるためのライブラリを生成する中間データ退避・復帰ライブラリ生成手段と、
前記プログラムのプログラム中断点に前記ライブラリをコールするプログラムを組み込むライブラリコール生成手段として機能させると共に、
前記ライブラリをコールするプログラムが前記プログラム中断点において前記ライブラリをコールし、前記プログラムが前記プログラム中断点において実行再開するように機能させることを特徴とするアプリケーションレベルのチェックポインティング用プログラム。 - 前記被初期化変数識別手段が、前記プログラムを解析して、指定されたプログラム中断点までに更新される変数のリストを被初期化変数リストとして被初期化変数リスト記憶手段に記憶し、
前記更新変数識別手段が、前記プログラムを解析して、指定されたプログラム中断点から開始して次に該指定されたプログラム中断点に制御が戻ってくるまでに更新される変数のリストを更新変数リストとして更新変更リスト記憶手段に記憶し、
前記中間データ退避・復帰ライブラリ生成手段が、前記被初期化変数リスト記憶手段に記憶された被初期化変数リストに登録されていて、かつ、前記更新変更リスト記憶手段に記憶された更新変数リストに登録された変数を、プログラムの実行を再開するために必要とする中間データとして退避するサブルーチンと中間データを復帰させるサブルーチンを生成し、中間データ退避・復帰ライブラリとして中間データ退避・復帰ライブラリ記憶手段に記憶するように前記コンピュータを機能させることを特徴とする請求項4記載のプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004140371A JP4114632B2 (ja) | 2004-05-10 | 2004-05-10 | チェックポインティング方式及びプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004140371A JP4114632B2 (ja) | 2004-05-10 | 2004-05-10 | チェックポインティング方式及びプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2005322078A JP2005322078A (ja) | 2005-11-17 |
JP4114632B2 true JP4114632B2 (ja) | 2008-07-09 |
Family
ID=35469311
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004140371A Expired - Fee Related JP4114632B2 (ja) | 2004-05-10 | 2004-05-10 | チェックポインティング方式及びプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4114632B2 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5537917B2 (ja) * | 2009-12-04 | 2014-07-02 | 三菱電機株式会社 | 管理装置及びデータ処理制御装置及び管理方法及びデータ処理制御方法及びプログラム |
-
2004
- 2004-05-10 JP JP2004140371A patent/JP4114632B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2005322078A (ja) | 2005-11-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1769351B1 (en) | Method, software and apparatus for using application state history information when re-launching applications | |
US9164755B2 (en) | Personal and pooled virtual machine update | |
JP6027020B2 (ja) | プログラム状態のチェックポイントおよび復元の方法 | |
WO2010035596A1 (ja) | ファームウェア更新装置及び方法 | |
KR100679050B1 (ko) | 태스크간 빠른 문맥 교환을 위해 레지스터 문맥을 저장,복구하는 방법 및 장치 | |
JP4873423B2 (ja) | 仮想化プログラム、シミュレーション装置、仮想化方法 | |
JP6342070B2 (ja) | ジョブ管理装置及びジョブ管理方法及びジョブ管理プログラム | |
JP2011198363A (ja) | プログラムコンパイラ、プログラム設置装置、及びプログラム設置方法 | |
US6256751B1 (en) | Restoring checkpointed processes without restoring attributes of external data referenced by the processes | |
CN102411519A (zh) | 进程的恢复方法和装置 | |
CN114253713A (zh) | 一种基于reactor的异步批处理方法及系统 | |
JP4114632B2 (ja) | チェックポインティング方式及びプログラム | |
JP2001014175A (ja) | ジョブ運用管理システム、ジョブ運用管理方法及び記憶媒体 | |
JP2001014050A (ja) | 情報処理装置及び記憶媒体 | |
JP2809271B2 (ja) | ジョブ再実行方式 | |
JP6318214B2 (ja) | 汎用マイクロプロセッサを用いたplcのデバッグ方法 | |
JP2007004400A (ja) | プログラム・デバッグ方法 | |
JP6160688B2 (ja) | 情報処理装置、情報処理方法、及び情報処理プログラム | |
WO2023144939A1 (ja) | コンピュータ、制御方法及び制御プログラム | |
JP5317182B2 (ja) | Pos端末、モジュールアップデート方法およびモジュールアップデートプログラム | |
JPH05165652A (ja) | タスク切替え制御方法 | |
CN110968494A (zh) | 一种软件调试方法、装置及计算机存储介质 | |
JP2020113244A (ja) | Rtosアプリケーションデバッグ装置及びrtosアプリケーションデバッグ方法 | |
JP2003345607A5 (ja) | ||
JP2020052501A (ja) | 情報処理装置及びプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070626 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070824 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20071106 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20071129 |
|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20071129 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20071129 |
|
A911 | Transfer of reconsideration by examiner before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20080110 |
|
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: 20080325 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20080407 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110425 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4114632 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110425 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120425 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120425 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130425 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130425 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140425 Year of fee payment: 6 |
|
LAPS | Cancellation because of no payment of annual fees |