JPH03223945A - 仮想記憶管理方法 - Google Patents

仮想記憶管理方法

Info

Publication number
JPH03223945A
JPH03223945A JP2270397A JP27039790A JPH03223945A JP H03223945 A JPH03223945 A JP H03223945A JP 2270397 A JP2270397 A JP 2270397A JP 27039790 A JP27039790 A JP 27039790A JP H03223945 A JPH03223945 A JP H03223945A
Authority
JP
Japan
Prior art keywords
shared
processor
page
virtual memory
storage device
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
JP2270397A
Other languages
English (en)
Other versions
JP3102495B2 (ja
Inventor
Toshiaki Arai
利明 新井
Tomotaka Miyashita
友孝 宮下
Yoshitaka Ofusa
大房 義隆
Hisashi Katada
片田 久
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Publication of JPH03223945A publication Critical patent/JPH03223945A/ja
Priority to US08/227,499 priority Critical patent/US5404478A/en
Application granted granted Critical
Publication of JP3102495B2 publication Critical patent/JP3102495B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/10Address translation
    • G06F12/1072Decentralised address translation, e.g. in distributed shared memory systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/163Interprocessor communication
    • G06F15/17Interprocessor communication using an input/output type connection, e.g. channel, I/O port
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/65Details of virtual memory and virtual address translation
    • G06F2212/656Address space sharing

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Multi Processors (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 (10) 〔産業上の利用分野〕 本発明は、大型計算機システムにおいて、プロセッサ間
で主(実)記憶装置以外の記憶装置を共用するマルチプ
ロセッサシステムに係り、特に、高速のアクセスができ
る大容量の共用記憶装置(たとえば拡張記憶装置)を装
備したマルチプロセッサシステムにおける仮想記憶管理
方法に関する。
〔従来の技術〕
仮想記憶方式は、アドレス変換テーブルを使用して実記
憶を仮想化する手法であり、現在の大型計算機システム
においては周知の技術である。ここでは、命令やデータ
を仮想記憶上に配置し、仮想記憶上のアドレスである仮
想アドレスを実アドレスに変換するアドレス変換装置に
よって対応する実アドレスを求め、それを用いて命令の
実行を行なっている。オペレーティングシステム(OS
)は、アドレス変換装置が使用するアドレス変換テーブ
ルを管理することによって、仮想記憶を制御している。
(11) 第8図は仮想記憶の実現方式を示したものである。仮想
記憶811は、プログラムが参照する論理的な記憶領域
である。仮想記憶はページと呼ばれる固定長の領域に分
割されて管理されている。
これを仮想ページ812と呼ぶ。仮想ページ812の内
容の実体は、実記憶装置102、または補助記憶装置8
10上のページングデータセット813に格納される。
仮想ページの実体がどの記憶装置に格納されているかを
示すテーブルがアドレス変換テーブル105である。ア
ドレス変換テーブル105の各々のエントリ814は仮
想ページに対応して用意され、各ページの実体の位置を
示している。
ページテーブルエントリ814の無効フラグ205は、
該当仮想ページに実ペー°ジが割り付けられているか否
かを示す、無効フラグ205がオフ(有効)である場合
には実記憶102の実ページ112が割り付けられてお
り、その実ページのアドレスは実ページアドレスエント
リ206に格納されている。
(12) 一方、無効フラグ205がオン(無効)である場合には
、実ページは割り付けられていない。この場合、該当仮
想ページの内容はページデータセット813に格納され
ており、その外部ページ114のアドレスを外部ページ
アドレスエントリ207が保持している。
アドレス変換テーブルエントリ814が有効となってい
る仮想ページをアクセスする場合、ハードウェアのアド
レス変換機構は仮想ページアドレスを実ページアドレス
に変換してその内容をアクセスする。また、無効となっ
ている仮想ページを参照しようとした場合にはアドレス
変換動作が完了せず、割込み動作が発生する。これをア
ドレス変換例外割込み、あるいはページフォールト割込
みという。この割込みを契機に、オペレーティングシス
テム(O8)は利用可能な実ページを割り付け、外部ペ
ージテーブルエントリ207に格納されている該当仮想
ページの内容を読み込み、無効フラグ205をオフとす
る。これらの処理により、該当仮想ページはアクセス可
能となる。
(13) 実際の計算機ではこのアドレス変換テーブルを節約する
ため、セグメントテーブル、ページテーブルという2段
階の変換を行なうことが多いが、基本的な構造、および
、制御方法は上記のとおりである。
以上の変換方式は大型計算機システムの分野では周知の
技術であるが、その詳細は、例えば、吉澤康文著[オペ
レーティングシステムの実際」(株式会社昭晃堂、l5
BN  4−7856−3503−7)第3章「仮想メ
モリ方式Jpp85−124に記述されている。
マルチプロセッサ方式の一方式である疎結合マルチプロ
セッサシステム(LCMP)は、プロセッサ間で主記憶
装置以外の外部記憶装置(DISC等)を共有し、プロ
セッサ間に接続されたチャネル間通信機構(cTC:A
)を介してプロセッサ間の交信を行うシステムである。
LCMPシステムは各々のプロセッサが独立したシステ
ムとして動作しているため、片方のプロセッサシステム
に異常が生じた場合においても、他のプロセッサの実(
14) 行は影響を受けない。また、異常が発生したシステムの
処理を、正常なプロセッサが引き継いで実行することが
できるため、非常に高信頼な計算機システムを構築する
ことが可能である。このような特徴を持つLCMPシス
テムは、銀行システム等、信頼性が高度に要求されるシ
ステムにおいては広く採用されている。L CM P方
式は計算機システムの分野では周知の技術であるが、そ
の詳細は例えば、「岩波情報料学辞典J  (ISBN
400−080074−4.pp438.多重プロセッ
サ)に記述されている。
第9図はLCMPシステムの概要である。LCMPでは
複数のプロセッサが主記憶以外の記憶領域(外部記憶装
置)を共用している。第9図では2つのプロセッサ、プ
ロセッサA 101 a 、プロセッサ8101bが共
用外部記憶104を共用している。また、プロセッサ間
で通信を行なうため、プロセッサをCTCAと呼ばれる
チャネル109で接続し、互いに、入出力操作のイメー
ジで通信するものである。さらに、互いに固有の実記憶
装(15) 置102a、102bを装備している。
LCMPで共用の外部記憶装置を共用するためには、プ
ロセッサ間で排他制御を行なう必要がある。この方式と
しては、外部記憶装置に装備されたハード的な機構を使
用して、一方が使用している間は他方からアクセス不可
能とする方式、または、一つのプロセッサ上のソフトウ
ェアが資源管理を行ない、共用資源をアクセスする場合
にはこのソフトウェアにその共有資源を排他的に制御す
るように要求する方式、等がある。ここではCTCAを
使用して各プロセッサが通信を行うことによって共有資
源の排他アクセスを行う方式の概要を説明する。
第10図は、CTCAを用いた通信方式の概要である。
CTCAは各プロセッサからは入出力装置のようにみえ
る。この例では、プロセッサA 101 aからプロセ
ッサ8101bへデータを転送する。まず、プロセッサ
A101aはCTCAに対して、Writeコマンドを
発行する。この結果、プロセッサB101bにはアテン
ション割込みが(16) かかる。この割込みに対応してプロセッサ間01bはR
eadコマンドを発行する。このようにして両プロセッ
サからの要求が一致して、データ転送が開始される。デ
ータ転送が終了した場合には、両者に終了割込みが返さ
れる。
第11図は、上記のデータ転送方法を使用して資源の排
他制御を行う方法の概要である。プロセッサA 101
 aには資源のユーザが、プロセッサB101bには伴
源の管理マネジャが配置されているとする。まず、資源
ユーザは資源の管理マネジャに、該当資源の排他使用要
求を発行する。この要求はCTCA経由でプロセッサ8
101b中の管理マネジャに通知される。管理マネジャ
は、その時使用中のユーザがいなければ要求を出したユ
ーザに使用を許可する。許可を受けたユーザは資源を使
用し、終了後に終了通知を発行する。終了通知を受け取
った管理マネジャは、資源の使用要求を発行している。
他のユーザに使用権を渡す。
以上のようにして、LCMPでは共用資源の排他制御を
行っている。
(17) LCMPにおける処理方式は、例えば、鎌田肇著「多重
仮想記憶オペレーティングシステム」6.3章、オーム
社、工SBN  4−274−07170−7に詳しく
記述されている。また、CTCAのハード仕様はI−I
 I T A Cマニュアル「チャネル間結合装置48
080−2−072に詳述されている。
LCMPシステムの欠点として、プロセッサ間の通信が
比較的低速である、という問題がある。
マルチプロセッサ方式の他方の方式である密結合マルチ
プロセッサ(TCMP)では実記憶及び仮想記憶を共有
しているため、プロセッサ間の通信速度は非常に高速で
ある(数百MB/秒以上)。
これに対して、LCMPではチャネルやディスクを介し
て通信しているため、通信速度は高々IMB/秒程度で
ある。
この欠点のため、LCMPの特徴が充分に発揮できない
という問題がある。例えば、共用ディスク等のシステム
資源を使用する場合にはプロセッサ間で排他制御が必要
であり、そのためプロセラ(18) サ間通信が不可欠である。また、片方のプロセッサに障
害が発生し、残りのプロセッサが処理を引継ぐ場合には
、片方のプロセッサが使用しているデータを他方のプロ
セッサに転送する必要がある。
このような場合、従来のLCMP方式では、チャネルや
CTCAを介しているため、低速であり、充分に性能を
発揮することができなかった。
一方、大型計算機システムではディスク装置への入出力
操作が性能上のネックとなっているという問題が発生し
ている。これを解決するため、予め主記憶にディスクの
データを格納しておき、ディスクへの入出力要求が発生
した場合に、データが主記憶中に存在すれば、ディスク
に対する入出力動作をせずに、主記憶間のデータ転送で
入出力動作を代行し、入出力動作を見掛は上高速化して
いる。この方式は入出力の仮想化と呼ばれ大型計算機で
は周知の技術である。
入出力の仮想化方式は、主記憶装置をキャッシュとして
使用することにより、実際の入出力動作を回避する方式
である。ここでの問題点は、LCMP(19) システムでは、プロセッサ間で共有するデータに対して
は入出力の仮想化技術が適用できないことである。それ
は、LCMPでは各々のプロセッサが独立した主記憶装
置を装備しているため、キャッシュとして使用している
主記憶間のデータの一致が保てないためである。
そのため、LCMPシステムでデータを共用する場合に
は、共用ディスク等にデータを配置し、CTCAを用い
てプロセッサ間で交信して排他制御を行ない、共用ディ
スクをアクセスする、という方式が採用されている。
計算機システムの記憶装置として、近年、拡張記憶(E
S)が開発された(特開昭59−167761)。
これは、ページ単位で主記憶とのデータ転送が可能な記
憶装置であり、ディスク等の従来の外部記憶装置に比べ
、高速にアクセスすることができる。
ただし、ESを使用するためには専用のアクセス命令を
使用してプログラムを作成する必要があり、ユーザプロ
グラムはそのままで高速なESの恩恵に預かる訳ではな
い。
(20) 〔発明が解決しようとする課題〕 以上のように、仮想記憶方式、LCMPマルチプロセッ
サシステム、入出力の仮想化、の手法は現代の大型計算
機システムには不可欠な技術である。ところが、上記の
ように、これらの手法は統合して使用しようとすると不
都合な点が多い。すなわち、 (1)LCMPではプロセッサ間の通信手段が煩雑であ
り、オーバヘッドが多い。
(2)LCMP間では高速な主(実)記憶を共用できな
い。従って、実記憶を補助記憶とで構築される仮想記憶
も共用できない。仮想記憶は命令で参照できるため、最
も簡単にアクセスできる記憶装置である。従って、仮想
記憶がプロセッサ間で共用できない場合にはプロセッサ
の間の通信は非常に複雑なものと成る。
(3)入出力の仮想化手法がLCMPでは使用できない
(c)高速な拡張記憶(ES)を使用するためには専用
のアクセス方法をプログラムしなければな(21) らず、簡単に、かつ、有効にESを使用できる方式が用
意されていない。
本発明の目的は、上記(1) 、 (2)の問題点を解
決し、LCMPシステムにおいて従来できなかった共用
の仮想記憶を実現することによって、LCMPシステム
においても、データ共用/排他を高速に、簡単に行なう
ことができる仮想記憶管理方法を提供することにある。
本発明の他の目的は、上記(3)の問題点を解決し、L
CMPシステムにおいても共用記憶装置に対する入出力
の仮想化を可能とした仮想記憶管理方法を提供すること
にある。
本発明の更に他の目的は、上記(c)の問題点を解決し
、電子的な記憶装置である拡張記憶(ES)をプロセッ
サ間で共用した場合に、ユーザがESを意識せず(共用
ESをアクセスするためのプログラムを作成せずに)、
高速なESの効果を発揮される仮想記憶管理方法を提供
することにある。
〔課題を解決するための手段〕
上記目的を達成するため、本発明の方法は、以(22) 下のように構成する。
(1)その基本構想として、マルチプロセッサシステム
(LCMP)で主記憶装置から追い出されたページを共
用外部記憶装置に書き込み、前記マルチプロセッサのい
ずれのプロセッサで前記の追い出されたページが必要と
なった場合にも前記追い出されたページを前記共用外部
記憶装置から読み込むことにより、前記ページを必要と
したプロセッサが前記追い出されたページをアクセス可
能とする。また、前記共用外部記憶装置上に更に前記各
プロセッサの仮想記憶のどのページを前記共用外部記憶
装置のどこに書き出したかを示すマツピングテーブルの
内容も書き出し、任意のプロセッサがページフォールト
を起こした場合には該書き出された他のプロセッサのマ
ツピングテーブルを読み込んで読み込むべきページの前
記共用外部記憶装置中の位置を知ることによって、どの
プロセッサからも該ページを読み込むことができるよう
に構成する。
(2)具体的には次のステップから構成する。
(23) (a)前記共用外部記憶装置上に更に前記各プロセッサ
の仮想記憶を管理するためのマツピングテーブルの内容
も書き出すステップと、(b)任意のプロセッサが自己
のプロセッサが保持していないページへのアクセスを必
要とした場合には、前記書き出された他のプロセッサの
マツピングテーブルを前記共用外部記憶装置から読み込
んで前記他のプロセッサの前記必要なページの使用状況
を調べるステップと、 (c)前記他のプロセッサが前記必要なページを使用し
ている場合には、 (i)前記他のプロセッサに前記必要なページを前記共
用外部記憶装置に書き出すことを要求し、前記他のプロ
セッサが書き出し処理を完了するまで待つステップと、 (ii)書き出しを要求された前記他のプロセッサは、
前記必要なページを前記共用外部記憶装置に書き出した
後、書き出しの完了を前記書き出しを要求したプロセッ
サに通知(24) するステップと、 (■)前記書き出し完了通知を受け取った前記書き出し
を要求したプロセッサは、前記書き出された必要なペー
ジを前記共用外部記憶装置から読み込むことによりアク
セスするステップと、 (d)前記の他のプロセッサが前記必要なページを使用
していない場合には、前記必要なページを前記共用外部
記憶装置から読み込むことでアクセスするステップ、 とを有する。
(3)又、具体的には次のステップからなる。
(a)前記共用外部記憶装置上に更に仮想記憶ページの
内容がどこに格納されているかを示すマツピングテーブ
ルの内容も書き出すステップと、 (b)任意のプロセッサが自己のプロセッサが保持して
いないページへのアクセスを必要とした場合には、 (c)前記書き出された他のプロセッサのマッピ(25
) ングテーブルを前記共用外部記憶装置から読み込んで前
記他のプロセッサの前記必要なページの使用状況を調べ
るステップと、 前記LCMPの他のプロセッサが前記必要なページを使
用している場合には、 (i)前記他のプロセッサに前記必要なページを前記共
用外部記憶装置に書き出すことを要求し、前記他のプロ
セッサが書き出し処理を完了するまで待つステップと、 (i)書き出しを要求された前記他のプロセッサは、前
記必要なページを前記共用外部記憶装置に書きした後、
書き出しの完了を前記書き出しを要求したプロセッサに
通知するステップと、 (iii)前記書き出し完了通知を受け取った前記書き
出しを要求したプロセッサは、前記書き出された必要な
ページを前記共用外部記憶装置から読み込むことにより
アクセスするステップと、 (d)前記LCMPの他のプロセッサがいずれも(26
) 前記必要なページを使用していない場合には、前記書き
出されたマツピングテーブルを前記共用外部記憶装置か
ら読み込んで該必要なページの前記共用外部記憶装置中
の位置を知り、該ページをアクセスするステップ、 とを有する。
(c)具体的な構成としては、前記共用外部記憶装置上
に共用のページデータセット(PGDS)を配置で、前
記共用PGDSに仮想記憶の内容を格納することによっ
て、前記LCMPのいずれのプロセッサが該仮想記憶を
アクセスしてページフォールトを起こした場合にも、前
記共用PGDS上の仮想記憶の内容を読み込むことで、
アクセスを済ませることができるようにする。
また、この共用PGDS上に(前記仮想記憶の内容に加
えて)更にアドレス変換テーブルの内容を格納し、格納
された内容を用いて各プロセッサ該他のプロセッサの該
共用仮想記憶の使用状況を調べて、自プロセッサの該仮
想記憶に対する実記憶割付は方法を決定することができ
る(27) ように構成する。
(5)具体的には以下のステップから構成する。
(a)前記共用仮想記憶に対する各プロセッサのアドレ
ス変換テーブルの内容を前記共用ページデータセットに
格納するステップと、(b)前記共用仮想記憶へのアク
セス時にページフォールトが発生した場合には、前記共
用ページデータセット内に格納された他のプロセッサの
アドレス変換テーブルを読み出すステップと、 (c)該読み出したアドレス変換テーブルの内容を検索
して、前記ページフォールトを起こした共用仮想記憶の
領域に対して他のプロセッサが既に実記憶を割り付けて
いるか否かを判定するステップと、 (d)他プロセッサが既に実記憶を割り付けている場合
には、該他のプロセッサに該当実記憶の内容を前記共用
ページデータセットに書き戻して該実記憶を開放するこ
とを要求するステップと、 (28) (e)通知を受けた前記他プロセッサは、前記共用仮想
記憶に割り付けていた前記実記憶の内容を前記共用ペー
ジデータセットに書き出して該実記憶を開放し、さらに
前記共用仮想記憶のアドレス変換テーブルも前記共用ペ
ージデータセットに書き出し、その後、書き出し処理を
完了したことを要求元のプロセッサに通知するステップ
と、 (f)完了通知を受け取った前記要求元のプロセッサは
書き戻された前記実記憶の内容を前記共用ページデータ
セットから読み取り、ページフォールトを起こした共用
仮想記憶の内容とするステップ、 とを有する(第3図)。
〔6)具体的にはまた、次のステップから構成する。
(a)固有仮想領域の一部であるウィンドウ領域を前記
共用仮想記憶の任意の一部とマツピングすることを指示
するステップと、 (b)前記マツピング指示があった場合に、前記共用ペ
ージデータセットに格納されている共(29) 用仮想記憶領域のアドレス変換テーブルの該当するエン
トリを前記ウィンドウ領域のアドレス変換テーブルの該
当するエントリに複写するステップと、 (e)前記共用仮想記憶の使用を終了した際に、前記マ
ツピングを終了することを指示するステップと、 (d)マツピング終了指示があった場合に、前記ウィン
ドウ領域のアドレス変換テーブルの該当するエントリを
前記共用ページデータセット中の前記共用仮想記憶のア
ドレス変換テーブルの該当するエントリに複写するステ
ップ、とを有し、ウィンドウ領域を通してプロセッサ間
で仮想記憶を共用する(第4図、第5図)。
(7) (a)ウィンドウ領域を前記共用仮想記憶の一
部にマツピングする際、前記共用仮想記憶のアドレス変
換テーブルの該当するエントリに、該当領域が既にマツ
ピングされていることを示すフラグをセットするステッ
プと、 (b)マツピング要求があった場合に、前記マツ(30
) ピングフラグを検査し、既にマツピングされていれば該
マツピングが解除されるまで前記マツピング要求の実行
を待たせるステップ、とを有する。
(8) (a)共用外部記憶装置上のファイルの内容の
一部または全部を前記共用仮想記憶に格納するステップ
と、 (b)前記ファイルに対して入出力要求が発行された場
合には、入出力操作を実行する前に前記ファイルの要求
される部分が前記共用仮想記憶装置に格納されているか
否かを検索するステップと、 (c)格納されている場合にはその内容を取り出すステ
ップと、 を有し、共用外部記憶上のファイルに対しても、入出力
を高速化する。
(9)共用外部記憶装置上のファイルの内容を全て前記
共用仮想記憶に格納するステップを有し、前記ファイル
へのアクセスを前記共用仮想記憶の機械語命令による参
照に置き換える。
(31) (10)共用外部記憶装置に、電子式の記憶装置であっ
て、データ転送を転送命令に同期して実行することので
きる拡張記憶装置(ES)を使用する。
〔作用〕
上記構成に基づく作用を説明する。
(1)LCMP構成のシステムにおいて、主記憶装置か
らページを追い出す場合には共用外部記憶装置に書き込
むように構成したので、前記疎結合マルチプロセッサの
いずれのプロセッサからもそのページを自プロセッサの
主記憶中に読み込むことができるため、プロセッサ間で
共用の仮想記憶装置を実現できる。更に、各プロセッサ
のマツピングテーブルの内容も同様の共用外部記憶装置
に格納する構成としたため、それを読み込むことにより
、どのプロセッサがどのページを主記憶中に取り込んで
いるか、または、ページが共用外部記憶のどこに格納さ
れているかを知ることができ、共用記憶に対する自己の
主記憶の割り付は方法を決定できるようにした(32) ため、プロセッサ間で同一の内容をもつ共用仮想記憶を
実現することができる。
(2)LCMP構成のシステムにおいて、主記憶装置か
らページを追い出す場合には共用外部記憶装置に書き込
むように構成したので、前記疎結合マルチプロセッサの
いずれのプロセッサからもそのページを自プロセッサの
主記憶中に読み込むことができるため、プロセッサ間で
共用の仮想記憶装置を実現できる。更に、前記共用仮想
記憶用のプロセッサのマツピングテーブルの内容も同様
の共用外部記憶装置に格納する構成としたため、それを
読み込むことにより、どのプロセッサがどのページを主
記憶中に取り込んでいるか、または、ページが共用外部
記憶のどこに格納されているかを知ることができ、共用
記憶に対する自己の主記憶の割り付は方法を決定できる
ようにしたため、プロセッサ間で同一の内容をもつ共用
仮想記憶を実現することができる。
(3)LCMP構成のシステムにおいて、ページデ(3
3) −タセットを共用記憶装置上に配置し、仮想記憶の内容
をこの共用のページデータセットに格納するように構成
したので、いずれのプロセッサからも主記憶に存在しな
いページデータセット上のページをアクセスできる共用
の仮想記憶装置を実現できる。さらに、アドレス変換テ
ーブルの内容も同様の共用のページデータセットに格納
する構成として、いずれかのプロセッサが共用仮想記憶
をアクセスしてページフォールトを起こした場合には、
他のプロセッサのアドレス変換テーブルの内容を共用L
CMPから読み込んで該他のプロセッサの共用仮想記憶
の使用状況を調べた上で、自己のプロセッサの共用仮想
記憶に対する実記憶割り付は方法を決定するようにした
ので、両プロセッサのアドレス変換テーブルを同一の内
容とすることができ、主記憶に存在しないページデータ
セット上のページをどのプロセッサからでもアクセスで
きるとともに、プロセッサ間で、同一の内容を持つ共用
の仮想記憶装置を容易に実現することができ(34) る。
(c)各々のプロセッサのアドレス変換テーブルを、全
てのプロセッサからアクセス可能な共用ページデータセ
ット上に配置することにより、互いに、他のプロセッサ
が共用仮想記憶装置を使用しているか否かを識別するこ
とが可能となる。
そして、自プロセッサがアクセスしようとする共用仮想
ページに対して、既に他のプロセッサが実記憶を割り付
けて使用している場合には、そのプロセッサに該当共用
仮想ページの書き戻して該当実記憶を開放することを要
求する。この操作により、同時に2つ以上のプロセッサ
が共用仮想記憶の同一仮想ページに対して実記憶を割付
けることがなくなり、プロセッサ間で該当仮想ページの
内容に矛盾が生じることを防ぐことができる(第3図)
(5)共用仮想記憶を参照するために、固有の仮想領域
をウィンドウとして使用する。共用記憶内に格納されて
いる共用仮想記憶領域のアドレス変換テーブルの該当エ
ントリを固有記憶領域の(35) アドレス変換テーブルの該当するエントリに複写するこ
とにより、ウィンドウ内から共通記憶記憶を参照可能と
なる。また、共通記憶記憶の使用を終了した際に、前記
仮想記憶のアドレス変換テーブルの該当するエントリを
前記共用仮想記憶のアドレス変換テーブルの該当するエ
ントリに複写することにより、その後は、他のプロセッ
サが同様にしてウィンドウを使用して共用記憶領域を使
用できる(第4図〜第5図)。
(6)ウィンドウマツピングをプロセッサ間で排他的に
行なうため、マツピングされていることを示すフラグを
設ける。マツピング要求があった場合に、マツピングフ
ラグを検査し、既にマツピングされていれば該マツピン
グが解除されるまで前記要求の実行を待たせることによ
り、排他制御が可能となる。
(7)共用記憶装置上のファイルの内容を前記共用仮想
記憶に格納することにより、共用ファイルへのアクセス
に対しても記憶化手法が適用可能となる。
(36) (8)共用記憶装置上のファイルの全ての内容を共用仮
想記憶に格納することにより、ファイルのアクセスを機
械語による参照に置き換えることができる。
(9)共用PGDSをプロセッサ間で共用された拡張記
憶装置に配置することにより、共用仮想記憶の内容が共
用PGDSに書き出されていた場合にも高速にアクセス
することができる。
〔実施例〕 以下に、本発明の実施例を図面によって説明する。
第1図は、本発明の共用仮想記憶を実現するためのテー
ブル構造の実施例である。本発明の特徴は、ページデー
タセットを共用の外部記憶に配置した点と、仮想記憶を
管理するアドレス変換テーブルの内容をこの共用のペー
ジデータセットに格納した点である。これらの処理によ
り、複数のプロセッサ間で同一の内容を持った仮想記憶
(共用仮想記憶)を構築することができる。以下第1図
に従って、実施例の詳細を説明する。
(37) 第1図は、二つのプロセッサ、プロセッサA101a、
プロセッサ8101b、で構成されるLCMPシステム
である。本発明はプロセッサ数には依存せずプロセッサ
台数が増えても同様に適用可能である。説明では、プロ
セッサAに固有な物には数字の末尾に1a′を添え、プ
ロセッサBに固有なものは′b′を添えて表示する。数
字のみのものはプロセッサ間で共有されるものあるいは
一般的なものに使用できる。
プロセッサA101aとプロセッサB101bは、各々
固有の実(主)記憶装置102 a 、102b、およ
び、(固有の)外部記憶装置103 a 、 103b
に接続されている。また、プロセッサ間共用の記憶装置
である外部記憶装置104を共用している。
さらに、プロセッサ間通信装置であるCTCA109に
よって接続され、互いに連絡することができる構成とな
っている。
アドレス変換テーブル105a、106bは6各のプロ
セッサの仮想記憶を管理するものであり、各プロセッサ
の実記憶装置102a、102bに(38) 格納されて、プロセッサ101a、101b中のアドレ
ス変換機構ハードウェアによって使用される。アドレス
変換テーブル105a、105bの各々のエントリは仮
想ページに対応する内容が有効で各プロセッサの主記憶
装置102a、102bに存在するのか、あるいは、無
効でページデータセット107a、107bに存在する
のかを示す。
その方式は、第8図に説明した通りである。
本発明の特徴であるプロセッサAの共用仮想記憶110
a、プロセッサBの共用仮想記憶110bは、共に同一
の内容を保持する。このために、共用外部記憶装置10
4に共用仮想記憶用のページデータセットである共用ペ
ージデータセット(共用PGDS)106を配置する。
さらに、共用PGDS106には、領域108a、10
8bに、共用仮想記憶110a、110bの記憶ページ
の内容、および、各プロセッサのアドレス変換テーブル
105a、105bの内容を各実記憶装置102a。
102bからコピーするなどにより格納しておく。
また、各プロセッサ固有の外部記憶装置103a。
(39) 103bには、それぞれプロセッサ固有の仮想記憶11
1a、1llbを実現するため、ページデータセット1
07a、107bを配置する。仮想記憶が共用仮想記憶
である場合には、ページデータセラ1へとして共用ペー
ジデータセット]、、 06を使用し、プロセッサ固有
の仮想記憶を作成する場合には、固有のページデータセ
ラh 107 a 。
107bを使用する。別の言い方をすれば、アドレス変
換テーブル中のプロセッサ固有の仮想記憶装置111a
用のエン1〜りは実ページ112aまたは外部ページ1
13aをポイントシ、共用仮想記憶110a用のエント
リは実ページ]12aまたは共用外部ページ114をポ
イントする。
なお、本発明において、仮想記憶の内容という意味は、
実ページ112aおよび共用外部ページ114の内容の
ことであり、特に、共用PGDS上に格納される仮想記
憶の内容とは、共用外部ページ114の内容をいう。
第2図は共用外部記憶装置104中の共用PGDS10
6の詳細を示したものである。テーブル類(c0) 201.204a、204bを合わせた部分は、第1図
の領域108a、108bに相当する。共用仮想記憶領
域は複数個設定することができる。
共用仮想記憶領域管理テーブル201は、共用仮想記憶
領域の名称エンI・す202と、各プロセッサのアドレ
ス変換エントリ203a、203bから成る。アドレス
変換エントリ203 a 、 203bは、各プロセッ
サが共用仮想記憶領域を参照するために使用するアドレ
ス変換テーブルの内容を格納している共用PGDS内の
アドレスを示している。
アドレス変換テーブルの内容204a、204bは該当
プロセッサの共用仮想記憶の使用状況を示すものである
。以降、プロセッサAに関する部分のみを説明するが、
プロセッサBに関する部分も同様である。プロセッサA
用のアドレス変換テーブルの内容204aは、無効フラ
グ205a、実ページアドレス206a、外部ページア
ドレス207aのエントリから成る。各々のエントリの
意味は第8図で説明したとおりである。該当する仮想ペ
ージに実ページが割り付けられている場合には無効(c
1) フラグ205aはオフとなっており、実ページアドレス
206aは自プロセッサ(プロセッサA)の実記憶10
2a中の実ページ112aのアドレスを示している。ま
た、無効フラグ205aがオン(「1」)である場合に
は、該当する仮想ページに実ページは割り付けられてお
らず、仮想ページの内容は外部ページアドレス207a
が示す共用外部ページ114に格納されている。
以上の構成と成っている共用仮想記憶管理テーブル20
1とアドレス変換テーブルの内容203を参照すること
により、各々のプロセッサは、互いに、他のプロセッサ
が共用仮想記憶を使用しているか否か、あるいは実記憶
を割り付けているか否かを判定することができる。そし
て、その判定結果を基に共用仮想記憶の内容に矛盾が生
じることの無いよう制御する。その為に必要な処理を以
下に説明する。
第1図および第2図に示したデータ構成を使用して共用
仮想記憶を管理するための方法を、第3図のフローチャ
ートを使用して説明する。
(c2) 本発明では、共用外部記憶は単にプロセッサ間で共用さ
れている外部記憶装置であればその種類は問わない。こ
こでは、説明の都合上共用外部記憶装置として拡張記憶
装置(ES)を使用した場合を想定する。ESの特徴は
同期的に実行される、すなわち、その完了までプロセッ
サは他の命令を実行しない命令(同期命令)を用いてデ
ータを転送できる点である。従って、従来のディスク装
置入出力命令のように、プロセッサは単に命令の起動を
要求するのみでその完了まで他の命令を実行できる命令
(非同期命令)を使用データ転送を行う記憶装置を共用
外部記憶として使用する場合に比べて、割込み処理が不
要となり、処理が簡略化できる、という利点がある。以
下の説明で使用するESのハードウェア仕様の概要は以
下の通りである。
(a)ESと仮想記憶間(実際には、共用外部記憶とし
てのESと、実記憶の間)データ転送をプロセッサによ
る同期命令を使用して行なうことができる。
(c3) (b)ESの指定した領域を排他的にアクセスできる命
令が用意されている。
(c)ESはプロセッサ間で共用可能である。
説明は、上記の特徴を持つESを使用して行なうが、非
同期命令を使用する記憶装置は共用外部記憶装置として
使用した場合にも、本発明は同様に適用可能である。そ
れは、説明に表れたデータ転送処理の夫れ夫れに対して
データ転送の完了を待つ手段と割込み処理が必要となる
だけである為である。データ転送の完了を待つ手段と割
込み処理は周知の技術であり、ここでは特に触れない。
さて、第3図におけるキーポイントは、共用仮想記憶の
内容をプロセッサ間で一致させることである。
その為に、共用仮想記憶領域用のアドレス変換テーブル
105を共用PGDS106上に複写しておく(ステッ
プ301)。共用仮想記憶110をアクセスするための
アドレス変換テーブルを更新する度に、更新した内容を
共用PGDS106上に複写しておく。(テーブル20
4あの内容はテーブル105a(c4) の内容に、テーブル204bの内容はテーブル105b
の内容に、それぞれ一致させておく)。
複写先の位置は共用PGDS内106の共用仮想記憶管
理テーブル201に指定されている。
ユーザプログラムが共用仮想記憶領域110を参照した
場合には、実記憶中のアドレス変換テーブル105を使
用してアドレス変換がハードウェアで実施される。この
とき、アドレス変換テーブルの該当するエントリの無効
フラグ205がオン(無効)であった場合には、プログ
ラムチエツク割込みが発生する。この割込みを契機に、
オペレーティングシステムはページング処理を行なう。
まず、自プロセッサ以外のプロセッサが該当仮想記憶領
域を使用しているか否かを判定するために、共用PGD
S106内の他のプロセッサのアドレス変換テーブルの
内容204を読み込む(ステップ302)。
例えば、プロセッサAがページフォールトを起こした場
合には(この仮定で以降の説明を進める)、プロセッサ
B用のアドレス変換テーブルの内容204bを読み込む
。この時、判定の間に他のプ(c5) ロセッサがアドレス変換テーブルの内容を書き換えるこ
とが無いよう、アドレス変換テーブルにロックし、排他
制御する。排他制御の方式は、LCMP方式の説明の際
に述べたように幾つかの方式があるが、ここでは、その
方式には依存しない。
次に、読み込んだアドレス変換テーブルの内容204b
の該当するエントリの無効フラグ205bを調べる(ス
テップ303)。無効フラグ205bがオフ(有効)で
ある場合にはそのアドレス変換テーブルを所有している
プロセッサ(この場合にはプロセッサB)が該当共用仮
想ページに実記憶(例えば112b)を割り付けている
。そこで、実記憶を割り付けているプロセッサB101
bに、該当実記憶の内容を共用PGSD106に書き戻
すことを要求する(ステップ304)。要求は、先に第
9図で説明したようにCTCA等のLCMPの通信手段
を用いて行なう。その後、要求が完了するのを待つ(ス
テップ305)。
書き戻し要求を受けたプロセッサ(プロセッサB)は、
指定された実ページ112bの内容を共(c6) 用PGDS106に書き込む(コピーする) (ステッ
プ306)。書き込み終了後、不要となった該当実ペー
ジ]12bを解放し、アドレス変換テーブル〕−05b
の該当するエントリを書き変え、その内容を共用PGD
S106に書く (ステップ307)。その後、書き込
みが完了したことを書き込み要求元(プロセッサA)に
通知する(プロセッサ308)。
書き込み完了を受信したプロセッサ(プロセッサA)は
共用PGDS106から該当共用仮想ページの内容(前
記ステップ306で書゛込まれた実ページ112bの内
容に相当)を読み込む(ステップ309)。その後、ア
ドレス変換機構が動作するようにアドレス変換テーブル
]−〇5aを書き換える(ステップ310)。その後、
書き換えたアドレス変換テーブルを共用DGDS中のア
ドレス変換テーブル管理テーブル201に書き込む(ス
テップ311)。
以上の操作により、他のプロセッサが使用し、変更した
領域に対しても、共用PGDSを介してデータを渡すこ
とにより、共用仮想記憶の内容を(c7) プロセッサ間で同一に保つ。
第12図は、共用仮想記憶を実現するためのテーブル構
造を示す別の実施例である。
本発明の特徴は、共用仮想記憶の各々のページがどこに
割り付けられているかを示す共用仮想記憶マツピングテ
ーブル]、30を共用外部記憶装置上に配置した点にあ
る。共用仮想記憶マツピングテーブル130の詳細な構
成は第13図を用いて後述する。
さて、第12図では、プロセッサA101aとプロセッ
サ8101bがLCMPを構成しており、各々固有の実
記憶装置102a、102bを有し、共用外部記憶10
4を共用している。各々のプロセッサ101a、101
bの実記憶装置102a。
102b上には共用仮想記憶110a、110bのアド
レス変換テーブル105a、105bが配置されている
。共用外部記憶104には、共用仮想記憶の内容の中で
実記憶102a、102bから追い出されたページ群、
および、共用仮想記憶の各ページが102a、102b
のどちらの実記(c8) 憶のどこに格納されているか、または、前記の追い出さ
れたページ群のどこに格納されているかを示すマツピン
グテーブル130が格納されている。
上記の構成を取ることで、マツピングテーブル130を
検索することにより、共用仮想記憶1]、Oa。
110bの任意のページの内容がどこに格納されている
かを知ることができるため、あるプロセッサが共用仮想
記憶のあるページを参照しようとしてその内容が該当プ
ロセッサの実記憶」二に不在であった場合に、共用仮想
記憶中のマツピングテーブル130を読み込んで格納位
置を調べ、内容を読み込み、内容不在を解決することが
できる。
第13図は、第12図のマツピングテーブル130の構
成の詳細を示したものである。
マツピングテーブル130は複数のエンI−リ150で
構成されており、各エンI−りは共用仮想記憶の仮想ペ
ージに対応している。エンI−リ150は、仮想ページ
の内容が実記憶上に存在するのか共用外部記憶上に存在
するのかを示すフラグ151、仮想ページの内容が実記
憶上に存在する場合に該(c9) 当実記憶が接続されているプロセッサの識別子152、
および、仮想ページの内容が共用外部記憶上に配置され
ている場合にその共用外部記憶」二での位置を示す共用
外部記憶アドレス153で構成される。
共用仮想記憶の該当するページがプロセッサの実記憶に
割り付けられている場合、例えば、プロセッサA101
aの実記憶102中に内容が格納されている場合には、
フラグ151は該当する仮想ページが実記憶中に存在す
る旨を示し、プロセッサ識別子152はプロセッサA1
01aをポイントしている。また、該当ページの内容が
共用外部記憶に格納されている場合にはフラグ151は
仮想ページが共用外部記憶に存在する旨を示し、共用外
部記憶アドレス153は該当ページの内容が格納されて
いる共用外部記憶ページ114のアドレスを示している
。従って、エントリ150の各項目を参照することで、
該当する共用仮想ページの内容がどこに存在するか、ど
うすればアクセスすることができるか、を知ることがで
きる。
(50) 第12図および第13図に示したデータ構成を使用して
共用仮想記憶を管理するための方法を、第14図のフロ
ーチャートを使用して説明する。
本発明の特徴は、共用仮想記憶の各々のページがどこに
割り付けられているかを示す共用仮想記憶マツピングテ
ーブルを共用外部記憶装置上に配置し、それを用い共用
仮想記憶の内容をプロセッサ間で一致させている。
そのためには、まず、共用仮想記憶110の内容が実記
憶102に入りきらず、実記憶102から追い出す場合
には、その内容を共用外部記憶104に書き出し、その
後、共用外部記憶104中のマツピングテーブル130
の仮想ページに対応するエントリ150を更新する。内
容の配置場所を示すフラグ151は実記憶上から共用外
部記憶上に更新し、共用外部記憶上のアドレス153に
は先に書き出したアドレスをセットする。(ステップ3
51)。
あるプロセッサ(プロセッサA 101 aを仮定する
)で、共用仮想記憶を参照しようとして該プ(51) ロセッサの実記憶102a上にその内容が存在しなかっ
た場合には、共用外部記憶104中のマツピングテーブ
ル130の、ページフォールトを起こした仮想ページに
対応するエントリ150を読み込む(ステップ352)
。読み込んだエントリ150のフラグ131を調べ、該
当仮想記憶の内容が他のプロセッサの実記憶中に存在す
るか否かを調べる(ステップ353)。もし、他のプロ
セッサの実記憶に存在すれば、プロセッサ識別子132
かにそのプロセッサを識別しく例えばプロセッサBとす
る)、そのプロセッサに該当仮想ページの内容の書き出
しを要求し、書き出し完了まで待つ(ステップ354)
他のプロセッサの実記憶上に存在しない場合、もしくは
他のプロセッサの書き出し完了後、共用外部記憶104
から該当仮想ページの内容を読み込んだ自己のプロセッ
サの実記憶袋fl 102 aに格納する(ステップ3
55)。その後、マツピングテーブル130の該当仮想
ページに対応するエントリ150を書き換える。フラグ
151は実記(52) 憶割り付は済みとし、プロセッサ識別子152は自己の
プロセッサ101aを示すよう各換える(ステップ35
6)。
一方、内容の書き出しを要求されたプロセッサ8101
bは、要求された仮想記憶の内容を共用外部記憶104
に書き出す(ステップ357)。
書き出したアドレスをマツピングテーブル130の該当
するエントリ150の共用外部記憶アドレス153に書
き込み、フラグ151を共用外部記憶中を示すように書
き換える(ステップ358)。
その後、書き出しの完了をプロセッサA101aに通知
する(ステップ359)。
第4図は、ウィンドウ領域を通して共用仮想領域を参照
する場合の実施例である。プロセッサA 101 a、
プロセッサ8101bはそれぞれ固有の仮想記憶111
a、1llbを有している。
これらのプロセッサ固有の仮想記憶を管理するため、実
記憶102a、102b中に固有仮想記憶用のアドレス
変換テーブル401a、401bを保持している。その
各エントリの内容、意味は第(53) 8図で説明したとおりである。
一方、共用仮想記憶110a、110bは第1図で説明
したとおり、同一の内容を保持しており、共用PGDS
106上の共用仮想記憶用アドレス変換テーブル402
で管理されている。ただし、本実施例では、プロセッサ
毎にアドレス変換テーブルが用意されているのではなく
、共通のものが一つあるだけである。すなわち、第2図
に示された2つのアドレス変換テーブルの内容204a
、204bのいずれかがアドレス変換テーブル402に
格納されている。
さて、ここでプロセッサA101aの固有仮想記憶11
1aの任意のウィンドウページ403aを通して、共用
仮想記憶110aのある仮想ページ404aを参照する
場合には、共用仮想記憶用のアドレス変換テーブル40
2の参照しようとする仮想ページ404aに対応するエ
ントリ405を、プロセッサAの固有仮想記憶用のアド
レス変換テーブル401aのウィンドウページ403a
に該当するエントリ407にコピーすれば良い。
(54) これらの操作の後、ウィンドウページ403aを参照す
れば、エントリ405aのコピーであるエン1−リ40
7が見え、これは、仮想ページ404aに対応するエン
トリ405 aが見えたことになるので、共用仮想記憶
の仮想ページ404aがアクセスできる。
同様に、プロセッサBの固有仮想記憶1 ]−1b中の
ウィンドウページ403bを通して共用仮想記憶110
bの仮想ページ4.04. bを参照するためには、共
用PGDS中のアドレス変換テーブルエン1〜す406
(仮想ページ404− bに対応)をプロセッサBの固
有仮想記憶用アドレス変換テーブル401aのエントリ
408にコピーすれば良い。
上記のような場合、もし、ウィンドウページ4、03 
aと、ウィンドウページ403bの仮想アドレスが等し
い場合にも、共用仮想記憶の仮想ページ404a、40
4bのアドレスが異なれば、異なる内容が参照できる。
次に、第4図のデータ構造を構築し、ウィンド(55) つを使用した共用仮想記憶参照の手順の詳細を第5図の
フローを用いて説明する。
プロセッサAの固有仮想記憶のある仮想ページ403a
をウィンドウとして共用仮想記憶110aの仮想ページ
404aを参照する場合のフローを第5図に示す。
まず、プロセッサA固有の仮想記憶をアドレス変換する
ためのアドレス変換テーブル401. a中の、仮想ペ
ージ403aをアドレス変換するためのエン1へり40
7を求める(ステップ501)。
これは、仮想ページの相対ページアドレスとアドレス変
換テーブルの先頭のアドレスを用いて求めることができ
る。
欣に、アクセスの対象と成る共用仮想記憶の仮想ページ
404aのアドレス変換テーブルエン1−り405を求
める(ステップ502)。求めた、エントリ405の内
容を先に求めたウィンドウページのエントリ407にコ
ピーする(ステップ(56) となる。
ウィンドウの対応付けを解除する場合について第5図(
b)に示す。この場合には、まず、ウィンドウに実記憶
が割り付けられているか否かをチエツクする(ステップ
504)。これは、ウィンドウ用のアドレス変換テーブ
ル401のエントリの無効フラグを調べることにより行
なう。もし、無効フラグがオフ(有効、実ページ割り付
は済み)である場合には、該当実ページを共用PGDS
106の共用外部ページに書き込み(コピーシ)、アド
レス変換テーブルエントリ407を(無効フラグをオン
からオフに)書き換える(ステップ505)。
その後、ウィンドウ用のアドレス変換テーブルエントリ
407の内容を、共用仮想ページ404. aに対応す
るアドレス変換テーブル402のエン1−り405をコ
ピーする(ステップ506)。
第6図は、共用ファイルの内容を共用仮想記憶に格納し
、共用ファイルへの入出力操作を削減する実施例である
共用ファイル601は共用外部記憶602中に(57) 存在するデータセットである。共用ファイル602への
アクセスを高速化するために、ファイル602の内容を
共用仮想記憶110a、110bに格納(コピー)して
おく。このとき、1 ]、 Oaと110bは同一の内
容を保持しているので、いずれか一方にのみ格納すれば
良い。共用仮想記憶に実体は、これまで説明したよう、
各プロセッサの実記憶102a、102b、または、共
用外部記憶104上に設けた共用PGDS106上に配
置されている。従って、共用ファイル601に対するア
クセス要求が合った場合に、共用ファイル601を直接
アクセスする替わりに共用仮想記憶110をアクセスす
れば見掛は上の入出力時間が削減できる。
第7図は、共用ファイル601の内容を共用仮想記憶1
10に格納して高速アクセスを行なう場合の処理フロー
である。
共用外部記憶上の共用ファイル601の内容を読み込ん
で共用仮想記憶110にコピーする(ステップ701)
。共用ファイル601に対して入出力命令を発行してそ
の内容を読み込む替わりに、(58) 共用仮想記憶110を機械語命令を用いて直接アドレス
する(ステップ702)。
第7図(b)は、部分常駐の場合である。
共用外部記憶上の共用ファイル601の内容の一部ある
いは全部を読み込んで共用仮想記憶110にコピーし、
どの部分をコピーしたかを記憶しておく (ステップ7
02)。該当共用ファイル601に対してアクセス要求
が合った場合には、要求された部分がステップ703で
コピーされた部分であるか否かを検索する(ステップ7
04)。コピーされていなければ(ステップ705)。
共用ファイル601から要求された内容を読み込む(ス
テップ706)。その後、共用仮想記憶110に空きが
有れば読み込んだ内容を格納する(ステップ707)。
もし、要求された内容が既に共用仮想記憶110に格納
されていれば(ステップ705)格納されているデータ
を使用し、実際の入出力処理は行なわない。
以上の処理により、共用ファイル601の容量が共用仮
想記憶110の容量より大きな場合にも、(59) 入出力を高速に行なうことができる。
以上の説明では、共用外部記憶に拡張記憶(ES)を使
用した場合を想定した。しかし、前述したように共用外
部記憶はプロセッサ間で共用された外部記憶装置であれ
ばその種類には関係しない。ただし、ESのような高速
な記憶装置を使用した場合の方がその効果は大きくなる
〔発明の効果〕
以上説明したように、本発明によれば、LCMPシステ
ムにおいて、共用の外部記憶装置(共用のPGDS)上
に仮想記憶の内容とアドレス変換テーブルの内容とを格
納することによって、プロセッサ間共用の仮想記憶であ
る共用仮想記憶を実現することができるので、プロセッ
サ間のデータ共用9適信を容易に、かつ、高速に行なう
ことができるという効果がある。また、共用ページデー
タセットとして拡張記憶(ES)を使用すればその効果
はさらに大きなものとなるという効果がある。
さらに、構築した共用仮想記憶を共用ファイルのキャッ
シュとして使用することにより、共用フ(60) アイルに対しても入出力の仮想化手法が適用でき。
入出力の高速化、オーバヘッドの削減が可能となるとい
う効果がある。
【図面の簡単な説明】
第1図は本発明の方法により共用仮想記憶を構築するた
めのマルチプロセッサシステムの機能構成を示すブロッ
ク図、第2図は共用仮想記憶を構築するための共用ペー
ジデータセットの実施例の詳細を示す構成図、第3図は
共用仮想記憶を実現するための手順を示すフローチャー
ト、第4図はウィンドウ領域を通じて共用仮想記憶を参
照する場合のシステムの機能構成を示すブロック図、第
5図は第4図の機能構成を構築し共用仮想記憶をウィン
ドウにより参照する手順を示すフローチャート、第6図
は共用ファイルの内容を共用仮想記憶に格納し共用ファ
イルに対する入出力操作を削減する仮想化方法の説明図
、第7図は第6図の共用仮想記憶を使用してプロセッサ
間共用ファイルに対する入出力を仮想かする手順を示す
フローチャート、第8図は従来の仮想記憶の実現方式の
説(61) 四回、第9図は従来の疎結合マルチプロセッサシステム
(LCMP)の説明図、第10図はプロセッサ間通信装
置(cTCA)によるプロセッサ間交信方式の説明図、
第11図はプロセッサ間通信装置(cTC:A)を用い
たLCMPシステムにおける資源排他方式の説明図、第
12図は本発明の方法により共用仮想記憶を構築するた
めのマルチプロセッサシステムの機能構成を示すブロッ
ク図、第13図は共用仮想記憶を構築するためのマツピ
ングテーブルの実施例の詳細を示す構成図、第14図は
共用仮想記憶を実現するための手順を示すフローチャー
ト、である。 101a・・・プロセッサA、101b・・・プロセッ
サB、102a、b=−(固有の)実記憶、104 ・
・・共用外部記憶装置、105a、b・・・アドレス変
換テーブル、106・・・共用ページデータセット、1
07 a 、 107 b−・−ページデータセット、
108a。 108b・・・アドレス変換テーブルの内容、109・
・・チャネル装置、110a、b・・・共用仮想記憶、
11.1a、b・・・プロセッサ固有仮想記憶、1.1
2a。 (62) 112b−(固有の)実ページ、113a、113b・
・外部ページ、11−4・・・共用外部ページ、130
・・・マツピングテーブル、150・・・マッピングテ
ーブルエントす、151・・・(媒体指定)フラグ、1
52・・・プロセッサ識別子、153・・・外部記憶ア
ドレス、201・・・共用仮想記憶領域管理テーブル、
202・・・共用仮想記憶領域の名称エントリ、203
a 。 203b・・・アドレス変換テーブルの内容を格納して
いる共用ページデータセットのアドレス、204a 。 b・・・共用仮想記憶用アドレス変換テーブルの内容、
205a、205b・・・(実ページ割り当ての)無効
フラグ、206a・・・実ページアドレス、207a・
・外部ページアドレス、401 a 、 40 l b
 −(固有仮想記憶用)アドレス変換テーブル、402
