JPH02183849A - Invalidation processing system for address correspondence table - Google Patents

Invalidation processing system for address correspondence table

Info

Publication number
JPH02183849A
JPH02183849A JP1004291A JP429189A JPH02183849A JP H02183849 A JPH02183849 A JP H02183849A JP 1004291 A JP1004291 A JP 1004291A JP 429189 A JP429189 A JP 429189A JP H02183849 A JPH02183849 A JP H02183849A
Authority
JP
Japan
Prior art keywords
central processing
processing unit
correspondence
invalidation
instruction
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
JP1004291A
Other languages
Japanese (ja)
Inventor
Satoshi Sugiura
聡 杉浦
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 JP1004291A priority Critical patent/JPH02183849A/en
Publication of JPH02183849A publication Critical patent/JPH02183849A/en
Pending legal-status Critical Current

Links

Abstract

PURPOSE:To invalidate a correspondence table at a high speed by securing such a constitution where a processor received an inter-CPU instruction invalidates the correspondence table based on the contents of an invalidated address memory area as long as all action state display flags are kept in pause. CONSTITUTION:The action state display flags 170 corresponding to each CPU and an invalidated address memory area 108 for a correspondence table and added to a specific area of a main storage. The instructions which are carried out by the CPU include a correspondence invalidating instruction which invalidates a part or the whole of the correspondence stored in the correspondence table without stopping the operations of other CPUs and an inter-CPU instruction which instructs the pause of operations to other CPU. Then the correspondence is immediately invalidated with a correspondence invalidating instruction in case other CPUs have no possibility of application. Only in case other CPU have possibility of application, the invalidation is performed after the CPU are set in pause with use of an inter-CPU instruction. As a result, the executing time is shortened for a correspondence invalidating instruction and the overall system process efficiency is improved.

Description

【発明の詳細な説明】 〔概要〕 複数の中央処理装置が共通にアクセスする主記憶装置と
、論理アドレスと実アドレスとの対応を格納する対応表
を有する情報処理システムに関し、対応表の無効化を早
く行うことを目的とし、前記主記憶装置の特定領域に、
各中央処理装置対応の動作状態表示フラグと、前記対応
表の無効化アドレス記憶領域とを設け、 他の中央処理装置の処理を停止させることなく前記対応
表を無効化する対応無効化命令と、他の中央処理装置に
対して休止を指示する中央処理装置間命令とを定義する
とともに、 各中央処理装置では、他の中央処理装置で使用可能性の
ない領域に関する対応表の内容を無効化する場合には、
前記対応無効化命令を実行し、他の中央処理装置でも使
用可能性のある領域に関する対応表の内容を無効化する
場合には、前記無効化アドレス記憶領域に無効化すべき
アドレスに関する情報を格納し、自中央処理装置を休止
させて前記対応するフラグを停止状態に表示するととも
に、前記中央処理装置間命令を他の所定の中央処理装置
に送出し、 かつ、当該命令を受けた他の処理装置では、自’Wt8
を休止させて対応するフラグを休止状態に表示するとと
もに、動作状態表示フラグが全て休止状態でなければ、
前記装置間命令を更に他の所定の中央処理装置に送出し
、動作状態表示フラグが全て休止状態となっていれば、
前記無効化アドレス記憶領域の内容に従って対応表を無
効化する。
[Detailed Description of the Invention] [Summary] Regarding an information processing system that has a main memory that is commonly accessed by a plurality of central processing units and a correspondence table that stores correspondence between logical addresses and real addresses, invalidation of the correspondence table is provided. For the purpose of quickly performing
a correspondence invalidation instruction that provides an operating state display flag corresponding to each central processing unit and an invalidation address storage area for the correspondence table, and invalidates the correspondence table without stopping the processing of other central processing units; In addition to defining an inter-central processing unit command that instructs other central processing units to pause, each central processing unit invalidates the contents of the correspondence table regarding areas that cannot be used by other central processing units. in case of,
When executing the correspondence invalidation instruction to invalidate the contents of the correspondence table regarding areas that may be used by other central processing units, information regarding the address to be invalidated is stored in the invalidation address storage area. , suspends its own central processing unit and displays the corresponding flag in a stopped state, and sends the inter-central processing unit command to another predetermined central processing unit, and the other processing unit that has received the command Then, my 'Wt8
and display the corresponding flag in the dormant state, and if all the operating status display flags are not in the dormant state,
If the inter-device command is further sent to another predetermined central processing unit, and all the operating state display flags are in the dormant state,
The correspondence table is invalidated according to the contents of the invalidation address storage area.

〔産業上の利用分野〕[Industrial application field]

