JPH01234950A - Restoration/restart processing system for program - Google Patents

Restoration/restart processing system for program

Info

Publication number
JPH01234950A
JPH01234950A JP63062653A JP6265388A JPH01234950A JP H01234950 A JPH01234950 A JP H01234950A JP 63062653 A JP63062653 A JP 63062653A JP 6265388 A JP6265388 A JP 6265388A JP H01234950 A JPH01234950 A JP H01234950A
Authority
JP
Japan
Prior art keywords
program
page
generation
external
external page
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP63062653A
Other languages
Japanese (ja)
Inventor
Yuji Murotani
室谷 祐二
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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP63062653A priority Critical patent/JPH01234950A/en
Publication of JPH01234950A publication Critical patent/JPH01234950A/en
Pending legal-status Critical Current

Links

Abstract

PURPOSE:To omit a saving auxiliary storage area to be an excessive computer resource different from a paging auxiliary storage area for realizing a virtual space by providing a title system with a two-dimensional control means, a program saving means and a program restoring means. CONSTITUTION:The system is constituted of the two-dimensional control means 1, the program saving means 2, the program restoring means 3, the virtual space 20 (physically formed in an auxiliary storage 30 by a paging mechanism or the like relating to the virtual space 20, the auxiliary storage 30 and a real storage 40), the auxiliary storage 30 (a paging auxiliary storage area formed by a large scale storage device such as a magnetic disk), the real storage 40 (a main storage device), and an external page image projection table 50 (physically included in the real storage 40). Consequently, the saving auxiliary storage area to be an excessive computer resource different from the paging auxiliary storage area realizing the virtual space can be omitted.

Description

【発明の詳細な説明】 (産業上の利用分野) 本発明はプログラムの復元再開処理方式に関し、特に仮
想記憶システム(仮想記憶方式が採用されている計算機
システム)におけるプログラムの復元再開処理方式に関
する。
DETAILED DESCRIPTION OF THE INVENTION (Field of Industrial Application) The present invention relates to a program restoration/resumption processing method, and more particularly to a program restoration/resumption processing method in a virtual storage system (a computer system employing a virtual storage method).

〔従来の技術〕[Conventional technology]

