[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

JPH0630092B2 - Virtual memory management method in multiprocessor system - Google Patents

Virtual memory management method in multiprocessor system

Info

Publication number
JPH0630092B2
JPH0630092B2 JP62147668A JP14766887A JPH0630092B2 JP H0630092 B2 JPH0630092 B2 JP H0630092B2 JP 62147668 A JP62147668 A JP 62147668A JP 14766887 A JP14766887 A JP 14766887A JP H0630092 B2 JPH0630092 B2 JP H0630092B2
Authority
JP
Japan
Prior art keywords
processor
additional
main processor
virtual memory
virtual
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 - Lifetime
Application number
JP62147668A
Other languages
Japanese (ja)
Other versions
JPS63311468A (en
Inventor
均 ▲高▼木
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
Nippon Electric Co 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 Nippon Electric Co Ltd filed Critical Nippon Electric Co Ltd
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)

Description

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

〔従来の技術〕[Conventional technology]

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

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

上述した従来のマルチプロセッサシステムにおける仮想
記憶方式のうち、前者の方式では予め各プロセッサによ
って使用できる実記憶が制限を受けたり、各プロセッサ
間の通信が記憶領域が分断されているので柔軟に行なえ
ないという欠点があり、後者の方式では、各プロセッサ
ごとに同程度の能力を持つ制御プログラムを持つ必要が
あるし、また既存の単一プロセッサ用の制御プログラム
をマルチプロセッサ用に改造する必要があるという欠点
がある。
Among the virtual memory methods in the conventional multiprocessor system described above, the former method cannot be flexibly performed because the actual memory that can be used by each processor is limited in advance or the communication between the processors is divided because the memory area is divided. In the latter method, it is necessary to have a control program with the same capability for each processor, and it is necessary to modify the existing control program for a single processor to a multiprocessor. There are drawbacks.

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

本発明によるマルチプロセッサシステムの仮想記憶管理
方法は、 仮想記憶方式を採用する主プロセッサと、 この主プロセッサと同じ仮想記憶方式を採用する一つ以
上の付加プロセッサと、 前記主プロセッサと該一つ以上の付加プロセッサとによ
り共有される主記憶と、 前記主プロセッサ上で実行される制御プログラムと、 この制御プログラムが前記一つ以上の付加プロセッサの
各々に対応して生成し、ユーザプログラムとして管理す
る一つ以上の代理プロセスと、 前記一つ以上の付加プロセッサの何れかからの要求によ
るページ不在が発生したことを前記主プロセッサに通知
するプロセッサ間通信手段とを備えたマルチプロセッサ
システムであって、 前記一つ以上の付加プロセッサの各々は、アクセスすべ
き仮想アドレスに対応する実アドレスの不在を検出した
場合、前記プロセッサ間通信手段により、前記一つ以上
の代理プロセスの内各々に対応した代理プロセスに対し
て実アドレス回復要求を行い、 前記一つ以上の代理プロセスの各々は、 前記実アドレス回復要求に応答して、通知された前記ア
クセスすべき仮想アドレスを得るステップと、 前記仮想アドレスでアクセスするステップと、 前記付加プロセッサに処理の回復を通知するステップと
を含む。
A virtual memory management method for a multiprocessor system according to the present invention includes a main processor adopting a virtual memory system, one or more additional processors adopting the same virtual memory system as the main processor, the main processor and the one or more A main memory shared by the additional processor, a control program executed on the main processor, and a control program generated by the control program corresponding to each of the one or more additional processors and managed as a user program. A multiprocessor system comprising one or more proxy processes and an interprocessor communication means for notifying the main processor that a page fault has occurred due to a request from any one of the one or more additional processors, Each of the one or more additional processors has a real address corresponding to the virtual address to be accessed. When the absence of a dress is detected, the inter-processor communication means makes a real address recovery request to a proxy process corresponding to each of the one or more proxy processes, and each of the one or more proxy processes is In response to the real address recovery request, obtaining the notified virtual address to be accessed, accessing with the virtual address, and notifying the additional processor of processing recovery.

〔作用〕 付加プロセッサのページ不在をもう一度、同一アドレス
を代理プロセスでアクセスして、主プロセッサ側で解決
するので、付加プロセッサ側に、仮想記憶管理のための
特別なハードウェアや制御プログラムを必要としない。
[Operation] Since the absence of a page of the additional processor is accessed again by the proxy process to access the same address and the main processor solves the problem, the additional processor requires special hardware and control programs for virtual memory management. do not do.

〔実施例〕〔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 system of the present invention is applied.

本実施例のマルチプロセッサシステムは、主プロセッサ
1と、主記憶装置2と、付加プロセッサ3と、制御プロ
グラム4と、代理プロセス5と、プロセッサ間通信手段
6で構成されている。
The multiprocessor system according to the present 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がページ不在を検出すると、信号線13
によってその旨とページ不在が発生した仮想アドレスを
プロセッサ間通信手段6に通知する。プロセッサ間通信
手段6は信号線21によって、付加プロセッサ3において
ページ不在が発生したことを主プロセッサ1に通知す
る。主プロセッサ1はこれより割り込み処理に入り、制
御プログラム4にハードウェア・ソフトウェア間インタ
ーフェース16および15を用いて制御の依頼をする。ここ
で、ハードウェア・ソフトウェア間インタフェースと
は、ハードウェアがある情報を伴って、そのハードウェ
ア上で動作するソフトウェアと通信する手段であり、命
令ポインタを変更するとか、ハードウェアの状態をメモ
リ中に退避するとか、ソフトウェアが強制的に割り込み
が発生する命令を故意に実行するなどということを含
む。制御プログラム4はソフトウェア間インタフェース
17および18を通じて付加プロセッサ3に対応した代理プ
ロセス5にページ不在を通知する。ここまでの制御の移
動中、付加プロセッサ3から通知を受けた仮想アドレス
は、プロセッサ間通信手段6を通じて、各制御単位を持
ち回ってもよいし、代理プロセス5が通知を受け付けた
時、ある定められた手段でプロセッサ間通信手段6中の
仮想アドレスを得ても良い。いずれにせよ、代理プロセ
ス5は、仮想アドレスを得ると、そのアドレスをアクセ
スする。この場合、アクセスによって主プロセッサ1側
でページ不在を引き起こすことを目的とするのであるか
ら、単にそのアドレスを読み出すだけで良い。このアク
セスによって、主プロセッサ1側でページ不在事象が発
生し、通常のページ不在に対するページの生成または回
復処理が行なわれる。代理プロセス5と付加プロセッサ
3は、予め制御プログラム4によって、同じアドレス空
間を与えられているので、このページ不在に対する処理
によって、付加プロセッサ3が検出したページ不在事象
は解決する。なお、仮想アドレスから実アドレスへの変
換を行なうために必要な情報は対応する代理プロセス5
の初期化の際、プロセッサ間通信手段6を通じて付加プ
ロセッサ3に通知される。
When the additional processor 3 detects the page absence, the signal line 13
The interprocessor communication means 6 is notified of that fact and the virtual address at which the page is absent. The inter-processor communication means 6 notifies the main processor 1 that a page fault has occurred in the additional processor 3 through the signal line 21. The main processor 1 then enters an interrupt process, and requests the control program 4 for control using the hardware / software interfaces 16 and 15. Here, the hardware-software interface is a means for the hardware to communicate with software operating on that hardware along with certain information, such as changing the instruction pointer or storing the hardware state in memory. It means that the software is intentionally saved, or the software intentionally executes an instruction forcibly causing an interrupt. Control program 4 is an interface between software
Through 17 and 18, the proxy process 5 corresponding to the additional processor 3 is notified of the page absence. During the transfer of control up to this point, the virtual address notified from the additional processor 3 may carry each control unit through the inter-processor communication unit 6, or when the proxy process 5 receives the notification, it is determined to be certain. The virtual address in the inter-processor communication means 6 may be obtained by the means provided. In any case, when the proxy process 5 gets the virtual address, it accesses the address. In this case, since the purpose is to cause a page absence on the main processor 1 side by access, it is sufficient to simply read the address. Due to this access, a page-absence event occurs on the main processor 1 side, and page generation or recovery processing for a normal 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 the processing for this page absence. The information necessary for converting the virtual address to the real address is the corresponding proxy process 5
When the initialization is performed, the additional processor 3 is notified through the inter-processor communication means 6.

第2図は代理プロセスの処理のフローチャートである。
まず、付加プロセッサ3を初期化する(ステップ21)。
次に、プロセスを休眠状態にする(ステップ22)。その
後、仮想アドレスを得ると(ステップ23)、仮想アドレ
スをアクセスしてページ不在を引き起こす(ステップ2
4)。そして処理の終了を付加プロセッサ3に通知する
(ステップ25)。
FIG. 2 is a flowchart of the processing of the proxy process.
First, the additional processor 3 is initialized (step 21).
Next, the process is put to sleep (step 22). After that, when the virtual address is obtained (step 23), the virtual address is accessed to cause a page fault (step 2).
Four). Then, the end of processing is notified to the additional processor 3 (step 25).