・・共用仮想記憶用アドレス変換テーブル、403a。 b・・・ウィンドウページ、404a、b・・・仮想ペ
ージ(マツピング対象ページ)、405,406・仮想
ページ(c04a、404b)に対応するエントリ、4
07,408・・・エントリ (c05゜406)のコ
ピー、601・・・共用ファイル。 (63) 消 14

Claims (1)

  1. 【特許請求の範囲】 1、仮想記憶方式を採用し、外部記憶装置を共用するマ
    ルチプロセッサシステムにおいて、主記憶装置から追い
    出したページを前記共用外部記憶装置に書き込み、前記
    マルチプロセッサの内のいずれのプロセッサで前記追い
    出したページを必要とした場合にも、前記追い出したペ
    ージを前記共用外部記憶装置から読み込むことにより、
    前記プロセッサが前記追い出したページをアクセス可能
    とすることを特徴とする仮想記憶管理方法。 2、前記共用外部記憶装置上に更に前記各プロセッサの
    仮想記憶を管理するためのマッピングテーブルの内容も
    書き出し、任意のプロセッサが自己のプロセッサが保持
    していないページへのアクセスを必要とした場合には、
    前記書き出された他のプロセッサのマッピングテーブル
    を前記共用外部記憶装置から読み込んで該必要なページ
    の前記共用外部記憶装置中の位置を知り、該ページをア
    クセスすることを特徴とする請求項1記載の仮想記憶管
    理方法。 3、前記共用外部記憶装置上に更に前記各プロセッサの
    仮想記憶を管理するためのマッピングテーブルの内容も
    書き出し、任意のプロセッサが自己のプロセッサが保持
    していないページへのアクセスを必要とした場合には、
    前記書き出された他のプロセッサのマッピングテーブル
    を前記共用外部記憶装置から読み込んで前記他のプロセ
    ッサの前記必要なページの使用状況を調べ、前記他のプ
    ロセッサが前記必要なページを使用している場合には、
    (a)前記他のプロセッサに前記必要なページを前記共
    用外部記憶装置に書き出すことを要求し、前記他のプロ
    セッサが書き出し処理を完了するまで待つステップと、 (b)書き出しを要求された前記他のプロセッサは、前
    記必要なページを前記共用外部記憶装置に書きした後、
    書き出しの完了を前記書き出しを要求したプロセッサに
    通知するステップと、 (c)前記書き出し完了通知を受け取った前記書き出し
    を要求したプロセッサは、前記書き出された必要なペー
    ジを前記共用外部記憶装置から読み込むことによりアク
    セスするステップと、 を有することを特徴とする請求項1または2記載の仮想
    記憶管理方法。 4、前記共用外部記憶装置上に更に仮想記憶ページの内
    容がどこに格納されているかを示すマッピングテーブル
    の内容も書き出し、任意のプロセッサが自己のプロセッ
    サが保持していないページへのアクセスを必要とした場
    合には、前記書き出されたマッピングテーブルを前記共
    用外部記憶装置から読み込んで該必要なページの前記共
    用外部記憶装置中の位置を知り、該ページをアクセスす
    ることを特徴とする請求項1記載の仮想記憶管理方法。 5、前記共用外部記憶装置上に更に仮想記憶ページの内
    容がどこに格納されているかを示すマッピングテーブル
    の内容も書き出し、任意のプロセッサが自己のプロセッ
    サが保持していないページへのアクセスを必要とした場
    合には、前記書き出された他のプロセッサのマッピング
    テーブルを前記共用外部記憶装置から読み込んで前記他
    のプロセッサの前記必要なページの使用状況を調べ、前
    記マルチプロセッサの内の他のプロセッサが前記必要な
    ページを使用している場合には、 (a)前記他のプロセッサに前記必要なページを前記共
    用外部記憶装置に書き出すことを要求し、前記他のプロ
    セッサが書き出し処理を完了するまで待つステップと、 (b)書き出しを要求された前記他のプロセッサは、前
    記必要なページを前記共用外部記憶装置に書きした後、
    書き出しの完了を前記書き出しを要求したプロセッサに
    通知するステップと、 (c)前記書き出し完了通知を受け取った前記書き出し
    を要求したプロセッサは、前記書き出された必要なペー
    ジを前記共用外部記憶装置から読み込むことによりアク
    セスするステップと、 を有することを特徴とする請求項1または5記載の仮想
    記憶管理方法。 6、仮想記憶方式を採用し、外部記憶装置を共用したマ
    ルチプロセッサシステムにおいて、前記共用外部記憶装
    置上にページデータセットを割り付けて、少なくとも一
    部の仮想記憶の内容を該共用ページデータセットに格納
    し、前記マルチプロセッサのいずれのプロセッサが該仮
    想記憶をアクセスしてページフォールトを起こした場合
    にも、前記共用ページデータセットから前記仮想記憶の
    内容を読み込むことを特徴とする仮想記憶管理方法。 7、前記共用ページデータセット上に更に前記各プロセ
    ッサの前記共用仮想記憶に対するアドレス変換テーブル
    の内容を格納し、任意のプロセッサが該共用仮想記憶を
    アクセスしてページフォールトを起こした場合には、他
    のプロセッサのアドレス変換テーブルの内容を前記共用
    ページデータセットから読み込んで、該他のプロセッサ
    の該共用仮想記憶の使用状況を調べて、自プロセッサの
    該仮想記憶に対する実記憶割付け方法を決定することを
    特徴とする請求項1または6記載の仮想記憶管理方法。 8、(a)前記共用仮想記憶に対する各プロセッサのア
    ドレス変換テーブルの内容を前記共用ページデータセッ
    トに格納するステップと、 (b)前記共用仮想記憶へのアクセス時にページフオー
    ルトが発生した場合には、前記共用ページデータセット
    内に格納された他のプロセッサのアドレス変換テーブル
    を読み出すステップと、 (c)該読み出したアドレス変換テーブルの内容を検索
    して、前記ページフォールトを起こした共用仮想記憶の
    領域に対して他のプロセッサが既に実記憶を割り付けて
    いるか否かを判定するステップと、 (d)他プロセッサが既に実記憶を割り付けている場合
    には、該他のプロセッサに該当実記憶の内容を前記共用
    ページデータセットに書き戻して該実記憶を開放するこ
    とを要求するステップと、 (e)通知を受けた前記他プロセッサは、前記共用仮想
    記憶割り付けていた前記実記憶の内容を前記共用ページ
    データセットに書き出して該実記憶を開放し、さらに前
    記共用仮想記憶のアドレス変換テーブルも前記共用ペー
    ジデータセットに書き出し、その後、書き出し処理を完
    了したことを要求元のプロセッサに通知するステップと
    、 (f)完了通知を受け取った前記要求元のプロセッサは
    書き戻された前記実記憶の内容を前記共用ページデータ
    セットから読み取り、ページフオールトを起こした共用
    仮想記憶 の内容とするステップ、 とを有することを特徴とする請求項2、4または1記載
    の仮想記憶管理方法。 9、(a)固有仮想領域の一部であるウィンドウ領域を
    前記共用仮想記憶の任意の一部とマッピングすることを
    指示するステップと、 (b)前記マッピング指示があった場合に、前記共用ペ
    ージデータセットに格納されている共用仮想記憶領域の
    アドレス変換テーブルの該当するエントリを前記ウィン
    ドウ領域のアドレス変換テーブルの該当するエントリに
    複写するステップと、 (c)前記共用仮想記憶の使用を終了した際に、前記マ
    ッピングを終了することを指示するステップと、 (d)マッピング終了指示があった場合に、前記ウィン
    ドウ領域のアドレス変換テーブルの該当するエントリを
    前記共用ページデータセット中の前記共用仮想記憶のア
    ドレス変換テーブルの該当するエントリに複写するステ
    ップ、 とを有し、ウィンドウ領域を通してプロセッサ間で仮想
    記憶を共用することを特徴とする請求項2、4または7
    記載の仮想記憶管理方法。 10、(a)ウィンドウ領域を前記共用仮想記憶の一部
    にマッピングする際、前記共用仮想記憶のアドレス変換
    テーブルの該当するエントリに、該当領域が既にマッピ
    ングされていることを示すフラグをセットするステップ
    と、 (b)マッピング要求があった場合に、前記マッピング
    フラグを検査し、既にマッピングされていれば該マッピ
    ングが解除されるまで前記マッピング要求の実行を待た
    せるステップ、 とを有することを特徴とする請求項9記載の仮想記憶管
    理方法。 11、(a)共用外部記憶装置上のファイルの内容の一
    部または全部を前記共用仮想記憶に格納するステップと
    、 (b)前記ファイルに対して入出力要求が発行された場
    合には、入出力操作を実行する前に前記ファイルの要求
    される部分が前記共用仮想記憶装置に格納されているか
    否かを検索するステップと、 (c)格納されている場合にはその内容を取り出すステ
    ップと、 を有し、共用外部記憶上のファイルに対しても、入出力
    を高速化することを特徴とする請求項1から10のいず
    れか1記載の仮想記憶管理方法。 12、共用外部記憶装置上のファイルの内容を全て前記
    共用仮想記憶に格納するステップを有し、前記ファイル
    へのアクセスを前記共用仮想記憶の機械語命令による参
    照に置き換えることを特徴とする請求項1から10のい
    ずれか1記載の仮想記憶管理方法。 13、共用外部記憶装置に、電子式の記憶装置であって
    、データ転送を転送命令に同期して実行することのでき
    る拡張記憶装置(ES)を使用することを特徴とする請
    求項1から10のいずれか1記載の仮想記憶管理方法。