本発明は、動的アドレス変換に用いる論理アドレスと実
アドレスの対応を格納しているアドレス対応表(ページ
・テーブルなど)のエントリの無効化方式に関する。
The present invention relates to a method for invalidating entries in an address correspondence table (such as a page table) that stores the correspondence between logical addresses and real addresses used in dynamic address translation.

〔従来の技術〕[Conventional technology]

複数の中央処理装置(以下、CPUと略す)が共通の主
記憶装置(以下、MSUと略す)を使用する情報処理シ
ステムでは、従来、あるCPUが論理アドレスとMSU
上の実アドレスとの対応を格納しているページ・テーブ
ル(以下、PTと略す)内の、ページ・テーブル・エン
トリ(以下、PTEと略す)を無効化する命令はl f
li類しかなく、その命令の実行の際には、他のCPU
が行っている処理を全て停止してから、前記PTEを無
効にしていた。これは、他のCPUがそのP T [!
In an information processing system in which multiple central processing units (hereinafter referred to as CPUs) use a common main storage unit (hereinafter referred to as MSU), a certain CPU conventionally stores a logical address and an MSU.
The instruction to invalidate the page table entry (hereinafter abbreviated as PTE) in the page table (hereinafter abbreviated as PT) that stores the correspondence with the above real address is l f
There is only the li class, and when executing the instruction, other CPUs
The PTE was disabled after stopping all processes being performed by the PTE. This means that other CPUs can use that P T [!
.

に対応するアドレスのデータを使用している可能性があ
る為である。又、その時には全CPUについて、前記P
TEに対応するトランスレーション・ルックアサイド・
バッファ(以下、TLBと略す)のエントリも無効化さ
れる。
This is because there is a possibility that the data of the address corresponding to is being used. Also, at that time, for all CPUs, the P
Translation lookaside for TE
Entries in the buffer (hereinafter abbreviated as TLB) are also invalidated.

従って、前記CPUの処理を停止するのは命令の切れ目
、つまり、現命令の実行を終了し、次の命令を実行する
前の状態で停止する。
Therefore, the processing of the CPU is stopped at the end of an instruction, that is, after the execution of the current instruction is finished and before the next instruction is executed.

第3図は従来のPTEを無効化する為の装置のブロック
図、第4図はPTE無効化命令(以下、I PTE命令
と略す)の処理フローチャートである。
FIG. 3 is a block diagram of a conventional device for disabling PTE, and FIG. 4 is a processing flowchart of a PTE disabling command (hereinafter abbreviated as IPTE command).

第3図中、31はオペレーティング・システム(以下、
O3と略す)、32は命令解析部、33は指定データチ
ェンク部、34は他CPU停止要求制御部、35はエン
トリ無効制御部、36は1゛LB、37はMSIJ、3
8は主記憶制御装置(以下、MCUと略す)、39はC
PU間コミュニケーション部、301〜304はCPU
、307はl) Tである。CPUは何台付いても良い
が、ここでは、4台のc p Uから構成されたシステ
ムとする。
In Figure 3, 31 is the operating system (hereinafter referred to as
32 is an instruction analysis unit, 33 is a specified data change unit, 34 is another CPU stop request control unit, 35 is an entry invalidation control unit, 36 is 1゛LB, 37 is MSIJ, 3
8 is a main memory control unit (hereinafter abbreviated as MCU), 39 is C
Inter-PU communication section, 301 to 304 are CPUs
, 307 is l) T. Although any number of CPUs may be installed, here, it is assumed that the system is composed of four CPUs.

以下、図面に従って、従来の技術を説明する。The conventional technology will be described below with reference to the drawings.

PTHの無効化を要する事象が生じると、0331から
I PTE命令が命令解析部32に発行される。
When an event requiring invalidation of PTH occurs, an IPTE command is issued to the command analysis unit 32 from 0331.

前記命令解析部32で[PTE命令が解析されると、指
定データチエツク部33で、前記命令に格納されている
無効化されるページのアドレスが正しいものかどうかチ
エツクされる(第4図フローチャート図41参照)。こ
こでは、前記アドレスがページの先頭を指しているかど
うかチエツクされる。
When the PTE instruction is analyzed by the instruction analysis unit 32, the designated data check unit 33 checks whether the address of the page to be invalidated stored in the instruction is correct (see the flowchart in FIG. 4). 41). Here, it is checked whether the address points to the top of the page.

次いで、他CPU停止要求制御部34は、他のcPU3
02〜304を停止させる為に、MCU38に設けられ
たCPU間コミュニケーション部を通じて、他のCPU
302,303,304に停止要求を出す(第4図フロ
ーチャート図42参照)。
Next, the other CPU stop request control unit 34
In order to stop CPUs 02 to 304, other CPUs
302, 303, and 304 (see flowchart 42 in FIG. 4).

その後、CPU302,303,304から停止の通知
あったかどうか確認される(第4図フローチャート図4
2参照)。この時、前記各CPUは、現命令を終了し、
次の命令を実行する前で停止する。
After that, it is checked whether there is a notification of stoppage from the CPUs 302, 303, and 304 (Fig. 4 Flowchart
(see 2). At this time, each CPU finishes the current instruction,
Stop before executing the next instruction.

全てのCPUが停止した後、エントリ無効制御部35は
Pr2O3内のI PTE命令で指定されたPTEを無
効化する。更に、各CPU301〜304では、前記各
CPUが無効化したPTEに対応するTLB内のエント
リも無効化される。
After all CPUs have stopped, the entry invalidation control unit 35 invalidates the PTE specified by the IPTE instruction in Pr2O3. Furthermore, in each of the CPUs 301 to 304, the entry in the TLB corresponding to the PTE that has been invalidated by each CPU is also invalidated.

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

従来、複数のCPUが共通のMSUを使用する情報処理
システムに於いて、エントリを無効化する時は、必ず全
CPUを停止した後に、無効化処理をしていた。
Conventionally, in an information processing system in which a plurality of CPUs use a common MSU, when an entry is invalidated, all CPUs are always stopped before the invalidation process is performed.

これは、指定したPTEに対応するアドレスのデータを
、他のCPUが使用している可能性があるからで、その
CPUでの命令実行中にPTEが無効化されてしまうと
、その実行中命令は異常終了となって処理が中断されて
しまう場合があるためである。
This is because there is a possibility that another CPU is using the data at the address corresponding to the specified PTE, and if the PTE is invalidated while that CPU is executing an instruction, the This is because the process may end abnormally and be interrupted.

しかし、CPUが実行している命令によっては相当に長
時間を要する命令もあり、その命令が終了する迄、他の
CPUが待たされる事になる。更に、CPUの数が増え
ると、全CPUが停止するのに長時間を要する事になる
However, depending on the instructions being executed by the CPU, some instructions take a considerable amount of time, and other CPUs are forced to wait until the instructions are completed. Furthermore, if the number of CPUs increases, it will take a long time for all CPUs to stop.

近年、情報処理システムの処理実行の速度を向上するこ
とが強く求められており、そのため、PTHの無効化処
理を速(行う事は重要視されている。従って、本発明は
、−E記の問題点を悉く解決し、PTエントリの無効化
処理の高速化する手段を提供するものである。
In recent years, there has been a strong demand for improving the processing execution speed of information processing systems, and therefore, it is important to perform PTH invalidation processing quickly.Therefore, the present invention This method solves all problems and provides a means for speeding up the invalidation process of PT entries.

〔課題を解決する為の手段〕[Means to solve problems]

主記憶装置の特定領域に、各中央処理装置対応の動作状
態表示フラグと、前記対応表の無効化アドレス記憶領域
とを設け、 前記中央処理装置で実行される命令として、他の中央処
理装置の処理を停止させることなく前記対応表に格納さ
れている前記対応の一部又は全てを無効化する対応無効
化命令と、他の中央処理装置に対して動作停止を指示す
る中央処理装置間命令とを定義するとともに、 各中央処理装置では、他の中央処理装置で使用可能性の
ない領域に関する対応表の内容を無効化する場合には、
前記対応無効化命令を実行し、他の中央処理装置でも使
用可能性のある領域に関する対応表の内容を無効化する
場合には、前記無効化アドレス記憶領域に無効化すべき
アドレスに関する情報を格納し、自中央処理装置を休止
させて前記対応する動作状態表示フラグを停止状態に表
示するとともに、前記中央処理装置間命令を他の所定の
中央処理装置に送出し、 かつ、当該中央処理装置間命令を受けた他の中央処理装
置では、自中央処理装置を休止させて前記対応する動作
状態表示フラグを休止状態に表示するとともに、動作状
態表示フラグが全て休止状態でなければ、前記中央処理
装置間命令を更に他の所定の中央処理装置に送出し、動
作状態表示フラグが全て休止状態となっていれば、前記
無効化アドレス記憶領域の内容に従って対応表を無効化
する。
A specific area of the main storage device is provided with an operating state display flag corresponding to each central processing unit and an invalidation address storage area of the correspondence table, and as an instruction executed by the central processing unit, an operation status display flag corresponding to each central processing unit is provided. A correspondence invalidation instruction that invalidates some or all of the correspondence stored in the correspondence table without stopping processing, and an inter-central processing unit instruction that instructs another central processing unit to stop operation. In addition, in each central processing unit, if you want to invalidate the contents of the correspondence table regarding areas that cannot be used by other central processing units,
When executing the correspondence invalidation instruction to invalidate the contents of the correspondence table regarding areas that may be used by other central processing units, information regarding the address to be invalidated is stored in the invalidation address storage area. , suspending its own central processing unit and displaying the corresponding operating state display flag in a stopped state, and sending the inter-central processing unit command to another predetermined central processing unit, and transmitting the inter-central processing unit command The other central processing unit that has received the request suspends its own central processing unit and displays the corresponding operating state display flag in the inactive state, and if all the operating state display flags are not in the inactive state, the other central processing unit The instruction is further sent to another predetermined central processing unit, and if all the operating state display flags are in the dormant state, the correspondence table is invalidated according to the contents of the invalidation address storage area.

〔作用) ページテーブル・エントリの無効化を要する事象にも幾
つか種類があり、その種類によっては当該無効化するペ
ージが他の中央処理装置で使用されている可能性が無い
場合もある。従って、他の中央処理装置で使用可能性の
ない場合には前記対応無効化命令により、他の中央処理
装置を休止させる事なく直ちに無効化を行い、 他の中央処理装置で使用可能性ある場合にのみ中央処理
装置間命令を使用して全中央処理装置を休止状態にして
から無効化を行うようにする。
[Operation] There are several types of events that require invalidation of a page table entry, and depending on the type, there may be no possibility that the page to be invalidated is being used by another central processing unit. Therefore, if there is no possibility of use in other central processing units, the corresponding invalidation command is used to immediately invalidate the other central processing units without stopping the other central processing units, and if there is possibility of use in other central processing units, In this case, all central processing units are put into a hibernation state using inter-central processing unit instructions, and then invalidation is performed.

これにより、対応表無効化処理の平均的な実行時間は著
しく短縮される。
As a result, the average execution time of the correspondence table invalidation process is significantly shortened.

〔実施例] 第1図は、本発明の一実施例のブロツク図、第2図は実
施例の動作を説明するフローチャート、第5図は031
1の命令発行の説明図である。
[Embodiment] Fig. 1 is a block diagram of an embodiment of the present invention, Fig. 2 is a flowchart explaining the operation of the embodiment, and Fig. 5 is a 031
FIG. 1 is an explanatory diagram of issuing a first instruction.

第1図中、11はO8,12は命令解析部、13は指定
データチエツク部、14は他CPU停止要求制御部、1
5はエントリ無効制御部、16はTLB、17はMSU
、18はMCU、19はCPU間コミュニケーション部
、101−103はCPU、107はPT、10Bは無
効化すべきPTのアドレスに関する情報を記憶する無効
化アドレス記憶領域、170は各CPUの動作状態を表
示するフラグで171〜173は夫々cputot〜1
03に対応するもの、109はPTE無効化を要するこ
とになった原因を識別するためのポインタ領域である。
In FIG. 1, 11 is an O8, 12 is an instruction analysis section, 13 is a specified data check section, 14 is another CPU stop request control section, 1
5 is entry invalidation control unit, 16 is TLB, 17 is MSU
, 18 is an MCU, 19 is an inter-CPU communication unit, 101 to 103 are CPUs, 107 is a PT, 10B is an invalidation address storage area for storing information regarding the address of the PT to be invalidated, and 170 is an indication of the operating status of each CPU. The flags 171 to 173 are cputot to 1 respectively.
03, 109 is a pointer area for identifying the cause of requiring PTE invalidation.

−a的に、PTHの無効化を要する事象としては以下の
3通りがある。
-a-wise, there are the following three types of events that require invalidation of PTH.

j)ユーザが仮想領域を返却し、対応する実ページが不
要になる場合。これは、ジョブ/タスクが終了し、実メ
モリに割当てた領域を解放する場合である。
j) When the user returns the virtual area and the corresponding real page is no longer needed. This is the case when the job/task ends and the allocated area in real memory is released.