〔発明の効果〕〔The invention's effect〕

以上説明したように本発明は、付加プロセッサ対応に同
一の仮想アドレスを持つ代理プロセスと、付加プロセッ
サの要求を代理プロセスに通知する手段を設け、付加プ
ロセッサのページ不在をもう一度、同一アドレスを代理
プロセスでアクセスして、主プロセッサ側で解決するこ
とにより、付加プロセッサ側に、仮想記憶管理のための
特別なハードウェアや制御プログラムを必要とせず、主
プロセッサ側の既存の単一プロセッサ用の制御プログラ
ムのみで、柔軟な記憶管理機能を持つマルチプロセッサ
システムを構成できるという効果がある。
As described above, according to the present invention, 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 are provided, and the page absence of the additional processor is again processed by using the same address as the proxy process. Access by the main processor to solve the problem, the special processor does not need any special hardware or control program for virtual memory management, and the main processor has a control program for the existing single processor. Only by doing so, it is possible to construct a multiprocessor system having a flexible storage management function.

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

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

Claims (1)

【特許請求の範囲】[Claims] 【請求項1】仮想記憶方式を採用する主プロセッサと、 この主プロセッサと同じ仮想記憶方式を採用する一つ以
上の付加プロセッサと、 前記主プロセッサと該一つ以上の付加プロセッサとによ
り共有される主記憶と、 前記主プロセッサ上で実行される制御プログラムと、 この制御プログラムが前記一つ以上の付加プロセッサの
各々に対応して生成し、ユーザプログラムとして管理す
る一つ以上の代理プロセスと、 前記一つ以上の付加プロセッサの何れかからの要求によ
りページ不在が発生したことを前記主プロセッサに通知
するプロセッサ間通信手段とを備えたマルチプロセッサ
システムであって、 前記一つ以上の付加プロセッサの各々は、アクセスすべ
き仮想アドレスに対応する実アドレスの不在を検出した
場合、前記プロセッサ間通信手段により、前記一つ以上
の代理プロセスの内各々に対応した代理プロセスに対し
て実アドレス回復要求を行い、 前記一つ以上の代理プロセスの各々は、 前記実アドレス回復要求に応答して、通知された前記ア
クセスすべき仮想アドレスを得るステップと、 前記仮想アドレスでアクセスするステップと、 前記付加プロセッサに処理の回復を通知するステップと
を含むことを特徴とするマルチプロセッサシステムにお
ける仮想記憶管理方法。
1. A main processor adopting a virtual memory system, one or more additional processors adopting the same virtual memory system as the main processor, and shared by the main processor and the one or more additional processors. A main memory, a control program executed on the main processor, one or more proxy processes generated by the control program corresponding to each of the one or more additional processors, and managed as a user program, A multiprocessor system comprising an inter-processor communication means for notifying the main processor that a page fault has occurred in response to a request from any one or more additional processors, each of the one or more additional processors When the absence of the real address corresponding to the virtual address to be accessed is detected, communication between the processors is performed. By means, a real address recovery request is made to a proxy process corresponding to each of the one or more proxy processes, and each of the one or more proxy processes responds to the real address recovery request and notifies A virtual memory management method in a multiprocessor system comprising: a step of obtaining the virtual address to be accessed, a step of accessing with the virtual address, and a step of notifying the additional processor of processing recovery.
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 JPS63311468A (en) 1988-12-20
JPH0630092B2 true 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)

