JPH11110236A - 大きなメモリの割り当て方法及び装置 - Google Patents

大きなメモリの割り当て方法及び装置

Info

Publication number
JPH11110236A
JPH11110236A JP10204759A JP20475998A JPH11110236A JP H11110236 A JPH11110236 A JP H11110236A JP 10204759 A JP10204759 A JP 10204759A JP 20475998 A JP20475998 A JP 20475998A JP H11110236 A JPH11110236 A JP H11110236A
Authority
JP
Japan
Prior art keywords
operating system
memory
working memory
access
memory area
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.)
Pending
Application number
JP10204759A
Other languages
English (en)
Inventor
Dave Wagner
ワグナー ディヴ
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.)
Digital Equipment Corp
Original Assignee
Digital Equipment Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Digital Equipment Corp filed Critical Digital Equipment Corp
Publication of JPH11110236A publication Critical patent/JPH11110236A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • G06F9/5016Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory

Landscapes

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

Abstract

(57)【要約】 【課題】 大きなメモリを割り当て及び指定するための
コンピュータ方法及び装置を提供する。 【解決手段】 所与のオペレーティングシステムのもと
で、多数のプロセスが形成され、各プロセスには、対応
する仮想メモリスペースが割り当てられる。形成された
プロセスに対して割り当てられた仮想メモリスペース
は、単一のワーキングメモリエリアを形成するように一
緒に集合される。形成されたプロセスに対し形成された
ワーキングメモリエリアをインデックスメンバーが交差
参照する。その結果、インデックスメンバーは、その形
成された仮想メモリスペースがあたかも単一の大きなワ
ーキングメモリエリアであるかのようにそれらに集合的
にアクセスすることができる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、一般に、コンピュ
ータメモリに係り、より詳細には、オペレーティングシ
ステムによるコンピュータのメモリ割り当てに係る。
【0002】
【従来の技術】一般的に述べると、コンピュータシステ
ムにおいては、オペレーティングシステムが種々のドラ
イバ又はシステム要求(カーナルコード)及びアプリケ
ーション要求(ユーザコード)に応答してメモリを割り
当てる。メモリの割り当ては、オペレーティングシステ
ムに基づき、物理的メモリのマップされた(対非マップ
の)ページに限定される。例えば、UNIXシステム
は、非マップのページをカーナルコードから割り当てで
きるようにする。他方、ウインドウズNTシステムは、
非マップの物理的なページを割り当てるためのインター
フェイスを与えず、割り当てられたページを仮想アドレ
スペースへマップすることを必要とする。
【0003】それ故、割り当てられるメモリのサイズ
は、オペレーティングシステムの仮想メモリアドレスス
ペースのサイズにより制限される。即ち、nビット仮想
メモリアドレス動作を使用するオペレーティングシステ
ムにおいては、許可/イネーブルされる最大の仮想メモ
リスペースが2n バイトの仮想メモリとなる。例えば、
ウインドウズNTにおいては、各プロセスの32ビット
(4GB)仮想スペースによって制限される。カーナル
モードコード(ドライバ等)は、このスペースの上位の
2GBに制限され、一方、ユーザモードコードは、この
スペースの下位の2GBに制限される。
【0004】これらの制約により、多くのオペレーティ
ングシステムは、コンピュータデータベースサーバに存
在するもののような非常に大きな物理的メモリエリアの
利点をユーザ/プログラムが利用できなくする。この点
において「非常に大きな」とは、仮想アドレススペース
に対するもので、例えば、オペレーティングシステムの
「通常」に割り当てられた仮想メモリエリアより大きな
メモリエリアを表している。オペレーティングシステム
は、通常は、仮想アドレススペースより大きな物理的メ
モリにアクセスを与えることができない。
【0005】
【発明が解決しようとする課題】1つの解決策は、ブー
トの時間にメモリを特定のアプリケーションに対しペー
ジの物理的キャッシュとして使用するように指定するこ
とを含む。ブートの時間にメモリを指定する(予め割り
当てる)ことの欠点は、(i)メモリのサイズがブート
の時間に予め定義されそしてハードコード化され、それ
故、ブートの時間の後に変更することができず、(ii)
このようなメモリは特殊なオペレーティングシステムコ
ール(I/Oコール)を必要とし、そして(iii)割り当
てがオペレーティングシステムによるものではなく、そ
れ故、オペレーティングシステムのアドレス動作を使用
しないので、メモリをアドレスするために特殊なドライ
バが必要とされることである。そこで、コンピュータシ
ステムの大型メモリの割り当てに対して技術的な改良が
要望される。
【0006】
【課題を解決するための手段】本発明は、公知解決策の
欠点を招くことなく非常に大きなメモリを割り当てそし
てアクセスするという問題を解消する。特に、本発明
は、カーナルコード又はユーザコードが非常に大きなメ
モリスペースを割り当てそしてアクセスできるように
し、従って、今日のデータベースサーバに存在する非常
に大きな物理的メモリの利点を取り入れられるようにす
るメカニズムを提供する。
【0007】本発明は、その広い形態において、請求項
1及び4に記載する非常に大きなメモリを割り当てるた
めのコンピュータ方法及び装置に係る。以下に記載する
実施形態は、所与のオペレーティングシステムのもとで
多数のプロセスを形成し;その形成されたプロセスを集
合させて単一のワーキングメモリエリアを形成し;そし
てアクセスロケータを使用して上記形成され集合された
プロセスに対してワーキングメモリエリアをアクセス
し、プロセスの仮想アクセススペースを、それらがあた
かも単一のワーキングメモリエリアであるかのようにア
クセスする;という段階を備えた非常に大きなメモリエ
リアを割り当てるコンピュータ方法及び装置を提供す
る。
【0008】以下に述べるように、上記の形成段階は、
(i)物理的なメモリを各形成されたプロセスに割り当
て;そして(ii)各プロセスの仮想アドレススペースを
物理的メモリに関連させることを含む。更に、この関連
させる段階は、(a)各形成されたプロセスごとに各P
ID(1つ又は複数)を発生し;そして(b)各PID
をアレーにリストすることを含む。次いで、アクセス段
階は、アレーのPIDを参照することにより行う。各参
照は、対応するプロセスに対して物理的メモリの各部分
をアクセスできるようにし、ひいては、大きなワーキン
グメモリエリア全体をアクセスできるようにする。
【0009】好ましくは、アクセス段階は、アクセスロ
ケータによってアドレスされた予め定義されたマルチビ
ットアドレススペースを使用することを含む。アクセス
ロケータは、上部及び下部を有する。下部のビット数
は、オペレーティングシステムの仮想アドレススペース
のサイズにより制限される。従って、アクセス段階は、
アクセスロケータの下部を使用して、ある形成されたプ
ロセスの仮想アドレススペース内のバイト位置を指示す
ると共に、アクセスロケータの上部を使用して、ワーキ
ングエリアを形成する他の形成されたプロセスの中のあ
るプロセスを指示する。
【0010】アクセスロケータは、少なくとも33ビッ
トを含むのが好都合である。下位の30ビットは、プロ
セスの仮想アドレススペース内のバイト位置を指示し、
そして上位の3ビット以上は、ワーキングメモリを形成
する他の形成されたプロセスの間のあるプロセスを指示
する。別の好ましい実施形態では、上記形成段階では、
(i)物理的メモリを各形成されたプロセスに割り当
て;そして(ii)各プロセスの仮想メモリを物理的メモ
リに関連づけることを含む。更に、その関連づける段階
は、(a)各プロセスごとにページアレーを発生して、
仮想ページを物理的ページにマッピングさせ、そして
(b)形成された関連づけ(ページアレーにより表され
る)が静的に保たれるようにその形成されたワーキング
メモリエリアをロックすることを含む。次いで、上記ア
クセス段階は、ページマップのページ番号を参照するこ
とにより行われる。各参照は、対応するプロセスに対し
て物理的メモリの各部分をアクセスできるようにし、ひ
いては、ワーキングメモリのエリアをアクセスできるよ
うにする。
【0011】
【発明の実施の形態】本発明の上記及び他の目的、特徴
並びに効果は、異なる図面全体にわたり同じ部分を同じ
参照文字で示した添付図面を参照した好ましい実施形態
の詳細な説明より明らかとなろう。図1には、本発明を
使用するコンピュータシステムが示されている。一般
に、コンピュータシステムは、デジタルプロセッサ及び
それに付随するオペレーティングシステム12で形成さ
れる。オペレーティングシステム12は、「ジョブ」又
は「プロセス」14として知られているワークエンティ
ティに応答する。一般に、プロセス14は、コード、制
御のスレッド、アドレススペース及びレジスタセットを
含む実行プログラムのインスタンスである。
【0012】例えば、コンピュータターミナルのユーザ
がプログラムの名前を入力すると、オペレーティングシ
ステム12は、新たなプロセス14を形成し、そしてプ
ロセス14内のプログラムを実行する。しかしながら、
プロセスの形成は、ユーザのアクションに限定されな
い。1つのプロセス14内で実行される実行プログラム
は、別のプログラム(又は同じプログラムの別のコピ
ー)を同時に実行できるように第2のプロセスをスター
トさせることを要求してもよい。新たなプロセスの要求
は、オペレーティングシステム12に対してなされる。
このようにして形成された各プロセスには、オペレーテ
ィングシステム12によって独特のプロセス識別子(P
ID)が指定される。オペレーティングシステム12
は、プロセスが終了するまでその指定されたPIDをプ
ロセステーブルに維持する。要求されたプロセスを形成
した後に、オペレーティングシステム12は、その要求
を発しているプロセス14にPIDを返送する。
【0013】更に、各プロセス14には、「仮想アドレ
ススペース」16が関連される。これは、プロセス14
が直接アドレスできる最大容量であるが、それ以上の又
はそれ以下の物理的メモリが存在してもよい。図1に示
すように、オペレーティングシステム12は、nビット
仮想メモリアドレス18を使用する。従って、各プロセ
ス14は、2n バイトまでの仮想メモリ16をアドレス
することができる。2n バイトの仮想メモリ16は、更
に、カーナルモード使用とユーザモード使用との間で構
成される。例えば、2n バイトの上位の半分は、カーナ
ルテキスト、カーナルコード及びカーナルデータに使用
され、そして2n バイトの下位の半分は、アプリケーシ
ョンプログラム等により使用されるように構成される。
コードの単一部片は、仮想アドレススペース16の上位
又は下位の半分においてのみメモリを割り当てることが
できる。
【0014】仮想アドレスは、通常、「ページ」と称す
るブロックにおいて物理的アドレスにマップされる。非
常に大きなメモリシステムにおいては、オペレーティン
グシステムは、(おそらくはメモリマネージメントユニ
ットの助けにより)1つ以上のプロセスの全仮想アドレ
ススペースを物理的メモリへとマップすることができ
る。上記したように、プロセッサ組立体20は、オペレ
ーティングシステム12に接続されて、プロセス14当
たり通常の2n バイトの仮想メモリ16よりも大きな量
でメモリを割り当てる。大きな(例えば、2n バイトよ
り大きな)量のワーキングメモリの要求に応答して、プ
ロセッサ組立体20は、オペレーティングシステム12
から多数のプロセス24を要求する。特に、所望のメモ
リの各ユニットごとに、プロセッサ組立体20は、個別
プロセス24a−24hを形成する。例えば、全部で8
ギガバイト(GB)が所望される場合には、1GB単位
の隣接する仮想メモリがプロセスに割り当てられるシス
テムでは、プロセッサ組立体20は、所望の各ギガバイ
トごとに1つづつ、合計8個の個別のプロセス24a−
24hを要求する。
【0015】各形成されたプロセス24a−24hは、
各仮想メモリスペース26a−26hを有する。しかし
ながら、プロセスが通常コード又は制御のスレッドに結
合される公知技術とは対照的に、複数の形成されたプロ
セス24a−24hに対して割り当てられる仮想メモリ
スペース26a−26hは、(i)いかなるコードにも
スレッドにも結合されず、そして(ii)本発明によるコ
ンピュータシステムにおいて集合的に使用される。即
ち、本発明は、割り当てられた仮想メモリスペース26
を集合させて、1つのプロセスの従来の仮想メモリスペ
ースよりも何倍も大きなサイズを有する単一のワーキン
グメモリエリアを効果的に形成する。又、形成されたワ
ーキングメモリエリア(即ち割り当てられた大きなメモ
リ)をアクセスするために、ここに示す実施形態は、ロ
ケータ手段30を備え/与える。このロケータ手段30
は、図2及び3の異なる実施形態の以下の例で説明する
ように、要求を発しているプロセス14が、仮想又は物
理的メモリアドレスにより、形成されたワーキングメモ
リエリアをアクセスできるようにする。
【0016】図2は、アクセスロケータ110及びプロ
セス識別子(PID)アレー104で形成されたロケー
タ手段30を有する好ましい実施形態を示す。アクセス
ロケータ110は、少なくとも33ビット巾であり、2
つの部分、即ち30ビットより成る下位の位置即ちオフ
セット部分100と、上位のPIDインデックス部分1
02とを含む。上記プロセス24がプロセッサ組立体2
0からの要求に応答してオペレーティングシステム12
により形成されるときに、新たに形成されるプロセス2
4のPIDがプロセッサ組立体20に返送され、この組
立体は、それらをPIDアレー104に記憶する。形成
された大きなワーキングメモリエリアの特定のバイトを
アクセス(読み取り又は書き込み)するために、そのア
ドレスのPIDインデックス部分(即ちアクセスロケー
タ110のPIDインデックス部分102)がPIDア
レー104へのインデックス112として使用され、そ
の点において所望のバイト位置に関連したPIDが検索
される(114)。
【0017】ウインドウズNTにおいては、種々のプロ
セスの仮想メモリReadProcessMemory
()106及びWriteProcessMemory
()108への読み取り及び書き込みアクセスを許す2
つのルーチン(デバッグ動作を助成するために元々設け
られているが)を使用できる。検索されたPID114
は、これらのルーチンに対する1つのアーギュメントと
して使用され、一方、アドレス/アクセスロケータ11
0のオフセット部分100は、別のアーギュメントに直
接コピーされる(116)。(これらルーチンに対する
他のアーギュメントは周辺的なことであり、従って、こ
こでは説明しない。)従って、これらルーチン106、
108の1つをコールすると、本発明の大きなワークエ
リアにおいて所望の位置への読み取り及び書き込みアク
セスが与えられる。
【0018】図3は、ロケータ手段30がPIDアレー
104ではなくてページアレー204を使用するような
本発明の別の実施形態を示す。この実施形態では、アク
セスロケータ210は、下位のページ位置即ちオフセッ
ト部分200と、上位のページアレーインデックス部分
202とを備えている。明らかに多数の組合せが可能で
あるが、2つの異なる構成220、222が示されてお
り、第1の場合には、ページサイズが8Kバイト220
であり、従って、アクセスロケータのページオフセット
部分200は13ビットを含み(213=8K)そしてペ
ージアレーインデックス部分202は20ないし51ビ
ットを含み、そして別の場合には、ページサイズが4K
バイト222であり、従って、アクセスロケータのペー
ジオフセット部分200は12ビット(212=4K)を
含みそしてページアレーインデックス部分202は21
ないし52ビットを含む。
【0019】更に物理的なメモリが必要とされるときに
は、プロセッサ組立体20は、新たなプロセス24を要
求する。これは、例えば、物理的なメモリを割り当てて
ページアレー204を発生する新たなプロセス24が最
初に形成されるときにその各々の新たなプロセス24に
僅かな量のコードを存在させることにより達成すること
ができる。従って、プロセス24は、そのコードを削除
して本発明の真のコードなしのコンテナプロセス24と
なる前に、仮想メモリと物理的メモリとの間にそれ自身
のマッピングを発生する。当業者であれば、このような
ページアレー204を発生する方法が他にもあることが
明らかであろう。ページアレー204を形成しそしてペ
ージをマッピングした後に、ページはロックされて、ア
レー204が静的となりそして常に正確であることが保
証される。更に、ページ番号又はページ番号のリストが
プロセッサ組立体20へ返送される。
【0020】図2の実施形態とは異なり、物理的アドレ
スが得られるので、この実施形態は物理的メモリへのア
クセスを必要とする。例えば、デジタルイクイップメン
ト社のAlpha(登録商標)プロセッサは、物理的な
メモリを直接アクセスすることのできる「KSEG」モ
ードを備えている。KSEGモードのアドレスは、残り
の下位ビットが仮想アドレスではなくて物理的なメモリ
アドレスとなることを指示するために特定の先導ビット
を使用する。多くのプロセッサは、現在、ある種の直接
の物理的メモリアクセスを許すが、何も存在しない場合
には、物理的なメモリページをアクセスする別の効率の
低い手段がとられ、例えば、物理的なページがカーナル
仮想スペースの「ウインドウエリア」にマッピングされ
る。
【0021】好ましい実施形態では、オペレーティング
システムは、マイクロソフト社のウインドウズNT(登
録商標)である。ウインドウズNTは、32ビット又は
4GB(232)の仮想メモリアクセススペースを使用す
る。カーナルテキスト、カーナルコード及びカーナルデ
ータ(即ち、カーナルモード)に対しては4GB仮想メ
モリの2ギガバイトが使用される。残りの2ギガバイト
は、ユーザアプリケーション(即ち、ユーザモード)の
ためのものである。しかしながら、仮想アドレススペー
スの最下位のページは使用できず、それは即ちオペレー
ティングシステムによって指定される。更に、ウインド
ウズNTは、オペレーティングシステムの目的のために
最上位の64Kバイトを指定する。従って、カーナルモ
ード及びユーザモードの各々における実際に使用可能な
量は、2GBよりも若干少ない。
【0022】それ故、簡単化のために、好ましい実施形
態では、本発明の各々の形成されたプロセス24ごと
に、2ギガバイトのユーザ仮想アドレススペースの中央
における1ギガバイトの仮想メモリが使用される(全4
GBの仮想スペースの中央ではなく)。
【0023】本発明のシステムの1つの使い方は、ディ
スクキャッシュ装置に使用することである。例えば、図
4に示すように、この構成体は、「シム(shim)ドライ
バ」302に組み込まれ、これは、ファイルシステム3
00と、例えば、SCSIドライバ304との間に論理
的に配置されたドライバであり、ファイルシステム及び
SCSIドライバは、いずれも、シムドライバ302の
存在を直接的に知る必要がない。大きなワーキングメモ
リエリアは、データキャッシュ306として使用され
る。それ自身のディスクキャッシュレベルを有するがカ
ーナル仮想スペース内にあるファイルシステム300
が、データのための要求をSCSIドライバ304に送
信すると、その要求は、シムドライバ302により遮ら
れ、変更され、又は通過される。要求された機能を非常
に大きなワーキングメモリエリア306のキャッシュに
おいて満足できる場合には、その要求をSCSIドライ
バ304に通過する必要はない。さもなくば、シムドラ
イバ302は、要求をSCSIドライバ304に通過
し、そしてSCSIドライバ304により返送されるデ
ータをデータキャッシュ306にキャッシュ処理する一
方、データをファイルシステム300に返送する。
【0024】ソフトウェアサポート 図5は、大きなワーキングメモリエリアを形成するのに
伴う段階を示すフローチャートである。この手順は、4
00で始まり、制御は図2(参照番号104)又は図3
(参照番号204)へ進み、プロセス識別子(PID)
又はページ番号が各々形成される(402)。次いで、
必要とされる各メモリユニットごとに、ステップ40
4、406、408、410及び412が繰り返され
る。ステップ404において、図1について述べたよう
に、プロセッサ組立体20は、オペレーティングシステ
ムがプロセスを形成することを要求する。オペレーティ
ングシステムは、これを行い、そしてPIDを返送する
か、或いは又ページリストがオペレーティングシステム
又は新たに形成されたプロセスから返送される。
【0025】次いで、新たなプロセスの仮想アドレスス
ペースが割り当てられ(406)、そして物理的メモリ
に関連(マップ)される(408)。ページ番号をアレ
ーに保持すべき実施形態(図3)では、ページがロック
ダウンされ(410)、従って、マッピング又は関連付
けは変化しない。次いで、PID又はページリストがア
レーに入力される(412)。更にメモリが必要な場合
には、これらのステップが繰り返される(416)。さ
もなくば、更にメモリが必要とされるまで手順は完了と
なる(418)。
【0026】好ましい実施形態を参照して本発明を詳細
に説明したが、本発明の範囲から逸脱せずに種々の変更
がなされ得ることが当業者に理解されよう。例えば、ウ
インドウズNT及びデジタルイクイップメント社のアル
ファ環境における本発明の上記説明は、単に本発明を例
示するものに過ぎず、本発明をこれに限定するものでは
ない。本発明は、多数のオペレーティングシステムにお
いて実施することができ、カーナルモード又はユーザモ
ードにおいて使用できる。
【図面の簡単な説明】
【図1】本発明によるコンピュータシステムのブロック
図である。
【図2】本発明の好ましい実施形態においてアクセスロ
ケータ及びプロセス識別子アレーを示すブロック図であ
る。
【図3】本発明の別の好ましい実施形態においてアクセ
スロケータ及びページアレーを示すブロック図である。
【図4】本発明によるディスクキャッシュシステムの回
路図である。
【図5】図1のコンピュータシステムにおける本発明の
実施形態のフローチャートである。
【符号の説明】
12 オペレーティングシステム 14 プロセス 16 仮想アドレススペース 18 仮想メモリアドレス 20 プロセッサ組立体 24 プロセス 26 仮想メモリスペース 30 ロケータ手段 100 下位の位置又はオフセット部分 102 上位のPID部分 104 プロセス識別子アレー 106、108 ルーチン 110 アクセスロケータ 204 ページアレー 210 アクセスロケータ 300 ファイルシステム 302 シムドライバ 304 SCSIドライバ