11)ジョブ全体を外部データセットに追い出す場合(
スワップ・アウトの場合)。これは、あるジョブが当分
実行される事の無い時に、前記ジョブで使用するメモリ
を外部データセントに格納しておく場合で、端末等の為
に割当てた実メモリが暫く使用されない時、ページ・デ
ータセット(10−DASD等)に記憶しておく場合で
ある。
11) When expelling the entire job to an external dataset (
swap out). This is a case where the memory used by a certain job is stored in an external data center when it will not be executed for a while, and when the real memory allocated for a terminal etc. will not be used for a while, the page This is a case where the information is stored in a data set (10-DASD, etc.).

111)実ページが不足し、余り参照されない実ページ
を強制的にページアウトする場合である。これは、タス
クがメモリを参照しようとしたが、実メモリにそのペー
ジが無い状態の時(ページ・ボルト)に、強制的にある
ページを外部記憶装置に記憶し、他のデータを前記ペー
ジが位置した実メモリ上に持ってくる場合である。
111) This is a case where there is a shortage of real pages and real pages that are rarely referenced are forcibly paged out. This means that when a task attempts to reference memory, but the page does not exist in real memory (page vault), a certain page is forcibly stored in the external storage device, and other data is This is a case where it is brought onto the located real memory.

上記の3つケースのうち、i及び11の場合には他のC
PUが同一のページを利用している可能性は無い。何故
ならば、同一のジョブ/タスクを複数のCPUで平行し
て処理することはないからである。
Among the three cases above, in case of i and 11, other C
There is no possibility that PUs are using the same page. This is because the same job/task is not processed in parallel by multiple CPUs.

