JPS63273138A - Overlay system for multi-task - Google Patents

Overlay system for multi-task

Info

Publication number
JPS63273138A
JPS63273138A JP10747087A JP10747087A JPS63273138A JP S63273138 A JPS63273138 A JP S63273138A JP 10747087 A JP10747087 A JP 10747087A JP 10747087 A JP10747087 A JP 10747087A JP S63273138 A JPS63273138 A JP S63273138A
Authority
JP
Japan
Prior art keywords
segment
task
usage
overlay
storage space
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
JP10747087A
Other languages
Japanese (ja)
Inventor
Naoko Katayose
片寄 直子
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 JP10747087A priority Critical patent/JPS63273138A/en
Publication of JPS63273138A publication Critical patent/JPS63273138A/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/461Saving or restoring of program or task context

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)

Abstract

PURPOSE:To save the storage area by using a task operating flag updating means and an operating state information updating means to attain overlay control between plural tasks. CONSTITUTION:Segments 1-13 of a load module 10 in a library 1 are loaded to a storage space 5 by an overly segment load means 40 of an overly loader 4. By which task the segments 11-13 constituting a program of the overlay structure are used at present, and how is the operating state are managed by a segment information table 6 revised by an operating state information updating means 42, a control means 43 applies various overlay control between plural tasks to allow one program having the overlay structure to the used in common between plural tasks in one storage space. Thus, the necessity of loading the program duplicatedly into the memory space 5 is eliminated and the capacity of the memory space is saved.

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明はオーバーレイ方式を採用した情報処理システム
に関し、特にオーバーレイ構造のプログラムを複数のタ
スク間で同時に実行できるマルチタスクのオーバーレイ
方式に関する。
DETAILED DESCRIPTION OF THE INVENTION [Field of Industrial Application] The present invention relates to an information processing system that employs an overlay method, and more particularly to a multitask overlay method that allows a program with an overlay structure to be executed simultaneously among a plurality of tasks.

〔従来の技術〕[Conventional technology]

オーバーレイ構造のプログラムを採用している従来の情
報処理システムにおいては、オーバーレイ構造の一つの
プログラムは一つのタスクでしか実行することができな
かった。
In conventional information processing systems that employ programs with an overlay structure, one program with an overlay structure can only be executed by one task.

〔発明が解決しようとする間ツ点〕[The shortcomings that the invention attempts to solve]

その為、複数のタスクから使用され、而も同時には記憶
空間上にある必要のない二つのセグメントを持つプログ
ラムはオーバーレイ構造にしてそれぞれのタスク毎に記
憶空間上にコピーを持つか、または前記セグメントをそ
れぞれ違う記憶空間上のアドレスにか1当てオーバーレ
イ構造でない形式にすることによって複数のタスクでの
使用を可能とするかのどちらかの方法しかなかった。こ
の為、記憶空間に大きな領域が必要となっていた。
Therefore, a program that has two segments that are used by multiple tasks and that do not need to be in the storage space at the same time should have an overlay structure so that each task has a copy of the segment in the storage space, or The only options available were to make it possible to use it in multiple tasks by assigning each address to a different memory space, or by making it in a format other than a one-place overlay structure. For this reason, a large area of storage space was required.

そこで、本発明の目的は、複数のタスク間でのオーバー
レイ制御nを可能とすることにより、記憶空間の削減を
図ることができるマルチタスクのオーバーレイ方式を提
供することにある。
SUMMARY OF THE INVENTION Accordingly, an object of the present invention is to provide a multitask overlay method that can reduce storage space by enabling overlay control between a plurality of tasks.

〔問題点を解決するための手段〕[Means for solving problems]

本発明は上記目的を達成するために、オーバーレイ構造
のプログラムを実行する情報処理システムにおいて、 前記プログラムを構成するセグメントが前記プログラム
を使用する複数のタスクの何れで使用されでいるかを示
すタスク使用フラグ群と、前記セグメントが前記タスク
の少なくとも一つのタスクで使用されているときは「使
用中」、使用は終了したが未だ記憶空間上に存在してい
るときは「使用終了」、記憶空間上に存在しないときは
「未使用jを示す使用状態情報とを、前記プログラムを
構成するセグメント毎に保持するセグメント情報テーブ
ル、″ 前記セグメントを記憶空間上にロードするオーバーレイ
セグメントロード手段、 或るセグメントに対し使用要求があったときに該使用要
求を出したタスクに対応する前記タスク使用フラグを名
ソトし、その使用を終了した旨が通知されたか又は他の
セグメントによってオーバーレイされたときに前記タス
ク使用フラグをリセットするタスク使用フラグ更新手段
、 或るセグメントが、記憶空間上にロードされたときに前
記使用状態情報を「使用中」にし、全てのタスクで使用
終了するか又は未使用となったときに前記使用状態情報
を「使用終了」にし、他のセグメントによってオーバー
レイされて記憶空間から消去されたときに「未使用」に
更新する使用状B情報更新手段、 Tf”l 記オーバーレイセグメントロード手段、タス
ク使用フラグ更新手段および使用状態情報更新手段を使
用し、オーバーレイ構造を持つ一つのプログラムを一つ
の記憶空間内において複数のタスクで同時に実行させる
制御を行なう制御手段を含んでいる。
To achieve the above object, the present invention provides an information processing system that executes a program with an overlay structure, and includes a task use flag indicating which of a plurality of tasks using the program is used by a segment constituting the program. "In use" when the segment is being used by at least one of the tasks; "End of use" when the segment is no longer in use but still exists in the storage space; If it does not exist, "a segment information table that holds usage state information indicating unused j for each segment constituting the program;" an overlay segment loading means for loading the segment onto the storage space; When a usage request is made, the task usage flag corresponding to the task that issued the usage request is sorted by name, and when the task usage flag is notified that its usage has ended or is overlaid by another segment, the task usage flag is task usage flag updating means for resetting the usage state information; when a certain segment is loaded into the storage space, the usage state information is set to "in use"; and when the segment is finished being used by all tasks or becomes unused; Usage statement B information updating means that sets the usage state information to "end of use" and updates it to "unused" when it is overlaid by another segment and erased from the storage space, Tf''l Overlay segment loading means, task The apparatus includes a control means for controlling one program having an overlay structure to be simultaneously executed by a plurality of tasks in one storage space by using a usage flag updating means and a usage state information updating means.

〔作用〕[Effect]

オーバーレイ構造のプログラムを構成する各セグメント
が、現在どのタスクで使用されているが、その使用状態
がどのようになっているかは、タスク使用フラグ更新手
段および使用状態情報更新手段で更新されるセグメント
情報テーブルで管理され、制御n手段は、例えばオーバ
ーレイ関係にあるセグメントの一方を或るタスクが使用
しているときに別のタスクが他方のセグメントの使用を
要求したときにはその別のタスクに例えば使用不可能を
通知するといった複数のタスク間での各種のオーバーレ
イ制御を行ない、オーバーレイ構造を持つ一つのプログ
ラムを一つの記憶空間内において複数のタスク間で共用
させる。
The segment information updated by the task usage flag update means and usage status information update means shows which task each segment that makes up the overlay structured program is currently being used by, and what its usage status is. For example, when a task is using one of the segments in an overlay relationship and another task requests the use of the other segment, the control means is managed in a table, and for example, when a task uses one of the segments in an overlay relationship, the other task requests the use of the other segment. Various types of overlay control are performed between multiple tasks, such as notification of availability, and one program having an overlay structure is shared among multiple tasks within one storage space.

〔実施例〕〔Example〕

次に本発明の実施例について図面を参照して説明する。 Next, embodiments of the present invention will be described with reference to the drawings.

第1図は本発明の実施例の構成図であり、セグメント1
1.12.13 (各k(1)名前はA、 B、 C)
を持つロードモジュール10 (その名前はX)を格納
するライブラリ1と、オーバーレイセグメントロード手
段40.タスク使用フラグ更新手段41.使用状態情報
更新手段42および制御手段43を含むオーバーレイロ
ーダ4と、二つのタスク2.3 (各々の名前はα、β
)と、実記憶空間あるいは仮想記憶空間である記憶空間
5とから構成されている。
FIG. 1 is a block diagram of an embodiment of the present invention, in which segment 1
1.12.13 (Each k(1) name is A, B, C)
a library 1 storing a load module 10 (its name is X) having an overlay segment load means 40. Task usage flag updating means 41. An overlay loader 4 including a usage state information updating means 42 and a control means 43, and two tasks 2.3 (each named α and β).
) and a storage space 5 which is a real storage space or a virtual storage space.