Claims (4)

    【特許請求の範囲】
  1. 【請求項1】 コンピュータ内に大きなメモリを割り当
    てるためのコンピュータ方法において、 仮想アドレススペースを用いる所与のオペレーティング
    システムのもとで多数のプロセスを形成し;その形成さ
    れたプロセスを集合して、アクセスロケータによりアク
    セスできる単一のワーキングメモリエリアを形成し、上
    記アクセスロケータは、ワーキングメモリエリアを形成
    するために形成及び集合されたプロセスに対してワーキ
    ングメモリエリアを参照し;そしてその後に、上記アク
    セスロケータを使用してワーキングメモリエリアをアク
    セスする;という段階を備えたことを特徴とする方法。
  2. 【請求項2】 上記の形成段階は、形成される各プロセ
    スごとに各プロセス識別子を発生することを含み;上記
    の集合段階は、(a)各プロセス識別子をもつ各プロセ
    スをテーブルにおいて交差参照し、そして(b)所望の
    プロセスを指示するようにアクセスロケータをイネーブ
    ルすることを含み;ワーキングメモリエリアをその後に
    アクセスする上記段階は、(i)所望のプロセスのアク
    セスロケータの指示をテーブルへの参照として使用し
    て、テーブルからプロセス識別子を得、そして(ii)そ
    の得られた識別子と共に、所望のプロセスの所望の仮想
    メモリ位置を参照し、ひいては、ワーキングメモリエリ
    アをアクセスすることによって行う請求項1に記載の方
    法。
  3. 【請求項3】 上記形成段階は、各物理的メモリを各形
    成されたプロセスに割り当てることを含み、 物理的メモリを割り当てる上記段階は、物理的メモリの
    ページ番号のリストを発生し、 上記集合段階は、(i)物理的メモリのページ番号を、
    各ページ番号ごとに1つのエントリーという複数のエン
    トリーを有するアレーに記録し、そして(ii)アレーへ
    の所望のエントリーを指示するように上記アクセスロケ
    ータをイネーブルし、そしてワーキングメモリエリアを
    その後にアクセスする上記段階は、アレーへの所望のエ
    ントリーのアクセスロケータ指示を使用し、アレーから
    各物理的メモリページ番号を得、そしてその得た物理的
    メモリページ番号と共に、ページオフセットを参照する
    ことを含む請求項2に記載の方法。
  4. 【請求項4】 大きなメモリを割り当てるコンピュータ
    装置において、 大きな物理的メモリをもつコンピュータと、 上記コンピュータに常駐しそして実行されるオペレーテ
    ィングシステムであって、割り当てられた仮想メモリス
    ペースを各々有する多数のプロセスを形成することので
    きるオペレーティングシステムと、 上記オペレーティングシステムのもとで実行され、そし
    てある量のワーキングメモリの必要性に応答して上記オ
    ペレーティングシステムと通信するプロセッサ組立体で
    あって、このプロセッサ組立体は、オペレーティングシ
    ステムから複数のプロセスを要求し、そしてその要求に
    応答してオペレーティングシステムによりその後に形成
    される上記複数のプロセスを集合して、単一のワーキン
    グメモリエリアを形成するようなプロセッサ組立体と、 上記プロセッサ組立体に接続され、そして上記形成され
    たプロセスの上記形成されたワーキングメモリエリアへ
    その後にアクセスできるようにし、複数の形成されたプ
    ロセスが単一の集合的ワーキングメモリエリアとして動
    作するようにするロケータ手段と、を備えたことを特徴
    とするコンピュータ装置。