他のCPLIが使用しているページを無効化する可能性
があるのはiiの場合のみであり、この場合のみ他のC
PUの処理を停止した後に無効化する必要がある。
It is only in case ii that there is a possibility of invalidating pages used by other CPLIs, and only in this case
It is necessary to invalidate it after stopping PU processing.

本発明では、上記IPTE命令として他のCPUを停止
処理することなく、直ちにPTEの無効化を行う命令と
し、上記i −iiの場合にはこのIPTE命令を使用
することとし、上記jjの場合には従来より公知である
中央処理装置間命令、いわゆるS I G P (SI
Gnal Processor)命令を利用して他のC
PUを休止させてから無効化処理を行う様にする。
In the present invention, the above IPTE instruction is an instruction to immediately invalidate the PTE without stopping other CPUs, and this IPTE instruction is used in the above cases i-ii, and in the above jj case. is a conventionally known inter-central processing unit instruction, so-called SIGP (SI
Gnal Processor) instructions to create other C
The invalidation process is performed after the PU is suspended.

第5図は0811の命令発行の説明図である。FIG. 5 is an explanatory diagram of issuing the 0811 command.

上記1xijの各事象の制御は03II自信が行うもの
であり、いずれの事象なのかは03II自信が当然に把
握可能である。以下、その把握方法の一例を示す。
Each of the above 1xij events is controlled by 03II itself, and it is naturally possible for 03II itself to understand which event it is. An example of how to understand this is shown below.

03IIは常に、各タスクやジョブ等の状況を監視して
いる。そして、O8にはi検出ルーチン51、ii検出
ルーチン52.iii検出ルーチン53を含んでおり、
上記i、  ii、  iiiの各場合を検出する。前
記i、  ii、  iiiの場合の何れかが検出され
たら、MSU17 (第1図参照)の、ポインタ108
に、書き込みを行う。i又は11が検出された場合は、
前記ポインタ109に“0″を書き込むもの(54,5
5)とする。また、1iが検出された場合は、“1”を
書き込むもの(56)とする。その後、各ルーチンはI
 PTE処理ルーチン57を起動する。前記I PTE
処理ルーチン57では、MSU17内のポインタ109
を読み取り(58)、前記内容が“O”の時には前記I
 PTE命令を発行(60)L、“1”の時には5IG
P処理ルーチンを起動する(61)。
03II constantly monitors the status of each task, job, etc. Then, O8 includes an i detection routine 51, an ii detection routine 52. iii detection routine 53;
Each of cases i, ii, and iii above is detected. When any of the cases i, ii, and iii is detected, the pointer 108 of the MSU 17 (see FIG. 1)
Write to . If i or 11 is detected,
Writes “0” to the pointer 109 (54, 5
5). If 1i is detected, "1" is written (56). Then each routine
The PTE processing routine 57 is activated. Said I PTE
In the processing routine 57, the pointer 109 in the MSU 17
is read (58), and when the content is “O”, the I
Issue PTE command (60) L, 5IG when “1”
The P processing routine is activated (61).

以下、第1図及び第2図を参照する。Reference will now be made to FIGS. 1 and 2.

前記I PTE命令または5IGP命令は、先ずCPU
l0I内の命令解析部12に入力される。
The I PTE instruction or the 5 IGP instruction is first executed by the CPU.
The command is input to the instruction analysis unit 12 in 10I.

前記命令解析部12で、I PTE命令である事を検出
すると、指定データチエツク部13にて命令に格納され
ている無効化されるアドレスが正しいものかどうかチエ
ツクされる(第2図(C)フローチャート211)。こ
こでは、前記アドレスがページの先頭を指しているか否
かチエツクされる。
When the instruction analysis section 12 detects that it is an IPTE instruction, the specified data check section 13 checks whether the address to be invalidated stored in the instruction is correct (see FIG. 2(C)). Flowchart 211). Here, it is checked whether the address points to the top of the page.