また記憶空間5には、オーバーレイローダ4によってラ
イブラリlからロードされたセグメント11゜12或い
は13とセグメント情報テーブル6とが含まれている。
The storage space 5 also includes segments 11, 12, or 13 loaded from the library I by the overlay loader 4 and a segment information table 6.

セグメント情報テーブル6は例えば第2図に示すように
、各々が一つのセグメントに対応する複数のエントリ6
a〜6nを有し、各エントリにはセグメント名60.開
始アドレス61.タスクαに対応するタスク使用フラグ
62α、タスクβに対応するタスク使用フラグ62βな
どの如(各タスク毎に設けられたタスク使用フラグ62
.使用状態情報63、 およびその他の情報が格納され
る。
For example, as shown in FIG. 2, the segment information table 6 has a plurality of entries 6 each corresponding to one segment.
a to 6n, and each entry has a segment name 60. Start address 61. Task use flag 62α corresponding to task α, task use flag 62β corresponding to task β, etc. (task use flag 62 provided for each task)
.. Usage state information 63 and other information are stored.

第1図において、ライブラリ1内のロードモジュール1
0の各セグメント11〜13は、オーバーレイローダ4
のオーバーレイセグメントロード手段40によって記憶
空間5にロードされる。このときタスク使用フラグ更新
手段41によってセグメント情報テーブル6内のそのロ
ードされたセグメントに対応するタスク使用フラグ62
のうち、そのセグメントのロード要求を出したタスクに
対応するフラグがONにセットされる。このONされた
フラグは、前記タスクからそのセグメントの使用終了が
通知されたとき又はそのセグメントが他のセグメントに
よってオーバーレイされたときにOFFにリセットされ
る。他方、セグメント情報テーブル6の使用状態情報6
3は、使用状態情報更新手段42によって更新されるも
のであり、対応するセグメントが記憶空間5にロードさ
れ少なくとも一つのタスクによって使用中のとき「使用
中」にセントされ、記憶空間5にはあるが全てのタスク
のタスク使用フラグがOFFであるとき「使用終了」の
状態にされ、記憶空間5に無いとき「未使用Jの状態に
リセットされる。
In Figure 1, load module 1 in library 1
Each segment 11 to 13 of 0 is connected to the overlay loader 4.
is loaded into the storage space 5 by the overlay segment loading means 40 of . At this time, the task use flag 62 corresponding to the loaded segment in the segment information table 6 is updated by the task use flag updating means 41.
Among them, the flag corresponding to the task that issued the load request for the segment is set to ON. This ON flag is reset to OFF when the task notifies the end of use of the segment or when the segment is overlaid by another segment. On the other hand, the usage status information 6 of the segment information table 6
3 is updated by the usage state information updating means 42, and when the corresponding segment is loaded into the storage space 5 and is being used by at least one task, it is marked as "in use", and the segment is stored in the storage space 5. When the task use flags of all tasks are OFF, the task is set to the "used" state, and when it is not in the storage space 5, it is reset to the "unused" state.

タスク使用フラグ更新手段41の処理例を第3図に示す
。同図に示すようにタスク使用フラグ更新手段41は、
指定されたセグメントへの要求がロード要求であるか、
または使用終了若しくはオーバーレイされることによる
削除要求であるかを判断する処理S1と、処理31によ
りロード要求であると判断されたとき指定されたセグメ
ントの要求を出したタスクに対応するタスク使用フラグ
62をONにセットする処理S2と、ロード要求でない
と判断されたときに前記タスク使用フラグをOFFにリ
セットする処理S3とを行なう。
An example of processing by the task use flag updating means 41 is shown in FIG. As shown in the figure, the task use flag updating means 41
Whether the request to the specified segment is a load request or
or process S1 to determine whether the request is for deletion due to end of use or overlay, and task use flag 62 corresponding to the task that issued the request for the specified segment when it is determined to be a load request by process 31. A process S2 of setting the task use flag to ON, and a process S3 of resetting the task use flag to OFF when it is determined that the request is not a load request are performed.

使用状態情報更新手段42の処理例を第4図に示す。使
用状態情報更新手段42は同図に示すように、指定され
たセグメントへの要求がロード要求であるか、または使
用終了若しくはオーバーレイされることによる削除要求
であるかを判断する処理S11と、処理311によりロ
ード要求であると判断されたときに指定されたセグメン
トに対応する使用状態情報63を「使用中」にセットす
る処理312と、処理Sllによりロード要求でないと
判断されたときに対応するタスク使用フラグ62が全て
OFFであるかどうかを判断する処理313と、処理3
13により全てOFFであると判断されたときに要求が
使用終了であるか或いはオーバーレイによる削除要求で
あるかを判断する処理S14と、処理S14により使用
終了であると判断されたときに前記使用状態情報を「使
用終了」にセットする処理315と、処理314により
削除要求であると判断されたときに前記使用状態情報を
「未使用」にリセットする処理316とを行ない、処理
313により少なくとも一つのタスクで使用中であると
判断されたときは使用中である旨を使用状態情報更新手
段42の要求元に通知し、それ以外のときには正常終了
した旨を通知する構成を有する。
An example of processing by the usage state information updating means 42 is shown in FIG. As shown in the figure, the usage state information updating means 42 performs a process S11 of determining whether a request for a specified segment is a load request or a deletion request due to termination of use or overlay, and process S11. A process 312 that sets the usage state information 63 corresponding to the specified segment to "in use" when it is determined that the request is a load request by the process SLL, and a corresponding task when it is determined that the request is not a load request by the process SLL. Process 313 for determining whether all use flags 62 are OFF, and Process 3
a process S14 for determining whether the request is for termination of use or a deletion request due to an overlay when it is determined that all are OFF in step S13; A process 315 of setting the information to "end of use" and a process 316 of resetting the usage state information to "unused" when it is determined that the deletion request is made in the process 314, and a process 313 sets the information to "unused". When it is determined that it is being used by a task, it is configured to notify the requestor of the usage status information update means 42 that it is being used, and otherwise to notify that it has ended normally.

次に、ロード要求時の制御手段43の処理について第5
図を用いて説明する。
Next, the fifth section regarding the processing of the control means 43 at the time of a load request.
This will be explained using figures.

タスクからのロード要求がオーバーレイローダ4に通知
されると、制御手段43は、指定されたセグメントのセ
グメント情報テーブル6のエントリを得て(321) 
、使用状態情報63が「未使用」であるか否かを判断す
る処理322を実行する。処理322により未使用でな
いと判断したときは、指定されたセグメントに対しロー
ド要求でタスク使用フラグ更新手段41と使用状態情報
更新手段42を起動する(323. 524)。更にオ
ーバーレイ木の上位セグメントが使用中であるかどうか
を判断する処理S25を実行し、この処理325で上位
セグメントが使用中でないと判断したときには、その上
位セグメントのセグメントIDの取得(S26)、その
上位セグメントに対する処理S23.  S24.  
S25を繰返す。
When the overlay loader 4 is notified of the load request from the task, the control means 43 obtains an entry in the segment information table 6 for the specified segment (321).
, executes processing 322 for determining whether the usage status information 63 is "unused". If it is determined in step 322 that the segment is not unused, the task use flag updating means 41 and the use state information updating means 42 are activated with a load request for the specified segment (323, 524). Further, a process S25 is executed to determine whether the upper segment of the overlay tree is in use, and when it is determined in this process 325 that the upper segment is not in use, the segment ID of the upper segment is obtained (S26), and the segment ID of the upper segment is obtained (S26). Processing for upper segment S23. S24.
Repeat S25.

他方、処理S22により未使用であると判断したときに
は、指定セグメントをロードすることにより記憶空間5
から削除されるセグメントがあるか否かを調べ(338
)、あればそのセグメントIDを得て(S27)、オー
バーレイされるセグメントに対し削除要求でタスク使用
フラグ更新手段41と使用状B情報更新手段42とを起
動する(32B、  529)、そして、使用状態情報
更新一手段42から使用中である旨が通知された場合は
、前記ロード要求によって指定されたセグメントは使用
不可能である旨をオーバーレイローダ4の制御手段43
は要求元のタスクに通知する0次に、使用状態情報更新
手段42が正常に終了した場合(S30でNoの場合)
、更にオーバーレイされる上位セグメントがあれば、そ
のオーバーレイされる上位セグメントのセグメン)10
の取得(332)、そのセグメントに対する処理328
〜331を繰返す。なお、使用不可能の通知を受けたタ
スク側の処理としては各種の処理が考えられ、例えば使
用不可能の原因となったセグメントの使用が終了するま
で待合セたり、別の処理へ移行する等の任意の方法が法
用可能である。
On the other hand, if it is determined in step S22 that the segment is unused, the storage space 5 is freed by loading the specified segment.
Check whether there are any segments to be deleted from (338
), if so, obtain the segment ID (S27), activate the task use flag updating means 41 and the usage statement B information updating means 42 with a deletion request for the overlaid segment (32B, 529), and use When the state information update means 42 notifies that the segment is in use, the control means 43 of the overlay loader 4 informs that the segment specified by the load request is unusable.
is notified to the requesting task.Next, if the usage status information updating means 42 ends normally (if No in S30)
, and if there is an upper segment to be overlaid, the segment of the upper segment to be overlaid) 10
Obtaining (332), processing 328 for that segment
- Repeat steps 331. There are various types of processing that can be performed by a task that receives notification of unavailability, such as waiting until the segment that caused the unavailability is finished being used, or moving to another process. Any method can be used.