Family Cites Families (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
JPS63311468A (en) 1988-12-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
JP2661733B2 (en) Data processing system
US5706514A (en) Distributed execution of mode mismatched commands in multiprocessor computer systems
JPS5841538B2 (en) Multiprocessor system instructions
JP2003131900A (en) Server system operation control method
JPH04246745A (en) Memory access system
JP2539352B2 (en) Hierarchical multi-computer system
JP3169624B2 (en) Interprocessor communication method and parallel processor therefor
JPH0630092B2 (en) Virtual memory management method in multiprocessor system
JP3074770B2 (en) Information processing device
JPS63310060A (en) Multiprocessor system
Russinovich Inside windows server 2008 kernel changes
JPH0552535B2 (en)
JPS63311467A (en) Virtual storage managing system for multi-processor system
JPH03252856A (en) Processing system for program
JP3189894B2 (en) Virtual computer system
JP2864496B2 (en) Multi-processing computer
JPH0573518A (en) Memory mapped cpu system
JPH02165367A (en) Microprogram control type data processor
JPS6011935A (en) Display device for action mode
JP3043361B2 (en) Distributed processor control method
JPH01316840A (en) Diagnosis control system
JPH0126103B2 (en)
JPH0217822B2 (en)
JPH02108149A (en) Exclusive control mechanism for multiprocessor