その後、エントリ無効制御部15は、MCUI8を介し
て、MSU17内のページテーブル107の前記I P
TE命令で指定されたPTEを無効化する。また、エン
トリ無効制御部15は、CPU間コミュニケーション部
19を通じて、各CPUにTLBエントリ無効の要求を
出す。更に各CPUI O1〜103では、各CPUの
TLB内の前記P T、 Eに対応するエントリを無効
化する(第2図(C)フローチャー)212)。
Thereafter, the entry invalidation control unit 15 controls the I P of the page table 107 in the MSU 17 via the MCUI 8.
Invalidates the PTE specified by the TE command. In addition, the entry invalidation control unit 15 issues a TLB entry invalidation request to each CPU through the inter-CPU communication unit 19. Furthermore, in each CPUI O1 to 103, the entries corresponding to the above-mentioned P T and E in the TLB of each CPU are invalidated (FIG. 2 (C) flowchart 212).

第2図(a)は5IGP処理ルーチンのフローチャート
であり、まずMSU17中のフラグ170を調べ(21
)、オール“°0”°でなければ、他のCPUが既に無
効化の処理を開始している可能性があるため、オール°
“0°°になるまで待つ。もしオール“O++であれば
自CPUに対応するフラグに“l”を書き込み(22)
、無効化アドレス領域108に無効化すべきPTEに関
する情報を格納しく23)、他の所定のCPUに対して
前記5IGP命令を、CPU間コミュニケーション部1
9を介して送出する(24)。尚、どのCPUがどのC
PUに送出するかは、予め所定の関係に決められている
ものとする。その後、当該CPUはフラグ170がオー
ル“°0゛°になるまで待ち(25)、オール“0゛°
になったらPTE無効化処理は終了したものとみなして
、次の処理に進む。
FIG. 2(a) is a flowchart of the 5IGP processing routine. First, the flag 170 in the MSU 17 is checked (21
), if it is not all “°0”°, there is a possibility that another CPU has already started the invalidation process, so all
Wait until it reaches "0°°. If all "O++", write "l" to the flag corresponding to the own CPU (22)
, stores information regarding the PTE to be invalidated in the invalidation address area 108 (23), and sends the 5 IGP command to another predetermined CPU.
9 (24). Furthermore, which CPU is which C?
It is assumed that whether or not to send the data to the PU is determined in advance according to a predetermined relationship. After that, the CPU waits until the flag 170 becomes all “0°” (25), and
When this happens, it is assumed that the PTE invalidation process has ended, and the process proceeds to the next process.

第2図(b)は、5IGP命令を受けた側のCPUでの
処理フローチャートである。5IGP命令とはあるCP
Uが他のCPUに対して、リセット、IPL、停止、な
どの処理を指示するための命令の総称であり、本発明で
はこの5IGP命令の一種として、第2図(b)の如き
機能を持つ命令を定義する。即ち、5IGP命令を受け
たCPUでは、まず外部割込みを生じる(201)。本
発明での5IGP命令の場合には、上記フラグ170の
自CPU対応ビットに°“1”°を書き込み(202)
、次いで該フラグ170が、オール°“1 ”か否か調
べ(203)、オール“l 11であれば上記無効化ア
ドレス領域108の内容に従ってPTEを無効化しく2
04Lその後前記フラグ!70を全て“0″゛にクリア
する(205)。もしも、オール°゛l゛″でなければ
他の所定のCPUに対して前記と同様に5IGP命令を
送出しく206)、フラグ170がオール゛0゛°にな
るまで待つ。
FIG. 2(b) is a processing flowchart in the CPU receiving the 5IGP instruction. 5. What is IGP command?
U is a general term for instructions for instructing other CPUs to perform processing such as reset, IPL, and stop, and in the present invention, as a type of these 5 IGP instructions, it has the function as shown in FIG. 2(b). Define the command. That is, the CPU that receives the 5IGP instruction first generates an external interrupt (201). In the case of the 5IGP instruction according to the present invention, write ``1'' to the bit corresponding to the own CPU in the flag 170 (202).
Then, it is checked whether the flags 170 are all "1" (203), and if all "11", the PTE is invalidated according to the contents of the invalidation address area 108 (203).
04L Then the flag! 70 are all cleared to "0" (205). If the flags 170 are all "0", the 5IGP command is sent to other predetermined CPUs in the same manner as described above (206), and the CPU waits until the flags 170 are all "0".

尚、このようにフラグ170がオール“0″゛になるま
で待っている状態を、休止状態と称する。
The state of waiting until the flags 170 become all "0" in this manner is called a dormant state.

以上から判る通り、本発明では上記j11の場合には、
PTE無効化を必要としたCPU自身は、5IGP命令
によって他のCPUを休止させるのみで無効化の処理は
せず、最後に5IGP命令を受けたCPUが無効化処理
を実行する。これは、当該無効化を必要としたCPU自
身が、他のCPUが全て休止ないしは停止した事を確認
して、無効化処理をする場合に比べて、CPU間での遺
り取り(これには相当の時間を要する)が少なくて済み
、無効化処理の時間短縮になる利点がある。
As can be seen from the above, in the present invention, in the case of j11,
The CPU itself that requires PTE invalidation only suspends other CPUs using the 5IGP instruction, but does not perform any invalidation processing, and the CPU that finally receives the 5IGP instruction executes the invalidation processing. This is because the CPU that requires the invalidation itself confirms that all other CPUs have paused or stopped and then performs the invalidation process. This has the advantage of shortening the time required for invalidation processing.

上記実施例では、ページテーブル・エントリの無効化を
例に説明したが、セグメントテーブルの無効化にも適用
できることは当然である。又特にO3における上記1〜
j:の各場合の判定の仕方は他にも多くの方法が考えら
れ、本発明は上記の判定方法に限定されるものではない
In the above embodiment, invalidation of a page table entry was explained as an example, but it is of course applicable to invalidation of a segment table. In particular, the above 1 to 3 in O3
Many other methods can be considered for determining each case of j:, and the present invention is not limited to the above-mentioned determination method.

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

本発明によれば、対応表の対応無効化命令を実行する際
に、必要な場合のみ他のCPUの処理を停+トするので
、対応無効化命令の実行時間そのものが短縮されるとと
もに、他のCPUが1トめられる場合が減少するので、
システム全体の処理効率が著しく向上する。
According to the present invention, when executing the correspondence invalidation instruction in the correspondence table, the processing of other CPUs is stopped only when necessary, so the execution time of the correspondence invalidation instruction itself is shortened, and Since the number of cases in which the CPU of
The processing efficiency of the entire system is significantly improved.

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

第1図は本発明の一実施例のブロック図、第2図は実施
例の処理フローチャート、第3図は従来のPTHの無効
化する為の装置のブロック図、第4図は従来のIPTE
命令のフローチャート、第5図は0811の命令発行の
説明図である。 l ・ ・ ・O3 2・・・命令解析部 3・・・指定データチエツク部 4・・・他CPU停止要求制御部 5・・・エントリ無効制御部 6・・・TLB 7・・・MSU 8・・・MCU 9・・・CPU間コミュニケーション部O1〜103・
・・CPU O7・・ページテーブル 08・・無効化アドレス領域 09・・ポインタ 70・・動作状態表示フラグ (a) 天貸和1めフローチャート *z12] 天万計イ列めプロ・ツク図 zprrQ令 (C) 実施例カフローチャート 第2 図
Fig. 1 is a block diagram of an embodiment of the present invention, Fig. 2 is a processing flowchart of the embodiment, Fig. 3 is a block diagram of a conventional device for disabling PTH, and Fig. 4 is a conventional IPTE
The instruction flowchart, FIG. 5, is an explanatory diagram of the issuance of the 0811 instruction. l ・ ・ ・O3 2...Instruction analysis unit 3...Specified data check unit 4...Other CPU stop request control unit 5...Entry invalidation control unit 6...TLB 7...MSU 8.・・MCU 9・・・CPU communication section O1~103・
...CPU O7...Page table 08...Invalidated address area 09...Pointer 70...Operating status display flag (a) 1st flowchart *z12] Tenmankei first row pro-tsuku diagram zprrQ command (C) Example cuff flow chart Figure 2

Claims (1)