次に、処理33B或いは処理S31によりオーバーレイ
されるセグメントが無いと判断したときは、制御手段4
3は、ロード要求で指定されたセグメントのロードをオ
ーバーレイセグメントロード手段40により公知のよう
にして行なわせる(333)。
Next, when it is determined in process 33B or process S31 that there is no segment to be overlaid, the control means 4
3 causes the overlay segment loading means 40 to load the segment specified in the load request in a known manner (333).

そして、ロードしたセグメントに対しロード要求でタス
ク使用フラグ更新手段41と使用状態情報更新手段42
とを起動し、セグメント情報テーブル6を更新する(3
34. 335)。そして、上位セグメントについても
使用中であるか否かを判断しく536)、使用中でない
と判断した場合は、その上位セグメントのセグメントI
Dを取得しく337)、前記処理333. 334. 
335を繰返す。
Then, the task use flag updating means 41 and the use state information updating means 42 receive a load request for the loaded segment.
and update the segment information table 6 (3
34. 335). Then, it is determined whether or not the upper segment is in use (536), and if it is determined that it is not in use, the segment I of the upper segment
D 337), the process 333. 334.
Repeat 335.

全ての処理が正常に終了すると、オーバーレイローダ4
の制御手段43は、指定セグメントが使用可能である旨
を要求元に通知する。
When all processing is completed successfully, overlay loader 4
The control means 43 notifies the request source that the designated segment is available.

