JPH08235070A - Main memory management method and system - Google Patents
Main memory management method and systemInfo
- Publication number
- JPH08235070A JPH08235070A JP7040107A JP4010795A JPH08235070A JP H08235070 A JPH08235070 A JP H08235070A JP 7040107 A JP7040107 A JP 7040107A JP 4010795 A JP4010795 A JP 4010795A JP H08235070 A JPH08235070 A JP H08235070A
- Authority
- JP
- Japan
- Prior art keywords
- page
- pseudo
- instruction
- main memory
- information processing
- 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.)
- Withdrawn
Links
Landscapes
- Memory System Of A Hierarchy Structure (AREA)
Abstract
(57)【要約】
【目的】 ネットワークで結合された情報処理装置上で
分散仮想共有記憶を実現する際の一貫性保持手順のペー
ジデータの転送によるネットワークの輻湊を低減し、情
報処理装置の実行効率の低下を防いだ主記憶管理方法及
びそのシステムを提供する。
【構成】 主記憶をページ単位で管理する情報処理シス
テムにおける主記憶管理方法であって、ページを複数の
疑似ページ単位で管理する疑似ページ管理表30を設
け、ページフォルトが発生した場合に(S1)、前記疑
似ページ管理表から発生アドレスが前記疑似ページのい
ずれに属するかを判別し(S2)、前記ページをアクセ
スする場合に、前記ページ内の前記判別した疑似ページ
以外の内容を保存するように制御する(S3)ことを特
徴とする。前記保存制御は、前記判別した疑似ページを
処理する命令のみが実行されるようにすることで実現さ
れる。
(57) [Abstract] [Purpose] To reduce the congestion of the network due to the transfer of page data of the consistency maintaining procedure when implementing distributed virtual shared storage on information processing devices connected by a network, and to execute the information processing device. Provided are a main memory management method and a system thereof that prevent a decrease in efficiency. [Configuration] A main memory management method in an information processing system for managing a main memory in page units, wherein a pseudo page management table 30 for managing pages in a plurality of pseudo page units is provided and a page fault occurs (S1 ), It is determined from the pseudo page management table to which of the pseudo pages the generated address belongs (S2), and when the page is accessed, the contents other than the determined pseudo page in the page are saved. Is controlled (S3). The storage control is realized by executing only the instruction for processing the determined pseudo page.
Description
【0001】[0001]
【産業上の利用分野】本発明は分散仮想共有記憶方法で
主記憶を管理する情報処理システムにおける主記憶管理
方法及びそのシステムに関するものである。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a main memory management method and system in an information processing system for managing a main memory by a distributed virtual shared storage method.
【0002】[0002]
【従来の技術】特殊な装置を持たずに従来の主記憶管理
装置と情報処理装置間のネットワークを制御することに
よって、複数の情報処理装置からなるシステム上で情報
処理装置のプログラム間で仮想的な主記憶の共有を実現
する分散仮想共有記憶方法において、仮想共有記憶内の
一貫性保持の実現は、並列処理装置のキャッシュメモリ
の一貫性保持と同様に、主記憶管理装置からのページフ
ォールトを情報として受け、他の情報処理装置上のプロ
グラムの主記憶データに変更を与えることによって行
う。一般的に使用されるキャッシュメモリの一貫性保持
手順には書込み無効化手順と書込み放送手順とがある
が、多くのものでは書込み無効化手順のうちのMESI
(Modified,Exclusive,Shared,Invalid )手順が用いら
れている。2. Description of the Related Art By controlling a network between a conventional main memory management device and an information processing device without having a special device, a program of the information processing device can be virtualized on a system including a plurality of information processing devices. In the distributed virtual shared storage method that realizes the sharing of main memory, the realization of coherency maintenance in the virtual shared storage is similar to the coherency maintenance of the cache memory of the parallel processing device and the page fault from the main storage management device. It is performed by receiving it as information and changing the main memory data of the program on another information processing apparatus. Commonly used cache memory coherency maintenance procedures include a write invalidation procedure and a write broadcast procedure.
(Modified, Exclusive, Shared, Invalid) procedure is used.
【0003】MESI手順は、全てのキャッシュブロッ
クがModified,Exclusive,Shared,Invalid の4個の状態
の内のいずれかに属し、各キャッシュブロックに対する
読み込みや書込みの要求によって、状態が変化する。ま
た他の情報処理装置上のプログラム内の各キャッシュブ
ロックに対する読み込みや書込み要求が伝達され、状態
が変化する。MESI手順の状態の遷移図を図4に示
す。最初全てのキャッシュブロックはInvalid の状態
で、そのキャッシュブロックに対する読み込み要求と書
込み要求とによって、さらに他の情報処理装置の同じキ
ャッシュブロックに対する読み込み要求や書込み要求に
よって、他の状態に遷移する。In the MESI procedure, all cache blocks belong to one of four states of Modified, Exclusive, Shared, and Invalid, and the state changes depending on a read or write request for each cache block. In addition, a read or write request for each cache block in a program on another information processing device is transmitted, and the state changes. A state transition diagram of the MESI procedure is shown in FIG. Initially, all the cache blocks are in the invalid state, and a read request and a write request for the cache block, and further a read request and a write request for the same cache block of another information processing device transit to another state.
【0004】分散仮想共有記憶方法では、MMU(Memo
ry Management Unit) からのページフォールト(主記憶
管理のためのページテーブルに登録されていないページ
にアクセスした場合や、ページテーブルに登録されてい
るが書き込みや読み込みが禁止されているページに対し
てその禁止されているアクセスを行なった場合)を、状
態遷移の起因としているため、上記のキャッシュブロッ
クがページ単位となり、ページ単位にMESI手順の状
態が設定されている。そこで、状態遷移が発生すると、
情報処理装置間を接続するネットワークを通してページ
データを転送したり、制御データを転送しなければなら
ない。そのため、多量の状態遷移が発生するとネットワ
ークの輻湊を起こしたり、情報処理装置のプロセッサに
多くの処理負担をかけることになる。In the distributed virtual shared storage method, MMU (Memo
Page fault from the (ry Management Unit) (when a page that is not registered in the page table for main memory management is accessed, or when a page that is registered in the page table but is not writable or readable is Since the state transition is caused when a prohibited access is performed), the above cache block is in page units, and the state of the MESI procedure is set in page units. So, when a state transition occurs,
Page data and control data must be transferred through a network connecting the information processing devices. Therefore, if a large amount of state transitions occur, network congestion will occur, and a lot of processing load will be placed on the processor of the information processing device.
【0005】ここで、従来の情報処理装置では、ページ
サイズが数KB(バイト)の大きさである。そのため
に、複数の情報処理装置が分散仮想共有記憶の同一のペ
ージ内に配置されている別々のデータ構造に対して同時
にアクセスする場合にも、上記の様な状態遷移が起こ
る。このように、相互に関係が無く、異なる情報処理装
置によってアクセスされ得るデータ構造を、同じページ
内に配置することは、上のようなネットワークの輻湊や
プロセッサの処理量という点で、損失が大きい。しか
し、ページサイズが数KBである場合には、全てのデー
タ構造を別々のページに配置することは困難である場合
が多々ある。そこで、分散仮想共有記憶では、ネットワ
ークの転送量やプロセッサによる処理量などを考えた場
合には、出来るだけ小さなページサイズにしたほうが効
率がよいこととなる。Here, in the conventional information processing apparatus, the page size is several KB (bytes). Therefore, even when a plurality of information processing devices simultaneously access different data structures arranged in the same page of the distributed virtual shared storage, the above state transition occurs. In this way, arranging data structures that are not related to each other and can be accessed by different information processing devices in the same page causes a large loss in terms of network congestion and processor processing amount as described above. . However, when the page size is several KB, it is often difficult to arrange all the data structures on separate pages. Therefore, in the distributed virtual shared storage, it is more efficient to make the page size as small as possible in consideration of the network transfer amount and the processing amount by the processor.
【0006】また、通常、従来の情報処理装置では、主
記憶管理に関連するハードウェアで規定されているペー
ジサイズに可変のものと固定のものとがあるが、ページ
サイズが可変のものであっても、設定できるページサイ
ズに最小値が決められている場合が多い。すなわち、上
記の分散仮想共有記憶を実現する場合に、このような情
報処理装置の主記憶管理装置が扱える最小のページサイ
ズが、実行するプログラム内のデータ構造のサイズより
も大き過ぎる場合に、ページサイズを小さくすることが
出来なかった。[0006] Usually, in the conventional information processing apparatus, there are a fixed page size and a fixed page size defined by the hardware related to the main memory management, but the page size is variable. However, the minimum page size that can be set is often set. That is, when the above-mentioned distributed virtual shared storage is realized, if the minimum page size that can be handled by the main storage management device of such an information processing device is too large than the size of the data structure in the program to be executed, I couldn't reduce the size.
【0007】[0007]
【発明が解決しようとする課題】従って、ページサイズ
が固定されていたり、ページの最小サイズが決められて
いる情報処理装置で、ネットワークで接続された複数の
情報処理装置の上で分散仮想共有記憶を実現し、そのう
えでプログラムを実行する場合において、別々の情報処
理装置でアクセスされるデータ構造のサイズがページサ
イズに比較して非常に小さく、全てを個々のページに配
置できない場合には、分散仮想共有記憶の一貫性保持手
順に従ったデータ転送などで、ネットワークの輻湊を生
じたり、情報処理装置に多くの処理を要求してしまい、
情報処理装置の実行効率が低下するという問題点があっ
た。Therefore, in an information processing apparatus having a fixed page size or a fixed minimum page size, the distributed virtual shared storage can be performed on a plurality of information processing apparatuses connected by a network. If the size of the data structure accessed by different information processing devices is very small compared to the page size and all of them cannot be placed on individual pages, the distributed virtual In data transfer etc. according to the procedure for maintaining consistency of shared memory, congestion of the network may occur or many processing may be requested to the information processing device,
There is a problem that the execution efficiency of the information processing device is reduced.
【0008】本発明は、前記従来の欠点を除去し、ネッ
トワークで結合された情報処理装置上で分散仮想共有記
憶を実現する際の一貫性保持手順のページデータの転送
によるネットワークの輻湊を低減し、情報処理装置の実
行効率の低下を防いだ主記憶管理方法及びそのシステム
を提供する。The present invention eliminates the above-mentioned conventional drawbacks, and reduces network congestion due to transfer of page data in a consistency maintaining procedure when implementing distributed virtual shared storage on information processing devices connected by a network. Provided are a main memory management method and a system thereof, which prevent deterioration of execution efficiency of an information processing device.
【0009】[0009]
【課題を解決するための手段】この課題を解決するため
に、本発明の主記憶管理方法は、主記憶をページ単位で
管理する情報処理システムにおける主記憶管理方法であ
って、ページを複数の疑似ページ単位で管理する疑似ペ
ージ管理表を設け、ページフォルトが発生した場合に、
前記疑似ページ管理表から発生アドレスが前記疑似ペー
ジのいずれに属するかを判別し、前記ページをアクセス
する場合に、前記ページ内の前記判別した疑似ページ以
外の内容を保存するように制御することを特徴とする。In order to solve this problem, a main memory management method of the present invention is a main memory management method in an information processing system for managing a main memory in page units. If a pseudo page management table that manages in pseudo page units is provided and a page fault occurs,
From the pseudo page management table, it is determined which of the pseudo pages the generated address belongs to, and when the page is accessed, control is performed so as to save the contents in the page other than the determined pseudo page. Characterize.
【0010】ここで、ページ単位で管理するページ管理
表を更に備え、前記ページへのアクセスは、前記判別し
た疑似ページが有する属性に基づいて、前記ページ管理
表により実施される。また、前記保存制御は、前記ペー
ジをアクセスした場合に、前記判別した疑似ページを処
理する命令のみが実行されるようにすることで実現され
る。また、前記保存制御は、ハードウエアフラグまたは
ソフトウエア例外命令を使用して行われる。Here, a page management table for managing in page units is further provided, and access to the page is performed by the page management table based on the attribute of the determined pseudo page. Further, the storage control is realized by executing only the instruction for processing the determined pseudo page when the page is accessed. Further, the saving control is performed using a hardware flag or a software exception instruction.
【0011】又、本発明の主記憶管理方法は、主記憶を
ページ単位で管理する情報処理システムの主記憶管理方
法であって、管理可能な最小のページサイズが限定され
ている場合に、該ページサイズよりも小さなページサイ
ズの疑似ページ単位でページフォールトの処理要求を出
力するために、実際に発生したハードウェアのページフ
ォールトを疑似ページ管理プログラムに伝え、前記疑似
ページ管理プログラムは、疑似的にページが設定されて
いた場合に、該疑似ページを含むハードウェアページを
ハードウェアのページテーブルへ登録し、該疑似ページ
へのアクセス命令だけを許可し、再び前記ハードウェア
ページをハードウェアのページテーブルからはずすこと
を特徴とする。The main memory management method of the present invention is a main memory management method of an information processing system for managing the main memory in page units, and when the minimum manageable page size is limited, In order to output a request for processing a page fault in units of a pseudo page having a page size smaller than the page size, the actual hardware page fault is transmitted to the pseudo page management program, and the pseudo page management program pseudo When the page is set, the hardware page including the pseudo page is registered in the hardware page table, only the access instruction to the pseudo page is permitted, and the hardware page is again set in the hardware page table. It is characterized by removing from.
【0012】ここで、前記疑似ページ管理プログラム
は、疑似ページが設定されていなかった場合に、オペレ
ーティングシステムのページ管理システムにフォールト
を伝達する。また、前記疑似ページへのアクセス命令だ
け許可するのに、該アクセス命令を実行した後にトレー
ス例外を発生するトレースフラグを用いる。また、前記
疑似ページへのアクセス命令だけ許可するのに、該アク
セス命令の次の命令位置にソフト例外命令を書き込んで
実行させる。Here, the pseudo page management program transmits a fault to the page management system of the operating system when the pseudo page is not set. In addition, a trace flag that generates a trace exception after executing the access instruction is used to permit only the access instruction to the pseudo page. Further, to permit only the access instruction to the pseudo page, the soft exception instruction is written and executed at the instruction position next to the access instruction.
【0013】又、本発明の情報処理システムは、主記憶
をページ単位で管理する情報処理システムにおいて、ペ
ージを複数の疑似ページ単位で管理する疑似ページ管理
表を記憶する記憶手段と、ページフォルトが発生した場
合に、前記疑似ページ管理表から発生アドレスが前記疑
似ページのいずれに属するかを判別する判別手段と、前
記ページをアクセスする場合に、前記ページ内の前記判
別した疑似ページ以外の内容を保存するように制御する
制御手段とを備えることを特徴とする。Further, the information processing system of the present invention is, in the information processing system for managing the main memory in page units, storing means for storing a pseudo page management table for managing pages in a plurality of pseudo page units and a page fault. When it occurs, a determination unit that determines which of the pseudo pages the generated address belongs to from the pseudo page management table, and a content other than the determined pseudo page in the page when the page is accessed. And a control means for controlling the storage.
【0014】又、本発明の情報処理装置は、通信網で互
いに結合された複数の情報処理装置からなり主記憶をペ
ージ単位で管理する情報処理システムにおける情報処理
装置であって、ページを複数の疑似ページ単位で管理す
る疑似ページ管理表を記憶する記憶手段と、ページフォ
ルトが発生した場合に、前記疑似ページ管理表から発生
アドレスが前記疑似ページのいずれに属するかを判別す
る判別手段と、前記ページをアクセスする場合に、前記
ページ内の前記判別した疑似ページ以外の内容を保存す
るように制御する制御手段とを備えることを特徴とす
る。Further, the information processing apparatus of the present invention is an information processing apparatus in an information processing system which is composed of a plurality of information processing apparatuses connected to each other through a communication network and manages a main memory in page units. Storage means for storing a pseudo-page management table managed in units of pseudo-pages; discrimination means for discriminating to which of the pseudo-pages the generated address belongs from the pseudo-page management table when a page fault occurs; When the page is accessed, a control unit that controls so as to save contents other than the determined pseudo page in the page is provided.
【0015】又、本発明の主記憶管理装置は、通信網で
互いに結合された複数の情報処理装置からなり主記憶を
ページ単位で管理する情報処理システムにおいて、前記
通信網と情報処理装置との間に接続される主記憶管理装
置であって、ページを複数の疑似ページ単位で管理する
疑似ページ管理表を記憶する記憶手段と、ページフォル
トが発生した場合に、前記疑似ページ管理表から発生ア
ドレスが前記疑似ページのいずれに属するかを判別する
判別手段と、前記ページをアクセスする場合に、前記ペ
ージ内の前記判別した疑似ページ以外の内容を保存する
ように制御する制御手段とを備えることを特徴とする。Further, the main memory management device of the present invention is an information processing system which comprises a plurality of information processing devices connected to each other by a communication network and manages the main memory in page units. A main memory management device connected between the storage means for storing a pseudo page management table for managing pages in units of a plurality of pseudo pages, and an address generated from the pseudo page management table when a page fault occurs. A determination unit that determines which of the pseudo pages belongs to, and a control unit that, when accessing the page, controls to save the contents of the page other than the determined pseudo page. Characterize.
【0016】ここで、前記記憶手段は、ページ単位で管
理するページ管理表を更に記憶し、前記制御手段は、前
記ページへのアクセスを、前記判別した疑似ページが有
する属性に基づいて、前記ページ管理表により実施す
る。また、前記制御手段は、前記ページをアクセスした
場合に、前記判別した疑似ページを処理する命令のみが
実行されるようにする命令制御手段を備える。また、前
記命令制御手段は、ハードウエアフラグまたはソフトウ
エア例外命令を使用して命令を制御する。Here, the storage means further stores a page management table managed in page units, and the control means accesses the page based on the attribute of the determined pseudo page. The management table will be used. Further, the control unit includes an instruction control unit that executes only an instruction for processing the determined pseudo page when the page is accessed. The instruction control means controls the instruction using a hardware flag or a software exception instruction.
【0017】[0017]
【実施例】以下、図面を参照して本発明の実施例を詳細
に説明する。図1は本実施例の主記憶管理方法の流れを
示す図である。ステップS1は、ページフォールトを他
のフォールトと区別して疑似ページ管理ステップに伝達
するステップ、ステップS2は、ページフォールトのア
ドレスから疑似ページへのアクセスかどうかを判別し、
疑似ページへのアクセスが設定されていないアドレスで
あった場合に、フォールトをページ管理システムへ通知
する疑似ページ管理ステップ、ステップS3は、疑似ペ
ージへのアクセスを行なう命令(通常は1命令なので、
以下1命令として説明する)だけ許可し、その次の命令
以降からはその疑似ページを含むページへのアクセスを
禁止するステップである。Embodiments of the present invention will be described below in detail with reference to the drawings. FIG. 1 is a diagram showing the flow of the main memory management method of this embodiment. Step S1 distinguishes the page fault from other faults and transmits it to the pseudo page management step, and step S2 determines whether or not the pseudo page is accessed from the address of the page fault.
When the access to the pseudo page is not set, the pseudo page management step of notifying the page management system of the fault, step S3 is an instruction for accessing the pseudo page (normally one instruction,
This is a step of permitting only one instruction) and prohibiting access to the page including the pseudo page after the next instruction.
【0018】図1において、ステップS1では、フォー
ルトが発生した場合にその原因を調べ、それがページフ
ォールト以外であったら、通常のフォールト処理ルーチ
ンS4へ進む。ページフォールトであった場合にはステ
ップS2aに進み、ページフォールトが発生したアドレ
スを調べる。ステップS2bで、そのアドレスに対して
疑似ページの存在を調べる。In FIG. 1, in step S1, when a fault has occurred, the cause is checked, and if it is other than a page fault, the routine proceeds to a normal fault processing routine S4. If it is a page fault, the process proceeds to step S2a, and the address where the page fault occurs is checked. In step S2b, the existence of a pseudo page is checked for that address.
【0019】疑似ページの管理は、通常のページ管理表
20(図2の(a))と同様にして疑似ページ管理表3
0により管理される。図2の(b)のように、疑似ペー
ジをハードウェアページの1/4にする場合には、疑似
ページそれぞれについて様々な属性を管理しなければな
らない。しかし、疑似ページは、単にハードウェアのペ
ージを4分割して属性を保持し、フォールトを実際のペ
ージ管理システムに伝達するか否かを決定するのであ
り、実際にハードウェアページの大きさが1/4になる
わけではないため、割り当てられる物理ページアドレス
は疑似ページ4個につき物理ページ1個になる。したが
って、図1のステップS2b,S2cにおける疑似ペー
ジのチェックは、この疑似ページ管理表に示される物理
アドレスや疑似ページの属性などを見て、フォールトを
ページ管理システムに伝達するか、図1のステップS3
に示されるその命令だけアクセスを許可するステップに
進むかの判断をする。The pseudo page management is performed in the same manner as the normal page management table 20 (FIG. 2A).
Managed by 0. As shown in FIG. 2B, when the pseudo page is ¼ of the hardware page, various attributes must be managed for each pseudo page. However, the pseudo page simply divides the hardware page into four, retains the attributes, and determines whether or not to transmit the fault to the actual page management system. Since it is not / 4, the allocated physical page address is one physical page for every four pseudo pages. Therefore, in checking the pseudo page in steps S2b and S2c of FIG. 1, the physical address or the pseudo page attribute shown in the pseudo page management table is checked and the fault is transmitted to the page management system, or the step of FIG. S3
It is determined whether or not to proceed to the step of permitting access only for the instruction shown in.
【0020】尚、図2の(b)の疑似ページ管理表30
で、valid bit 21とphysical page number25とは、
通常のページ管理表20と変らず、reference bit 2
2,modified bit23とpermission24は、ハードウエ
アの1ページを構成する疑似ページ分のデータを有す
る。すなわち、通常のページ管理のvirtual address 0
〜0fffの設定26は、4分割されて32〜35とな
っている。図2の(b)には、通常のページ管理表20
にはないpseudou page31が記憶されている。しかしな
がら、ハードウエアによるメモリアクセスは、通常のペ
ージ管理表20によるページ単位で行われる。Incidentally, the pseudo page management table 30 of FIG.
So, valid bit 21 and physical page number 25 are
Same as normal page management table 20, reference bit 2
2, modified bit 23 and permission 24 have data for a pseudo page that constitutes one page of hardware. That is, virtual address 0 for normal page management
The setting 26 of ˜0fff is divided into 4 to be 32 to 35. FIG. 2B shows a normal page management table 20.
There is a pseudou page 31 that is not found in. However, memory access by hardware is performed in page units according to the normal page management table 20.
【0021】図1のステップS3における、ハードウエ
アページをハードウエアのページテーブルに登録し(S
3a)、疑似ページへのアクセスを行なう1命令だけを
許可し(S3b)、その次の命令以降からはまたその疑
似ページを含むページへのアクセスを禁止する(3
c)。このステップS3は、疑似ページをハードウェア
ページ管理表に登録する際に疑似ページ単位では登録で
きないために、周りの疑似ページを含めてハードウェア
ページ単位で登録してしまうため、その命令以降の命令
で周りのアクセス保護されてるかも知れない疑似ページ
に対するアクセスをさせないために必要となる。The hardware page in step S3 of FIG. 1 is registered in the hardware page table (S
3a), permitting only one instruction to access the pseudo page (S3b), and prohibiting access to the page including the pseudo page after the next instruction (3).
c). In this step S3, when the pseudo page cannot be registered in the pseudo page unit when the pseudo page is registered in the hardware page management table, the peripheral page and the surrounding pseudo pages are registered in the hardware page unit. It is necessary to prevent access to the pseudo pages that may be protected by access.
【0022】<ステップS3の第1例>本実施例では図
3に示すようにトレース命令を用いて行なう。まず、ス
テップS31では疑似ページ管理表30から該当アドレ
スの属性(上記permission)を得る。ステップS32
で、その疑似ページを含むハードウェアページの属性ビ
ットを、その疑似ページの属性ビットと同一に設定す
る。ステップS33で、その疑似ページへアクセスする
命令だけを実行するために、スタック等に格納されてい
るユーザ情報の中のステイタスレジスタのトレースビッ
トをオンにする。ユーザモードに戻ったあとに、ステッ
プS34でその命令を実行して疑似ページにアクセスす
る。<First Example of Step S3> In this embodiment, a trace instruction is used as shown in FIG. First, in step S31, the attribute of the corresponding address (above permission) is obtained from the pseudo page management table 30. Step S32
Then, the attribute bit of the hardware page including the pseudo page is set to be the same as the attribute bit of the pseudo page. In step S33, the trace bit of the status register in the user information stored in the stack or the like is turned on to execute only the instruction to access the pseudo page. After returning to the user mode, the instruction is executed to access the pseudo page in step S34.
【0023】その後、ステップS35でトレース例外が
発生すると、フォールト処理がスタートする。そのフォ
ールト処理では、ステップS36で、先ほどのユーザの
ステイタスレジスタのトレースビットをオフにし、ステ
ップS37で、疑似ページ管理表30から疑似ページを
含むハードウェアページ内の全属性ビットを得て、ステ
ップS38で、疑似ページの属性で最も厳しいものを選
び、ステップS39で、実際のハードウェアページの属
性とする。そして、次の命令の実行を開始する。After that, when a trace exception occurs in step S35, the fault processing starts. In the fault process, in step S36, the trace bit of the status register of the user is turned off, in step S37, all attribute bits in the hardware page including the pseudo page are obtained from the pseudo page management table 30, and step S38. Then, the strictest pseudo page attribute is selected, and the attribute of the actual hardware page is set in step S39. Then, execution of the next instruction is started.
【0024】<ステップS3の第2例>図1のステップ
S3における疑似ページへのアクセスを行なう1命令だ
けを許可するステップでは、図5のようにソフトウェア
例外命令を用いることも可能である。図5のステップS
51,S52,S57〜S59は。図3のステップS3
1,S32,S37〜S39と同様である。<Second Example of Step S3> In the step of permitting only one instruction for accessing the pseudo page in step S3 of FIG. 1, it is possible to use a software exception instruction as shown in FIG. Step S of FIG.
51, S52, S57-S59. Step S3 in FIG.
1, S32, and S37 to S39.
【0025】この場合には、スタックに蓄えられたユー
ザ情報のステイタスレジスタを書き換える代わりに、ス
テップS53で、プログラムカウンタの値を読み込み、
そのプログラムカウンタで示された命令の次の命令を保
存して、ソフトウェア例外命令に書き換える。そうした
上でユーザモードに戻ると、ステップS54でその命令
を実行して疑似ページにアクセスする。In this case, instead of rewriting the status register of the user information stored in the stack, the value of the program counter is read in step S53,
The instruction next to the instruction indicated by the program counter is saved and rewritten as a software exception instruction. Then, when returning to the user mode, the instruction is executed to access the pseudo page in step S54.
【0026】ステップS55のように、次の命令でソフ
トウェア例外が発生すると、ソフトウェア例外のフォー
ルト処理がスタートする。そのソフトウェア例外のフォ
ールト処理では、ステップS56で、ソフトウェア例外
を消去して、先ほど待避した命令を同じ位置に書き戻
す。以下、図3と同様に、設定した疑似ページを含むハ
ードウェアページ管理表を元に戻して、再びユーザモー
ドに戻る。これによって1命令だけ疑似ページにアクセ
スさせることが可能となる。As in step S55, when a software exception occurs in the next instruction, the software exception fault process starts. In the fault processing of the software exception, in step S56, the software exception is erased and the instruction saved earlier is written back to the same position. Thereafter, as in the case of FIG. 3, the hardware page management table including the set pseudo page is returned to the original state and the mode is returned to the user mode again. This allows only one instruction to access the pseudo page.
【0027】図6は、本実施例の主記憶管理方法を実現
する情報処理システムの2つの構成例を示す図である。
尚、本実施例の主記憶管理方法は、この2つの構成に限
定されず種々の構成に適応されるのは明かである。又、
本実施例の主記憶管理方法は、主記憶が複数の情報処理
装置や主記憶管理装置に分散しているシステムで大きな
効果を挙げるが、主記憶が特定の装置に偏在したもので
あっても十分な効果を挙げ得る。FIG. 6 is a diagram showing two configuration examples of the information processing system for implementing the main memory management method of this embodiment.
It is obvious that the main memory management method of this embodiment is not limited to these two configurations and can be applied to various configurations. or,
The main memory management method of this embodiment has a great effect in a system in which the main memory is distributed to a plurality of information processing devices or main memory management devices, but even if the main memory is unevenly distributed to a specific device. It can give a sufficient effect.
【0028】図6の(a)は、システム内の1つの情報
処理装置61が、図2に示すページ管理表20と疑似ペ
ージ管理表30とを有するシステム例である。複数の情
報処理装置61〜63が通信網60を介して接続され
て、情報処理システムを構成している。この構成の場合
は、情報処理装置61が主記憶管理を集中して行う。図
6の(b)は、システム内の全ての情報処理装置61〜
64が、通信網60との間に主記憶管理装置65〜68
を有し、主記憶管理装置65〜68の各々がページ管理
表20a〜20dと疑似ページ管理表30a〜30dと
を有するシステム例である。この構成の場合は、主記憶
管理装置65〜68間で一貫性保持手順として書込み無
効化手順や書込み放送手順が行われる。FIG. 6A shows an example of a system in which one information processing device 61 in the system has the page management table 20 and the pseudo page management table 30 shown in FIG. A plurality of information processing devices 61 to 63 are connected via a communication network 60 to form an information processing system. In the case of this configuration, the information processing device 61 centrally manages the main memory. FIG. 6B shows all the information processing devices 61 to 61 in the system.
64 is a main storage management device 65-68 with the communication network 60.
And each of the main memory management devices 65 to 68 has a page management table 20a to 20d and a pseudo page management table 30a to 30d. In the case of this configuration, the write invalidation procedure and the write broadcast procedure are performed as the consistency maintaining procedure between the main storage management devices 65 to 68.
【0029】尚、本実施例では、疑似ページへのアクセ
スを1命令だけと限定したが、実施例の始めでも述べた
如く、通常のアクセス例に従っただけであり、これに限
定されない。1命令でない場合は、図5の例でソフトウ
ェア例外命令に書き換えられるのは、必要な命令数後の
アドレスである。又、本発明は、複数の機器から構成さ
れるシステムに適用しても1つの機器から成る装置に適
用しても良い。また、本発明は、システム或は装置にプ
ログラムを供給することによって達成される場合にも適
用できることはいうまでもない。In this embodiment, the access to the pseudo page is limited to only one instruction, but as described at the beginning of the embodiment, the normal access example is only followed and the present invention is not limited to this. If it is not one instruction, it is the address after the required number of instructions that is rewritten to the software exception instruction in the example of FIG. Further, the present invention may be applied to a system including a plurality of devices or an apparatus including one device. Further, it goes without saying that the present invention can be applied to the case where it is achieved by supplying a program to a system or an apparatus.
【0030】[0030]
【発明の効果】以上説明したように、複数の情報処理装
置上で分散仮想共有記憶を実現した場合に、ハードウェ
アで規定されている最小のページサイズ以下の疑似的な
ページを扱うことが可能となり、分散仮想共有記憶の一
貫性保持手順によるページの転送によるデータ交換量や
ページの無効化要求などの回数が減少し、ネットワーク
の輻湊を低減し、情報処理装置の処理を軽減する効果が
ある。As described above, when distributed virtual shared storage is realized on a plurality of information processing devices, it is possible to handle pseudo pages having a minimum page size specified by the hardware or less. Therefore, the amount of data exchange and the number of page invalidation requests due to the transfer of pages by the consistency maintaining procedure of the distributed virtual shared storage are reduced, and the congestion of the network is reduced and the processing of the information processing device is reduced. .
【図1】本実施例の主記憶管理方法の基本的な流れ図で
ある。FIG. 1 is a basic flowchart of a main memory management method of this embodiment.
【図2】通常のページ管理表及び疑似的なページを管理
する疑似ページ管理表を示す図である。FIG. 2 is a diagram showing a normal page management table and a pseudo page management table for managing pseudo pages.
【図3】疑似ページに対してトレースフラグを設定して
1命令だけアクセスを許可する流れ図である。FIG. 3 is a flow chart in which a trace flag is set for a pseudo page and access is permitted for only one instruction.
【図4】分散共有記憶の一貫性保持手順(MESI手
順)の状態遷移図である。FIG. 4 is a state transition diagram of a consistency maintaining procedure (MESI procedure) of distributed shared storage.
【図5】疑似ページに対してソフトウェア例外命令を用
いて1命令だけアクセスを許可する流れ図である。FIG. 5 is a flowchart for permitting only one instruction access to a pseudo page using a software exception instruction.
【図6】本実施例の主記憶管理方法を実現する情報処理
システムの構成例を示す図である。FIG. 6 is a diagram showing a configuration example of an information processing system for realizing the main memory management method of the present embodiment.
Claims (20)
システムにおける主記憶管理方法であって、 ページを複数の疑似ページ単位で管理する疑似ページ管
理表を設け、 ページフォルトが発生した場合に、前記疑似ページ管理
表から発生アドレスが前記疑似ページのいずれに属する
かを判別し、 前記ページをアクセスする場合に、前記ページ内の前記
判別した疑似ページ以外の内容を保存するように制御す
ることを特徴とする主記憶管理方法。1. A main memory management method in an information processing system for managing main memory in page units, wherein a pseudo page management table for managing pages in plural pseudo page units is provided, and when a page fault occurs, From the pseudo page management table, it is determined which of the pseudo pages the generated address belongs to, and when the page is accessed, control is performed so as to save the contents of the page other than the determined pseudo page. Characteristic main memory management method.
に備え、 前記ページへのアクセスは、前記判別した疑似ページが
有する属性に基づいて、前記ページ管理表により実施さ
れることを特徴とする請求項1記載の主記憶管理方法。2. A page management table for managing in page units is further provided, and access to the page is performed by the page management table based on an attribute of the determined pseudo page. The main memory management method according to item 1.
した場合に、前記判別した疑似ページを処理する命令の
みが実行されるようにすることで実現されることを特徴
とする請求項1または2記載の主記憶管理方法。3. The storage control is realized by causing only an instruction for processing the determined pseudo page to be executed when the page is accessed. Main memory management method described.
たはソフトウエア例外命令を使用して行われることを特
徴とする請求項3記載の主記憶管理方法。4. The main memory management method according to claim 3, wherein the storage control is performed using a hardware flag or a software exception instruction.
システムの主記憶管理方法であって、 管理可能な最小のページサイズが限定されている場合
に、 該ページサイズよりも小さなページサイズの疑似ページ
単位でページフォールトの処理要求を出力するために、
実際に発生したハードウェアのページフォールトを疑似
ページ管理プログラムに伝え、 前記疑似ページ管理プログラムは、疑似的にページが設
定されていた場合に、該疑似ページを含むハードウェア
ページをハードウェアのページテーブルへ登録し、該疑
似ページへのアクセス命令だけを許可し、再び前記ハー
ドウェアページをハードウェアのページテーブルからは
ずすことを特徴とする主記憶管理方法。5. A main memory management method for an information processing system for managing a main memory in page units, wherein a pseudo page size smaller than the page size is set when a manageable minimum page size is limited. In order to output the processing request for page fault in page units,
The actually generated hardware page fault is transmitted to the pseudo page management program, and when the pseudo page is set, the pseudo page management program stores the hardware page including the pseudo page in the hardware page table. A main memory management method characterized by registering to the pseudo page, permitting only an access instruction to the pseudo page, and again removing the hardware page from the page table of the hardware.
ページが設定されていなかった場合に、オペレーティン
グシステムのページ管理システムにフォールトを伝達す
ることを特徴とする請求項5記載の主記憶管理方法。6. The main memory management method according to claim 5, wherein the pseudo page management program transmits a fault to the page management system of the operating system when the pseudo page is not set.
可するのに、該アクセス命令を実行した後にトレース例
外を発生するトレースフラグを用いることを特徴とする
請求項5記載の主記憶管理方法。7. The main memory management method according to claim 5, wherein a trace flag for generating a trace exception after executing the access instruction is used to permit only the access instruction to the pseudo page.
可するのに、該アクセス命令の次の命令位置にソフト例
外命令を書き込んで実行させることを特徴とする請求項
5記載の主記憶管理方法。8. The main memory management method according to claim 5, wherein only the access instruction to the pseudo page is permitted, but a soft exception instruction is written and executed at an instruction position next to the access instruction.
システムにおいて、ページを複数の疑似ページ単位で管
理する疑似ページ管理表を記憶する記憶手段と、 ページフォルトが発生した場合に、前記疑似ページ管理
表から発生アドレスが前記疑似ページのいずれに属する
かを判別する判別手段と、 前記ページをアクセスする場合に、前記ページ内の前記
判別した疑似ページ以外の内容を保存するように制御す
る制御手段とを備えることを特徴とする情報処理システ
ム。9. An information processing system for managing a main memory in page units, a storage unit for storing a pseudo page management table for managing pages in a plurality of pseudo page units, and the pseudo page when a page fault occurs. Determination means for determining which one of the pseudo pages the generated address belongs to from the management table; and control means for controlling so as to save the contents of the page other than the determined pseudo page when accessing the page. An information processing system comprising:
るページ管理表を更に記憶し、 前記制御手段は、前記ページへのアクセスを、前記判別
した疑似ページが有する属性に基づいて、前記ページ管
理表により実施することを特徴とする請求項9記載の情
報処理システム。10. The storage unit further stores a page management table managed in page units, and the control unit controls the page management based on an attribute of the determined pseudo page for access to the page. The information processing system according to claim 9, which is implemented by a table.
スした場合に、前記判別した疑似ページを処理する命令
のみが実行されるようにする命令制御手段を備えること
を特徴とする請求項9または10記載の情報処理システ
ム。11. The control unit includes an instruction control unit that executes only an instruction for processing the determined pseudo page when the page is accessed. Information processing system described.
ラグまたはソフトウエア例外命令を使用して命令を制御
することを特徴とする請求項11記載の情報処理システ
ム。12. The information processing system according to claim 11, wherein the instruction control unit controls the instruction using a hardware flag or a software exception instruction.
処理装置からなり主記憶をページ単位で管理する情報処
理システムにおける情報処理装置であって、 ページを複数の疑似ページ単位で管理する疑似ページ管
理表を記憶する記憶手段と、 ページフォルトが発生した場合に、前記疑似ページ管理
表から発生アドレスが前記疑似ページのいずれに属する
かを判別する判別手段と、 前記ページをアクセスする場合に、前記ページ内の前記
判別した疑似ページ以外の内容を保存するように制御す
る制御手段とを備えることを特徴とする情報処理装置。13. An information processing device in an information processing system, comprising a plurality of information processing devices connected to each other via a communication network, for managing a main memory in page units, wherein the page is managed in a plurality of pseudo page units. Storage means for storing a management table; determination means for determining which of the pseudo pages the generated address belongs to from the pseudo page management table when a page fault occurs; An information processing apparatus, comprising: a control unit that controls so as to save contents other than the determined pseudo page in the page.
るページ管理表を更に記憶し、 前記制御手段は、前記ページへのアクセスを、前記判別
した疑似ページが有する属性に基づいて、前記ページ管
理表により実施することを特徴とする請求項13記載の
情報処理装置。14. The storage unit further stores a page management table managed in page units, and the control unit controls access to the page based on an attribute of the determined pseudo page. The information processing apparatus according to claim 13, wherein the information processing apparatus is implemented by a table.
スした場合に、前記判別した疑似ページを処理する命令
のみが実行されるようにする命令制御手段を備えること
を特徴とする請求項13または14記載の情報処理装
置。15. The control means comprises instruction control means for executing only an instruction for processing the determined pseudo page when the page is accessed. The information processing device described.
ラグまたはソフトウエア例外命令を使用して命令を制御
することを特徴とする請求項15記載の情報処理装置。16. The information processing apparatus according to claim 15, wherein the instruction control unit controls the instruction using a hardware flag or a software exception instruction.
処理装置からなり主記憶をページ単位で管理する情報処
理システムにおいて、前記通信網と情報処理装置との間
に接続される主記憶管理装置であって、 ページを複数の疑似ページ単位で管理する疑似ページ管
理表を記憶する記憶手段と、 ページフォルトが発生した場合に、前記疑似ページ管理
表から発生アドレスが前記疑似ページのいずれに属する
かを判別する判別手段と、 前記ページをアクセスする場合に、前記ページ内の前記
判別した疑似ページ以外の内容を保存するように制御す
る制御手段とを備えることを特徴とする主記憶管理装
置。17. An information processing system, comprising a plurality of information processing devices connected to each other via a communication network, for managing a main memory on a page-by-page basis. A main memory management device connected between the communication network and the information processing device. And a storage means for storing a pseudo page management table for managing pages in units of a plurality of pseudo pages, and to which of the pseudo pages the generated address from the pseudo page management table belongs when a page fault occurs. A main storage management device comprising: a determination unit that determines whether or not the page is accessed, and a control unit that controls the content other than the determined pseudo page in the page to be stored when the page is accessed.
るページ管理表を更に記憶し、 前記制御手段は、前記ページへのアクセスを、前記判別
した疑似ページが有する属性に基づいて、前記ページ管
理表により実施することを特徴とする請求項17記載の
主記憶管理装置。18. The page management table further stores a page management table managed on a page-by-page basis, and the control unit manages the page management based on an attribute of the determined pseudo page. 18. The main memory management device according to claim 17, which is implemented by a table.
スした場合に、前記判別した疑似ページを処理する命令
のみが実行されるようにする命令制御手段を備えること
を特徴とする請求項17または18記載の主記憶管理装
置。19. The control unit includes an instruction control unit that executes only an instruction for processing the determined pseudo page when the page is accessed. The main memory management device described.
ラグまたはソフトウエア例外命令を使用して命令を制御
することを特徴とする請求項19記載の主記憶管理装
置。20. The main memory management device according to claim 19, wherein said instruction control means controls an instruction using a hardware flag or a software exception instruction.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP7040107A JPH08235070A (en) | 1995-02-28 | 1995-02-28 | Main memory management method and system |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP7040107A JPH08235070A (en) | 1995-02-28 | 1995-02-28 | Main memory management method and system |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH08235070A true JPH08235070A (en) | 1996-09-13 |
Family
ID=12571645
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP7040107A Withdrawn JPH08235070A (en) | 1995-02-28 | 1995-02-28 | Main memory management method and system |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH08235070A (en) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US9348708B2 (en) | 2013-02-20 | 2016-05-24 | Samsung Electronics Co., Ltd. | Memory system performing address mapping according to bad page map |
-
1995
- 1995-02-28 JP JP7040107A patent/JPH08235070A/en not_active Withdrawn
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US9348708B2 (en) | 2013-02-20 | 2016-05-24 | Samsung Electronics Co., Ltd. | Memory system performing address mapping according to bad page map |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN115168259B (en) | A data access method, device, device and computer-readable storage medium | |
| JP3259969B2 (en) | Cache memory controller | |
| US5933848A (en) | System for managing the caching of data of a mass storage within a portion of a system memory | |
| KR101355105B1 (en) | Shared virtual memory management apparatus for securing cache-coherent | |
| CN107493329A (en) | A kind of remote document access method of distributed memory file system | |
| US20040107329A1 (en) | Memory pool configuration system | |
| JP5338435B2 (en) | Information processing program, information processing apparatus, and information processing method | |
| JPH07248967A (en) | Memory control method | |
| JPH08235070A (en) | Main memory management method and system | |
| JP2004206424A (en) | Data processing device and data transfer method in data processing device | |
| JPH0816885B2 (en) | Cache memory control method | |
| JPS5848289A (en) | Buffer memory controlling system | |
| JP2746189B2 (en) | File access control system | |
| US20200097294A1 (en) | Method for managing the supply of information, such as instructions, to a microprocessor, and a corresponding system | |
| JP3745909B2 (en) | File management method | |
| JPH05225055A (en) | Information processor | |
| JPH11237959A (en) | Multiple write storage | |
| JP3772003B2 (en) | Memory management system and data management method | |
| JPS6327936A (en) | File management method | |
| JP2710475B2 (en) | Memory control circuit | |
| JP2735400B2 (en) | Asynchronous I/O control method | |
| US5894564A (en) | System for identifying memory segment bounded by previously accessed memory locations within data block and transferring thereof only when the segment has been changed | |
| JPH10133948A (en) | Cache memory device | |
| JPH04291642A (en) | Cache control system | |
| JPH0520243A (en) | Data processing system |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20020507 |