JP02270397A 1989-12-28 1990-10-11 仮想記憶管理方法 Expired - Fee Related JP3102495B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US08/227,499 US5404478A (en) 1989-12-28 1994-04-14 Method of managing a virtual storage for a multi-processor system

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP1-338170 1989-12-28
JP33817089 1989-12-28

Publications (2)

Publication Number Publication Date
JPH03223945A true JPH03223945A (ja) 1991-10-02
JP3102495B2 JP3102495B2 (ja) 2000-10-23

Family

ID=18315575

Family Applications (1)

Application Number Title Priority Date Filing Date
JP02270397A Expired - Fee Related JP3102495B2 (ja) 1989-12-28 1990-10-11 仮想記憶管理方法

Country Status (2)

Country Link
US (1) US5404478A (ja)
JP (1) JP3102495B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010244303A (ja) * 2009-04-06 2010-10-28 Kyocera Mita Corp メモリ管理装置及び画像形成装置

Families Citing this family (48)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2829115B2 (ja) * 1990-10-19 1998-11-25 株式会社日立製作所 ファイル共用方法
JPH0659982A (ja) * 1992-08-10 1994-03-04 Hitachi Ltd 仮想記憶制御方法および装置
US5463750A (en) * 1993-11-02 1995-10-31 Intergraph Corporation Method and apparatus for translating virtual addresses in a data processing system having multiple instruction pipelines and separate TLB's
US5845331A (en) * 1994-09-28 1998-12-01 Massachusetts Institute Of Technology Memory system including guarded pointers
US5560013A (en) * 1994-12-06 1996-09-24 International Business Machines Corporation Method of using a target processor to execute programs of a source architecture that uses multiple address spaces
US5924125A (en) * 1995-08-01 1999-07-13 Arya; Siamak Method and apparatus for parallel access to consecutive TLB entries
US5860144A (en) * 1996-08-09 1999-01-12 Oracle Corporation Addressing method and system for providing access of a very large size physical memory buffer to a number of processes
US5890011A (en) * 1997-01-27 1999-03-30 International Business Machines Corporation Method and system for dynamically translating bus addresses within a computer system
JPH11143779A (ja) * 1997-11-07 1999-05-28 Nec Corp 仮想記憶装置におけるページング処理システム
US6161191A (en) * 1998-05-12 2000-12-12 Sun Microsystems, Inc. Mechanism for reliable update of virtual disk device mappings without corrupting data
US7069412B2 (en) * 1999-02-17 2006-06-27 Elbrus International Method of using a plurality of virtual memory spaces for providing efficient binary compatibility between a plurality of source architectures and a single target architecture
US20080008393A1 (en) * 1999-04-09 2008-01-10 Dave Stuttard Parallel data processing apparatus
US20070242074A1 (en) * 1999-04-09 2007-10-18 Dave Stuttard Parallel data processing apparatus
US20080184017A1 (en) * 1999-04-09 2008-07-31 Dave Stuttard Parallel data processing apparatus
US7627736B2 (en) * 1999-04-09 2009-12-01 Clearspeed Technology Plc Thread manager to control an array of processing elements
US8171263B2 (en) * 1999-04-09 2012-05-01 Rambus Inc. Data processing apparatus comprising an array controller for separating an instruction stream processing instructions and data transfer instructions
US20070294510A1 (en) * 1999-04-09 2007-12-20 Dave Stuttard Parallel data processing apparatus
US7526630B2 (en) 1999-04-09 2009-04-28 Clearspeed Technology, Plc Parallel data processing apparatus
US20080162874A1 (en) * 1999-04-09 2008-07-03 Dave Stuttard Parallel data processing apparatus
US7506136B2 (en) * 1999-04-09 2009-03-17 Clearspeed Technology Plc Parallel data processing apparatus
GB2348979A (en) * 1999-04-09 2000-10-18 Pixelfusion Ltd Parallel data processing system with shared memory
US8174530B2 (en) * 1999-04-09 2012-05-08 Rambus Inc. Parallel date processing apparatus
US8169440B2 (en) * 1999-04-09 2012-05-01 Rambus Inc. Parallel data processing apparatus
US20080007562A1 (en) * 1999-04-09 2008-01-10 Dave Stuttard Parallel data processing apparatus
US20080016318A1 (en) * 1999-04-09 2008-01-17 Dave Stuttard Parallel data processing apparatus
US8762691B2 (en) * 1999-04-09 2014-06-24 Rambus Inc. Memory access consolidation for SIMD processing elements using transaction identifiers
AU3829500A (en) * 1999-04-09 2000-11-14 Clearspeed Technology Limited Parallel data processing apparatus
US7966475B2 (en) 1999-04-09 2011-06-21 Rambus Inc. Parallel data processing apparatus
US7802079B2 (en) * 1999-04-09 2010-09-21 Clearspeed Technology Limited Parallel data processing apparatus
US6766358B1 (en) * 1999-10-25 2004-07-20 Silicon Graphics, Inc. Exchanging messages between computer systems communicatively coupled in a computer system network
US6898670B2 (en) 2000-04-18 2005-05-24 Storeage Networking Technologies Storage virtualization in a storage area network
US7269631B2 (en) * 2000-06-02 2007-09-11 Hewlett-Packard Development Company, L.P. Architecture for parallel distributed table driven I/O mapping
US6799200B1 (en) * 2000-07-18 2004-09-28 International Business Machines Corporaiton Mechanisms for efficient message passing with copy avoidance in a distributed system
JP4241911B2 (ja) * 2002-03-28 2009-03-18 株式会社日立製作所 情報処理システム
US6725284B2 (en) * 2002-04-25 2004-04-20 International Business Machines Corporation Logical partition hosted virtual input/output using shared translation control entries
US6920521B2 (en) * 2002-10-10 2005-07-19 International Business Machines Corporation Method and system of managing virtualized physical memory in a data processing system
US6907494B2 (en) * 2002-10-10 2005-06-14 International Business Machines Corporation Method and system of managing virtualized physical memory in a memory controller and processor system
US6981125B2 (en) * 2003-04-22 2005-12-27 International Business Machines Corporation Method and apparatus for managing shared virtual storage in an information handling system
US7310721B2 (en) * 2003-10-30 2007-12-18 Microsoft Corporation Shadow page tables for address translation control
US7921262B1 (en) * 2003-12-18 2011-04-05 Symantec Operating Corporation System and method for dynamic storage device expansion support in a storage virtualization environment
KR100864834B1 (ko) * 2007-04-30 2008-10-23 한국전자통신연구원 메모리 재할당을 이용한 다중 프로세서 간의 데이터 전송장치 및 방법
JP2009087282A (ja) * 2007-10-03 2009-04-23 Fuji Xerox Co Ltd 並列計算システムおよび並列計算方法
JP5270924B2 (ja) * 2008-01-30 2013-08-21 株式会社東芝 固定長メモリブロック管理装置及び固定長メモリブロック管理装置の制御方法
US8745314B1 (en) * 2008-06-24 2014-06-03 Virident Systems, Inc. Methods for a random read and read/write block accessible memory
US9513695B2 (en) 2008-06-24 2016-12-06 Virident Systems, Inc. Methods of managing power in network computer systems
CN102110072B (zh) * 2009-12-29 2013-06-05 中兴通讯股份有限公司 一种多处理器完全互访的方法及系统
US9430401B2 (en) * 2015-01-16 2016-08-30 International Business Machines Corporation Implementing paging optimization to avoid populate on page fault during an IO read
JP2019008730A (ja) * 2017-06-28 2019-01-17 東芝メモリ株式会社 メモリシステム

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4136386A (en) * 1977-10-06 1979-01-23 International Business Machines Corporation Backing store access coordination in a multi-processor system
US4373179A (en) * 1978-06-26 1983-02-08 Fujitsu Limited Dynamic address translation system
JPS55112651A (en) * 1979-02-21 1980-08-30 Fujitsu Ltd Virtual computer system
US4484267A (en) * 1981-12-30 1984-11-20 International Business Machines Corporation Cache sharing control in a multiprocessor
JPS59167761A (ja) * 1983-03-14 1984-09-21 Hitachi Ltd 計算機システム
US5239643A (en) * 1987-11-30 1993-08-24 International Business Machines Corporation Method for reducing disk I/O accesses in a multi-processor clustered type data processing system

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010244303A (ja) * 2009-04-06 2010-10-28 Kyocera Mita Corp メモリ管理装置及び画像形成装置

