JPS63311468A - Virtual storage managing system for multi-processor system - Google Patents

Virtual storage managing system for multi-processor system

Info

Publication number
JPS63311468A
JPS63311468A JP62147668A JP14766887A JPS63311468A JP S63311468 A JPS63311468 A JP S63311468A JP 62147668 A JP62147668 A JP 62147668A JP 14766887 A JP14766887 A JP 14766887A JP S63311468 A JPS63311468 A JP S63311468A
Authority
JP
Japan
Prior art keywords
processor
additional
virtual
control program
page
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP62147668A
Other languages
Japanese (ja)
Other versions
JPH0630092B2 (en
Inventor
Hitoshi Takagi
均 高木
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 JP62147668A priority Critical patent/JPH0630092B2/en
Publication of JPS63311468A publication Critical patent/JPS63311468A/en
Publication of JPH0630092B2 publication Critical patent/JPH0630092B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Multi Processors (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

PURPOSE:To eliminate the need of a special hardware and a control program for a virtual storage management between additional processors by constituting the titled system so that with respect to the page non-existence of the additional processor, the same address is brought to an access again by a deputy process, and it is settled at a main processor side. CONSTITUTION:The titled system is provided with a deputy process 5 having the same virtual address in accordance with an additional processor 3, and a means 5 for informing a request of the additional processor 3 to the deputy process 5 and with respect to the page non-existence of the additional processor 3, the same address is brought to an access again by the deputy process 5 and it is settled at a main processor 1 side. In such a way, a special hardware and a control program for a virtual storage management are not required at the additional processor 3 side, and by only the control program for the existing single processor of the main processor 1 side, multi-processor system having a soft storage managing function can be constituted.

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、主記憶装置を共有する主プロセッサと1つ以
上の付加プロセッサとで構成され、前記主プロセッサと
前記1つ以上の付加プロセッサが仮想記憶制御を行なフ
ているマルチプロセッサシステムにおける仮想記憶管理
方式に関する。
Detailed Description of the Invention [Industrial Application Field] The present invention comprises a main processor and one or more additional processors that share a main memory, and the main processor and the one or more additional processors This invention relates to a virtual memory management method in a multiprocessor system that performs virtual memory control.

(従来の技術〉 従来、この種のマルチプロセッサシステムにあける仮想
記憶管理方式は、各々のプロセッサが個別に管理プログ
ラムを持ち、独立して記憶管理を行なう場合には、主記
憶をプロセッサごとに分割するか、複数個のプロセッサ
に1つのO8が存在する場合には、各々のプロセッサが
ページテーブルなどの資源管理情報を共有し、制御プロ
グラムレベルで密な連絡を取り合って記憶管理を行なう
方式となっていた。
(Conventional technology) Conventionally, in the virtual memory management method used in this type of multiprocessor system, when each processor has an individual management program and performs memory management independently, the main memory is divided for each processor. Alternatively, if multiple processors have one O8, each processor shares resource management information such as page tables and maintains close communication at the control program level to manage memory. was.

(発明が解決しようとする問題点) 上述した従来のマルチプロセッサシステムにおける仮想
記憶方式のうち、前者の方式では予め各プロセッサによ
って使用できる実記憶が制限を受けたり、各プロセッサ
間の通信が記憶領域が分断されているので柔軟に行なえ
ないという欠点があり、後者の方式では、各プロセッサ
ごとに同程度の能力を持つ制御プログラムを持つ必要が
あるし、また既存の単一プロセッサ用の制御プログラム
をマルチプロセッサ用に改造する必要があるという欠点
がある。
(Problems to be Solved by the Invention) Among the virtual storage systems in the conventional multiprocessor systems described above, in the former system, the real storage that can be used by each processor is limited in advance, and communication between each processor is restricted to storage areas. The latter method requires a control program with the same level of capability for each processor, and the existing control program for a single processor cannot be used. The disadvantage is that it must be modified for multiprocessors.

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

本発明のマルチプロセッサシステムの仮想記憶管理方式
は、主プロセッサの制御プログラムは、付加プロセッサ
の各々に対応して、ユーザプログラムとし管理されるそ
れぞれ独立の仮想空間を持つ代理プロセスが割り合てら
れ、付加プロセッサが仮想ページに対応する実ページの
不在を検出した場合、該付加プロセッサに対応した前記
代理プロセスにその旨と仮想アドレスを通知し、前記通
知を受けた代理プロセスは、前記仮想アドレスをアクセ
スすることにより、主プロセッサ側でページ不在事象を
発生させ、前記制御プログラムによる実ページの割り合
てを行なわせ、前記代理プロセスは前記付加プロセッサ
に処理の回復を指示する。
In the virtual memory management method of the multiprocessor system of the present invention, the control program of the main processor is assigned a proxy process that has an independent virtual space that is managed as a user program, corresponding to each of the additional processors, and When an attached processor detects the absence of a real page corresponding to a virtual page, it notifies the proxy process corresponding to the attached processor of this fact and the virtual address, and the notified proxy process accesses the virtual address. This causes a page absence event to occur on the main processor side, causes the control program to allocate a real page, and the proxy process instructs the additional processor to recover the process.

〔作 用〕[For production]

付加プロセッサのページ不在をもう一度、同一アドレス
を代理プロセスでアクセスして、主プロセッサ側で解決
するので、付加プロセッサ側に、仮想記憶管理のための
特別なハードウェアや制御プログラムを必要としない。
Since the page fault in the attached processor is resolved on the main processor side by once again accessing the same address by the proxy process, there is no need for special hardware or control programs for virtual memory management on the attached processor side.

〔実施例〕〔Example〕

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

第1図は本発明の仮想記憶管理方式が適用されたマルチ
プロセッサシステムの一実施例の構成図である。
FIG. 1 is a block diagram of an embodiment of a multiprocessor system to which the virtual memory management method of the present invention is applied.

本実施例のマルチプロセッサシステムは、主プロセッサ
1と、主記憶装置2と、付加プロセッサ3と、制御プロ
グラム4と、代理プロセス5と、プロセッサ間通信手段
6で構成されている。
The multiprocessor system of this embodiment includes a main processor 1, a main storage device 2, an additional processor 3, a control program 4, a proxy process 5, and an interprocessor communication means 6.

付加プロセッサ3がページ不在を検出すると、信号線1
3によってその旨とページ不在が発生した仮想アドレス
をプロセッサ間通信手段6に通知する。プロセッサ間通
知手段6は信号線21によって、付加プロセッサ3にお
いてページ不在が発生したことを主プロセッサ1に通知
する。主プロセッサ1はこれより割り込み処理に入り、
制御プログラム4にハードウェア・ソフトウェア間イン
タフェース16および15を用いて制御の依頼をする。
When the additional processor 3 detects a page absence, the signal line 1
3, the interprocessor communication means 6 is notified of this fact and the virtual address where the page absence occurred. The inter-processor notification means 6 notifies the main processor 1 through the signal line 21 that a page absence has occurred in the additional processor 3. Main processor 1 now starts interrupt processing,
A control request is made to the control program 4 using the hardware-software interfaces 16 and 15.

ここで、ハードウェア・ソフトウェア間インタフェース
とは、ハードウェアがある情報を伴って、そのハードウ
ェア上で動作するソフトウェアと通信する手段であり、
命令ポインタを変更するとか、ハードウェアの状態をメ
モリ中に退避するとか、ソフトウェアが強制的に割り込
みが発生する命令を故意に実行するなどということを含
む。
Here, the hardware-software interface is a means for the hardware to communicate with the software running on the hardware with certain information,
This includes changing the instruction pointer, saving the hardware state to memory, or intentionally executing an instruction that causes software to force an interrupt.

制御プログラム4はソフトウェア間インタフェース17
および18を通じて付加プロセッサ3に対応した代理プ
ロセス5にページ不在を通知する。ここまでの制御の移
動中、付加プロセッサ3から通知を受けた仮想アドレス
は、プロセッサ間通信手段6を通じて、各制御単位を持
ち回ってもよいし、代理プロセス5が通知を受は付けた
時、ある定められた手段でプロセッサ間通知手段6中の
仮想アドレスを得ても良い。いずれにせよ、代理プロセ
ス5は、仮想アドレスを得ると、そのアドレスをアクセ
スする。この場合、アクセスによって主プロセッサ1側
でページ不在を引き起こすことを目的とするのであるか
ら、単にそのアドレスを読み出すだけで良い。このアク
セスによって、主プロセッサ1側でページ不在事象が発
生し、通常のページ不在に対するページの生成または回
復処理が行なわれる。代理プロセス5と付加プロセッサ
3は、予め制御プログラム4によって、同じアドレス空
間を与えられているので、このページ不在に対する処理
によって、付加プロセッサ3が検出したページ不在事象
は解決する。なお、仮想アドレスから実アドレスへの変
換を行なうために必要な情報は対応する代理プロセス5
の初期化の際、プロセッサ間通信手段6を通じて付加プ
ロセッサ3に通知される。
The control program 4 is a software interface 17
and 18 to notify the proxy process 5 corresponding to the additional processor 3 that the page is absent. During the transfer of control up to this point, the virtual address notified from the additional processor 3 may be transferred to each control unit via the inter-processor communication means 6, or when the proxy process 5 accepts the notification, The virtual address in the interprocessor notification means 6 may be obtained by some predetermined means. In any case, once the proxy process 5 obtains the virtual address, it accesses that address. In this case, since the purpose of the access is to cause a page fault on the main processor 1 side, it is sufficient to simply read the address. This access causes a page absence event to occur on the main processor 1 side, and normal page generation or recovery processing for page absence is performed. Since the proxy process 5 and the additional processor 3 are given the same address space in advance by the control program 4, the page absence event detected by the additional processor 3 is resolved by this page absence processing. Note that the information necessary to convert a virtual address to a real address is provided by the corresponding proxy process 5.
At the time of initialization, the additional processor 3 is notified through the interprocessor communication means 6.

第2図は代理プロセスの処理のフローチャートである。FIG. 2 is a flowchart of the processing of the proxy process.

まず、付加プロセッサ3を初期化する(ステップ21)
。次に、プロセスを休眠状態にする(ステップ22)。
First, initialize the additional processor 3 (step 21)
. Next, the process is put into a dormant state (step 22).

その後、仮想アドレスを得ると(ステップ23)、仮想
アドレスをアクセスしてページ不在を引き起こす(ステ
ップ24)。そして処理の終了を付加プロセッサ3に通
知する(ステップ25)。
After that, once the virtual address is obtained (step 23), the virtual address is accessed to cause a page fault (step 24). Then, the additional processor 3 is notified of the end of the process (step 25).

(発明の効果) 以上説明したように本発明は、付加プロセッサ対応に同
一の仮想アドレスを持つ代理プロセスと、付加プロセッ
サの要求を代理プロセスに通知する手段を設け、付加プ
ロセッサのページ不在をもう一度、同一アドレスを代理
プロセスでアクセスして、主プロセッサ側で解決するこ
とにより、付加プロセッサ側に、仮想記憶管理のための
特別なハードウェアや制御プログラムを必要とせず、主
プロセッサ側の既存の単一プロセッサ用の制御プログラ
ムのみで、柔軟な記憶管理機能を持つマルチプロセッサ
システムを構成できるという効果がある。
(Effects of the Invention) As described above, the present invention provides a proxy process having the same virtual address corresponding to the additional processor and a means for notifying the proxy process of the request of the additional processor, and once again detects a page failure of the additional processor. By accessing the same address by a proxy process and resolving it on the main processor side, there is no need for special hardware or control programs for virtual memory management on the attached processor side, and the existing single address on the main processor side This has the advantage that a multiprocessor system with flexible storage management functions can be constructed using only a control program for the processor.

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

第1図は本発明の仮想記憶管理方式が適用されたマルチ
プロセッサシステムの一実施例の構成図、第2図は第1
図における代理プロセス5の処理のフローチャートであ
る。 1−−1プロセッサ、 2・−・−主記憶装置、3−一
付加プロセッサ、4・−・−制御プログラム5−一代理
プロセス、 6−−−−プロセッサ間通信手段、 11〜14.19〜22−一信号線、 15.16−−ハードウエア・ソフトウェア間インタフ
ェース、 17.18−−ソフトウェア間インタフェース。 第1図 粛2図
FIG. 1 is a configuration diagram of an embodiment of a multiprocessor system to which the virtual memory management method of the present invention is applied, and FIG.
It is a flowchart of the processing of the proxy process 5 in the figure. 1--1 processor, 2--main storage device, 3--additional processor, 4--control program 5--proxy process, 6---interprocessor communication means, 11-14.19- 22--Signal line, 15.16--Hardware-software interface, 17.18--Software interface. Figure 1 and Figure 2

Claims (1)

【特許請求の範囲】 主記憶装置を共有する主プロセッサと1つ以上の付加プ
ロセッサとで構成され、前記主プロセッサと前記1つ以
上の付加プロセッサが仮想記憶制御を行なっているマル
チプロセッサシステムにおいて、 前記主プロセッサの制御プログラムは、前記付加プロセ
ッサの各々に対応して、ユーザプログラムとし管理され
るそれぞれ独立の仮想空間を持つ代理プロセスが割り合
てられ、付加プロセッサが仮想ページに対応する実ペー
ジの不在を検出した場合、該付加プロセッサに対応した
前記代理プロセスにその旨と仮想アドレスを通知する手
段を持ち、前記通知を受けた代理プロセスは、前記仮想
アドレスをアクセスすることにより、主プロセッサ側で
ページ不在事象を発生させ、前記制御プログラムによる
実ページの割り合てを行なわせ、前記代理プロセスは前
記付加プロセッサに処理の回復を指示するマルチプロセ
ッサシステムにおける仮想記憶管理方式。
[Scope of Claims] A multiprocessor system comprising a main processor and one or more additional processors that share a main storage device, the main processor and the one or more additional processors controlling virtual memory, The control program for the main processor is assigned a proxy process having an independent virtual space managed as a user program for each of the additional processors, and the additional processor controls the real page corresponding to the virtual page. If the absence is detected, the substitute process corresponding to the additional processor is provided with a means for notifying the fact and the virtual address, and the substitute process that receives the notification accesses the virtual address and performs processing on the main processor side. A virtual memory management method in a multiprocessor system in which a page fault event is generated, the control program allocates a real page, and the proxy process instructs the additional processor to recover processing.
JP62147668A 1987-06-12 1987-06-12 Virtual memory management method in multiprocessor system Expired - Lifetime JPH0630092B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP62147668A JPH0630092B2 (en) 1987-06-12 1987-06-12 Virtual memory management method in multiprocessor system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP62147668A JPH0630092B2 (en) 1987-06-12 1987-06-12 Virtual memory management method in multiprocessor system

Publications (2)

Publication Number Publication Date
JPS63311468A true JPS63311468A (en) 1988-12-20
JPH0630092B2 JPH0630092B2 (en) 1994-04-20

Family

ID=15435570

Family Applications (1)

Application Number Title Priority Date Filing Date
JP62147668A Expired - Lifetime JPH0630092B2 (en) 1987-06-12 1987-06-12 Virtual memory management method in multiprocessor system

Country Status (1)

Country Link
JP (1) JPH0630092B2 (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS57162164A (en) * 1981-03-30 1982-10-05 Nec Corp Data transfer device

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS57162164A (en) * 1981-03-30 1982-10-05 Nec Corp Data transfer device

Also Published As

Publication number Publication date
JPH0630092B2 (en) 1994-04-20

Similar Documents

Publication Publication Date Title
JP2757961B2 (en) Apparatus and method for a data processing system in which a plurality of central processing units have an equal relationship
JP6089349B2 (en) Method and system for supporting resource separation in a multi-core architecture
JP2661733B2 (en) Data processing system
EP0709779B1 (en) Virtual shared disks with application-transparent recovery
US8473692B2 (en) Operating system image management
JP2016508647A5 (en)
TW457437B (en) Interconnected processing nodes configurable as at least one non-uniform memory access (NUMA) data processing system
JP2004523048A (en) Methods and apparatus for powering down a logical partition in a data processing system, rebooting a logical partition, or both
JP2003131900A (en) Server system operation control method
KR900018832A (en) Multiple operating system computer devices and computer systems
Leijten et al. PROPHID: a data-driven multi-processor architecture for high-performance DSP
JP3169624B2 (en) Interprocessor communication method and parallel processor therefor
JPH1063525A (en) Information processor, and information processing system and control method therefor
JPS63311468A (en) Virtual storage managing system for multi-processor system
JPH10187616A (en) State recording and reproducing method, computer system realising the same method, and memory device where the same method is programmed and stored
JPS63311467A (en) Virtual storage managing system for multi-processor system
US20060047686A1 (en) Apparatus, system, and method for suspending a request during file server serialization reinitialization
JPH09319653A (en) Information processor, information processing system and control method for the same
JP2004005113A (en) Virtual computer system operated on a plurality of actual computers, and control method thereof
JPH09190375A (en) Shared memory management method
Ababneh Automatic Scaling of Cloud Applications via Transparently Elasticizing Virtual Memory
JP3246736B2 (en) Computer system
JPH0310343A (en) Hot spot data management processing system
Ghosh et al. Communication across fault-containment firewalls on the SGI Origin
JPH0573518A (en) Memory mapped cpu system