【特許請求の範囲】 複数の中央処理装置(101〜104)と、前記各中央
処理装置が共通にアクセスする主記憶装置(17)と、 仮想空間に対応する論理アドレスと前記主記憶装置上の
実アドレスとの対応を格納する対応表(107)を有し
、 前記中央処理装置が主記憶装置にアクセスする際に、前
記対応表を索引して論理アドレスを実アドレスに変換す
る情報処理システムにおいて、前記主記憶装置の特定領
域に、各中央処理装置対応の動作状態表示フラグ(17
0)と、前記対応表の無効化アドレス記憶領域(108
)とを設け、 前記中央処理装置で実行される命令として、他の中央処
理装置の処理を停止させることなく前記対応表に格納さ
れている前記対応の一部又は全てを無効化する対応無効
化命令と、他の中央処理装置に対して動作休止を指示す
る中央処理装置間命令とを定義するとともに、 各中央処理装置では、他の中央処理装置で使用可能性の
ない領域に関する対応表の内容を無効化する場合には、
前記対応無効化命令を実行し、他の中央処理装置でも使
用可能性のある領域に関する対応表の内容を無効化する
場合には、前記無効化アドレス記憶領域に無効化すべき
アドレスに関する情報を格納し、自中央処理装置を休止
させて前記対応する動作状態表示フラグを停止状態に表
示するとともに、前記中央処理装置間命令を他の所定の
中央処理装置に送出し、 かつ、当該中央処理装置間命令を受けた他の中央処理装
置では、自中央処理装置を休止させて前記対応する動作
状態表示フラグを休止状態に表示するとともに、動作状
態表示フラグが全て休止状態でなければ、前記中央処理
装置間命令を更に他の所定の中央処理装置に送出し、動
作状態表示フラグが全て休止状態となっていれば、前記
無効化アドレス記憶領域の内容に従って対応表を無効化
することを特徴とするアドレス対応表無効化処理方式。
[Scope of Claims] A plurality of central processing units (101 to 104), a main memory (17) that is commonly accessed by each of the central processing units, and a logical address corresponding to a virtual space and a memory on the main memory. In an information processing system, the information processing system has a correspondence table (107) that stores correspondences with real addresses, and converts logical addresses into real addresses by indexing the correspondence table when the central processing unit accesses a main storage device. , an operating state display flag (17) corresponding to each central processing unit is stored in a specific area of the main memory
0) and the invalidation address storage area (108
), and as an instruction executed by the central processing unit, a correspondence invalidation that invalidates part or all of the correspondence stored in the correspondence table without stopping the processing of other central processing units. In addition to defining commands and inter-central processing unit commands that instruct other central processing units to suspend operation, each central processing unit defines the contents of a correspondence table regarding areas that cannot be used by other central processing units. If you want to disable the
When executing the correspondence invalidation instruction to invalidate the contents of the correspondence table regarding areas that may be used by other central processing units, information regarding the address to be invalidated is stored in the invalidation address storage area. , suspending its own central processing unit and displaying the corresponding operating state display flag in a stopped state, and sending the inter-central processing unit command to another predetermined central processing unit, and transmitting the inter-central processing unit command The other central processing unit that has received the request suspends its own central processing unit and displays the corresponding operating state display flag in the inactive state, and if all the operating state display flags are not in the inactive state, the other central processing unit Address correspondence characterized in that the instruction is further sent to another predetermined central processing unit, and if all the operation state display flags are in a dormant state, the correspondence table is invalidated according to the contents of the invalidation address storage area. Table invalidation processing method.
JP1004291A 1989-01-11 1989-01-11 Invalidation processing system for address correspondence table Pending JPH02183849A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP1004291A JPH02183849A (en) 1989-01-11 1989-01-11 Invalidation processing system for address correspondence table

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP1004291A JPH02183849A (en) 1989-01-11 1989-01-11 Invalidation processing system for address correspondence table

Publications (1)

Publication Number Publication Date
JPH02183849A true JPH02183849A (en) 1990-07-18

Family

ID=11580414

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1004291A Pending JPH02183849A (en) 1989-01-11 1989-01-11 Invalidation processing system for address correspondence table

Country Status (1)

Country Link
JP (1) JPH02183849A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017037672A (en) * 2011-07-26 2017-02-16 インテル・コーポレーション Method and apparatus for tlb shoot-down in heterogeneous computing system supporting shared virtual memory

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017037672A (en) * 2011-07-26 2017-02-16 インテル・コーポレーション Method and apparatus for tlb shoot-down in heterogeneous computing system supporting shared virtual memory

Similar Documents

Publication Publication Date Title
US8380907B2 (en) Method, system and computer program product for providing filtering of GUEST2 quiesce requests
US4887202A (en) Input-output control method in a virtual machine system
EP0671691B1 (en) Storage controller and bus control method for use therewith
US5574878A (en) Method of parallel purging of translation lookaside buffer in a multilevel virtual machine system
US8572624B2 (en) Providing multiple quiesce state machines in a computing environment
US8140834B2 (en) System, method and computer program product for providing a programmable quiesce filtering register
US8255591B2 (en) Method and system for managing cache injection in a multiprocessor system
US5765022A (en) System for transferring data from a source device to a target device in which the address of data movement engine is determined
JPH0695898A (en) Control method for virtual computer and virtual computer system
JP2695017B2 (en) Data transfer method
US8458438B2 (en) System, method and computer program product for providing quiesce filtering for shared memory
US4977500A (en) System recovery method for computer system having a standby system with a wait job operation capability
US20060149940A1 (en) Implementation to save and restore processor registers on a context switch
JPH07105091A (en) Device and method for controlling cache
JPH02183849A (en) Invalidation processing system for address correspondence table
CA1302582C (en) Apparatus and method for control of asynchronous program interrupt events in a data processing system
JPS603229B2 (en) Information processing method
JPS6349945A (en) Process roll-in system for data processor
JPH0567973B2 (en)
JPS6336012B2 (en)
JPH0363741A (en) Disk cache device
JP2023538241A (en) Monitoring memory locations to identify whether data stored in the memory location has been modified
JPH06295265A (en) Instruction suspending information store control method in virtual storage control
JPH0447350A (en) Main storage read/response control
JPS62125437A (en) Control method for additional processor