従来、この種のプログラムの復元再開処理方式は、プロ
グラムの復元再開処理(他のプログラムとのデッドロッ
クによるプログラムの停止、外因によるプログラムの異
常停止および計算機システムの停止に基づくプログラム
の停止等の不測の要因によるプログラムの実行中に生じ
る処理の中断に対して前もって宣言したプログラム再開
点の状態にプログラムを復元しそのプログラム再開点か
らプログラムを再開させる処理)のために専用の退避補
助記憶域を割り当て、プログラム再開点宣言時点(プロ
グラムの実行の過程における特定の時点で当該特定の時
点がプログラム再開点となりうろことを宣言する当該特
定の時点)における仮想空間(物理的にはページング補
助記憶域により実現される)でのプログラムの内容(物
理的にはページング記憶域内の外部ページの集合である
プログラム退避内容)を当該退避補助記憶域に退避し、
プログラムの再開時に当該退避補助記憶域からプログラ
ム退避内容をページング補助記憶域で実現される仮想空
間に復元していた。
Conventionally, this type of program restore/restart processing method has been used to handle program restore/restart processing (program stoppage due to deadlock with other programs, abnormal program stoppage due to external causes, program stoppage due to computer system stoppage, etc.). Allocates a dedicated backup auxiliary storage area for the process of restoring the program to the previously declared state of the program restart point and restarting the program from that program restart point in case of interruption of processing that occurs during program execution due to factors such as , the virtual space (physically realized by paging auxiliary storage save the program contents (physically the program save contents which are a collection of external pages in the paging storage area) in the save auxiliary storage area,
When the program is restarted, the saved contents of the program are restored from the save auxiliary storage area to the virtual space realized by the paging auxiliary storage area.

〔発明が解決しようとする課題〕[Problem to be solved by the invention]

上述した従来のプログラムの復元再開処理方式では、仮
想空間を物理的に実現するページング補助記憶域とは別
個の退避補助記憶域を必要とするので、余分な計算機資
源が必要になるという欠点がある。
The conventional program restoration and restart processing method described above requires an evacuation auxiliary storage area that is separate from the paging auxiliary storage area that physically realizes the virtual space, so it has the disadvantage of requiring extra computer resources. .

また、プログラムの退避時にプログラムを構成するペー
ジ集合(「ページ集合」は仮想空間における概念である
)の一部のページしか更新されていない場合であっても
ページ集合の全体に対応する外部ページの集合であるプ
ログラム退避内容を対象とする退避処理および復元処理
を行わなければならないので、ページング補助記憶域と
退避補助記憶域との間の入出力動作の回数が多大になる
という欠点がある。
In addition, even if only some pages of the page set (a "page set" is a concept in virtual space) that make up the program are updated when the program is saved, external pages corresponding to the entire page set may be updated. Since it is necessary to perform save processing and restore processing for a set of program save contents, there is a drawback that the number of input/output operations between the paging auxiliary storage area and the save auxiliary storage area becomes large.

本発明の目的は、上述の点に鑑み、仮想空間を実現する
ページング補助記憶域と別個の余分な計算機資源である
退避補助記憶域が不要となり、プログラムの復元再開処
理を実現するためのページング補助記憶域に関する入出
力動作の回数を抑制することができるプログラムの復元
再開処理方式を提供することにある。
In view of the above-mentioned points, an object of the present invention is to eliminate the need for a paging auxiliary storage area that realizes a virtual space and a backup auxiliary storage area that is an extra computer resource, and to provide a paging auxiliary storage area for realizing program restoration and restart processing. An object of the present invention is to provide a program restoration/resumption processing method capable of suppressing the number of input/output operations regarding a storage area.

〔課題を解決するための手段〕[Means to solve the problem]

本発明のプログラムの復元再開処理方式は、仮想空間、
補助記憶および実記憶に関するページング機構を有する
仮想記憶システムにおいて、仮想空間を補助記憶上に実
現し補助記憶と実記憶との間のロードおよびアンロード
の制御を行い補助記憶内の世代−1外部ページ集合およ
び世代−〇外部ページ集合による仮想空間内のページ集
合の二元管理を外部ページ写像テーブル内の世代−1テ
ーブルおよび世代−0テーブルを使用して行う二元管理
手段と、プログラム再開点宣言時点における更新された
実ページの補助記憶内の外部ページへの退避とその退避
に基づく前記外部ページ写像テーブルの更新とにより当
該プログラム再開点宣言時点における外部ページマツプ
を前記外部ページ写像テーブル内の世代−1テーブルに
保持させるように前記二元管理手段に対して指示するプ
ログラム退避手段と、プログラム再開点宣言時点と当該
プログラム再開点宣言時点の次のプログラム再開点宣言
時点との間のプログラム復元再開要求時点に当該プログ
ラム再開点宣言時点において前記プログラム退避手段の
指示により前記外部ページ写像テーブル内の世代−1テ
ーブルに保持された外部ページマツプに基づくページ集
合の復元を行うために前記外部ページ写像テーブル内の
世代−〇テーブルを更新し実記憶内の実ページを解放す
るように前記二元管理手段に対して指示するプログラム
復元手段とを有する。
The program restoration/resumption processing method of the present invention includes a virtual space,
In a virtual memory system that has a paging mechanism for auxiliary memory and real memory, a virtual space is realized on auxiliary memory, and loading and unloading between the auxiliary memory and real memory is controlled, and generation-1 external pages in the auxiliary memory are created. Sets and generations - Dual management means for performing dual management of page sets in virtual space by external page sets using the generation-1 table and generation-0 table in the external page mapping table, and program restart point declaration By saving the updated real page at the time to an external page in the auxiliary memory and updating the external page mapping table based on the saving, the external page map at the time of the declaration of the program restart point is updated to the generation in the external page mapping table. - A program saving means that instructs the dual management means to hold the program in a table, and program restoration restart between the program restart point declaration time and the next program restart point declaration time after the program restart point declaration time. The external page mapping table is used to restore a page set based on the external page map held in the generation-1 table in the external page mapping table according to instructions from the program saving means at the time of the program restart point declaration at the time of the request. and a program restoring means for instructing the dual management means to update the generation-0 table in the real memory and release the real pages in the real memory.

〔作用〕[Effect]

本発明のプログラムの復元再開処理方式では、二元管理
手段が仮想空間を補助記憶上に実現し補助記憶と実記憶
との間のロードおよびアンロードの制御を行い補助記憶
内の世代−1外部ページ集合および世代−〇外部ページ
集合による仮想空間内のページ集合の二元管理を外部ペ
ージ写像テーブル内の世代−1テーブルおよび世代−〇
テーブルを使用して行い、プログラム退避手段がプログ
ラム再開点宣言時点における更新された実ページの補助
記憶内の外部ページへの退避とその退避に基づく外部ペ
ージ写像テーブルの更新とにより当該プログラム再開点
宣言時点における外部ページマツプを外部ページ写像テ
ーブル内の世代−1テーブルに保持させるように二元管
理手段に対して指示し、プログラム復元手段がプログラ
ム再開点宣言時点と当該プログラム再開点宣言時点の次
のプログラム再開点宣言時点との間のプログラム復元再
開要求時点に当該プログラム再開点宣言時点においてプ
ログラム退避手段の指示により外部ページ写像テーブル
内の世代−1テーブルに保持された外部ページマツプに
基づくページ集合の復元を行うために外部ページ写像テ
ーブル内の世代−〇テーブルを更新し実記憶内の実ペー
ジを解放するように二元管理手段に対して指示する。
In the program restoration and restart processing method of the present invention, the dual management means realizes a virtual space on the auxiliary memory, controls loading and unloading between the auxiliary memory and the real memory, and controls generation-1 external data in the auxiliary memory. Dual management of page sets in the virtual space by page sets and generation-〇 external page sets is performed using the generation-1 table and generation-〇 table in the external page mapping table, and the program saving means declares a program restart point. By saving the updated real page at the time to the external page in the auxiliary memory and updating the external page mapping table based on the saving, the external page map at the time of the declaration of the program restart point is changed to generation-1 in the external page mapping table. The program restoration means instructs the dual management means to hold the program in the table, and the program restoration means returns the program restoration restart request time between the program restart point declaration time and the next program restart point declaration time after the program restart point declaration time. The generation-〇 table in the external page mapping table is used to restore the page set based on the external page map held in the generation-1 table in the external page mapping table according to instructions from the program saving means at the time of the program restart point declaration. and instructs the dual management means to update the real page in the real memory and release the real page in the real memory.

〔実施例〕〔Example〕

次に、本発明について図面を参照して説明する。 Next, the present invention will be explained with reference to the drawings.

第1図は、本発明のプログラムの復元再開処理方式の一
実施例の構成を示すブロック図である。
FIG. 1 is a block diagram showing the configuration of an embodiment of a program restoration/resumption processing method according to the present invention.

本実施例のプログラムの復元再開処理方式は、二元管理
手段1と、プログラム退避手段2と、プログラム復元手
段3と、仮想空間20(仮想空間20゜補助記憶30お
よび実記憶40に関するベージング機構(図示せず)等
により物理的には補助記憶30内に実現される)と、補
助記憶30 <m気ディスク等の大容量記憶装置で実現
されるページング補助記憶域)と、実記憶40(主記憶
装置)と、外部ページ写像テーブル50(物理的には実
記憶40内に存在する)とを含んで構成されている。
The program restoration/resumption processing method of this embodiment consists of a dual management means 1, a program saving means 2, a program restoring means 3, a virtual space 20 (virtual space 20°, a paging mechanism regarding the auxiliary storage 30 and the real storage 40), ), the auxiliary memory 30 (a paging auxiliary storage area realized by a mass storage device such as a disk), and the real memory 40 (main memory 40). The external page mapping table 50 (physically existing in the real memory 40) is configured to include a storage device) and an external page mapping table 50 (physically existing in the real memory 40).

仮想空間20は、本実施例のプログラムの復元再開処理
方式の対象であるプログラム(以下、対象プログラムと
いう)を構成するページの集合であるページ集合21膏
有している。
The virtual space 20 has a page set 21 that is a set of pages constituting a program (hereinafter referred to as a target program) that is a target of the program restoration/resumption processing method of this embodiment.

補助記憶30は、外部ページ(第2図に示す外部ページ
311〜313を含む)の集合である世代−1外部ペー
ジ集合31と、外部ページ(第2図に示す外部ページ3
21および322を含む)の集合である世代−〇外部ペ
ージ集合32とを有している(世代−1外部ページ集合
31および世代−〇外部ページ集合32は補助記憶30
内の連続した領域に存在するわけではない)。
The auxiliary memory 30 includes a generation-1 external page set 31 that is a set of external pages (including external pages 311 to 313 shown in FIG. 2), and a generation-1 external page set 31 that is a set of external pages (including external pages 311 to 313 shown in FIG.
Generation-1 external page set 32 (generation-1 external page set 31 and generation-○ external page set 32 are the auxiliary storage 30
(It does not necessarily exist in a contiguous area within the

第2図を参照すると、仮想空間20内のページ集合21
と補助記憶30内の世代−1外部ページ集合31および
世代−〇外部ページ集合32との間の対応付けを行うマ
ンピングテーブルである外部ページ写像テーブル50は
、二元管理手段lによるページ集合21の二元管理(補
助記憶30内の世代−1外部ページ集合31および世代
−〇外部ページ集合32による二元的な管理)のために
、世代−1テーブル51および世代−〇テーブル52を
有している。
Referring to FIG. 2, a page set 21 in the virtual space 20
The external page mapping table 50 is a mapping table for mapping the generation-1 external page set 31 and the generation-0 external page set 32 in the auxiliary storage 30 to the page set 21 by the dual management means l. For dual management (dual management by generation-1 external page set 31 and generation-○ external page set 32 in the auxiliary storage 30), a generation-1 table 51 and a generation-○ table 52 are provided. ing.

外部ページ写像テーブル50内の世代−1テーブル51
は、仮想空間20内のページ集合21中の各ページと補
助記憶30内の世代−1外部ページ集合31中の各外部
ページ311 、312 、313 、・・・との間の
対応付けを行っており、プログラム再開点宣言時点(プ
ログラム開始時点を含む)における外部ページマツプ(
仮想空間20内のページと補助記憶30内の外部ページ
とのマツピング情報)を保持するものである。
Generation-1 table 51 in external page mapping table 50
performs a correspondence between each page in the page set 21 in the virtual space 20 and each external page 311 , 312 , 313 , etc. in the generation-1 external page set 31 in the auxiliary storage 30 . The external page map (including the program start point) at the time of program restart point declaration (
It holds mapping information between pages in the virtual space 20 and external pages in the auxiliary storage 30.

外部ページ写像テーブル50内の世代−〇テーブル52
は、仮想空間20内のページ集合21中の各ページと補
助記憶30内の世代−〇外部ページ集合32中の各外部
ページ321 、322 、・・・との間の対応付けを
行っており、実行中の対象プログラムの更新ページ(プ
ログラム実行時点(プログラム開始時点を含む)から次
のプログラム実行時点までに実記憶40内で更新された
実ページ(図示せず)に対応するページ、「更新ページ
」は仮想空間20における概念である)の集合である更
新ページ集合の状態を反映するように更新外部ページマ
ツプ(仮想空間20内の更新ページと補助記憶30内の
外部ページとのマツピング情報)が逐次設定されるもの
である。
Generation-〇 table 52 in external page mapping table 50
makes a correspondence between each page in the page set 21 in the virtual space 20 and each external page 321 , 322 , . . . in the generation-〇 external page set 32 in the auxiliary storage 30, Update page of the target program being executed (a page corresponding to a real page (not shown) updated in the real memory 40 from the time of program execution (including the time of program start) to the time of next program execution; '' is a concept in the virtual space 20), the updated external page map (mapping information between updated pages in the virtual space 20 and external pages in the auxiliary memory 30) is updated so as to reflect the state of the updated page set, which is a set of It is set sequentially.

第3図は、対象プログラムの一例の実行状態を示す図で
ある。この対象プログラムは、プログラム開始時点PO
から起動し、プログラム実行時点P1およびP2をプロ
グラム再開点宣言時点としている(それらの時点が以後
のプログラム実行時点における不測の要因に基づく対象
プログラムの処理の中断に対するプログラム再開点とな
りうろことを前もってプログラム実行時点P1およびP
2において宣言している)。例えば、プログラム実行時
点P3において対象プログラムが処理を中断し続行不能
になった場合(この場合には、プログラム実行時点P3
がプログラム復元再開要求時点となる)には、プログラ
ム実行時点P2の状態に対象プログラム(対象プログラ
ムを構成するページの集合であるページ集合21)を復
元させて処理が再開される(プログラム実行時点P2が
プログラム再開点となる)。
FIG. 3 is a diagram showing the execution state of an example of the target program. This target program is PO at the start of the program.
, and the program execution points P1 and P2 are the program restart point declaration points (the program has previously announced that these points will be the program restart points in response to an interruption in the processing of the target program due to unforeseen factors at the subsequent program execution point). Execution points P1 and P
2). For example, if the target program interrupts processing at program execution point P3 and becomes unable to continue (in this case, program execution point P3
is the program restoration restart request point), the target program (page set 21, which is a set of pages constituting the target program) is restored to the state at program execution point P2, and processing is restarted (program execution point P2 is the program restart point).

対象プログラムの実行にあたっては、仮想空間20が物
理的に実現される補助記憶30内の外部ページが、二元
管理手段1の制御(ページング機構等を使用する制御)
により実記憶40内の実ページにロードされる。また、
実記憶40内の更新された実ページ(更新ページに対応
する実ページ)が、二元管理手段1の制御により補助記
憶30内の外部ページにアンロードされる(後述するよ
うに、この外部ページは外部ページ写像テーブル50を
使用する二元管理手段lの制御により世代−〇外部ペー
ジ集合32に属することになる)。
When executing the target program, the external page in the auxiliary storage 30 where the virtual space 20 is physically realized is controlled by the dual management means 1 (control using a paging mechanism, etc.)
is loaded into a real page in the real memory 40. Also,
The updated real page (the real page corresponding to the updated page) in the real memory 40 is unloaded to the external page in the auxiliary memory 30 under the control of the dual management means 1 (as described later, this external page (belongs to the generation-〇 external page set 32 under the control of the dual management means 1 using the external page mapping table 50).

次に、このように構成された本実施例のプログラムの復
元再開処理方式の動作について説明する。
Next, the operation of the program restoration/resumption processing method of this embodiment configured as described above will be explained.

なお、ここでは第3図に示す対象プログラムの実行の過
程にそって本実施例のプログラムの復元再開処理方式の
動作を説明する。
Here, the operation of the program restoration/resumption processing method of this embodiment will be explained along the process of execution of the target program shown in FIG.

最初に、プログラム開始時点POにおける動作について
説明する。
First, the operation at the program start point PO will be described.

この時点においては、仮想空間20内のページ集合21
(この時点では対象プログラムの初期ページイメージを
有している)が、二元管理手段1の制御により補助記憶
30内の世代−1外部ページ集合31中に物理的に実現
されている。
At this point, the page set 21 in the virtual space 20
(which at this point has an initial page image of the target program) is physically realized in the generation-1 external page set 31 in the auxiliary storage 30 under the control of the dual management means 1.

仮想空間20内のページ集合21と補助記憶30内の世
代−1外部ページ集合31との間の対応付けは、外部ペ
ージ写像テーブル50内の世代−1テーブル51におい
てページ集合21中の各ページに対応している各エント
リに世代−1外部ページ集合31内の各外部ページのア
ドレスを設定することによって二元管理手段Iにより行
われている(ある外部ページが世代=1外部ページ集合
31および世代−0外部ページ集合32のいずれに属す
るかということは外部ページ写像テーブル50の設定に
より決定される)。
The correspondence between the page set 21 in the virtual space 20 and the generation-1 external page set 31 in the auxiliary storage 30 is determined by the correspondence between each page in the page set 21 in the generation-1 table 51 in the external page mapping table 50. This is done by the dual management means I by setting the address of each external page in the generation-1 external page set 31 in each corresponding entry (if a certain external page is -0 Which of the external page sets 32 it belongs to is determined by the settings of the external page mapping table 50).

また、外部ページ写像テーブル50内の世代−〇テーブ
ル52は、二元管理手段1により未設定状態に初期化さ
れている(いずれのエントリにおいても更新マークM(
対応する世代−1テーブル51中のエントリと異なる外
部ページのアドレスが設定されていることを示す情報)
が記録されていない)。
Furthermore, the generation-〇 table 52 in the external page mapping table 50 is initialized to an unset state by the dual management means 1 (in any entry, the update mark M (
(information indicating that an external page address different from the entry in the corresponding generation-1 table 51 is set)
(not recorded).

次に、対象プログラムの実行が進みページ集合21中の
いくつかのページが実記憶40上で更新されている(ペ
ージ集合21中の更新ページ集合に対応する世代−〇外
部ページ集合32が生成されている)任意のプログラム
実行時点における動作について説明する。
Next, as the execution of the target program progresses, some pages in the page set 21 are updated on the real memory 40 (a generation-0 external page set 32 corresponding to the updated page set in the page set 21 is generated). This section describes the operation at any point in time when a program is executed.

この時点においては、二元管理手段1の制御により補助
記憶30内の外部ページと実記憶40内の実ページとの
間のロードおよびアンロードが以下に示すように行われ
る。
At this point, under the control of the dual management means 1, loading and unloading between the external page in the auxiliary storage 30 and the real page in the real storage 40 is performed as shown below.

まず、外部ページ写像テーブル50内の世代−0テーブ
ル52中で更新マークMが記録されていないエントリに
対応する外部ページ(更新ページでないページに対応す
る外部ページ)の補助記憶3oから実記憶40内の実ペ
ージへのロードは、外部ページ写像テーブル50内の世
代−1テーブル51中の該当するエントリ (更新マー
クMが記録されていない世代−〇テーブル52中のエン
トリに対応する世代−1テーブル51中のエントリ)に
設定されている外部ページのアドレスに基づいて行われ
る(このロードは世代−1外部ページ集合31中の外部
ページの実ページへのロードとなる)。
First, from the auxiliary memory 3o to the real memory 40 of an external page (an external page corresponding to a page that is not an updated page) corresponding to an entry in which an update mark M is not recorded in the generation-0 table 52 in the external page mapping table 50, The load to the real page is based on the corresponding entry in the generation-1 table 51 in the external page mapping table 50 (generation-1 table 51 corresponding to the entry in the generation-〇 table 52 in which update mark M is not recorded). (This loading is performed to the real page of the external page in the generation-1 external page set 31).

また、世代−〇テーブル52中で更新マークMが記録さ
れているエントリに対応する外部ページ(更新ページに
対応する外部ページ)の補助記憶3゜から実記憶40内
の実ページへのロードは、世代−〇テーブル52中の該
当するエントリ (更新マークMが記録されている世代
−〇テーブル52中のエントリ)に設定されている外部
ページのアドレスに基づいて行われる(このロードは世
代−〇外部ページ集合32中の外部ページの実ページへ
のロードとなる)。
Furthermore, loading an external page (an external page corresponding to an updated page) corresponding to an entry in which an update mark M is recorded in the generation-〇 table 52 from the auxiliary memory 3° to a real page in the real memory 40 is as follows: This load is performed based on the address of the external page set in the corresponding entry in the generation-〇 table 52 (the entry in the generation-〇 table 52 in which the update mark M is recorded). (The external page in the page set 32 is loaded into the real page).

さらに、実記憶40内で更新された実ページの実記憶4
0から補助記憶30内の外部ページへのアンロードは、
更新された実ページに対応するページ集合21中の更新
ページに対応する世代−0テーブル52中のエントリに
補助記憶30におけるアンロード先の外部ページのアド
レスを設定し更新マークMを記録することにより行われ
る(このアンロードは、世代−0外部ページ集合32中
の外部ページへの実ページのアンロードとなる)。
Furthermore, the real memory 4 of the real page updated in the real memory 40
Unloading from 0 to an external page in the auxiliary memory 30 is as follows:
By setting the address of the external page to be unloaded in the auxiliary memory 30 and recording the update mark M in the entry in the generation-0 table 52 corresponding to the updated page in the page set 21 corresponding to the updated real page. (This unloading results in the unloading of the real page to the external page in the generation-0 external page set 32).

続いて、対象プログラムによりプログラム再開点である
ことが宣言されたプログラム実行時点PI(プログラム
再開点宣言時点)における動作について説明する。
Next, the operation at the program execution point PI (program restart point declaration time) which is declared to be the program restart point by the target program will be described.

対象プログラムが上述の宣言(この宣言に係る情報は対
象プログラム中に組み込まれている)を行うと、プログ
ラム退避手段2の指示に基づく二元管理手段1の制御に
より次のような処理が行われる。
When the target program makes the above declaration (information related to this declaration is incorporated into the target program), the following processing is performed under the control of the dual management means 1 based on instructions from the program saving means 2. .

まず、その時点における実記憶40内の更新された実ペ
ージが全て補助記憶30に退避され(アンロードされ)
、外部ページ写像テーブル50内の世代−〇テーブル5
2中のエントリに補助記憶30における退避(アンロー
ド)先の外部ページのアドレスが設定されて更新マーク
Mが記録される。
First, all updated real pages in the real memory 40 at that point are saved (unloaded) to the auxiliary memory 30.
, generation in external page mapping table 50-〇 table 5
The address of the external page to be saved (unloaded) in the auxiliary memory 30 is set in the entry in 2, and the update mark M is recorded.

また、世代−〇テーブル52中で更新マークMの記録さ
れているエントリに対応する世代−lテーブル51中の
エントリに設定されている世代−1外部ページ集合31
中の外部ページのアドレスが解放され、世代−1テーブ
ル51中のそれらのエントリに世代−〇テーブル52中
の対応するエントリから外部ページのアドレスが複写さ
れ、その後に世代−〇テーブル52が未設定状態に初期
化される(更新マークMが消去される)。
Also, the generation-1 external page set 31 set in the entry in the generation-l table 51 that corresponds to the entry in which the update mark M is recorded in the generation-〇 table 52
The addresses of the external pages in the generation-1 table 51 are copied from the corresponding entries in the generation-○ table 52 to those entries in the generation-1 table 51, and then the generation-○ table 52 is unset. initialized to the state (update mark M is erased).

一方、世代−〇テーブル52中で更新マークMの記録さ
れていないエントリに対応する世代−1テーブル51中
のエントリは更新されない。
On the other hand, entries in the generation-1 table 51 that correspond to entries in which the update mark M is not recorded in the generation-○ table 52 are not updated.

以上の動作により、プログラム実行時点P1における外
部ページマツプが外部ページ写像テーブル50内の世代
−1テーブル51に保持され、間接的にプログラム実行
時点P1における対象プログラム(ページ集合21)が
退避されたことになる(これにより、従来のプログラム
の復元再開処理方式におけるページング補助記憶域内の
外部ページの集合を退避補助記憶域に出力する動作が不
要となる)。
Through the above operations, the external page map at the program execution point P1 is held in the generation-1 table 51 in the external page mapping table 50, and the target program (page set 21) at the program execution point P1 is indirectly saved. (This eliminates the need for the operation of outputting a set of external pages in the paging auxiliary storage area to the evacuation auxiliary storage area in the conventional program restoration/resumption processing method.)

対象プログラムの実行がプログラム実行時点P1から正
常に進んだ後の次のプログラム再開点宣言時点であるプ
ログラム実行時点P2における動作は、プログラム実行
時点P1における上述の動作と同様であり、この時点で
の外部ページ写像テーブル50内の世代−1テーブル5
1の内容はプログラム実行時点P2における外部ページ
マツプを示すように置き換えられる。
The operation at the program execution point P2, which is the next program restart point declaration point after the execution of the target program has progressed normally from the program execution point P1, is the same as the above-mentioned operation at the program execution point P1. Generation-1 table 5 in external page mapping table 50
The contents of 1 are replaced to indicate the external page map at program execution point P2.

このようにして、世代−1テーブル51中には常に最新
のプログラム再開点宣言時点における外部ページマツプ
を保持することが可能になる。
In this way, the generation-1 table 51 can always hold the external page map at the time of the latest program restart point declaration.

最後に、対象プログラムの実行がさらに進み不測の要因
に基づいて処理が中断しプログラム実行時点P2からの
再開を必要とすることになるプログラム実行時点P3(
プログラム復元再開要求時点)における動作について説
明する。
Finally, as the execution of the target program continues, the process is interrupted due to unforeseen factors, and the program execution point P3 (
The operation at the time of the program restoration restart request will be explained.

この時点においては、外部ページ写像テーブル50内の
世代−1テーブル51中に直前のプログラム再開点宣言
時点であるプログラム実行時点P2における外部ページ
マツプが保持されている。この外部ページマツプに基づ
くページ集合21の復元(ページ集合21に対応する実
ページや外部ページをプログラム実行時点P2の状態に
復元すること)をプログラム復元手段3の指示に基づく
二元管理手段1の制御により以下に示す手順によって行
うことで、プログラム実行時点P2をプログラム再開点
とする対象プログラムの再開が可能となる。
At this point, the generation-1 table 51 in the external page mapping table 50 holds the external page map at the program execution point P2, which is the immediately previous program restart point declaration point. Restoration of the page set 21 based on this external page map (restoring the real pages and external pages corresponding to the page set 21 to the state at the time of program execution P2) is performed by the dual management means 1 based on instructions from the program restoration means 3. By performing the control according to the procedure shown below, it is possible to restart the target program with the program execution point P2 as the program restart point.

まず、更新マークMが記録されているエントリの更新マ
ークMを消去する外部ページ写像テーブル50内の世代
−〇テーブル52の更新が行われる。
First, the generation-〇 table 52 in the external page mapping table 50 is updated to erase the update mark M of the entry in which the update mark M is recorded.

次に、対象プログラム(ページ集合21中のべ一ジ)の
ために割り当てられている実記憶40内の実ページが解
放される。
Next, the real page in the real memory 40 allocated for the target program (the page in the page set 21) is released.

上述の処理により、その後に行われる二元管理手段1の
制御による実記憶40内の実ページへの補助記憶30内
の外部ページのロードはプログラム実行時点P2におけ
る外部ページマツプを示す世代−1テーブル51に基づ
いて行われるようになり(世代−1外部ページ集合31
中の外部ページが実記憶40内の実ページにロードされ
るようになる)、プログラム実行時点P2をプログラム
再開点とする対象プログラムの復元再開処理が実現され
る。
Through the above-mentioned processing, the subsequent loading of the external page in the auxiliary memory 30 to the real page in the real memory 40 under the control of the dual management means 1 is performed using the generation-1 table indicating the external page map at the program execution point P2. 51 (generation-1 external page set 31
(The internal external page is loaded into the real page in the real memory 40), and the restoration restart process of the target program is realized with the program execution point P2 as the program restart point.

なお、本実施例では対象プログラムをプログラム再開点
宣言時点の状態に復元するときに実記憶40内の実ペー
ジを全て解放する場合について述べたが、更新されてい
ない実ページが実記憶40内に存在する場合にはその実
ページをプログラム復元手段3の指示に基づく二元管理
手段1の制御により解放しないようにし、復元再開処理
において外部ページを補助記憶30から実記憶40内の
実ページにロードする処理量を削減することが可能とな
る。
In this embodiment, a case has been described in which all real pages in the real memory 40 are released when restoring the target program to the state at the time of the program restart point declaration; If the real page exists, the dual management means 1 controls the dual management means 1 based on instructions from the program restoration means 3 to prevent the real page from being released, and loads the external page from the auxiliary memory 30 to the real page in the real memory 40 in the restoration restart process. It becomes possible to reduce the amount of processing.

〔発明の効果〕〔Effect of the invention〕

以上説明したように本発明は、二元管理手段。 As explained above, the present invention is a dual management means.

プログラム退避手段およびプログラム復元手段を設ける
ことにより、プログラム再開点宣言時点の退避処理およ
びプログラム復元再開要求時点の復元処理において仮想
空間を実現するページング補助記憶域と別個の余分な計
算機資源である退避補助記憶域が不要となり、プログラ
ム(ページ集合)の退避および復元に伴う補助記憶(ペ
ージング補助記憶域)と実記憶との間の入出力動作の回
数を従来のプログラムの復元再開処理方式におけるペー
ジング補助記憶域と退避補助記憶域との間の入出力動作
の回数に比べて抑制することができるという効果がある
By providing a program saving means and a program restoring means, a paging auxiliary storage area that realizes a virtual space in the saving processing at the time of program restart point declaration and the restoration processing at the time of program restoration restart request, and the evacuation auxiliary which is an extra computer resource separate from the paging auxiliary storage area. Paging auxiliary storage is no longer required, and the number of input/output operations between auxiliary storage (paging auxiliary storage) and real memory when saving and restoring a program (page set) can be reduced using paging auxiliary storage in the conventional program restoration and restart processing method. This has the effect of being able to suppress the number of input/output operations between the area and the save auxiliary storage area.

【図面の簡単な説明】[Brief explanation of the drawing]

第1図は本発明の一実施例の構成を示すブロック図、 第2図は第1図中の外部ページ写像テーブルの構成を示
しその外部ページ写像テーブルによるページ集合と世代
−1外部ページ集合および世代−0外部ページ集合との
対応付けのB様を示す図、第3図は第1図に示すプログ
ラムの復元再開処理方式の処理の対象である対象プログ
ラムの一例の実行状態を示す図である。 図において、 1・・・二元管理手段、 2・・・プログラム退避手段、 3・・・プログラム復元手段、 20・・・仮想空間、 21・・・ページ集合、 30・・・補助記憶、 31・・・世代−1外部ページ集合、 32・・・世代−〇外部ページ集合、 40・・・実記憶、 50・・・外部ページ写像テーブル、 51・・・世代−1テーブル、 52・・・世代−〇テーブル、 311.312,313,321,322 ・・・外部
ページである。
FIG. 1 is a block diagram showing the configuration of an embodiment of the present invention. FIG. 2 is a block diagram showing the configuration of the external page mapping table in FIG. FIG. 3 is a diagram showing the correspondence with the generation-0 external page set of type B, and FIG. 3 is a diagram showing the execution state of an example of the target program that is the target of the process of the program restoration and restart processing method shown in FIG. 1. . In the figure, 1... Dual management means, 2... Program saving means, 3... Program restoring means, 20... Virtual space, 21... Page set, 30... Auxiliary storage, 31 ...Generation-1 external page set, 32... Generation-○ external page set, 40... Real memory, 50... External page mapping table, 51... Generation-1 table, 52... Generation-〇 table, 311, 312, 313, 321, 322...External page.

Claims (1)

【特許請求の範囲】  仮想空間、補助記憶および実記憶に関するページング
機構を有する仮想記憶システムにおいて、仮想空間を補
助記憶上に実現し補助記憶と実記憶との間のロードおよ
びアンロードの制御を行い補助記憶内の世代−1外部ペ
ージ集合および世代−0外部ページ集合による仮想空間
内のページ集合の二元管理を外部ページ写像テーブル内
の世代−1テーブルおよび世代−0テーブルを使用して
行う二元管理手段と、 プログラム再開点宣言時点における更新された実ページ
の補助記憶内の外部ページへの退避とその退避に基づく
前記外部ページ写像テーブルの更新とにより当該プログ
ラム再開点宣言時点における外部ページマップを前記外
部ページ写像テーブル内の世代−1テーブルに保持させ
るように前記二元管理手段に対して指示するプログラム
退避手段と、 プログラム再開点宣言時点と当該プログラム再開点宣言
時点の次のプログラム再開点宣言時点との間のプログラ
ム復元再開要求時点に当該プログラム再開点宣言時点に
おいて前記プログラム退避手段の指示により前記外部ペ
ージ写像テーブル内の世代−1テーブルに保持された外
部ページマップに基づくページ集合の復元を行うために
前記外部ページ写像テーブル内の世代−0テーブルを更
新し実記憶内の実ページを解放するように前記二元管理
手段に対して指示するプログラム復元手段と、 を有することを特徴とするプログラムの復元再開処理方
式。
[Claims] In a virtual memory system having a paging mechanism for virtual space, auxiliary memory, and real memory, the virtual space is realized on the auxiliary memory and loading and unloading between the auxiliary memory and the real memory is controlled. The generation-1 external page set and the generation-0 external page set in the auxiliary memory perform dual management of the page set in the virtual space using the generation-1 table and the generation-0 table in the external page mapping table. an external page map at the time of the program restart point declaration by saving the updated real page to an external page in the auxiliary memory at the time of the program restart point declaration and updating the external page mapping table based on the evacuation; program saving means for instructing the dual management means to store the data in the generation-1 table in the external page mapping table; and a program restart point at the time of the program restart point declaration and a program restart point next to the program restart point declaration time. Restoration of the page set based on the external page map held in the generation-1 table in the external page mapping table according to instructions from the program saving means at the time of the declaration of the program restart point at the time of the program restoration restart request between the declaration time and the time of the declaration. and program restoration means for instructing the dual management means to update the generation-0 table in the external page mapping table and release real pages in real memory in order to perform the following steps. Restoration/resumption processing method for the program.
JP63062653A 1988-03-15 1988-03-15 Restoration/restart processing system for program Pending JPH01234950A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP63062653A JPH01234950A (en) 1988-03-15 1988-03-15 Restoration/restart processing system for program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP63062653A JPH01234950A (en) 1988-03-15 1988-03-15 Restoration/restart processing system for program

Publications (1)

Publication Number Publication Date
JPH01234950A true JPH01234950A (en) 1989-09-20

Family

ID=13206498

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63062653A Pending JPH01234950A (en) 1988-03-15 1988-03-15 Restoration/restart processing system for program

Country Status (1)

Country Link
JP (1) JPH01234950A (en)

Similar Documents

Publication Publication Date Title
KR100413915B1 (en) Computer system based on microprocessor, its driving method and backup system therefor
JPH03278126A (en) Computer system starting system
US5752268A (en) Minimum-delay recoverable disk control system using checkpoints and nonvolatile memory
JP2013520744A (en) Method and apparatus for generating minimum boot image
JP2011164968A (en) Method of accelerating access to primary storage and storage system
US6502176B1 (en) Computer system and methods for loading and modifying a control program without stopping the computer system using reserve areas
JP2005122334A (en) Memory dump method, memory dumping program and virtual computer system
JP2003216449A (en) Patch processing system
JPH01234950A (en) Restoration/restart processing system for program
JP2002258971A (en) Method for restarting computer system
JPH01237857A (en) System for processing restoration and restart of program
JPH0744440A (en) Data save device
JPH04241033A (en) Program reload and restart processing system
JP2856823B2 (en) Computer system initialization device
WO2021153224A1 (en) Information processing device and information processing method
JPH04218842A (en) Reexecution method for program
JPH03257641A (en) Memory dump sampling system
JP2003122647A (en) Information processor
JP2718676B2 (en) Virtual memory dump processing method
JPH01300352A (en) Dump area instruction control system
JPH0216652A (en) Missing page processing system
JP3463696B2 (en) Online garbage collection processing method
JP3863902B2 (en) Instruction change method, instruction change method, instruction change program, and recording medium recording instruction change program
JPH0789308B2 (en) Computer automatic restart method
JPS63157238A (en) Computer