JPH0511328B2 - - Google Patents

Info

Publication number
JPH0511328B2
JPH0511328B2 JP61152529A JP15252986A JPH0511328B2 JP H0511328 B2 JPH0511328 B2 JP H0511328B2 JP 61152529 A JP61152529 A JP 61152529A JP 15252986 A JP15252986 A JP 15252986A JP H0511328 B2 JPH0511328 B2 JP H0511328B2
Authority
JP
Japan
Prior art keywords
stack
swap
section
process stack
address
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP61152529A
Other languages
Japanese (ja)
Other versions
JPS638832A (en
Inventor
Yoshinori Ueno
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP15252986A priority Critical patent/JPS638832A/en
Publication of JPS638832A publication Critical patent/JPS638832A/en
Publication of JPH0511328B2 publication Critical patent/JPH0511328B2/ja
Granted 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/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues

Description

【発明の詳細な説明】[Detailed description of the invention]

〔概要〕 データ処理システムに於いて、スワツプ・バツ
フア部5を設けてプロセス・スタツク数の増加を
図り、而も制御方式はプロセス・スタツク数が限
定されていた従来方式と同一に行える様にした。 〔産業上の利用分野〕 本発明はスワツプ・スタツク制御方式に係り、
特にスワツプ・バツフアを有する場合のスワツ
プ・スタツク制御方式に関するものである。 〔従来の技術〕 従来銀行等のオンライン業務に於いて、データ
伝送システムのターミナルコントローラとして使
用されるデータ処理装置には業務対応に各種タス
クが用意されており、此れ等タスクを順次実行す
ることにより所定の業務を行つている。此れ等タ
スクは何れも複数個のプロセス(処理単位)から
構成される。 データ処理装置の内部にはプロセス制御監視部
が設けられ、此れのプロセス制御監視部により各
種プロセスを制御して動作させ、又其の動作状態
を監視している。 データ処理装置が実行するタスクは変更される
ことがあるので、プロセス制御監視部は通常動作
開始前に初期設定され、動作時に使用される全プ
ロセス数、プロセス・スタツク・サイズ等が指定
される。 第3図は従来のデータ処理装置の一例を示す図
である。 図に於いて、1はデータ処理装置、2プロセス
制御監視部、3プロセス・スタツク格納部、4
(41〜4o)はプロセス・スタツクである。尚、
以下全図を通じ同一記号は同一対象物を表す。 第3図に示す様にデータ処理装置1はプロセス
制御監視部2とプロセス・スタツク格納部3から
構成される。 プロセス・スタツク格納部3には複数個のプロ
セス・スタツク41〜4oが格納される。 プロセス制御監視部2は指定されたタスクを実
行するため、プロセス・スタツク格納部3に格納
されているプロセス・スタツク41〜4oの中から
希望するプロセスを順次選択して実行に移し、実
行中は其の動作状況を監視し、実行が終わると次
のプロセスを選択し、此の様な手段を繰り返して
指定のタスクを実行する。 〔発明が解決しようとする問題点〕 処理装置がいわゆる16ビツト・マイクロプロセ
ツサ等で構成されている場合には、公知のように
一命令によつてアクセス可能な主記憶上のアドレ
ス範囲が比較的狭い範囲のセグメントに限定され
る。その結果、前記のプロセス・スタツクを格納
するプロセス・スタツク格納部3の領域も一セグ
メント内に制限され、従つてセグメント内のプロ
セス・スタツクに割り当てられる領域により、同
時に設け得るプロセス個数は制限される。 従つて、日々の運営に当たりタスクが変更さ
れ、此の為、使用されるプロセス・スタツクの大
きさが増えたり、必要とするプロセス・スタツク
数が増加すると、データ処理装置1の容量が一杯
となつて要求されているタスクのプロセス・スタ
ツクを全部収容出来ないことが起きると云う問題
があつた。 〔問題点を解決するための手段〕 上記問題点は第1図の原理図に示す様に、各種
プロセスの動作を制御監視するプロセス制御監視
部2、及び複数個のプロセス・スタツク4が格納
されるプロセス・スタツク格納部3からなるスワ
ツプ・スタツク制御方式のデータ処理装置1に、
プロセス・スタツク4が格納されるスワツプ・バ
ツフア部5を付加し、プロセス・スタツク格納部
3内に格納されているプロセス・スタツク4の中
と任意の一つをスワツプ・スタツク6とし、更に
レデイ状態のプロセス・スタツク4間を順次リン
クするポインタにエリア判定フラグを付設して、
リンク先がプロセス・スタツク格納部3か、スワ
ツプ・バツフア部5かを表示させることにより解
決される。 〔作用〕 本発明に依るとプロセス制御監視部2はスワツ
プ・バツフア制御部7内に格納されているスワツ
プ・バツフア部5内のプロセス・スタツク4の情
報を使用して、使用すべきプロセス・スタツク4
をスワツプバツフア部5からスワツプ・スタツク
6に移した後実行し、終了後は再びスワツプ・バ
ツフア部5内の元の位置に戻すのでプロセス・ス
タツク4の必要が増加しても充分此れに対応出来
る。 〔実施例〕 第2図aは本発明に依るスワツプ・スタツク制
御方式の一実施例を示す図である。 第2図b〜dは夫々フローチヤートである。 図中、5はスワツプ・バツフア部、6はスワツ
プ・スタツク、7はスワツプ・バツフア制御部、
11は監視中プロセス・スタツクTailアドレス、
12はプロセス・スタツク・サイズ、13はプロ
セス・スタツク・プール、14はrunプロセス・
スタツク・ポインタ、15はreadyプロセス・ス
タツク列である。 説明を簡単化するため第2図aに於いては、プ
ロセス・スタツク格納部3に格納されているプロ
セス・スタツク数を10個とし、此の10番目のプロ
セス・スタツク410スワツプ・スタツク6として
利用する。従つてプロセス・スタツク格納部3に
はプロセス・スタツク41からプロセス・スタツ
ク49迄が格納され、スワツプ・バツフア部5に
はプロセス・スタツク410からプロセス・スタツ
ク4o迄が格納される。 即ち、本発明では使用されるプロセス・スタツ
ク41〜4oがプロセス・スタツク格納部3とスワ
ツプ・バツフア部5に分割・格納される。 プロセス制御監視部2には第2図aに示す様に
スパツプ・バツフア制御部7を設ける。 スワツプ・バツフア制御部7は次に列記される
5つの情報が格納される。 (a) プロセス・スタツク格納部3内プロセス・ス
タツク数N 第2図の例ではプロセス・スタツク数Nは9
個であり、此のプロセス・スタツク数Nにより
プロセス制御監視部2が指定するプロセス・ス
タツク4がプロセス・スタツク格納部3に在る
か、スワツプ・バツフア部5に在るかを判別す
るのに利用される。 (b) スワツプ・スタツク・アドレスA1 スワツプ・スタツク6のアドレスを示す。 (c) スワツプ・バツフア部5のアドレスA2 スワツプ・バツフア部5のアドレスを示し、
プロセス制御監視部2がスワツプ・バツフア部
5へアクセスする時使用する。 (d) スワツプ中スタツクのアドレスA3 スワツプ・バツフア部5からスワツプ・スタ
ツク6へスワツプインする時にセツトするスワ
ツプ・バツフア部5内のプロセス・スタツク4
のアドレスである。 (e) 制御フラグ アドレス情報の0ビツト目にあるエリア判定
フラグを制御フラグとし、スワツプするか、否
かを決定する。 各プロセス・スタツク4には下記情報が記載さ
れている。即ち、 a プロセス番号→各プロセス・スタツク4の一
連番号である。 b ステータス→プロセスの状態を示し、空き、
wait、ready、及びrunの4段階。 c NEXT−POINTER→次のプロセス・スタ
ツク4を示す。このアドレス情報においても、
前記と同様に0ビツト目(最下位ビツト)をエ
リア判定フラグとする。 d スタツク・モード・フラグ→プロセス・スタ
ツクのエリア判別用の情報であり、スタツク・
モード・フラグ0はプロセス・スタツク格納部
3内、スタツク・モード・フラグ1はスワツ
プ・バフツア部5内に在ることを夫々意味して
いる。 又従来のプロセス制御監視部2には第2図aに
示す様に下記5項目のデータが与えられている。 (1) 監視中プロセス・スタツクTailアドレス1
1此のアドレス11は監視中のプロセス・ウタ
ツク4の最終アドレスを示す。 (2) プロセス・スタツク・サイズ12 プロセス・スタツク4のサイズをバイト単位
で指定する。尚スワツプ・バツフア部5内に設
けるプロセス・スタツク4も同一サイズであ
る。 (3) プロセス・スタツク・プール13 初期設定処理後の空きプロセス・スタツク列
のHP/TPであり、先頭と最終のプロセス・
スタツク4のアドレスを必要とする時に使用す
る。 尚HPはhead pointer、TPはtail pointerで
ある。 (4) runプロセス・スタツク・ポインタ14 run状態のプロセス・スタツク4のアドレス
を示す。尚スワツプ・バツフア部5内プロセ
ス・スタツク4がrunしている時にはスワツ
プ・スタツク6のアドレスを示す。 又スワツプ中のプロセス・スタツク4はスワ
ツプバツフア制御部7にリンクされている。 (5) readyプロセス・スタツク列15 ready状態にあるプロセス・スタツク列の
HP/TPである。 以下本発明の動作フローを4段階に分けて詳細
を説明する。 〔1〕 redy状態のプロセスをrun状態にする処理−
第2図b参照。 (a) ready状態のプロセス・スタツク列15の
HPを取り出す。 (b) アドレス情報の0ビツト目にあるエリア判
定フラグの内容をチエツクする。スワツプ・
バツフア部5内の時はスワツプ・スタツク6
へスワツプ・インする。 (c) スワツプ・スタツク6からNEXT−
POINTERを取り出し、其の値をプロセス・
スタツク列15のHPにセツトする。 (d) 該プロセス・スタツク4内のステータスを
run状態に変更し、プロセス・スタツク・ア
ドレスをrunプロセス・スタツク・ポインタ
14にリンクする。 (e) 該プロセス・スタツク4のサービス・イン
処理を行う。 〔2〕 run状態のプロセスをready状態にする処理 run状態のプロセスをwait状態にする一過程
であり、ステータスをready状態にしてready
プロセス・スタツク列15へのリンク処理を追
加する。 〔3〕 run状態のプロセスをwait状態にする処理−
第2図c参照。 (a) runプロセス・スタツク・ポインタ14か
らプロセス・スタツク・アドレスを取り出
す。 (b) プロセス・スタツク4内のステータスを
wait状態に変更する。 (c) プロセス・スタツク4内のスタツク・モー
ド・フラグのチエツクを行い、スワツプ・ス
タツクの場合はスワツプ・バツフア部5内の
スワツプ・スタツク4へスワツプ・アウトす
る。 〔4〕 wait状態のプロセスをready状態にする処理
−第2図d参照。 此の処理はrun状態のプロセスからwait状態
のプロセスへのメツセージ送信処理で行われ
る。 (a) プロセス番号のチエツクの為、プロセス・
スタツク・プール13のTPの値を取り出す。 (b) TPのプロセス・スタツク・アドレスのエ
リア判別フラグの内容をチエツクする。 スワツプ・バツフア部5内の時は(g)へ移
る。 (c) 指定プロセス番号とTPのプロセス・スタ
ツクのプロセス番号を取り出し、両番号を比
較して、指定プロセス番号がTPプロセス・
スタツクのプロセス番号を越えていないこと
により指定プロセス番号の妥当性を確認す
る。 (d) 〔指定プロセス番号〕×〔プロセス・スタツ
ク・サイズ〕+〔プロセス・スツク・プール1
3のHPの値〕を算出して該プロセス・スタ
ツク・アドレスを求める。 (e) 該プロセスの指定しているエリアに情報を
セツトする。 (f) ステータスをready状態に変更してready
列の最終にリンクする。 (g) スワツプ・バツフア制御部7からスワツ
プ・バツフア部5のアドレスA2を取り出す。 (h) 指定プロセス番号の妥当性を前記(c)と同様
にして確認する。 (i) 指定プロセス番号とプロセス・スタツク格
納部3内のプロセス数Nをチエツクし、該プ
ロセス・スタツク4のエリアを調べる。プロ
セス・スタツク格納部3内(指定プロセス番
号が小さい時)の時は(d)へ移る。 (j) 〔指定プロセス番号−プロセス・スタツク
格納部3の内のプロセス数N〕×〔プロセス・
スタツク・サイズ〕を計算してスワツプ・バ
ツフア部5内のプロセス・スタツク4のアド
レスを求める。 (k) 該プロセス・スタツク4の指定しているエ
リアに情報をセツトする。 尚、そのエリアを指定しているアドレス値
について、次のような判定/変換処理が必要
になる。即ち、エリア・アドレス<スワツ
プ・スタツク・アドレスの場合には其のエリ
アはプロセス・スタツク格納部3内に在る。 又エリア・アドレス≧スワツプ・スタツ
ク・アドレスの場合には咲のエリアはスワツ
プ・アウトする前のプエロセス・スタツク格
納部3内のスワツプ・スタツク6のアドレス
を示している。 此の為スワツプ・アウト数のスワツプ・バ
ツフア部5内のアドレスは、 〔エリア・アドレス〕−〔スワツプ・スタツ
ク・アドレス〕+〔スワツプ・バツフア部5内
該プロセス・スタツク・アドレス〕から求め
られる。 (l) ステータスをready状態に変更し、ready
列の最終にリンクする。 〔発明の効果〕 以上詳細に説明した様に本発明によれば、スワ
ツプ・バツフア5内に任意の数のプロセス・スタ
ツクを収容することにより、プロセス個数の制限
を従来の2倍以上に増加でき、且つそのため構成
として、実行するプロセスのプロセス・スタツク
の内容は常に従来と同様のプロセス・スタツク格
納部に置くように制御し、又プロセス・スタツク
がプロセス・スタツク格納部にあるか否かの識別
は1ビツトのエリア判定フラグで行つて、プロセ
ス・スタツクの構造を従来のまゝとすることがで
きる等により、従来のプロセス・スタツク管理に
大幅な変更を加える必要無く、経済的な構成が可
能となると云う大きい効果がある。
[Summary] In the data processing system, a swap buffer unit 5 is provided to increase the number of processes and stacks, and the control method is the same as the conventional method in which the number of processes and stacks is limited. . [Industrial Application Field] The present invention relates to a swap stack control method,
In particular, this invention relates to a swap stack control method when a swap buffer is provided. [Prior art] Conventionally, in online business operations at banks, etc., data processing devices used as terminal controllers in data transmission systems are equipped with various tasks to support business operations, and these tasks have to be executed sequentially. Performs designated duties. Each of these tasks is composed of a plurality of processes (processing units). A process control monitoring section is provided inside the data processing device, and this process control monitoring section controls and operates various processes and monitors their operating states. Since the tasks executed by the data processing device may change, the process control monitoring section is initialized before the start of normal operation, and the total number of processes used during operation, process stack size, etc. are specified. FIG. 3 is a diagram showing an example of a conventional data processing device. In the figure, 1 is a data processing device, 2 is a process control monitoring section, 3 is a process stack storage section, and 4 is a data processing device.
(4 1 -4 o ) is the process stack. still,
The same symbols represent the same objects throughout the figures below. As shown in FIG. 3, the data processing apparatus 1 is comprised of a process control monitoring section 2 and a process stack storage section 3. The process stack storage unit 3 stores a plurality of process stacks 4 1 to 4 o . In order to execute a specified task, the process control monitoring unit 2 sequentially selects a desired process from among the process stacks 4 1 to 4 o stored in the process stack storage unit 3 and executes it. During the process, it monitors its operating status, and when execution is complete, it selects the next process and repeats these steps to execute the specified task. [Problem to be solved by the invention] When the processing device is composed of a so-called 16-bit microprocessor, the address range in the main memory that can be accessed by one instruction is limited to a narrow segment. As a result, the area of the process stack storage unit 3 that stores the process stack is also limited to one segment, and therefore the number of processes that can be provided at the same time is limited by the area allocated to the process stack within the segment. . Therefore, when tasks are changed during daily operations, and as a result, the size of the process/stack used increases or the number of processes/stack required increases, the capacity of the data processing device 1 becomes full. There was a problem in that it was not possible to accommodate all the processes and stacks of the tasks requested. [Means for solving the problem] As shown in the principle diagram of FIG. A data processing device 1 using a swap stack control method includes a process stack storage unit 3 that includes
A swap buffer section 5 in which process stack 4 is stored is added, an arbitrary one of the process stacks 4 stored in process stack storage section 3 is set as swap stack 6, and a ready state is added. An area determination flag is attached to the pointer that sequentially links between the processes and stacks 4 of
This problem can be solved by displaying whether the link destination is the process stack storage section 3 or the swap buffer section 5. [Operation] According to the present invention, the process control monitoring section 2 uses information about the process stack 4 in the swap buffer section 5 stored in the swap buffer control section 7 to determine the process stack to be used. 4
is executed after being moved from the swap buffer section 5 to the swap stack 6, and after completion it is returned to its original position in the swap buffer section 5, so that even if the need for the process stack 4 increases, it can be adequately handled. . Embodiment FIG. 2a is a diagram showing an embodiment of the swap stack control method according to the present invention. FIGS. 2b to 2d are flowcharts, respectively. In the figure, 5 is a swap buffer section, 6 is a swap stack, 7 is a swap buffer control section,
11 is the monitored process/stack tail address,
12 is the process stack size, 13 is the process stack pool, and 14 is the run process
Stack pointer 15 is a ready process stack column. To simplify the explanation, in FIG. 2a, the number of process stacks stored in the process stack storage unit 3 is assumed to be 10, and this 10th process stack 4 is referred to as 10 swap stacks 6. Make use of it. Therefore, the process stack storage section 3 stores process stacks 41 to 49 , and the swap buffer section 5 stores process stacks 410 to 4o . That is, in the present invention, the process stacks 41 to 4o used are divided and stored in the process stack storage section 3 and the swap buffer section 5. The process control monitoring section 2 is provided with a spout buffer control section 7 as shown in FIG. 2a. The swap buffer control section 7 stores the following five pieces of information. (a) Number of processes and stacks in process stack storage unit 3 N In the example of FIG. 2, the number of processes and stacks N is 9.
The process stack number N determines whether the process stack 4 specified by the process control monitoring unit 2 is in the process stack storage unit 3 or the swap buffer unit 5. used. (b) Swap stack address A1 Indicates the address of swap stack 6. (c) Address A of swap buffer section 5 2 Indicates the address of swap buffer section 5,
It is used when the process control monitoring section 2 accesses the swap buffer section 5. (d) Address A of the stack during swap 3 Process stack 4 in the swap buffer section 5 set when swapping in from the swap buffer section 5 to the swap stack 6
This is the address of (e) Control flag The area determination flag in the 0th bit of the address information is used as a control flag to determine whether or not to swap. The following information is written in each process stack 4. That is, a process number→sequence number of each process stack 4. b Status → Indicates the state of the process, free,
4 stages: wait, ready, and run. c NEXT-POINTER→Indicates the next process stack 4. Also in this address information,
Similarly to the above, the 0th bit (the least significant bit) is used as the area determination flag. d Stack mode flag → Information for determining the area of the process stack;
Mode flag 0 means that the process stack storage section 3 exists, and stack mode flag 1 means that it exists within the swap buffer section 5. Furthermore, the conventional process control monitoring section 2 is provided with data on the following five items, as shown in FIG. 2a. (1) Monitoring process/stack tail address 1
1 This address 11 indicates the final address of the process output 4 being monitored. (2) Process stack size 12 Specifies the size of process stack 4 in bytes. Incidentally, the process stack 4 provided in the swap buffer section 5 is also of the same size. (3) Process stack pool 13 This is the HP/TP of the free process stack row after initialization processing, and is the first and last process pool.
Used when the address of stack 4 is required. Note that HP is a head pointer and TP is a tail pointer. (4) Run process stack pointer 14 Indicates the address of process stack 4 in run state. Note that when the process stack 4 in the swap buffer unit 5 is running, the address of the swap stack 6 is shown. Also, the process stack 4 being swapped is linked to the swap buffer control section 7. (5) Ready process/stack column 15 Process/stack column in ready state
It is HP/TP. The operational flow of the present invention will be explained in detail in four steps below. [1] Processing to put a process in ready state into run state −
See Figure 2b. (a) Process stack column 15 in ready state
Take out HP. (b) Check the contents of the area determination flag in the 0th bit of the address information. Swap・
Swap stack 6 when in buffer section 5
Swap in to. (c) Swap stack 6 to NEXT−
Take out POINTER and process its value.
Set to HP in stack column 15. (d) Check the status within the process stack 4.
Change to the run state and link the process stack address to the run process stack pointer 14. (e) Perform service-in processing for the process stack 4. [2] Processing to change a process in run state to ready state This is a process to change a process in run state to wait state.
Add link processing to process stack column 15. [3] Processing to put a process in run state into wait state −
See Figure 2c. (a) Retrieve the process stack address from the run process stack pointer 14. (b) Status in process stack 4
Change to wait state. (c) Check the stack mode flag in the process stack 4, and if it is a swap stack, swap out to the swap stack 4 in the swap buffer section 5. [4] Processing to bring a wait state process into a ready state - see Figure 2 d. This process is performed by sending a message from a process in run state to a process in wait state. (a) To check the process number,
Retrieve the TP value of stack pool 13. (b) Check the contents of the area determination flag of the TP's process stack address. If it is within swap buffer section 5, move to (g). (c) Extract the specified process number and the process number of the TP process stack, compare both numbers, and check whether the specified process number is the TP process stack.
The validity of the specified process number is confirmed by checking that it does not exceed the process number of the stack. (d) [Specified process number] x [Process stack size] + [Process stack pool 1
HP value of 3] is calculated to obtain the process stack address. (e) Set information in the area specified by the process. (f) Change the status to ready
Link to the end of the column. (g) Take out the address A2 of the swap buffer section 5 from the swap buffer control section 7. (h) Check the validity of the designated process number in the same manner as in (c) above. (i) Check the designated process number and the number N of processes in the process stack storage unit 3, and check the area of the process stack 4. If the process is in the process stack storage unit 3 (when the designated process number is small), the process moves to (d). (j) [Specified process number - number of processes N in process stack storage 3] x [process
stack size] to find the address of the process stack 4 in the swap buffer section 5. (k) Set information in the area specified by the process stack 4. Note that the following determination/conversion process is required for the address value specifying the area. That is, if the area address<swap stack address, the area exists within the process stack storage unit 3. Further, in the case of area address≧swap stack address, the Saki area indicates the address of the swap stack 6 in the processor stack storage section 3 before swapping out. Therefore, the address in the swap buffer section 5 for the number of swap outs is obtained from [area address] - [swap stack address] + [process stack address in the swap buffer section 5]. (l) Change the status to ready and
Link to the end of the column. [Effects of the Invention] As described in detail above, according to the present invention, by accommodating an arbitrary number of process stacks in the swap buffer 5, the limit on the number of processes can be more than doubled compared to the conventional method. , and therefore, the configuration is such that the contents of the process stack of the executed process are always placed in the same process stack storage as before, and it is also possible to identify whether the process stack is in the process stack storage. This is done using a 1-bit area determination flag, and the structure of the process stack can be left as is, allowing for an economical configuration without the need for major changes to conventional process stack management. This has a huge effect.

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

第1図は本発明の原理図である。第2図aは本
発明に依るスワツプ・スタツク制御方式の一実施
例を示す図である。第2図b〜dは夫々フローチ
ヤートである。第3図は従来のデータ処理装置の
一例を示す図である。 図に於いて、1はデータ処理装置、2はプロセ
ス制御監視部、3はプロセス・スタツク格納部、
4(41〜4o)はプロセス・スタツク、5はスワ
ツプ・バツフア部、6はスワツプ・スタツク、7
はスワツプ・バツフア制御部、11は監視中プロ
セス・スタツクTailアドレス、12はプロセ
ス・スタツク・サイズ、13はプロセス・スタツ
ク・プール、14はrunプロセス・スタツク・ポ
インタ、15はreadyプロセス・スタツク列であ
る。
FIG. 1 is a diagram showing the principle of the present invention. FIG. 2a is a diagram illustrating one embodiment of the swap stack control scheme according to the present invention. FIGS. 2b to 2d are flowcharts, respectively. FIG. 3 is a diagram showing an example of a conventional data processing device. In the figure, 1 is a data processing device, 2 is a process control monitoring unit, 3 is a process stack storage unit,
4 (4 1 to 4 o ) is the process stack, 5 is the swap buffer section, 6 is the swap stack, 7
is the swap buffer control unit, 11 is the monitored process stack tail address, 12 is the process stack size, 13 is the process stack pool, 14 is the run process stack pointer, and 15 is the ready process stack column. be.

Claims (1)

【特許請求の範囲】 1 プロセス制御監視部2が、複数のプロセスの
状態を、各該プロセスごとのプロセス・スタツク
4に保持する制御情報によつて管理し、所定のレ
デイ状態の該プロセス・スタツクのリンクから順
次選択する該プロセス・スタツクの内容に従つて
対応する該プロセスを実行させる処理装置1にお
いて、 プロセス・スタツク格納部3と、スワツプ・バ
ツフア部5とを設け、 該プロセス・スタツク格納部3と該スワツプ・
バツフア部5とに、それぞれ所要個数の該プロセ
ス・スタツク4を設け、 該プロセス・スタツク格納部3に1個のスワツ
プ・スタツク6を設けて、該スワツプ・スタツク
を該プロセス・スタツク4と同一構成の領域と
し、 該レデイ状態の該プロセス・スタツク4間を順
次リンクするポインタにエリア判定フラグを付設
して、該ポインタのリンク先が該プロセス・スタ
ツク格納部3か、該スワツプ・バツフア部5かを
表示させ、 該プロセス制御監視部2は、該レデイ状態のプ
ロセスから選択する該プロセスを該実行状態にす
る場合に、該当プロセス・スタツクを指示する該
エリア判定フラグが該プロセス・スタツク格納部
3示す場合には、該プロセス・スタツク4を使用
して該プロセスを実行し、 該エリア判定フラグが該スワツプ・バツフア部
5を示す場合には、該スワツプ・バツフア部の該
プロセス・スタツク4の内容を、該スワツプ・ス
タツク6に複写し、該プロセスの実行中、該スワ
ツプ・スタツクを該プロセス・スタツクとして使
用させるように構成されていることを特徴とする
スワツプ・スタツク制御方式。
[Scope of Claims] 1. A process control monitoring unit 2 manages the states of a plurality of processes using control information held in a process stack 4 for each process, and monitors the process stacks in a predetermined ready state. A processing device 1 that executes a corresponding process according to the contents of the process stack sequentially selected from links is provided with a process stack storage section 3 and a swap buffer section 5, and the process stack storage section is provided with a swap buffer section 5. 3 and the swap
A required number of process stacks 4 are provided in each buffer unit 5, one swap stack 6 is provided in the process stack storage unit 3, and the swap stack has the same configuration as the process stack 4. An area determination flag is attached to a pointer that sequentially links between the process stacks 4 in the ready state, and it is determined whether the link destination of the pointer is the process stack storage unit 3 or the swap buffer unit 5. When the process selected from the processes in the ready state is placed in the execution state, the process control monitoring unit 2 determines whether the area determination flag indicating the process stack is set to the process stack storage unit 3. If the area determination flag indicates the swap buffer section 5, the process is executed using the process stack 4, and if the area determination flag indicates the swap buffer section 5, the contents of the process stack 4 of the swap buffer section are executed. A swap stack control method characterized in that the swap stack is configured to be copied to the swap stack 6 and to use the swap stack as the process stack during execution of the process.
JP15252986A 1986-06-28 1986-06-28 Swap stack control system Granted JPS638832A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP15252986A JPS638832A (en) 1986-06-28 1986-06-28 Swap stack control system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP15252986A JPS638832A (en) 1986-06-28 1986-06-28 Swap stack control system

Publications (2)

Publication Number Publication Date
JPS638832A JPS638832A (en) 1988-01-14
JPH0511328B2 true JPH0511328B2 (en) 1993-02-15

Family

ID=15542428

Family Applications (1)

Application Number Title Priority Date Filing Date
JP15252986A Granted JPS638832A (en) 1986-06-28 1986-06-28 Swap stack control system

Country Status (1)

Country Link
JP (1) JPS638832A (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7062043B2 (en) * 2020-09-21 2022-05-02 正 泳 李 Coffee drip bag

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5616248A (en) * 1979-07-17 1981-02-17 Matsushita Electric Ind Co Ltd Processing system for interruption

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5616248A (en) * 1979-07-17 1981-02-17 Matsushita Electric Ind Co Ltd Processing system for interruption

Also Published As

Publication number Publication date
JPS638832A (en) 1988-01-14

Similar Documents

Publication Publication Date Title
EP0240032A2 (en) Vector processor with vector data compression/expansion capability
US4771380A (en) Virtual vector registers for vector processing system
JPS6027964A (en) Memory access control circuit
JPH07500437A (en) data processing system
JPH0319986B2 (en)
JPS63303460A (en) Parallel processor
HU176777B (en) Device for reducing instruction execution time in computer of indirect addressed data memory
US5604842A (en) Fuzzy reasoning processor and method, and rule setting apparatus and method
US5692163A (en) Process system which generates sets of output data from sets of predetermined input data with duplicate data
JPH0511328B2 (en)
JPS62151940A (en) Register saving/return system
JP3145545B2 (en) Memory access device
US6085272A (en) Transmitting command block data using the lower address part of the address phase
JP3245488B2 (en) List vector processing device
JP2506591B2 (en) Auxiliary processor
JPS62186328A (en) Sort processing system
JPH04227589A (en) Device and method for allocating data flow program
JPH0368069A (en) Main storage control system
JPH0535507A (en) Central processing unit
JPH01116832A (en) Processing system for instruction of data flow control computer
JPH05241986A (en) Input/output instruction retrying system
JPH0319985B2 (en)
JPS63153655A (en) Memory access control system
JPH0573472A (en) Interruption processor
JPH01261763A (en) Dma transfer control device

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees