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

Virtual storage managing system for multi-processor system

Info

Publication number
JPS63311467A
JPS63311467A JP62147667A JP14766787A JPS63311467A JP S63311467 A JPS63311467 A JP S63311467A JP 62147667 A JP62147667 A JP 62147667A JP 14766787 A JP14766787 A JP 14766787A JP S63311467 A JPS63311467 A JP S63311467A
Authority
JP
Japan
Prior art keywords
processor
main
additional
virtual
control program
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
JP62147667A
Other languages
Japanese (ja)
Other versions
JPH0534705B2 (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 JP62147667A priority Critical patent/JPS63311467A/en
Publication of JPS63311467A publication Critical patent/JPS63311467A/en
Publication of JPH0534705B2 publication Critical patent/JPH0534705B2/ja
Granted 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, at the side of an additional processor, by constituting the titled system so that a deputy process receives a request of the additional processor through a main storage, and the page non-existence of the additional processor is brought to an access again by the same address and settled at a main processor side. CONSTITUTION:A deputy process 5 having the same virtual address in accordance with an additional processor 3 receives a request of the additional processor 3 through a main storage 2, and the page non-existence of the additional processor 3 is brought to an access again by the same address, and 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 also, between the main processor 1 and the additional processor 3, a special communication means is not required, and by only the control program for the existing single processor of the main processor 1 side a soft storage managing function is obtained.

Description

【発明の詳細な説明】 (産業上の利用分野) 本発明は、主記憶装置を共有する主プロセッサと1つ以
上の付加プロセッサとを有し、前記主プロセッサと前記
1つ以上の付加プロセッサが仮想記憶lIImを行なっ
ているマルチプロセッサシステムにおける仮想記憶管理
方式に関する。
Detailed Description of the Invention (Field of Industrial Application) The present invention has 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 share a main memory. The present invention relates to a virtual memory management method in a multiprocessor system that performs virtual memory IIIm.

〔従来の技術〕[Conventional technology]

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

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

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

本発明のマルチプロセッサシステムにおける仮想記憶管
理方式は、主プロセッサの制御プログラムは、付加プロ
セッサの各々に対応して、ユーザプログラムとして管理
されるそれぞれ独立の仮想空間を持つ代理プロセスを割
り当て、付加プロセッサが仮想ページに対する実ページ
の不在を検出した場合該付加プロセッサに対応した前記
代理プロセスにその旨を、仮想アドレスを前記主記憶装
置に書き込むことにより通知し、前記代理プロセスは、
通知を受けるため、前記主記憶装置をモニタし、通知を
受けると、前記仮想アドレスをアクセスすることにより
、主プロセッサ側でページ不在事象を発生させ、前記制
御プログラムによる実ページの割り当てを行なわせ、前
記代理プロセスは、前記付加プロセッサに処理の回復を
指示する。
In the virtual memory management method in the multiprocessor system of the present invention, the control program of the main processor allocates proxy processes each having an independent virtual space managed as a user program, corresponding to each of the attached processors. If the absence of a real page with respect to a virtual page is detected, the proxy process corresponding to the attached processor is notified of this by writing a virtual address to the main storage device, and the proxy process:
monitors the main storage device in order to receive a notification; upon receiving the notification, generates a page absent event on the main processor side by accessing the virtual address, and causes the control program to allocate a real page; The proxy process instructs the additional processor to recover processing.

〔作用〕[Effect]

付加プロセッサ対応に同一の仮想アドレスを持つ代理プ
ロセスを割り当て、代理プロセスが主記憶を介して付加
プロセッサの要求を受は取り、付加プロセッサのページ
不在をもう一度、同一アドレスでアクセスして、主プロ
セッサ側で解決するので、付加プロセッサ側に、仮想記
憶管理のための特別なハードウェアや制御プログラムを
必要としない。
A proxy process with the same virtual address is assigned to correspond to the attached processor, the proxy process receives requests from the attached processor via the main memory, and the page fault of the attached processor is accessed again using the same address, and the main processor side Therefore, no special hardware or control program for virtual memory management is required 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 in which the virtual memory management method of the present invention is applied.

本実施例のマルチプロセッサシステムは、主プロセッサ
1と、主記憶1112と、付加プロセッサ3と、制御プ
ログラム4と、代理プロセス5で構成されている。
The multiprocessor system of this embodiment includes a main processor 1 , a main memory 1112 , an additional processor 3 , a control program 4 , and a proxy process 5 .

付加プロセッサ3がページ不在を検出すると、その旨と
ページ不在が発生した仮想アドレスを主記憶装!f2に
書き込む。主プロセッサ1上の制御プログラム4によっ
て、ユーザプログラムとして管理される代理プロセス5
は、対応する付加プロセッサ3がページ不在を検出した
時、書き込みを行なう主記憶装!2内の定められた領域
を常にモニタしている。代理プロセス5が、対応する付
加プロセッサ3のページ不在事象を上述した方法によっ
て認識すると、通知された仮想アドレスをアクセスする
。この場合、アクセスによって主プロセッサ1側でペー
ジ不在事象を引き起こすことを目的とするものであるか
ら、単にそのアドレスを読み出すだけで良い。このアク
セスによって、主プロセッサ1側でページ不在事象が発
生し、通常のページ不在に対するページの生成あるいは
回復処理が代理プロセス5、制御プログラム4、主プロ
セッサ1の間の分担によって、ハードウェア・ソフトウ
ェア間インタフェース15および16、またはソフトウ
ェア間インタフェース17および18を通じて行なわれ
る。ここで、ハードウェア・ソフトウェア問インタフェ
ースとはハードウェアがある情報を伴って、そのハード
ウェア上で動作するソフトウェアと通信する手段であり
、命令ポインタの変更や、ハードウェアの状態をメモリ
中に退避するとか、ソフトウェアが強制的に割り込みが
発生する命令を故意に実行するなどということを含む。
When the additional processor 3 detects a page failure, it stores the fact and the virtual address where the page failure occurred in the main memory! Write to f2. A proxy process 5 managed as a user program by a control program 4 on the main processor 1
is the main memory that performs writing when the corresponding additional processor 3 detects a page absence! A predetermined area within 2 is constantly monitored. When the proxy process 5 recognizes the page absence event of the corresponding attached processor 3 by the method described above, it accesses the notified virtual address. In this case, since the purpose of the access is to cause a page out event on the main processor 1 side, it is sufficient to simply read the address. This access causes a page fault event to occur on the main processor 1 side, and the page generation or recovery processing for normal page faults is divided between the proxy process 5, the control program 4, and the main processor 1, and is performed between hardware and software. This is done through interfaces 15 and 16 or software-to-software interfaces 17 and 18. Here, the hardware-software interface is a means for the hardware to communicate with the software running on the hardware with certain information, such as changing the instruction pointer and saving the hardware state in memory. This includes cases where software intentionally executes an instruction that forcibly generates an interrupt.

さて、代理プロセス5と付加プロセッサ3は、予め制御
プログラム4によって、同じアドレス空間を与えられて
いるので、このページ不在に対する処理によって、付加
プロセッサ3が検出したページ不在事象は解決する。な
お、仮想アドレスから実アドレスへの変換を行なうため
に必要な情報は対応する代理プロセス5の初期化の際、
主記憶装@2を介して付加プロセッサ3に通知される。
Now, 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 process for the page absence. Note that the information necessary to convert a virtual address to a real address is provided when the corresponding proxy process 5 is initialized.
The additional processor 3 is notified via the main memory @2.

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

まず、付加プロセッサ3を初期化する(ステップ21)
。次にメモリを参照しくステップ22)、要求ありかど
うか判定しくステップ23)、要求がなければステップ
22に戻り、要求があれば仮想アドレスを得(ステップ
24)、この仮想アドレスをアクセスしてページ不在を
引き起こす(ステップ25)。そして、処理の終了を付
加プロセッサ3に通知しくステップ26)、ステップ2
2に戻る。
First, initialize the additional processor 3 (step 21)
. Next, the memory is referred to in step 22), it is determined whether there is a request or not (step 23), and if there is no request, the process returns to step 22, and if there is a request, a virtual address is obtained (step 24), and this virtual address is accessed to page the page. causing an absence (step 25); Then, the additional processor 3 is notified of the end of the process (Step 26), Step 2
Return to 2.

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