第6図は使用終了通知をオーバーレイ【I−ダ4が受け
たときに制御手段43が行なう処理例を示す。
FIG. 6 shows an example of the processing performed by the control means 43 when the overlay [I-der 4] receives a notice of end of use.

ロードしたセグメントの使用が終了し、タスクから使用
終了の旨がオーバーレイローダ4に通知されると、制御
手段43は、指定されたセグメントに対し使用終了要求
でタスク使用フラグ更新手段41と使用状態情報更新手
段42と起動する(341. 342)。
When the use of the loaded segment is finished and the task notifies the overlay loader 4 of the end of use, the control means 43 sends a use end request to the task use flag updating means 41 and the usage state information for the specified segment. The updating means 42 is activated (341. 342).

次に、具体的なオーバーレイ構造のプログラムを例にし
て本実施例の動作を説明する。
Next, the operation of this embodiment will be explained using a program with a specific overlay structure as an example.

第1図のライブラリ1に格納されているロードモジュー
ルlOが例えば第7図に示すように、ルートとなるセグ
メント11と、互いにオーバーレイ関係にあるセグメン
ト12.13との三つのセグメントから構成されている
とし、記憶空間5上の例えば100番地にセグメント1
1がロードされてタスク2.3から使用されており、タ
スク2によって例えば300番地にセグメント12がロ
ードされているとする。このとき、セグメント情報テー
ブル6は第2図に示すように、セグメント11.12.
13のそれぞれに対応したエントリ6a、6b、6cを
持ち、セグメント11用のエントリ6aにおけるタスク
使用フラグ62ではタスク2用62α、タスク3用62
β共にONで使用中となっている。またセグメント12
用のエントリ6bでは、タスク2の使用フラグ62αの
みがONとなり使用中を示しており、セグメント13は
未使用であることから対応するタスク使用フラグは共に
OFFとなっている。このような状態のとき、タスク3
からセグメント12の使用要求が出されると、第5図の
処理S21によりセグメント12の使用状態情報63を
取得し、処理S22で使用中であると判断され、処理S
23.処理S24によりセグメント情報テーブル6が更
新され、上位セグメン目1は使用中であるので使用可能
である旨がオーバーレイローダ4よりタスク3に通知さ
れる。
For example, as shown in FIG. 7, the load module IO stored in the library 1 in FIG. 1 is composed of three segments: a root segment 11 and segments 12 and 13 that are in an overlay relationship with each other. For example, segment 1 is placed at address 100 on storage space 5.
1 is loaded and used from task 2.3, and task 2 loads segment 12 at address 300, for example. At this time, the segment information table 6 includes segments 11, 12, .
The task usage flag 62 in the entry 6a for segment 11 is 62α for task 2 and 62 for task 3.
Both β are ON and in use. Also segment 12
In the entry 6b for task 2, only the use flag 62α of task 2 is ON, indicating that it is in use, and since segment 13 is unused, both the corresponding task use flags are OFF. In this situation, task 3
When a request to use the segment 12 is issued, the usage state information 63 of the segment 12 is acquired in process S21 of FIG.
23. The segment information table 6 is updated in step S24, and the overlay loader 4 notifies the task 3 that the upper segment 1 is in use and can be used.

次にタスク2からセグメント12の使用が終了した旨が
通知されると、第6図の処理341. 342によりセ
グメント情報テーブル6が更新される。このとき、使用
状態情報更新手段42では処理S13によりセグメント
12用のエントリ6bにおける全タスクの使用フラグが
OFFかどうかをチェックし、今の状態ではタスク3で
使用中でその使用フラグ62βがONであるので使用状
態情報は更新されない。
Next, when task 2 notifies that the use of segment 12 has ended, processing 341 in FIG. 342, the segment information table 6 is updated. At this time, the usage state information updating means 42 checks whether the usage flags of all tasks in the entry 6b for segment 12 are OFF in step S13, and in the current state, it is being used by task 3 and its usage flag 62β is ON. Therefore, the usage status information is not updated.

その後、タスク3からもセグメント12の使用が終了し
た旨が通知されると、処理S41で起動されたタスク使
用フラグ更新手段41によってエントリ6bのタスク3
に対応する使用フラグ62βがOFFされ、その時点で
セグメント12に関する全タスクのタスク使用フラグが
OFFになるので、処理S42で起動された使用状態情
報更新手段42の処理S13. 314.  S15に
よりセグメン目2の使用状態情報が使用終了にされる。
Thereafter, when the task 3 also notifies that the use of the segment 12 has ended, the task use flag updating means 41 activated in step S41 updates the task 3 of the entry 6b.
The usage flag 62β corresponding to . is turned OFF, and at that point, the task usage flags of all tasks related to the segment 12 are turned OFF, so that the usage state information updating means 42 activated in step S42 performs processing S13. 314. In S15, the use status information of the second segment is ended.

次に、タスク2からセグメント13への使用要求が通知
されると、第5図の処理521. 522によりセグメ
ント13が未使用であると判断され、処理S27により
オーバーレイされるセグメントであるセグメン目2の[
Dが取得される。そして、処理828によりオーバーレ
イされるセグメント12のタスク使用フラグが全てリセ
ットされ、処理S29によりセグメン目2の使用状態情
報が未使用に更新される0次に、上位セグメントはオー
バーレイされないので処理S33でオーバーレイセグメ
ントロード手段40によってセグメン目3が記憶空間5
にロードされ、処理334.  S35によりセグメン
目3の使用フラグ62αがONされ、使用状態情報が「
使用中」に更新され、タスク2に使用可能の旨が通知さ
れる。
Next, when a request for use of segment 13 is notified from task 2, processing 521 in FIG. 522, segment 13 is determined to be unused, and processing S27 determines that segment 2, which is the segment to be overlaid, is [[
D is obtained. Then, all the task usage flags of segment 12 to be overlaid are reset in process 828, and the usage state information of segment 2 is updated to unused in process S29. Since the upper segment is not overlaid, the overlay is performed in process S33. The third segment is loaded into the storage space 5 by the segment loading means 40.
and processed 334. At S35, the usage flag 62α of segment 3 is turned ON, and the usage state information is set to “
"In use" is updated, and Task 2 is notified that it is available for use.

以上、最も簡単なオーバーレイ構造のプログラムについ
てタスクが二つの場合の説明を行なったが、本発明は一
般のオーバーレイプログラムについてタスク数が二つ以
上の場合も当然に使用できる。また、本発明は仮想記憶
空間を持つシステムにおいても持たないシステムにおい
ても採用でき(発明の効果〕 以上説明したように、本発明によれば、オーバーレイ構
造のプログラムを一つの記憶空間において複数のタスク
で同時に使用できるため、記憶空間に二重にプログラム
をロードする必要がなく、主記憶空間の使用量を削減で
きるという効果があり、更に補助記憶装置の容量の削減
をも図ることができる。
The above description has been made for a program with the simplest overlay structure in which there are two tasks, but the present invention can of course also be used in a case where the number of tasks is two or more in a general overlay program. Furthermore, the present invention can be adopted in systems having or without virtual memory space (effects of the invention). Since the programs can be used at the same time, there is no need to load the program twice into the storage space, which has the effect of reducing the amount of main storage space used, and further reduces the capacity of the auxiliary storage device.

【図面の簡単な説明】 第1図は本発明の実施例の構成図、 第2図はセグメント情報テーブル6の説明図、第3図は
タスク使用フラグ更新手段41の処理例の流れ図、 第4図は使用状態情報更新手段42の処理例の流れ図、 第5図はセグメントのロード要求時における制御手段4
3の処理例の流れ図、 第6図はセグメントの使用終了時における制御手段43
の処理例の流れ図および、 第1図はオーバーレイ木の説明図である。 図において、1・・・ライブラリ、2.3・・・タスク
、4・・・オーバーレイローダ、5・・・記憶空H16
・・・セグメント情仰テーブル、10・・・ロードモジ
ュール、11、12.13・・・セグメント、40・・
・オーバーレイセグメントロード手段、41・・・タス
ク使用フラグ更新手段、42・・・使用状態情報更新手
段、43・・・制御手段、60・・・セグメント名、6
1・・・開始アドレス、62・・・タスク使用フラグ、
63・・・使用状態情報。
[BRIEF DESCRIPTION OF THE DRAWINGS] FIG. 1 is a configuration diagram of an embodiment of the present invention, FIG. 2 is an explanatory diagram of the segment information table 6, FIG. 3 is a flowchart of an example of processing by the task use flag updating means 41, and FIG. The figure is a flowchart of an example of processing by the usage state information updating means 42, and FIG.
3 is a flowchart of the processing example, and FIG. 6 shows the control means 43 at the end of segment use.
FIG. 1 is an explanatory diagram of an overlay tree. In the figure, 1...Library, 2.3...Task, 4...Overlay loader, 5...Memory empty H16
...Segment emotion table, 10...Load module, 11, 12.13...Segment, 40...
- Overlay segment loading means, 41... Task use flag updating means, 42... Usage state information updating means, 43... Control means, 60... Segment name, 6
1...Start address, 62...Task use flag,
63... Usage status information.

Claims (1)

【特許請求の範囲】 オーバーレイ構造のプログラムを実行する情報処理シス
テムにおいて、 前記プログラムを構成するセグメントが前記プログラム
を使用する複数のタスクの何れで使用されているかを示
すタスク使用フラグ群と、前記セグメントが前記タスク
の少なくとも一つのタスクで使用されているときは「使
用中」、使用は終了したが未だ記憶空間上に存在してい
るときは「使用終了」、記憶空間上に存在しないときは
「未使用」を示す使用状態情報とを、前記プログラムを
構成するセグメント毎に保持するセグメント情報テーブ
ル、 前記セグメントを記憶空間上にロードするオーバーレイ
セグメントロード手段、 或るセグメントに対し使用要求があったときに該使用要
求を出したタスクに対応する前記タスク使用フラグをセ
ットし、その使用を終了した旨が通知されたか又は他の
セグメントによってオーバーレイされたときに前記タス
ク使用フラグをリセットするタスク使用フラグ更新手段
、 或るセグメントが、記憶空間上にロードされたときに前
記使用状態情報を「使用中」にし、全てのタスクで使用
終了するか又は未使用となったときに前記使用状態情報
を「使用終了」にし、他のセグメントによってオーバー
レイされて記憶空間から消去されたときに「未使用」に
更新する使用状態情報更新手段、 前記オーバーレイセグメントロード手段、タスク使用フ
ラグ更新手段および使用状態情報更新手段を使用し、オ
ーバーレイ構造を持つ一つのプログラムを一つの記憶空
間内において複数のタスクで同時に実行させる制御を行
なう制御手段を具備したことを特徴とするマルチタスク
のオーバーレイ方式。
[Scope of Claim] An information processing system that executes a program with an overlay structure, comprising: a group of task use flags indicating which of a plurality of tasks using the program a segment constituting the program is used; and the segment. is being used by at least one of the tasks, "used" is finished but still exists in the storage space, and is "completed" if it does not exist in the storage space. a segment information table that holds usage state information indicating "unused" for each segment constituting the program; an overlay segment loading means that loads the segment into a storage space; and when a usage request is made for a certain segment. A task usage flag update that sets the task usage flag corresponding to the task that has issued the usage request, and resets the task usage flag when it is notified that its usage has ended or is overlaid by another segment. Means, when a certain segment is loaded into a storage space, the usage state information is set to "in use", and when the segment is finished being used by all tasks or becomes unused, the usage state information is set to "in use". a usage status information update unit that updates the overlay segment load unit, task usage flag update unit, and usage status information update unit to “unused” when the segment is overlaid by another segment and erased from the storage space; 1. A multitasking overlay method, characterized in that it is equipped with a control means for controlling a program having an overlay structure to be executed simultaneously in a plurality of tasks in one storage space.
JP10747087A 1987-04-30 1987-04-30 Overlay system for multi-task Pending JPS63273138A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP10747087A JPS63273138A (en) 1987-04-30 1987-04-30 Overlay system for multi-task

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP10747087A JPS63273138A (en) 1987-04-30 1987-04-30 Overlay system for multi-task

Publications (1)

Publication Number Publication Date
JPS63273138A true JPS63273138A (en) 1988-11-10

Family

ID=14460013

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10747087A Pending JPS63273138A (en) 1987-04-30 1987-04-30 Overlay system for multi-task

Country Status (1)

Country Link
JP (1) JPS63273138A (en)

Similar Documents

Publication Publication Date Title
US6009414A (en) Computer system with checkpoint facility and accounting facility indicating charges payable for processes
JP3429582B2 (en) Multiprocessor system
JPS63273138A (en) Overlay system for multi-task
JP2007179100A (en) Job queue system and job management method, control program, and computer-readable recording medium
CN113342499A (en) Distributed task calling method, device, equipment, storage medium and program product
JP2006277047A (en) Data processing device and dynamic substitution method of application program in multithread system
JP3992767B2 (en) Computer processing system
JP2976725B2 (en) Resource management method in standby system
JPH064477A (en) Subload-module replacing system
JPS6053903B2 (en) multiprocessor system
JPH0731595B2 (en) Online load module replacement method
JPH09269902A (en) Resource management device for information processor and resource management method in information processing system
JP2790472B2 (en) Multiple conversation processing control method
JPS63201756A (en) File replacing method for on-line system
JP2851039B2 (en) Workstation backup system
JP2926873B2 (en) Computer system
CN115934335A (en) Task processing method and related equipment
JP3022848B2 (en) Multitask task switching method and real-time operating system
JPH036535B2 (en)
JPS6150356B2 (en)
JPH0262633A (en) Inter-program communication system
JPS58142451A (en) Interruption control system
JPS6154548A (en) Control method of non-resident program
JPH03204723A (en) Program replacing system
JPH06230982A (en) Transaction processing control system