JP10204759A 1997-07-18 1998-07-21 大きなメモリの割り当て方法及び装置 Pending JPH11110236A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/896,393 US5940868A (en) 1997-07-18 1997-07-18 Large memory allocation method and apparatus
US08/896393 1997-07-18

Publications (1)

Publication Number Publication Date
JPH11110236A true JPH11110236A (ja) 1999-04-23

Family

ID=25406127

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10204759A Pending JPH11110236A (ja) 1997-07-18 1998-07-21 大きなメモリの割り当て方法及び装置

Country Status (4)

Country Link
US (1) US5940868A (ja)
EP (1) EP0892351A1 (ja)
JP (1) JPH11110236A (ja)
KR (1) KR100470258B1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007334935A (ja) * 2006-06-12 2007-12-27 Sony Corp 不揮発性メモリ

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7194740B1 (en) * 1999-05-28 2007-03-20 Oracle International Corporation System for extending an addressable range of memory
US8108873B1 (en) * 1999-05-28 2012-01-31 Oracle International Corporation System for extending an addressable range of memory
US6615312B1 (en) * 2000-02-29 2003-09-02 Western Digital Ventures, Inc. Method for processing file system service requests in a computer having an attached disk drive that can reproduce stream data and non-stream data
US7058775B2 (en) * 2001-01-31 2006-06-06 Rto Sortware, Inc Systems and methods for avoiding base address collisions using alternate components
US6950916B2 (en) * 2001-01-31 2005-09-27 Rto Software, Inc. Dynamically setting the optimal base addresses of process components
US20020194340A1 (en) * 2001-06-16 2002-12-19 Ebstyne Bryan D. Enterprise storage resource management system
US6732248B2 (en) 2001-06-28 2004-05-04 International Business Machines, Corporation System and method for ghost offset utilization in sequential byte stream semantics
US7461228B2 (en) * 2003-11-21 2008-12-02 Rto Software, Inc. Systems and methods for avoiding base address collisions
US7055015B2 (en) * 2002-02-25 2006-05-30 Ricoh Company, Ltd. Information processing apparatus in which processes can reduce overhead of memory access and efficiently share memory
US7024591B2 (en) * 2002-07-12 2006-04-04 Crossroads Systems, Inc. Mechanism for enabling enhanced fibre channel error recovery across redundant paths using SCSI level commands
US7076632B2 (en) * 2003-10-16 2006-07-11 International Business Machines Corporation Fast paging of a large memory block
US7426625B2 (en) * 2004-03-31 2008-09-16 International Business Machines Corporation Data processing system and computer program product for support of system memory addresses with holes
US7418568B2 (en) * 2005-01-05 2008-08-26 Sap Ag Memory management technique
US20080163185A1 (en) * 2006-12-29 2008-07-03 Rto Software, Inc. Delay-load optimizer
US20110055482A1 (en) * 2009-08-28 2011-03-03 Broadcom Corporation Shared cache reservation
US10474486B2 (en) * 2015-06-30 2019-11-12 Veritas Technologies Llc Data access accelerator
US10558480B2 (en) 2015-09-10 2020-02-11 Veritas Technologies Llc Optimizing access to production data

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4300192A (en) * 1974-04-18 1981-11-10 Honeywell Information Systems Inc. Method and means for storing and accessing information in a shared access multiprogrammed data processing system
JPS623358A (ja) * 1985-06-28 1987-01-09 Yokogawa Hewlett Packard Ltd 複数アドレス空間アクセス方式
JPH03266147A (ja) * 1990-03-16 1991-11-27 Nec Commun Syst Ltd 大容量ファイル管理方式
US5423013A (en) * 1991-09-04 1995-06-06 International Business Machines Corporation System for addressing a very large memory with real or virtual addresses using address mode registers
US5381537A (en) * 1991-12-06 1995-01-10 International Business Machines Corporation Large logical addressing method and means
JPH0764832A (ja) * 1993-08-23 1995-03-10 Nec Corp マルチエクステントファイル方式
US5577231A (en) * 1994-12-06 1996-11-19 International Business Machines Corporation Storage access authorization controls in a computer system using dynamic translation of large addresses
US5632027A (en) * 1995-09-14 1997-05-20 International Business Machines Corporation Method and system for mass storage device configuration management
US5708790A (en) * 1995-12-12 1998-01-13 International Business Machines Corporation Virtual memory mapping method and system for address translation mapping of logical memory partitions for BAT and TLB entries in a data processing system
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
US5860141A (en) * 1996-12-11 1999-01-12 Ncr Corporation Method and apparatus for enabling physical memory larger than corresponding virtual memory

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007334935A (ja) * 2006-06-12 2007-12-27 Sony Corp 不揮発性メモリ
US8732385B2 (en) 2006-06-12 2014-05-20 Sony Corporation Non-volatile memory, controller controlling next access