以上説明したように本発明は、付加プロセッサ対応に同
一の仮想アドレスを持つ代理プロセスが、主記憶を介し
て付加プロセッサの要求を受は取り、付加プロセッサの
ページ不在をもう一度、同一することにより、付加プロ
セッサ側に、仮想記憶管理のための特別なハードウェア
や制御プログラムを必要とせず、また、主プロセッサ・
付加プロセッサ間で特別な通信手段を必要とせず、主プ
ロセッサ側の既存の単一プロセッサ用の制御プログラム
のみで、柔軟な記憶管理機能を持つ、マルチプロセッサ
システムを構成できるという効果がある。
As explained above, in the present invention, a proxy process having the same virtual address corresponding to the attached processor receives and receives requests from the attached processor via the main memory, and once again identifies the page failure of the attached processor. No special hardware or control program for virtual memory management is required on the additional processor side, and the main processor
This has the advantage that a multiprocessor system with flexible storage management functions can be constructed using only the existing uniprocessor control program on the main processor side, without requiring special communication means between additional processors.

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

第1図は本発明の仮想記憶管理方式が通用されたマルチ
プロセッサシステムの一実施例の構成図、第2図は第1
図における代理プロセス5の処理のフローチャートであ
る。 1・・・主プロセッサ、 2・・・主記憶装置、3・・
・付加プロセッサ、4・・・制御プログラム、5・・・
代理プロセス、 11〜14・・・信号線、 15.16・・・ハードウェア・ソフトウェア間インタ
フェース、 17.18・・・ソフトウェア間インタフェース。 第1図 第2図
FIG. 1 is a configuration diagram of an embodiment of a multiprocessor system in 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... Main processor, 2... Main storage device, 3...
・Additional processor, 4... Control program, 5...
Proxy process, 11-14... Signal line, 15.16... Hardware-software interface, 17.18... Software interface. Figure 1 Figure 2

Claims (1)

【特許請求の範囲】[Claims] 主記憶装置を共有する主プロセッサと1つ以上の付加プ
ロセッサとを有し、前記主プロセッサと前記1つ以上の
付加プロセッサが仮想記憶制御を行なっているマルチプ
ロセッサシステムにおいて、前記主プロセッサの制御プ
ログラムは、前記付加プロセッサの各々に対応して、ユ
ーザプログラムとして管理されるそれぞれ独立の仮想空
間を持つ代理プロセスを割り当て、付加プロセッサが仮
想ページに対する実ページの不在を検出した場合該付加
プロセッサに対応した前記代理プロセスにその旨を、仮
想アドレスを前記主記憶装置に書き込むことにより通知
し、前記代理プロセスは、通知を受けるため、前記主記
憶装置をモニタし、通知を受けると、前記仮想アドレス
をアクセスすることにより、主プロセッサ側でページ不
在事象を発生させ、前記制御プログラムによる実ページ
の割り当てを行なわせ、前記代理プロセスは、前記付加
プロセッサに処理の回復を指示する、マルチプロセッサ
システムにおける仮想記憶管理方式。
In a multiprocessor system having a main processor and one or more additional processors that share a main storage device, and in which the main processor and the one or more additional processors control virtual memory, a control program for the main processor is provided. Allocates a proxy process having an independent virtual space managed as a user program to each of the attached processors, and when an attached processor detects the absence of a real page for a virtual page, a proxy process corresponding to the attached processor is assigned. The proxy process is notified of this by writing the virtual address to the main memory, and the proxy process monitors the main memory to receive the notification, and upon receiving the notification, accesses the virtual address. By doing so, a page fault event is generated on the main processor side, the control program is caused to allocate a real page, and the proxy process instructs the additional processor to recover processing. method.
JP62147667A 1987-06-12 1987-06-12 Virtual storage managing system for multi-processor system Granted JPS63311467A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP62147667A JPS63311467A (en) 1987-06-12 1987-06-12 Virtual storage managing system for multi-processor system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP62147667A JPS63311467A (en) 1987-06-12 1987-06-12 Virtual storage managing system for multi-processor system

Publications (2)

Publication Number Publication Date
JPS63311467A true JPS63311467A (en) 1988-12-20
JPH0534705B2 JPH0534705B2 (en) 1993-05-24

Family

ID=15435548

Family Applications (1)

Application Number Title Priority Date Filing Date
JP62147667A Granted JPS63311467A (en) 1987-06-12 1987-06-12 Virtual storage managing system for multi-processor system

Country Status (1)

Country Link
JP (1) JPS63311467A (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
JPH0534705B2 (en) 1993-05-24

Similar Documents

Publication Publication Date Title
EP0709779B1 (en) Virtual shared disks with application-transparent recovery
KR100457146B1 (en) Interrupt architecture for a non-uniform memory access data processing system
US5784617A (en) Resource-capability-based method and system for handling service processor requests
US7028218B2 (en) Redundant multi-processor and logical processor configuration for a file server
US5423044A (en) Shared, distributed lock manager for loosely coupled processing systems
JP2016509700A (en) Method, apparatus, and program product for performing communication channel failover in a clustered computer system (communication channel failover in high performance computing (HPC) networks)
JP3195489B2 (en) External storage control device and bus switching control method
US20050081092A1 (en) Logical partitioning in redundant systems
Leijten et al. PROPHID: a data-driven multi-processor architecture for high-performance DSP
JPH1063525A (en) Information processor, and information processing system and control method therefor
JPS63311467A (en) Virtual storage managing system for multi-processor system
US6763441B2 (en) System and method for using ancillary processors and storage to speed time critical data capture
JPH10187616A (en) State recording and reproducing method, computer system realising the same method, and memory device where the same method is programmed and stored
JPS63311468A (en) Virtual storage managing system for multi-processor system
JP3312652B2 (en) Database management method in multiprocessor architecture
JPH04305746A (en) Cache memory control device
JP2824110B2 (en) Bus communication control method for information systems
JPH0310343A (en) Hot spot data management processing system
JP3112280B2 (en) Computer system
JP3246736B2 (en) Computer system
Murphy et al. A virtual memory distributed file system
JPH09282291A (en) System and method for canceling lock flag of common storage device
Ghosh et al. Communication across fault-containment firewalls on the SGI Origin
JPH02247748A (en) Data base processing system based upon multiprocessor
JPH0227464A (en) Shared memory control system for multi-processor system