JPS63311468A - Virtual storage managing system for multi-processor system - Google Patents
Virtual storage managing system for multi-processor systemInfo
- 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
Links
- 238000000034 method Methods 0.000 claims abstract description 29
- 238000007726 management method Methods 0.000 claims description 11
- 238000004891 communication Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
Landscapes
- Multi Processors (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
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.
本発明のマルチプロセッサシステムの仮想記憶管理方式
は、主プロセッサの制御プログラムは、付加プロセッサ
の各々に対応して、ユーザプログラムとし管理されるそ
れぞれ独立の仮想空間を持つ代理プロセスが割り合てら
れ、付加プロセッサが仮想ページに対応する実ページの
不在を検出した場合、該付加プロセッサに対応した前記
代理プロセスにその旨と仮想アドレスを通知し、前記通
知を受けた代理プロセスは、前記仮想アドレスをアクセ
スすることにより、主プロセッサ側でページ不在事象を
発生させ、前記制御プログラムによる実ページの割り合
てを行なわせ、前記代理プロセスは前記付加プロセッサ
に処理の回復を指示する。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.
付加プロセッサのページ不在をもう一度、同一アドレス
を代理プロセスでアクセスして、主プロセッサ側で解決
するので、付加プロセッサ側に、仮想記憶管理のための
特別なハードウェアや制御プログラムを必要としない。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.
次に、本発明の実施例について図面を参照して説明する
。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.
第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つ以
上の付加プロセッサが仮想記憶制御を行なっているマル
チプロセッサシステムにおいて、 前記主プロセッサの制御プログラムは、前記付加プロセ
ッサの各々に対応して、ユーザプログラムとし管理され
るそれぞれ独立の仮想空間を持つ代理プロセスが割り合
てられ、付加プロセッサが仮想ページに対応する実ペー
ジの不在を検出した場合、該付加プロセッサに対応した
前記代理プロセスにその旨と仮想アドレスを通知する手
段を持ち、前記通知を受けた代理プロセスは、前記仮想
アドレスをアクセスすることにより、主プロセッサ側で
ページ不在事象を発生させ、前記制御プログラムによる
実ページの割り合てを行なわせ、前記代理プロセスは前
記付加プロセッサに処理の回復を指示するマルチプロセ
ッサシステムにおける仮想記憶管理方式。[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.
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)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS57162164A (en) * | 1981-03-30 | 1982-10-05 | Nec Corp | Data transfer device |
-
1987
- 1987-06-12 JP JP62147668A patent/JPH0630092B2/en not_active Expired - Lifetime
Patent Citations (1)
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 |