Also Published As

Publication number Publication date
KR100470258B1 (ko) 2005-05-18
KR19990013934A (ko) 1999-02-25
EP0892351A1 (en) 1999-01-20
US5940868A (en) 1999-08-17

Similar Documents

Publication Publication Date Title
US6125430A (en) Virtual memory allocation in a virtual address space having an inaccessible gap
US6061773A (en) Virtual memory system with page table space separating a private space and a shared space in a virtual memory
US5873127A (en) Universal PTE backlinks for page table accesses
JP2986075B2 (ja) ローカル・オブジェクト・アドレス及びグローバル・オブジェクト識別子を結合して単一オブジェクト・ポインタにするためのシステム
US4742450A (en) Method to share copy on write segment for mapped files
KR920005853B1 (ko) 페이지 분할형 가상 메모리 데이타 처리 시스템에서의 데이타 전송 방법
JPH11110236A (ja) 大きなメモリの割り当て方法及び装置
US9836409B2 (en) Seamless application access to hybrid main memory
US5899994A (en) Flexible translation storage buffers for virtual address translation
US7206915B2 (en) Virtual space manager for computer having a physical address extension feature
US5684993A (en) Segregation of thread-specific information from shared task information
US4761737A (en) Method to automatically increase the segment size of unix files in a page segmented virtual memory data processing system
US5835961A (en) System for non-current page table structure access
US5371867A (en) Method of using small addresses to access any guest zone in a large memory
US5539899A (en) System and method for handling a segmented program in a memory for a multitasking data processing system utilizing paged virtual storage
US6701421B1 (en) Application-level memory affinity control
US5842226A (en) Virtual memory management for a microkernel system with multiple operating systems
US7149873B2 (en) Methods and apparatus for a dual address space operating system
TWI273431B (en) Apparatus for the plurality of hosts to share a collection of memory sectors, and method and program storage device for managing memory sectors used by a host
US5873120A (en) Variable split virtual address space allocation with multi-system compatibility
KR20050018630A (ko) 타겟 보안을 결정하기 위한 물리적 어드레스-기반 보안에관한 방법 및 장치
US6735613B1 (en) System for processing by sets of resources
US7444636B2 (en) Method and system of determining attributes of a functional unit in a multiple processor computer system
JPH06332803A (ja) 仮想計算機システムにおけるtlb制御方法
KR930003439B1 (ko) 가상 메모리 관리를 위한 메모리 구조 및 시스템

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050721

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20050721

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070409

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20070709

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20070712

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070913

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20080317