Also Published As

Publication number Publication date
US5404478A (en) 1995-04-04
JP3102495B2 (ja) 2000-10-23

Similar Documents

Publication Publication Date Title
JPH03223945A (ja) 仮想記憶管理方法
US7194597B2 (en) Method and apparatus for sharing TLB entries
US7188229B2 (en) Method and apparatus for memory management in a multi-processor computer system
JP2603369B2 (ja) ローカルキャッシュに共通のページ間の一貫性を確保する方法
US6728858B2 (en) Method and apparatus including heuristic for sharing TLB entries
US7831977B2 (en) Shared file system cache in a virtual machine or LPAR environment
KR0170565B1 (ko) 메모리 관리 방법, 마이크로커널 구조 데이타 프로세싱 시스템, 운영 체제 퍼스낼리티 시스템 동작 방법, 퍼스낼리티 뉴트럴 서비스 프로그램 실행 방법 및 응용 프로그램 실행방법
US8176220B2 (en) Processor-bus-connected flash storage nodes with caching to support concurrent DMA accesses from multiple processors
US7849254B2 (en) Create virtual track buffers in NVS using customer segments to maintain newly written data across a power loss
JPH05210637A (ja) 同時アクセス管理方法
JPS62165250A (ja) 仮想記憶方法
JPH0458051B2 (ja)
US10146696B1 (en) Data storage system with cluster virtual memory on non-cache-coherent cluster interconnect
JP2002268933A (ja) クラスタシステム
US20080082745A1 (en) Storage system for virtualizing control memory
US10802972B2 (en) Distributed memory object apparatus and method enabling memory-speed data access for memory and storage semantics
JP4308152B2 (ja) メモリを予約するための方法、システム、および製品
US11150845B2 (en) Methods and systems for servicing data requests in a multi-node system
KR20080086108A (ko) 디스크 블록 액세스 처리 방법 및 시스템
JPH04230550A (ja) 情報処理ネツトワーク及び情報処理方法
JP2829115B2 (ja) ファイル共用方法
JPH05173961A (ja) データ・ブロック転送制御方法
JP2002202960A (ja) データ処理方法および装置
TWI564803B (zh) 用於儲存虛擬化的系統和方法
WO2020024588A1 (en) A distributed memory object architecture

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees