JPH01237857A - System for processing restoration and restart of program - Google Patents

System for processing restoration and restart of program

Info

Publication number
JPH01237857A
JPH01237857A JP63065145A JP6514588A JPH01237857A JP H01237857 A JPH01237857 A JP H01237857A JP 63065145 A JP63065145 A JP 63065145A JP 6514588 A JP6514588 A JP 6514588A JP H01237857 A JPH01237857 A JP H01237857A
Authority
JP
Japan
Prior art keywords
page
program
external
generation
restoration
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
JP63065145A
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 JP63065145A priority Critical patent/JPH01237857A/en
Publication of JPH01237857A publication Critical patent/JPH01237857A/en
Pending legal-status Critical Current

Links

Landscapes

  • Retry When Errors Occur (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

PURPOSE:To make a paging auxiliary storage area and a saving auxiliary storage area unnecessary and to suppress the number of times of an input/output operation by providing a binary managing means, a program part saving means, and a program part recovering means. CONSTITUTION:The binary managing means 1 performs transmission between an auxiliary storage 30 and a real storage 40, and performs the binary management of external page sets 31 and 32 in the auxiliary 30 by using an external page mapping table 50. A recovery target page designation means 4 designates a page target to be recovered at the time of declaring the restart point of the program. The program part saving means 2 corresponds to the page targeted to be recovered, and saves an updated real page to an external page, and issues indication to perform a page correspondent processing to the binary managing means 1. The program part recovering means 3 performs the recovery of the page saved to the external page, and issues the indication to perform the page correspondent processing to the binary managing means 1.

Description

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

〔従来の技術〕[Conventional technology]

従来、この種のプログラムの復元再開処理方式は、プロ
グラムの復元再開処理(他のプログラムとのデッドロッ
クによるプログラムの停止、外因によるプログラムの異
常停止および計算機システムの停止に基づくプログラム
の停止等の不測の要因によるプログラムの実行中に生じ
る処理の中断に対して前もって宣言したプログラム再開
点の状態にプログラムを復元しそのプログラム再開点か
らプログラムを再開させる処理)のために専用の退避補
助記憶域を割り当て、プログラム再開点宣言時点(プロ
グラムの実行の過程における特定の時点で当該特定の時
点がプログラム再開点となりうろことを宣言する当該特
定の時点)における仮想空間(物理的にはページング補
助記憶域により実現される)でのプログラムの内容(物
理的にはページング記憶域内の外部ページの集合である
プログラム退避内容)を当該退避補助記憶域に退避し、
プログラムの再開時に当該退避補助記憶域からプログラ
ム退避内容をページング補助記jQ域で実現される仮想
空間に復元していた。
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 program save contents are restored from the save auxiliary storage area to the virtual space realized in the paging auxiliary storage area jQ.

〔発明が解決しようとする課題〕[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. Save and restore processing must be performed for a set of program save contents (pages that do not need to be restored even if they have been updated (pages in a simple work area, etc.)
(Of course, evacuation processing and restoration processing must also be performed for external pages corresponding to .

本発明の目的は、上述の点に鑑み、仮想空間を実現する
ページング補助記憶域と別個の余分な計算機資源である
退避補助記憶域が不要となり、プログラムの復元再開処
理を実現するためのページング補助記憶域に関する入出
力動作の回数を抑制することができるプログラムの復元
再開処理方式を提供することにある。
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]

本発明のプログラムの復元′再開処理方式は、仮想空間
、補助記tVおよび実記憶に関するページング機構を有
する仮想記憶システムにおいて、仮想空間を補助記憶上
に実現し補助記tVと実記tqとの間のロードおよびア
ンロードの制御を行い補助記憶内の世代−1外部ページ
集合および則代−〇外部ページ集合による仮想空間内の
ページ集合の二元管理を外部ページ写像テーブル内の世
代−1テーブルおよび世代−0テーブルを使用して行う
二元管理手段と、プログラム再開点宣言時点にページ集
合の中から復元対象ページ集合を構成する復元対象ペー
ジを指定する復元対象ページ指定手段と、プログラム再
開点宣言時点に前記復元対象ページ指定手段により指定
された復元対象ページに対応しかつ更新された実ページ
の補助記憶内の外部ページへの退避とその退避に基づく
前記外部ページ写像テーブルの更新とにより当該プログ
ラム再開点宣言時点における復元対象外部ページマツプ
を前記外部ページ写像テーブル内の世代−1テーブルに
保持させるように前記二元管理手段に対して指示するプ
ログラム部分退避手段と、プログラム再開点宣言時点と
当該プログラム再開点宣言時点の次のプログラム再開点
宣言時点との間のプログラム復元再開要求時点に当該プ
ログラム再開点宣言時点において前記プログラム部分退
避手段の指示により前記外部ページ写像テーブル内の世
代−1テーブルに保持された復元対象外部ページマツプ
に基づく復元対象ページ集合の復元を行うために前記外
部ページ写像テーブル内の世代−〇テーブルを更新し実
記憶内の実ページを解放するように前記二元管理手段に
対して指示するプログラム部分復元手段とを有する。
The program restoration/restart processing method of the present invention realizes the virtual space on the auxiliary memory in a virtual memory system having a paging mechanism regarding the virtual space, the auxiliary memory tV, and the real memory, and performs a process between the auxiliary memory tV and the real memory tq. Loading and unloading are controlled, and the generation-1 external page set in the auxiliary memory and the generation-1 external page set are managed dually in the virtual space by the external page set and the generation-1 table in the external page mapping table. - dual management means using a 0 table; restoration target page specifying means for specifying restoration target pages constituting a restoration target page set from a page set at the time of program restart point declaration; The program is resumed by saving the updated real page corresponding to the restoration target page designated by the restoration target page designating means to an external page in auxiliary memory and updating the external page mapping table based on the evacuation. program part saving means for instructing the dual management means to retain the restoration target external page map at the time of the point declaration in the generation-1 table in the external page mapping table; At the time of the program restoration restart request between the time of the restart point declaration and the next program restart point declaration time, the program is retained in the generation-1 table in the external page mapping table according to instructions from the program partial saving means at the time of the program restart point declaration. the dual management means to update the generation-〇 table in the external page mapping table and release the real pages in the real memory in order to restore the restoration target page set based on the restoration target external page map that has been restored. and a program partial restoration means for instructing the program.

〔作用〕[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 restoration target page specification means restarts the program. A restoration target page constituting a restoration target page set is specified from a page set at the time of the program restart point declaration, and the program partial saving means corresponds to the restoration target page specified by the restoration target page specifying means at the time of the program restart point declaration, and By saving the updated real page to an external page in the auxiliary memory and updating the external page mapping table based on the saving, the external page map to be restored at the time of the program restart point declaration is set to generation-1 in the external page mapping table. The program partial restoration means instructs the dual management means to hold the program in the table, and the program partial restoration means requests the 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. Based on the restoration target external page map held in the generation-1 table in the external page mapping table according to instructions from the program partial saving means at the time when the program restart point was declared (external page Instructs the dual management means to update the generation-0 table in the mapping table and release real pages in 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と、復元対象ページ指定手段4と、仮想空
間20(仮想空間20.補助記憶30および実記憶40
に関するページング機構(図示せず)等により物理的に
は補助記憶30内に実現される)と、補助記憶30 (
m気ディスク等の大容量記憶装置で実現されるページン
グ補助記憶域)と、実記tα40(主記憶装置)と、外
部ページ写像テーブル50(物理的には実記憶40内に
存在する)とを含んで構成されている。
The program restoration restart processing method of this embodiment includes a dual management means 1, a program partial saving means 2, a program partial restoring means 3, a restoration target page specifying means 4, and a virtual space 20 (virtual space 20. Memory 30 and real memory 40
(physically realized in the auxiliary storage 30 by a paging mechanism (not shown) etc.) and the auxiliary storage 30 (
It includes a paging auxiliary storage area realized by a large-capacity storage device such as a memory disk, an actual tα 40 (main storage device), and an external page mapping table 50 (physically existing in the actual storage 40). It consists of

仮想空間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.

ページ集合21は、復元対象ページ指定手段4により指
定される復元対象ページ(単なる作業領域のページ等で
はなく対象プログラムの復元再開処理において復元する
必要のあるページ)の集合である復元対象ページ集合2
2を含んでいる。
The page set 21 is a set of restoration target pages (not just work area pages, etc., but pages that need to be restored in the restoration restart process of the target program) specified by the restoration target page specifying means 4.
Contains 2.

補助記憶30ば、外部ページ(第2図に示す外部ページ
311および313を含む)の集合である世代−1外部
ページ集合31と、外部ページ(第2図に示す外部ペー
ジ321および322を含む)の集合である世代−0外
部ページ集合32とを有している(世代−1外部ページ
集合31および世代−〇外部ページ集合32は補助記憶
30内の連続した領域に存在するわけではない)。
The auxiliary memory 30 includes a generation-1 external page set 31, which is a set of external pages (including external pages 311 and 313 shown in FIG. 2), and an external page set 31 (including external pages 321 and 322 shown in FIG. 2). (The generation-1 external page set 31 and the generation-0 external page set 32 do not exist in continuous areas in the auxiliary storage 30).

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

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

外部ページ写像テーブル50内の世代−0テーブル52
は、仮想空間20内のページ集合21中の各ページと補
助記憶30内の世代−0外部ページ集合32中の各外部
ページ321 、322 、・・・との間の対応付けを
行っており、実行中の対象プログラムの更新ページ(プ
ログラム実行時点(プログラム開始時点を含む)から次
のプログラム実行時点までに実記憶40内で更新された
実ページ(図示せず)に対応するページ。「更新ページ
」は仮想空間20における概念である)の集合である更
新ページ集合の状態を反映するように更新外部ページマ
ツプ(仮想空間20内の更新ページと補助記憶30内の
外部ページとのマツピング情報)が逐次設定されるもの
である。
Generation-0 table 52 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 321 , 322 , . . . in the generation-0 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の状態に対象プログラムを復元させて処
理が再開される(プログラム実行時点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 is restored to the state at the program execution point P2 and the processing is restarted (the program execution point P2 is the program restart point).

対象プログラムの実行にあたっては、仮想空間20が物
理的に実現される補助記憶30内の外部ページが、二元
管理手段lの制御(ページング機構等を使用する制御)
により実記憶40内の実ページにロードされる。また、
実記憶40内の更新された実ページ(更新ページに対応
する実ページ)が、二元管理手段1の制御により補助記
憶30内の外部ページにアンロードされる。
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 (control using a paging mechanism, etc.)
is loaded into a real page in the real memory 40. Also,
The updated real page (real page corresponding to the updated page) in the real memory 40 is unloaded to an external page in the auxiliary memory 30 under the control of the dual management means 1.

次に、このように構成された本実施例のプログラムの復
元再開処理方式の動作について説明する。
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
(この時点では対象プログラムの初期ページイメージを
有している。また、この時点では復元対象ページ集合2
2はページ集合21に等しい)が、二元管理手段1の制
御により補助記憶30内の世代−1外部ページ集合31
中に物理的に実現されている。
At this point, the page set 21 in the virtual space 20
(At this point, we have the initial page image of the target program. Also, at this point, we have the page set 2 to be restored.
2 is equal to the page set 21), but the generation-1 external page set 31 in the auxiliary storage 30 is generated under the control of the dual management means 1.
It is physically realized inside.

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

また、外部ページ写像テーブル50内の世代−〇テーブ
ル52は、二元管理手段lにより未設定状態に初期化さ
れている(いずれのエントリにおいても更新マークM(
更新ページに対応する外部ページのアドレスがエントリ
に設定されていることを示す情t[りが記録されていな
い)。
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 the address of an external page corresponding to the updated page is set in the entry [no information 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.

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

まず、外部ページ写像テーブル50内の世代−0テーブ
ル52中で更新マークMが記録されていないエントリに
対応する外部ページ(更新ページでないページに対応す
る外部ページ)の補助記4L1130から実記憶40内
の実ページへのロードは、外部ページ写像テーブル50
内の世代−1テーブル51中の該当するエントリ (更
新マークMが記録されていない世代−Oテーブル52中
のエントリに対応する世代−1テーブル51中のエント
リ)に設定されている外部ページのアドレスに基づいて
行われる(復元対象ページ以外のページに対応する外部
ページについては、その外部ページのアドレスが世代−
1テーブル51中のエントリに設定されていないので、
このロードは行われない、このロードは世代−1外部ペ
ージ集合31中の外部ページの実ページへのロードとな
る)。
First, in the real memory 40 from the auxiliary note 4L1130 of the external page (external page corresponding to a page that is not an updated page) corresponding to the entry in which the update mark M is not recorded in the generation-0 table 52 in the external page mapping table 50. Loading to the actual page is performed using the external page mapping table 50.
The address of the external page set in the corresponding entry in the generation-1 table 51 (the entry in the generation-1 table 51 that corresponds to the entry in the generation-O table 52 in which the update mark M is not recorded) (For external pages that correspond to pages other than the page to be restored, the address of the external page is
Since it is not set in the entry in 1 table 51,
This load is not performed; this load is a load of an external page in the generation-1 external page set 31 to a real page).

また、世代−〇テーブル52中で更新マークMが記録さ
れているエントリに対応する外部ページ(更新ページに
対応する外部ページ)の補助記憶30から実記憶40内
の実ページへのロードは、世代−〇テーブル52中の該
当するエントリ (更新マークMが記録されている世代
−〇テーブル52中のエントリ)に設定されている外部
ページのアドレスに基づいて行われる(このロードは世
代−〇外部ページ集合32中の外部ページの実ページへ
のロードとなる)。
In addition, 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 30 to a real page in the real memory 40 is performed by the generation - The external page address set in the corresponding entry in the table 52 (the generation in which the update mark M is recorded - the entry in the table 52) is loaded (this load is performed on the external page of the generation - This results in the loading of external pages in set 32 to real pages).

さらに、実記憶40内で更新された実ページの実記↑a
40から補助記憶30内の外部ページへのアンロードは
、更新された実ページに対応するページ集合21中の更
新ページに対応する世代−0テーブル52中のエントリ
に補助記憶30におけるアンロード先の外部ページのア
ドレスを設定し更新マークMを記録することにより行わ
れる(このアンロードは、世代−〇外部ページ集合32
中の外部ページへの実ページのアンロードとなる)。
Furthermore, the actual record of the updated real page in the real memory 40↑a
40 to an external page in the auxiliary memory 30, the unload destination in the auxiliary memory 30 is added to 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 is done by setting the address of the external page and recording the update mark M (this unloading is performed by setting the address of the external page and recording the update mark M).
).

続いて、対象プログラムによりプログラム再開点である
ことが宣言されたプログラム実行時点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.

対象プログラムが上述の宣言(この宣言に係る情報は対
象プログラム中に組み込まれている)を行うと、復元対
象ページ指定手段4によりページ集合21の中から復元
対象ページ集合22を構成する復元対象ページが指定さ
れる。
When the target program makes the above declaration (information related to this declaration is incorporated in the target program), the restoration target page specifying means 4 selects the restoration target pages constituting the restoration target page set 22 from the page set 21. is specified.

さらに、プログラム部分退避手段2の指示に基づく二元
管理手段1の制御により次のような処理が行われる。
Furthermore, the following processing is performed under the control of the dual management means 1 based on instructions from the program partial saving means 2.

まず、その時点における実記憶40内の更新された実ペ
ージが全て補助記憶30に退避され(アンロードされ)
、外部ページ写像テーブル50内の世代−〇テーブル5
2中のエントリに補助記憶30における1a(アンロー
ド)先の外部ページのアドレスが設定されて更新マーク
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 1a (unloaded) destination in the auxiliary storage 30 is set in the entry in 2, and the update mark M is recorded.

次に、世代−〇テーブル52中で更新マークMの記録さ
れているエントリに対応する世代−1テーブル51中の
エントリに設定されている世代−1外部ページ集合31
中の外部ページのアドレスが解放される。
Next, the generation-1 external page set 31 is set in the entry in the generation-1 table 51 that corresponds to the entry in which the update mark M is recorded in the generation-○ table 52.
The addresses of external pages inside are released.

外部ページのアドレスが解放された世代−1テーブル5
1中のエントリにおいて復元対象ページ指定手段4によ
り指定された復元対象ページに対応するエントリに世代
−〇テーブル52中の対応するエントリから外部ページ
のアドレスが複写され、その後に複写元の世代−〇テー
ブル52中のエントリの更新マークMが消去される。
Generation-1 table 5 where external page addresses are released
The address of the external page is copied from the corresponding entry in the generation-〇 table 52 to the entry corresponding to the restoration target page specified by the restoration target page specifying means 4 in the entry in 1, and then the address of the external page is copied from the generation-〇 table 52 of the copy source. The update mark M of the entry in table 52 is erased.

一方、世代−〇テーブル52中で更新マークMの記録さ
れているエントリ (外部ページのアドレス  。
On the other hand, the entry in which the update mark M is recorded in the generation-○ table 52 (external page address).

が解放された世代−1テーブル51中のエントリに対応
する世代−Oテーブル52中のエントリ)において復元
対象ページ指定手段4により指定された復元対象ページ
以外のページに対応するエントリの更新は行われない。
In the entry in the generation-O table 52 corresponding to the entry in the generation-1 table 51 that has been released, entries corresponding to pages other than the restoration target page specified by the restoration target page specifying means 4 are not updated. do not have.

また、世代−〇テーブル52中で更新マークMの記録さ
れていないエントリに対応する世代−1テ°−プル51
中のエントリも更新されない。
Also, generation-1 table 51 corresponding to the entry in which update mark M is not recorded in generation-〇 table 52
Entries inside are also not updated.

以上の動作により、プログラム実行時点P1における復
元対象外部ページマツプが外部ページ写像テーブル50
内の世代−1テーブル51に保持され、間接的にプログ
ラム実行時点Plにおける対象プログラム(ページ集合
21)中の復元対象ページ集合22が退避されたことに
なる(これにより、従来のプログラムの復元再開処理方
式におけるページング補助記憶域内の外部ページの集合
を退避補助記憶域に出力する動作が不要となり、しかも
復元対象ページのみの退避を実現することができる)。
As a result of the above operations, the external page map to be restored at the program execution point P1 is changed to the external page mapping table 50.
This means that the page set 22 to be restored in the target program (page set 21) at the program execution point Pl is indirectly saved (this means that the restoration of the conventional program cannot be resumed. This eliminates the need for the processing method to output a set of external pages in the paging auxiliary storage area to the evacuation auxiliary storage area, and moreover, it is possible to save only the pages to be restored.)

対象プログラムの実行がプログラム実行時点ptから正
常に進んだ後の次のプログラム再開点宣言時点であるプ
ログラム実行時点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 pt, 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 to be restored at the program execution point P2.

このようにして、世代−1テーブル51中には常に最新
のプログラム再開点宣言時点における復元対象外部ペー
ジマツプを保持することが可能にな最後に、対象プログ
ラムの実行がさらに進み不測の要因に基づいて処理が中
断しプログラム実行時点P2からの再開を必要とするこ
とになるプログラム実行時点P3(プログラム復元再開
要求時点)における動作について説明する。
In this way, the generation-1 table 51 can always hold the external page map to be restored at the time of the latest program restart point declaration. The operation at the program execution time point P3 (program restoration restart request time point) at which the processing is interrupted and must be restarted from the program execution time point P2 will be described.

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

上述の処理により、その後に行われる二元管理手段1の
制御による復元対象ページに対応する実記憶40内の実
ページへの補助記憶30内の外部ページのロードはプロ
グラム実行時点P2における外部ページマツプを示す世
代−1テーブル51に基づいて行われるようになり(世
代−1外部ページ集、   合31中の外部ページが実
記t940内の実ページにロードされるようになる)、
プログラム実行時点P2をプログラム再開点とする対象
プログラムの復元再開処理が実現される(復元対象ペー
ジ以外のページに関する外部ページ写像テーブル5o内
の世代−1テーブル51中のエントリには外部ページの
アドレスが設定されていないので、それらのページに対
応する実記憶40内の実ページへの補助記憶30内の外
部ページのロードは不要になり、それらのページが必要
になると実ページの割当てのみが行われる)。
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 corresponding to the page to be restored under the control of the dual management means 1 is based on the external page map at the program execution point P2. (Generation-1 external page collection, the external page in the set 31 is now loaded into the real page in the actual t940),
Restoration restart processing of the target program is realized with the program execution point P2 as the program restart point (the entry in the generation-1 table 51 in the external page mapping table 5o for pages other than the restoration target page contains the address of the external page). Since these pages are not set, it becomes unnecessary to load external pages in the auxiliary memory 30 to real pages in the real memory 40 corresponding to those pages, and only real page allocation is performed when those pages are needed. ).

なお、本実施例では対象プログラムをプログラム再開点
宣言時点の状態に復元するときに実記憶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 program restart point declaration, but real pages that have not been updated or real pages that have been updated are If a real page corresponding to a page other than the restoration target page exists in the real memory 40, the real page is not released under the control of the dual management means 1 based on the instruction of the program partial restoration means 3. , it becomes possible to reduce the amount of processing required to load an external page from the auxiliary memory 30 to a real page in the real memory 40 in the restoration restart process.

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

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

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

また、復元対象ページを指定する復元対象ページ指定手
段を設けることにより、プログラム再開時に復元が不要
なページに対応する外部ページを対象とする退避処理お
よび復元処理という無駄な処理を避けることができ、補
助記憶と実記憶との間の入出力動作の回数を抑制するこ
とができるという効果がある。
In addition, by providing a restoration target page specifying means for specifying restoration target pages, it is possible to avoid unnecessary processing such as evacuation processing and restoration processing for external pages corresponding to pages that do not need restoration when the program is restarted. This has the effect of suppressing the number of input/output operations between the auxiliary memory and the real memory.

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

第1図は本発明の一実施例の構成を示すブロック図、 第2図は第1図中の外部ページ写像テーブルの構成を示
しその外部ページ写像テーブルによるページ集合と世代
−1外部ページ集合および世代−〇外部ページ集合との
対応付けの態様を示す図、第3図は第1図に示すプログ
ラムの復元再開処理方式の処理の対象である対象プログ
ラムの一例の実行状態を示す図である。 図において、 1・・・二元管理手段、 2・・・プログラム部分退避手段、 3・・・プログラム部分復元手段、 4・・・復元対象ページ指定手段、 20・・・仮想空間、 21・・・ページ集合、 22・・・復元対象ページ集合、 30・・・補助記憶、 31・・・世代−1外部ページ集合、 32・・・世代−〇外部ページ集合、 40・・・実記憶、 50・・・外部ページ写像テーブル、 51・・・世代−1テーブル、 52・・・世代−〇テーブル、 311.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 manner of association with the generation-○ external page set. FIG. 3 is a diagram showing the execution state of an example of a target program that is a target of processing in the program restoration/resumption processing method shown in FIG. In the figure, 1... Dual management means, 2... Program part saving means, 3... Program part restoring means, 4... Restoration target page specifying means, 20... Virtual space, 21...・Page set, 22... Restore target page set, 30... Auxiliary memory, 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.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. original management means; a restoration target page specifying means for specifying restoration target pages constituting a restoration target page set from a page set at the time of program restart point declaration; and restoration target page designation means specifying restoration target pages at the time of program restart point declaration. The map of the external page to be restored at the time of declaration of the program restart point is saved by saving the updated real page corresponding to the restored page to an external page in the auxiliary memory and updating the external page mapping table based on the evacuation. The generation in the external page mapping table −
program partial saving means for instructing the dual management means to hold the program in one 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. In order to restore the restoration target page set based on the restoration target external page map held in the generation-1 table in the external page mapping table according to the instructions of the program partial saving means at the time of the program restart point declaration at the time of the request. a program partial restoring 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; Restoration restart processing method.
JP63065145A 1988-03-18 1988-03-18 System for processing restoration and restart of program Pending JPH01237857A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP63065145A JPH01237857A (en) 1988-03-18 1988-03-18 System for processing restoration and restart of program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP63065145A JPH01237857A (en) 1988-03-18 1988-03-18 System for processing restoration and restart of program

Publications (1)

Publication Number Publication Date
JPH01237857A true JPH01237857A (en) 1989-09-22

Family

ID=13278421

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63065145A Pending JPH01237857A (en) 1988-03-18 1988-03-18 System for processing restoration and restart of program

Country Status (1)

Country Link
JP (1) JPH01237857A (en)

Similar Documents

Publication Publication Date Title
KR100413915B1 (en) Computer system based on microprocessor, its driving method and backup system therefor
WO2011024688A1 (en) Firmware update system, and information apparatus, as well as program
JPH03278126A (en) Computer system starting system
JP2008015768A (en) Storage system and data management method using the same
JP2013520744A (en) Method and apparatus for generating minimum boot image
JP2001195241A (en) Computer
JP2011164968A (en) Method of accelerating access to primary storage and storage system
JP2005346610A (en) Storage system and method for acquisition and use of snapshot
US6502176B1 (en) Computer system and methods for loading and modifying a control program without stopping the computer system using reserve areas
JPH01237857A (en) System for processing restoration and restart of program
JP2677474B2 (en) Apparatus and method for collecting control information of virtual machine
JP2003216449A (en) Patch processing system
JPH01234950A (en) Restoration/restart processing system for program
JP2002258971A (en) Method for restarting computer system
JPH04241033A (en) Program reload and restart processing system
WO2021153224A1 (en) Information processing device and information processing method
JPS58151663A (en) Switching system of system file
JP3037375B2 (en) File compression processing method
JPH07281933A (en) Computer system
JPH04218842A (en) Reexecution method for program
JPS6250938A (en) Recovering system for main memory resident data base
JPH08272655A (en) Operating system and file deletion method
JPH01300352A (en) Dump area instruction control system
JPH04105159A (en) Work substitute system
KR100489044B1 (en) Multi package management method