[go: up one dir, main page]

JP2000330949A - Method and device for paging control over virtual storage system - Google Patents

Method and device for paging control over virtual storage system

Info

Publication number
JP2000330949A
JP2000330949A JP11139828A JP13982899A JP2000330949A JP 2000330949 A JP2000330949 A JP 2000330949A JP 11139828 A JP11139828 A JP 11139828A JP 13982899 A JP13982899 A JP 13982899A JP 2000330949 A JP2000330949 A JP 2000330949A
Authority
JP
Japan
Prior art keywords
paging
page
computer
pseudo
data
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
JP11139828A
Other languages
Japanese (ja)
Inventor
Hideaki Hirayama
秀昭 平山
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.)
Toshiba Corp
Original Assignee
Toshiba 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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP11139828A priority Critical patent/JP2000330949A/en
Priority to TW89116001A priority patent/TWI267701B/en
Publication of JP2000330949A publication Critical patent/JP2000330949A/en
Pending legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Abstract

PROBLEM TO BE SOLVED: To obtain the paging control over the virtual storage system which appears to have the same effect with memory extension without extending the memory of a client computer in network environment consisting of multiple computers. SOLUTION: A client computer 10 is equipped with an artificial paging device 16 as the paging destination of a real memory 14 and a artificial paging device driver 18 which performs the process of the artificial paging device 16. A server computer 20, on the other hand, is equipped with a paging service demon process 20A, which receives an I/O request issued by the artificial paging device driver 18 corresponding to a page-in/page-out process, in a virtual memory 22. Consequently, the page-in/page-out process is performed by using the virtual memory 22 of the server computer 20 without extending the memory of the client computer 10.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明が属する技術分野】本発明は、仮想記憶システム
のページング制御方法および装置に関し、特にPC、W
S、サーバ等の複数の計算機からなるネットワーク環境
において適用され、クライアント計算機側の内部メモリ
の増設を抑えることのできる仮想記憶システムに関す
る。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a method and an apparatus for controlling paging of a virtual storage system, and more particularly, to a PC and a WWW.
The present invention relates to a virtual storage system which is applied in a network environment including a plurality of computers such as a server and a server and can suppress an increase in internal memory on a client computer side.

【0002】[0002]

【従来の技術】近年のネットワーク環境では、PCやW
S等の個々のクライアント毎に大量のディスク装置を接
続する代わりに、ファイルサーバ計算機に大量のディス
ク装置を接続し、そこに各種のファイル情報を格納し
て、PCやWS等の個々のクライアントはファイルサー
バ計算機のディスク上のファイル情報を利用出来るよう
になっている。しかし、内部メモリに関しては同様なこ
とが行えず、PCやWS等の個々のクライアント毎に必
要に応じてメモリを増設しなければならなかった。
2. Description of the Related Art In a recent network environment, PCs and W
Instead of connecting a large number of disk devices for each client such as S, a large number of disk devices are connected to the file server computer, and various file information is stored therein. The file information on the disk of the file server computer can be used. However, the same cannot be performed for the internal memory, and the memory has to be increased as necessary for each client such as a PC and a WS.

【0003】[0003]

【発明が解決しようとする課題】従って、従来の技術で
は、個々のクライアント計算機毎に内部メモリを増設す
る必要が有り、増設の作業が大変である。また、常に全
てのクライアント計算機の内部メモリが使われているわ
けでなく、個々にメモリ増設するのは非効率/コスト高
であると言う問題が有った。本発明は、上述した従来技
術における問題点を解決するためになされたもので、サ
ーバ計算機側の内部メモリの増設を行うだけで、クライ
アント側の内部メモリの増設をなくすことができる仮想
計算機システムのページング制御方法および装置を提供
することを目的とする。
Therefore, in the conventional technique, it is necessary to add an internal memory for each client computer, and the work of adding the internal memory is difficult. Further, the internal memories of all the client computers are not always used, and there is a problem that increasing the memory individually is inefficient / high in cost. SUMMARY OF THE INVENTION The present invention has been made to solve the above-described problems in the related art. A virtual computer system capable of eliminating the increase in the internal memory on the client side only by increasing the internal memory on the server computer side. It is an object to provide a paging control method and apparatus.

【0004】[0004]

【課題を解決するための手段】上記目的を達成するため
に、本発明の仮想記憶システムのページング制御方法お
よび装置は、メモリ管理装置を持つ複数の計算機システ
ムにおいて、実メモリのページング先となる疑似ページ
ングデバイスと、前記疑似ページングデバイスの処理を
実行する疑似ページングデバイスドライバとを有する第
1の計算機システムと、前記疑似ページングデバイスド
ライバがページイン/ページアウトに対応して発行する
I/Oリクエストを受け取るページングサービスデーモ
ンプロセスを有する第2の計算機システムとを有し、前
記第2の計算機システムの前記ページングサービスデー
モンプロセスが前記第1の計算機の前記疑似ページング
デバイスドライバからページアウトのI/Oリクエスト
と共にページアウトデータを受けた場合、前記ページア
ウトデータを受け取り自システム内の仮想アドレス空間
内に保存し、前記第2の計算機システムの前記ページン
グサービスデーモンプロセスが前記第1の計算機の前記
疑似ページングデバイスドライバからページインのI/
Oリクエストを受けた場合、前記自システム内の仮想ア
ドレス空間内に保存してあったデータをページインデー
タとして前記第1の計算機システムに送り返すことを特
徴とする。
In order to achieve the above object, a method and apparatus for controlling paging of a virtual storage system according to the present invention provide a virtual computer system having a memory management device, in which a plurality of computer systems have a pseudo memory which is a paging destination of a real memory. A first computer system having a paging device, a pseudo paging device driver for executing the processing of the pseudo paging device, and receiving an I / O request issued by the pseudo paging device driver in response to page-in / page-out. A second computer system having a paging service daemon process, wherein the paging service daemon process of the second computer system includes a page with an I / O request to page out from the pseudo-paging device driver of the first computer. Au When the data is received, the page-out data is received and stored in a virtual address space in the own system, and the paging service daemon process of the second computer system sends a page from the pseudo paging device driver of the first computer. Inn I /
When receiving the O request, the data stored in the virtual address space in the own system is sent back to the first computer system as page-in data.

【0005】また、本発明の仮想記憶システムのページ
ング制御方法は、前記ページングサービスデーモンプロ
セスを前記第2の計算機システム内に複数設け、前記第
1の計算機システムの前記疑似ページングデバイスドラ
イバからの前記I/Oリクエストを前記複数のページン
グサービスデーモンプロセスを用いて分担して処理す
る。
Further, in the paging control method for a virtual storage system according to the present invention, a plurality of the paging service daemon processes are provided in the second computer system, and the I / O request from the pseudo paging device driver of the first computer system is provided. / O requests are shared and processed using the plurality of paging service daemon processes.

【0006】また、本発明の仮想記憶システムのページ
ング制御方法は、前記ページングサービスデーモンプロ
セスを複数の前記第2の計算機システム内に設け、前記
第1の計算機システムの前記疑似ページングデバイスド
ライバからの前記I/Oリクエストを前記複数の第2の
計算機システム内の前記ページングサービスデーモンプ
ロセスを用いて分担して処理する。
In the paging control method for a virtual storage system according to the present invention, the paging service daemon process is provided in a plurality of second computer systems, and the paging service daemon process is provided from the pseudo paging device driver of the first computer system. An I / O request is shared and processed using the paging service daemon process in the plurality of second computer systems.

【0007】また、本発明の仮想記憶システムのページ
ング制御方法は、前記ページインデータ、ページアウト
データを複数の前記ページングサービスデーモンプロセ
スにストライピングして持たせたことを特徴とする。
Further, the paging control method for a virtual storage system according to the present invention is characterized in that the page-in data and the page-out data are striped and held by a plurality of the paging service daemon processes.

【0008】また、本発明の仮想記憶システムのページ
ング制御方法は、前記ページインデータ、ページアウト
データを複数の前記ページングサービスデーモンプロセ
スによって前記第2の計算機の仮想メモリにRAID5
のように配置して記憶させたことを特徴とする。
In the paging control method for a virtual storage system according to the present invention, the page-in data and the page-out data are stored in a virtual memory of the second computer by a plurality of paging service daemon processes.
And stored.

【0009】また、本発明の仮想記憶システムのページ
ング制御方法は、前記ページインデータ、ページアウト
データを複数の前記ページングサービスデーモンプロセ
スによって前記第2の計算機の仮想メモリにRAID5
のように配置して記憶し、前記ページングサービスデー
モンプロセスの内の1台が停止した場合でも、他の前記
ページインデータまたはページアウトデータから停止し
たプロセスに対応するデータを復元することを特徴とす
る。
Further, in the paging control method for a virtual storage system according to the present invention, the page-in data and the page-out data are stored in a virtual memory of the second computer by a plurality of paging service daemon processes.
And restoring the data corresponding to the stopped process from the other page-in data or page-out data even if one of the paging service daemon processes is stopped. I do.

【0010】従って、本発明によれば、クライアント計
算機(第1の計算機)のページングデータは、サーバ計
算機(第2の計算機)のページングサービスデーモンプ
ロセスによって管理されるアドレス空間に保存すること
により、サーバ計算機で実メモリが十分にあれば、クラ
イアント計算機のページングは極めて高速に処理するこ
とが出来ることから、クライアント計算機の実メモリが
増設されたのとほぼ等価な効果を得ることが出来る。こ
れにより、クライアント計算機のメモリを増設せずに、
必要に応じサーバ計算機のメモリを増設するだけでネッ
トワーク環境の計算機を効率よく使用することが出来
る。
Therefore, according to the present invention, the paging data of the client computer (first computer) is stored in the address space managed by the paging service daemon process of the server computer (second computer), so that the server can store the paging data. If there is enough real memory in the computer, paging of the client computer can be processed at a very high speed, and an effect substantially equivalent to the increase in the real memory of the client computer can be obtained. As a result, without increasing the memory of the client computer,
The computer in the network environment can be used efficiently only by increasing the memory of the server computer if necessary.

【0011】[0011]

【発明の実施の形態】以下、図面を参照して本発明の実
施の形態を説明する。図1は、本発明に係る仮想記憶シ
ステムの第1の実施形態を示すブロック図である。クラ
イアント計算機(第1の計算機)10と、サーバ計算機
(第2の計算機)20はネットワーク30を介して接続
されている。クライアント計算機10内には本発明を達
成するための装置として、少なくとも実行されるプロセ
ス10Aと、プロセス10Aを実行するアドレス空間を
形成する仮想メモリ12と、実メモリ14と、仮想メモ
リ空間と実メモリ空間のページング操作を行う疑似ペー
ジングデバイス16と、ページング操作のためにI/O
リクエストをサーバ計算機20へ転送する疑似ページン
グデバイスドライバ18とが設けられる。
Embodiments of the present invention will be described below with reference to the drawings. FIG. 1 is a block diagram showing a first embodiment of the virtual storage system according to the present invention. A client computer (first computer) 10 and a server computer (second computer) 20 are connected via a network 30. The client computer 10 includes at least a process 10A to be executed, a virtual memory 12 forming an address space for executing the process 10A, a real memory 14, a virtual memory space, and a real memory as devices for achieving the present invention. A pseudo paging device 16 for performing a paging operation on a space, and an I / O device for performing a paging operation
A pseudo paging device driver 18 for transferring a request to the server computer 20 is provided.

【0012】一方、サーバ計算機20には、I/Oリク
エストを受け取るページングサービスデーモンプロセス
20Aと、仮想メモリ22、実メモリ24、ページング
デバイス26(ディスク装置)とが設けられている。次
に、本発明に係る仮想記憶システムの第1の実施形態の
動作を説明する。
On the other hand, the server computer 20 is provided with a paging service daemon process 20A for receiving an I / O request, a virtual memory 22, a real memory 24, and a paging device 26 (disk device). Next, the operation of the first embodiment of the virtual storage system according to the present invention will be described.

【0013】クライアント計算機10上では、例えば今
プロセス10Aが動いているものとする。このプロセス
10Aを実行するためにメモリ空間が仮想メモリ(仮想
アドレス空間)12として形成され、この仮想メモリ1
2と実メモリ14との間でマッピング操作が行われてい
る。例えば、仮想メモリ12のページに実メモリ14の
ページが割り当てられていない場合には、ページフォル
トが発生し、必要なデータを実メモリ14とサーバ計算
機20のページングデバイス26の間で交換する、いわ
ゆるページング(ページイン/ページアウト)の操作が
行われる。
On the client computer 10, for example, it is assumed that the process 10A is currently running. In order to execute the process 10A, a memory space is formed as a virtual memory (virtual address space) 12, and the virtual memory 1
2 and a real memory 14 are performing a mapping operation. For example, when a page of the real memory 14 is not allocated to a page of the virtual memory 12, a page fault occurs, and necessary data is exchanged between the real memory 14 and the paging device 26 of the server computer 20, ie, a so-called page fault. Paging (page-in / page-out) operations are performed.

【0014】本発明では、このページングデバイスとし
て、疑似ページングデバイス16がクライアント計算機
10内に設けられている。そして、この疑似ページング
デバイス16に対するページング操作は疑似ページング
デバイスドライバ18に対してI/Oリクエストを発行
することによって行われる。
In the present invention, a pseudo paging device 16 is provided in the client computer 10 as the paging device. The paging operation on the pseudo paging device 16 is performed by issuing an I / O request to the pseudo paging device driver 18.

【0015】疑似ページングデバイスドライバ18は、
疑似ページングデバイス16からページインまたはペー
ジアウトのI/Oリクエストを受け取ると、ネットワー
ク30を介してサーバ計算機20上で動作するページン
グサービスデーモンプロセス20Aに転送する。サーバ
計算機上のページングサービスデーモンプロセス20A
は、クライアント計算機10の疑似ページングデバイス
ドライバ18からページアウトに対応するI/Oリクエ
ストを受けた場合には、疑似ページングデバイス16、
疑似ページングデバイスドライバ18、ネットワーク3
0を経由して同時にページアウトデータも受け取り、そ
れを自計算機20内の仮想メモリ22(仮想メモリ空
間)に保存する。
[0015] The pseudo paging device driver 18 includes:
When a page-in or page-out I / O request is received from the pseudo paging device 16, the request is transferred to the paging service daemon process 20 </ b> A running on the server computer 20 via the network 30. Paging service daemon process 20A on server computer
When an I / O request corresponding to page out is received from the pseudo paging device driver 18 of the client computer 10, the pseudo paging device 16,
Pseudo paging device driver 18, network 3
At the same time, the page-out data is also received via “0” and stored in the virtual memory 22 (virtual memory space) in the computer 20.

【0016】一方、サーバ計算機上のページングサービ
スデーモンプロセス20Aは、クライアント計算機10
の疑似ページングデバイスドライバ18からページイン
に対応するI/Oリクエストを受けた場合には、ページ
インデータを自計算機20内の仮想メモリ22から取り
出し、クライアント計算機10の疑似ページングデバイ
スドライバ18に送出する。クライアント計算機10で
は、内部を経由して仮想メモリ12にページインデータ
が格納される。
On the other hand, the paging service daemon process 20A on the server computer
When the I / O request corresponding to the page-in is received from the pseudo paging device driver 18 of the client computer 10, the page-in data is taken out from the virtual memory 22 in the own computer 20 and sent to the pseudo paging device driver 18 of the client computer 10. . In the client computer 10, page-in data is stored in the virtual memory 12 via the inside.

【0017】このように、クライアント計算機10のペ
ージングデータは、サーバ計算機20のページングサー
ビスデーモンプロセス20Aによって管理されるアドレ
ス空間に保存される。これにより、サーバ計算機で実メ
モリ24が十分にあれば、クライアント計算機10のペ
ージングは極めて高速に処理することが出来ることか
ら、クライアント計算機10の実メモリ14が増設され
たのとほぼ等価な効果を得ることが出来る。
As described above, the paging data of the client computer 10 is stored in the address space managed by the paging service daemon process 20A of the server computer 20. As a result, if the server computer has sufficient real memory 24, paging of the client computer 10 can be performed at an extremely high speed. Therefore, an effect substantially equivalent to the increase of the real memory 14 of the client computer 10 can be obtained. Can be obtained.

【0018】この場合、サーバ計算機20に実装される
実メモリ24の容量が十分でない場合でも、クライアン
ト計算機10のページングデータはサーバ計算機20の
ページングサービスデーモンプロセス20Aによって管
理される仮想メモリ22の仮想アドレス空間に保存され
ることから、サーバ計算機20の実メモリ24の容量が
不足しても実メモリ24とページングデバイス26との
間でページングが行われるので、多少性能が落ちるもの
の、処理は問題なく行える。
In this case, even if the capacity of the real memory 24 mounted on the server computer 20 is not sufficient, the paging data of the client computer 10 is stored in the virtual address of the virtual memory 22 managed by the paging service daemon process 20A of the server computer 20. Since the data is stored in the space, paging is performed between the real memory 24 and the paging device 26 even if the capacity of the real memory 24 of the server computer 20 is insufficient. .

【0019】図2、図3は、本発明に係る仮想記憶シス
テムの第2の実施形態を示すブロック図である。この第
2の実施形態では、サーバ計算機に複数のページングサ
ービスデーモンプロセスを設けた構成である。
FIGS. 2 and 3 are block diagrams showing a second embodiment of the virtual storage system according to the present invention. In the second embodiment, the server computer is provided with a plurality of paging service daemon processes.

【0020】図2において、クライアント計算機(第1
の計算機)41、42、43およびサーバ計算機(第2
の計算機)45がネットワーク30に接続されている。
クライアント計算機41、42、43にはそれぞれ疑似
ページングデバイスドライバ410、420、430が
設けられ、サーバ計算機45に複数のページングサービ
スデーモンプロセス450、460が設けられている。
なお、上記した疑似ページングデバイスドライバとは、
図1の符号18、16、14、12を総称して表現し、
またページングサービスデーモンプロセスも、図1の符
号20A、22、24、26を総称して表現している。
これは、図4、図6においても同様である。
In FIG. 2, the client computer (first
Computers 41, 42, 43 and a server computer (second
Computer 45 is connected to the network 30.
Pseudo paging device drivers 410, 420, and 430 are provided in the client computers 41, 42, and 43, respectively, and a plurality of paging service daemon processes 450 and 460 are provided in the server computer 45.
The pseudo paging device driver described above is
Reference numerals 18, 16, 14, and 12 in FIG.
Also, the paging service daemon process is generically represented by reference numerals 20A, 22, 24, and 26 in FIG.
This is the same in FIGS. 4 and 6.

【0021】図3は、図2の詳細な構成を示した図であ
り、第2の計算機45には複数のページングサービスデ
ーモンプロセス450、460が実行可能に設けられて
いる。そして、ページングサービスデーモンプロセス4
50に対応して仮想メモリ451、実メモリ452、ペ
ージングデバイス453が設けられる。また、ページン
グサービスデーモンプロセス460に対応して仮想メモ
リ461、実メモリ462、ページングデバイス463
が設けられる。クライアント計算機41、42、43の
構成は図1の構成と変わりないので、説明を省略する。
FIG. 3 is a diagram showing a detailed configuration of FIG. 2. The second computer 45 is provided with a plurality of paging service daemon processes 450 and 460 so as to be executable. And paging service daemon process 4
A virtual memory 451, a real memory 452, and a paging device 453 are provided corresponding to 50. The virtual memory 461, the real memory 462, and the paging device 463 correspond to the paging service daemon process 460.
Is provided. The configuration of the client computers 41, 42, and 43 is not different from the configuration of FIG.

【0022】この第2の実施形態によれば、複数のクラ
イアント計算機41、42、43の各疑似ページングデ
バイスドライバ410、420、430からのI/Oリ
クエストをサーバ計算機45の複数のページングサービ
スデーモンプロセス450、460によって受け取り、
それぞれの仮想メモリ451、461を用いて図1と同
様にページインまたはページアウトの処理が実行でき
る。
According to the second embodiment, I / O requests from the respective pseudo paging device drivers 410, 420, 430 of the plurality of client computers 41, 42, 43 are transmitted to the plurality of paging service daemon processes of the server computer 45. Received by 450, 460,
Using the respective virtual memories 451 and 461, page-in or page-out processing can be executed in the same manner as in FIG.

【0023】従って、この第2の実施形態によれば、複
数のクライアント計算機からのI/Oリクエストをサー
バ計算機の複数のページングサービスデーモンプロセス
によって並列処理が行える利点を有する。また、第2の
実施形態の実現手段として、サーバ計算機がマルチスレ
ッド機能を備えるものであるならば、複数のページング
サービスデーモンプロセスを置かなくともマルチスレッ
ド機能を用いて実現することも可能である。また、この
第2の実施形態によれば32ビットモードのシステムに
おいて、4GB以上のページングデータを処理できる利
点も有する。
Therefore, according to the second embodiment, there is an advantage that I / O requests from a plurality of client computers can be processed in parallel by a plurality of paging service daemon processes of a server computer. Further, as a means for realizing the second embodiment, if the server computer has a multi-thread function, it can be realized using the multi-thread function without placing a plurality of paging service daemon processes. Further, according to the second embodiment, there is an advantage that paging data of 4 GB or more can be processed in a 32-bit mode system.

【0024】図4、図5は本発明に係る仮想記憶システ
ムの第3の実施形態を示すブロック図である。この第3
の実施形態では、サーバ計算機を複数設けた実施例を示
すものである。
FIGS. 4 and 5 are block diagrams showing a third embodiment of the virtual storage system according to the present invention. This third
In the embodiment, an example in which a plurality of server computers are provided is shown.

【0025】図4において、複数のクライアント計算機
41、42、43および複数のサーバ計算機50、51
がネットワーク30に接続されている。クライアント計
算機41、42、43にはそれぞれ疑似ページングデバ
イスドライバ410、420、430が設けられ、サー
バ計算機50、51にはそれぞれページングサービスデ
ーモンプロセス500、510が設けられている。
In FIG. 4, a plurality of client computers 41, 42, 43 and a plurality of server computers 50, 51
Are connected to the network 30. Pseudo paging device drivers 410, 420, and 430 are provided in the client computers 41, 42, and 43, respectively, and paging service daemon processes 500 and 510 are provided in the server computers 50 and 51, respectively.

【0026】図5は、その詳細な構成を示した図であ
り、サーバ計算機50、51には、それぞれページング
サービスデーモンプロセス500、510が実行可能に
設けられている。そして、ページングサービスデーモン
プロセス500に対応して仮想メモリ501、実メモリ
502、ページングデバイス503が設けられる。ま
た、ページングサービスデーモンプロセス510に対応
して仮想メモリ511、実メモリ512、ページングデ
バイス513が設けられる。クライアント計算機41、
42、43の構成は図1の構成と変わりないので、その
説明を省略する。
FIG. 5 is a diagram showing the detailed configuration. Paging service daemon processes 500 and 510 are provided in the server computers 50 and 51 so as to be executable. Then, a virtual memory 501, a real memory 502, and a paging device 503 are provided corresponding to the paging service daemon process 500. Further, a virtual memory 511, a real memory 512, and a paging device 513 are provided corresponding to the paging service daemon process 510. Client computer 41,
The configurations of 42 and 43 are not different from the configuration of FIG.

【0027】この第3の実施形態によれば、複数のクラ
イアント計算機41、42、43の各疑似ページングデ
バイスドライバ410、420、430からのI/Oリ
クエストをサーバ計算機50または51のページングサ
ービスデーモンプロセス500、または510によって
受け取り、それぞれの仮想メモリ501、511を用い
て図1と同様にページインまたはページアウトの処理が
実行できる。
According to the third embodiment, an I / O request from each of the pseudo paging device drivers 410, 420, and 430 of the plurality of client computers 41, 42, and 43 is transmitted to the paging service daemon process of the server computer 50 or 51. The page-in or page-out processing can be executed in the same manner as in FIG. 1 using the virtual memory 501 or 511 received by the virtual memory 500 or 510.

【0028】また、複数のサーバ計算機にそれぞれペー
ジングサービスデーモンプロセスを置くことにより、各
サーバ計算機は実メモリ502または512を有効に利
用出来る利点がある。なお、上述した第2の実施形態と
この第3の実施形態を組合せ、複数のサーバ計算機に複
数のページングサービスデーモンプロセスを置くことも
出来る。
By arranging the paging service daemon process in each of a plurality of server computers, each server computer has an advantage that the real memory 502 or 512 can be effectively used. It should be noted that the above-described second embodiment and the third embodiment can be combined to provide a plurality of paging service daemon processes in a plurality of server computers.

【0029】図6は、本発明に係る仮想記憶システムの
第4の実施形態を示すブロック図である。この第4の実
施形態では、クライアント計算機のみで構成されてい
る。
FIG. 6 is a block diagram showing a fourth embodiment of the virtual storage system according to the present invention. In the fourth embodiment, only a client computer is used.

【0030】即ち、クライアント計算機41、42、4
3には、それぞれ疑似ページングデバイスドライバ41
0、420、430と、ページングサービスデーモンプ
ロセス610、620、630が設けられる。そして、
クライアント計算機41の疑似ページングデバイスドラ
イバ410は、他のクライアント計算機42または43
のページングサービスデーモンプロセス620、または
630により、ページングサービスを受ける。
That is, the client computers 41, 42, 4
3 includes a pseudo paging device driver 41
0, 420, and 430, and paging service daemon processes 610, 620, and 630 are provided. And
The pseudo paging device driver 410 of the client computer 41 is connected to another client computer 42 or 43.
The paging service is received by the paging service daemon process 620 or 630.

【0031】同様に、クライアント計算機42の疑似ペ
ージングデバイスドライバ420は、他のクライアント
計算機41または43のページングサービスデーモンプ
ロセス610、または630により、ページングサービ
スを受ける。
Similarly, the pseudo paging device driver 420 of the client computer 42 receives a paging service by the paging service daemon process 610 or 630 of another client computer 41 or 43.

【0032】また、クライアント計算機43の疑似ペー
ジングデバイスドライバ430は、他のクライアント計
算機41または42のページングサービスデーモンプロ
セス610、または620により、ページングサービス
を受ける。この第4の実施形態では、複数のクライアン
ト計算機によっても、同様に処理することができる。
Further, the pseudo paging device driver 430 of the client computer 43 receives a paging service by the paging service daemon process 610 or 620 of another client computer 41 or 42. In the fourth embodiment, the same processing can be performed by a plurality of client computers.

【0033】図7は、上述した疑似ページングデバイス
ドライバの処理の流れを示すフローチャートである。疑
似ページングデバイスドライバは、プロセス(例えば図
1のプロセス10A)からページングのためのI/Oリ
クエストを受け取る(ステップS1)。疑似ページング
デバイスドライバは、そのI/Oリクエストがページイ
ンのためのREAD要求か、ページアウトのためのWR
ITE要求かを判定する(ステップS2)。
FIG. 7 is a flowchart showing the flow of processing of the above-described pseudo paging device driver. The pseudo paging device driver receives an I / O request for paging from a process (for example, the process 10A in FIG. 1) (step S1). The pseudo paging device driver determines whether the I / O request is a READ request for page-in or a WR for page-out.
It is determined whether the request is an ITE request (step S2).

【0034】READ要求の場合、疑似ページングデバ
イスドライバは、他の計算機のページングサービスデー
モンプロセスにページインのためのI/Oリクエストを
送る(ステップS3)。そして他の計算機のページング
サービスデーモンプロセスで処理されたページインデー
タを受け取る(ステップS4)。最後に、リクエストの
完了をリクエスタ(疑似ページングデバイスドライバ)
に戻し(ステップS5)、処理を終了する。
In the case of a READ request, the pseudo paging device driver sends an I / O request for page-in to a paging service daemon process of another computer (step S3). Then, page-in data processed by the paging service daemon process of another computer is received (step S4). Finally, the requester completes the request (pseudo-paging device driver)
(Step S5), and the process ends.

【0035】一方、WRITE要求の場合、疑似ページ
ングデバイスドライバは、他の計算機のページングサー
ビスデーモンプロセスにページアウトのためのI/Oリ
クエストとページアウトデータを送る(ステップS
6)。そして、リクエストの完了をリクエスタ(疑似ペ
ージングデバイスドライバ)に戻し(ステップS5)、
処理を終了する。
On the other hand, in the case of a WRITE request, the pseudo paging device driver sends an I / O request for page out and page out data to the paging service daemon process of another computer (step S).
6). Then, the completion of the request is returned to the requester (pseudo paging device driver) (step S5),
The process ends.

【0036】図8は、上述したページングサービスデー
モンプロセスの処理の流れを示す図である。ページング
サービスデーモンプロセスは他の計算機の疑似ページン
グデバイスドライバからI/Oリクエストを受け取る
(ステップS10)。ページングサービスデーモンプロ
セスは、そのI/OリクエストがページインのためのR
EAD要求か、ページアウトのためのWRITE要求か
を判定する(ステップS11)。
FIG. 8 is a diagram showing a processing flow of the above-described paging service daemon process. The paging service daemon process receives an I / O request from the pseudo paging device driver of another computer (Step S10). The paging service daemon process determines that the I / O request is
It is determined whether the request is an EAD request or a WRITE request for page out (step S11).

【0037】READ要求の場合は、他の計算機の疑似
ページングデバイスドライバから受けたI/Oリクエス
トに基づき、仮想メモリ(仮想アドレス空間)からデー
タを読み出す(ステップS12)。最後に、仮想メモリ
から読み出したデータをリクエスタである疑似ページン
グデバイスドライバに送り(ステップS13)、処理を
終了する。
In the case of a READ request, data is read from a virtual memory (virtual address space) based on an I / O request received from a pseudo paging device driver of another computer (step S12). Finally, the data read from the virtual memory is sent to the pseudo paging device driver, which is a requester (step S13), and the process ends.

【0038】一方、WRITE要求の場合は、ページン
グサービスデーモンプロセスは、リクエスタである他の
計算機の疑似ページングデバイスドライバからデータを
受け取る(ステップS14)。そして、受け取ったデー
タを仮想メモリ(仮想アドレス空間)に書き込み(ステ
ップS15)、処理を終了する。
On the other hand, in the case of a WRITE request, the paging service daemon process receives data from a pseudo paging device driver of another computer which is a requester (step S14). Then, the received data is written into the virtual memory (virtual address space) (step S15), and the process ends.

【0039】次に、ある計算機の疑似ページングデバイ
スドライバの処理を複数のページングサービスデーモン
プロセスが処理する場合について説明する。
Next, a case where a plurality of paging service daemon processes process a pseudo paging device driver of a computer will be described.

【0040】図9では、100〜103の4個のページ
ングサービスデーモンプロセスが、ある一台の計算機の
疑似ページングデバイスドライバの処理を行う場合を例
を示している。この例では、4個のページングサービス
デーモンプロセスの仮想メモリ110〜113(仮想ア
ドレス空間)の中にページインデータをRAID5のよ
うな形式に配置して記憶させたものである。即ち、仮想
メモリ110には、データブロック0、4、…が、仮想
メモリ111には、データブロック1、5、…が、仮想
メモリ112には、データブロック2、6、…が、仮想
メモリ113には、データブロック3、7、…がそれぞ
れ格納される。
FIG. 9 shows an example in which four paging service daemon processes 100 to 103 perform the processing of the pseudo paging device driver of one computer. In this example, page-in data is arranged and stored in a format like RAID5 in the virtual memories 110 to 113 (virtual address spaces) of four paging service daemon processes. .., The virtual memory 111 stores the data blocks 1, 5,..., The virtual memory 112 stores the data blocks 2, 6,. Stores data blocks 3, 7,... Respectively.

【0041】図10では、200〜204の5個のペー
ジングサービスデーモンプロセスが、ある一台の計算機
の疑似ページングデバイスドライバの処理を行う場合を
例を示している。この例では、5個のページングサービ
スデーモンプロセスの仮想メモリ210〜214(仮想
アドレス空間)の中にページインデータをRAID5の
ような形式に配置して記憶させたものである。即ち、仮
想メモリ210には、データブロック0、4、…が、仮
想メモリ211には、データブロック1、5、…が、仮
想メモリ212には、データブロック2、6、…が、仮
想メモリ213には、データブロック3と、データブロ
ック4〜7のExclusive-ORを取ったデータy、…が、仮
想メモリ214には、データブロック1〜3のExclusiv
e-ORを取ったデータとデータブロック7とがそれぞれ格
納される。
FIG. 10 shows an example in which five paging service daemon processes 200 to 204 perform the processing of the pseudo paging device driver of a certain computer. In this example, page-in data is arranged and stored in a format like RAID5 in the virtual memories 210 to 214 (virtual address spaces) of five paging service daemon processes. .., The virtual memory 211 stores the data blocks 1, 5,..., The virtual memory 212 stores the data blocks 2, 6,. , The data y obtained by taking the exclusive-OR of the data block 3 and the data blocks 4 to 7 is stored in the virtual memory 214.
The data obtained by e-OR and the data block 7 are stored.

【0042】このように、RAID5のような形式でデ
ータを格納することにより、任意のページングサービス
デーモンプロセスが動作しなくなっても、他のページン
グサービスデーモンプロセスによって格納されるデータ
を用いてページングサービスに必要なデータを復元する
ことが出来る利点がある。
As described above, by storing data in a format such as RAID5, even if an arbitrary paging service daemon process stops operating, the data is stored in the paging service using data stored by another paging service daemon process. There is an advantage that necessary data can be restored.

【0043】[0043]

【発明の効果】以上、本発明によれば、クライアント計
算機(第1の計算機)のページングデータは、サーバ計
算機(第2の計算機)のページングサービスデーモンプ
ロセスによって管理されるアドレス空間に保存すること
により、サーバ計算機で実メモリが十分にあれば、クラ
イアント計算機のページングは極めて高速に処理するこ
とが出来ることから、クライアント計算機の実メモリが
増設されたのとほぼ等価な効果を得ることが出来る。特
に、上記した技術は、近年の高速なネットワークによっ
て可能となった。これにより、クライアント計算機のメ
モリを増設せずに、必要に応じサーバ計算機のメモリを
増設するだけでネットワーク環境の計算機を効率よく使
用することが出来る。
As described above, according to the present invention, paging data of a client computer (first computer) is stored in an address space managed by a paging service daemon process of a server computer (second computer). If the server computer has sufficient real memory, the paging of the client computer can be processed at an extremely high speed, so that an effect equivalent to an increase in the real memory of the client computer can be obtained. In particular, the technology described above has been made possible by recent high-speed networks. As a result, a computer in a network environment can be used efficiently only by increasing the memory of the server computer as necessary without increasing the memory of the client computer.

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

【図1】本発明の仮想記憶システムに係る第1の実施形
態を示すブロック図。
FIG. 1 is a block diagram showing a first embodiment according to a virtual storage system of the present invention.

【図2】本発明の仮想記憶システムに係る第2の実施形
態の概念図。
FIG. 2 is a conceptual diagram of a second embodiment according to the virtual storage system of the present invention.

【図3】本発明の仮想記憶システムに係る第2の実施形
態の詳細なブロック図。
FIG. 3 is a detailed block diagram of a second embodiment according to the virtual storage system of the present invention.

【図4】本発明の仮想記憶システムに係る第3の実施形
態の概念図。
FIG. 4 is a conceptual diagram of a third embodiment according to the virtual storage system of the present invention.

【図5】本発明の仮想記憶システムに係る第3の実施形
態の詳細なブロック図。
FIG. 5 is a detailed block diagram of a third embodiment according to the virtual storage system of the present invention.

【図6】本発明の仮想記憶システムに係る第4の実施形
態の概念図。
FIG. 6 is a conceptual diagram of a virtual storage system according to a fourth embodiment of the present invention.

【図7】本発明に用いられる疑似ページングデバイスド
ライバの動作を示すブロック図。
FIG. 7 is a block diagram showing the operation of a pseudo paging device driver used in the present invention.

【図8】本発明に用いられるページングサービスデーモ
ンプロセスの動作を示すブロック図。
FIG. 8 is a block diagram showing the operation of a paging service daemon process used in the present invention.

【図9】本発明に用いられる仮想メモリにページインデ
ータを格納した第1の格納状態を示す図。
FIG. 9 is a diagram showing a first storage state in which page-in data is stored in a virtual memory used in the present invention.

【図10】本発明に用いられる仮想メモリにページイン
データを格納した第2の格納状態を示す図。
FIG. 10 is a diagram showing a second storage state in which page-in data is stored in a virtual memory used in the present invention.

【符号の説明】[Explanation of symbols]

10、41、42、 43…クライアント計算機(第1
の計算機) 20、45、50、51…サーバ計算機(第2の計算
機) 10A…プロセス 12、22、451、461、501、511…仮想メ
モリ 14、24、452、462、502、512…実メモ
リ 16、…疑似ページングデバイス 18、410、420、430…疑似ページングデバイ
スドライバ 20A、450、460、500、510、610、6
20、630…ページングサービスデーモンプロセス 26、453、463、503、513…ページングデ
バイス
10, 41, 42, 43 ... client computer (first
20, 45, 50, 51 ... server computer (second computer) 10A ... process 12, 22, 451, 461, 501, 511 ... virtual memory 14, 24, 452, 462, 502, 512 ... real memory 16, pseudo paging device 18, 410, 420, 430 pseudo paging device driver 20A, 450, 460, 500, 510, 610, 6
20, 630: Paging service daemon process 26, 453, 463, 503, 513: Paging device

Claims (7)

【特許請求の範囲】[Claims] 【請求項1】 メモリ管理装置を持つ複数の計算機シ
ステムにおいて、 実メモリのページング先となる疑似ページングデバイス
と、前記疑似ページングデバイスの処理を実行する疑似
ページングデバイスドライバとを有する第1の計算機シ
ステムと、前記疑似ページングデバイスドライバがペー
ジイン/ページアウトに対応して発行するI/Oリクエ
ストを受け取るページングサービスデーモンプロセスを
有する第2の計算機システムとを有し、 前記第2の計算機システムの前記ページングサービスデ
ーモンプロセスが前記第1の計算機の前記疑似ページン
グデバイスドライバからページアウトのI/Oリクエス
トと共にページアウトデータを受けた場合、前記ページ
アウトデータを受け取り自システム内の仮想アドレス空
間内に保存し、 前記第2の計算機システムの前記ページングサービスデ
ーモンプロセスが前記第1の計算機の前記疑似ページン
グデバイスドライバからページインのI/Oリクエスト
を受けた場合、前記自システム内の仮想アドレス空間内
に保存してあったデータをページインデータとして前記
第1の計算機システムに送り返すことを特徴とする仮想
記憶システムのページング制御方法。
1. A plurality of computer systems having a memory management device, comprising: a first computer system having a pseudo paging device serving as a paging destination of a real memory; and a pseudo paging device driver executing processing of the pseudo paging device. A second computer system having a paging service daemon process for receiving an I / O request issued by the pseudo paging device driver in response to page in / page out, wherein the paging service of the second computer system is provided. When a daemon process receives page-out data together with a page-out I / O request from the pseudo-paging device driver of the first computer, receives the page-out data and saves the page-out data in a virtual address space in its own system. When the paging service daemon process of the second computer system receives a page-in I / O request from the pseudo paging device driver of the first computer, the paging service daemon process saves the page-in I / O request in a virtual address space in the own system. A paging control method for a virtual storage system, comprising sending back existing data as page-in data to the first computer system.
【請求項2】 前記ページングサービスデーモンプロ
セスを前記第2の計算機システム内に複数設け、前記第
1の計算機システムの前記疑似ページングデバイスドラ
イバからの前記I/Oリクエストを前記複数のページン
グサービスデーモンプロセスを用いて分担して処理する
ことを特徴とする請求項1記載の仮想記憶システムのペ
ージング制御方法。
2. A plurality of paging service daemon processes are provided in the second computer system, and the I / O request from the pseudo paging device driver of the first computer system is transmitted to the plurality of paging service daemon processes. 2. The paging control method for a virtual storage system according to claim 1, wherein the paging control method is used to perform processing.
【請求項3】 前記ページングサービスデーモンプロ
セスを複数の前記第2の計算機システム内に設け、前記
第1の計算機システムの前記疑似ページングデバイスド
ライバからの前記I/Oリクエストを前記複数の第2の
計算機システム内の前記ページングサービスデーモンプ
ロセスを用いて分担して処理することを特徴とする請求
項1記載の仮想記憶システムのページング制御方法。
3. The paging service daemon process is provided in a plurality of the second computer systems, and the I / O request from the pseudo paging device driver of the first computer system is transmitted to the plurality of second computers. 2. The paging control method for a virtual storage system according to claim 1, wherein the paging service daemon process in the system shares and processes the paging service.
【請求項4】 前記ページインデータ、ページアウト
データを複数の前記ページングサービスデーモンプロセ
スにストライピングして持たせたことを特徴とする請求
項3記載の仮想記憶システムのページング制御方法。
4. A paging control method for a virtual storage system according to claim 3, wherein said page-in data and page-out data are striped to a plurality of said paging service daemon processes.
【請求項5】 前記ページインデータ、ページアウト
データを複数の前記ページングサービスデーモンプロセ
スによって前記第2の計算機の仮想メモリにRAID5
のように配置して記憶させたことを特徴とする請求項3
記載の仮想記憶システムのページング制御方法。
5. The system according to claim 5, wherein the page-in data and the page-out data are stored in a virtual memory of the second computer by a plurality of paging service daemon processes.
4. An arrangement according to claim 3, wherein the information is arranged and stored.
A paging control method for a virtual storage system according to the above.
【請求項6】 前記ページインデータ、ページアウト
データを複数の前記ページングサービスデーモンプロセ
スによって前記第2の計算機の仮想メモリにRAID5
のように配置して記憶し、 前記ページングサービスデーモンプロセスの内の1台が
停止した場合でも、他の前記ページインデータまたはペ
ージアウトデータから停止したプロセスに対応するデー
タを復元することを特徴とする請求項5記載の仮想記憶
システムのページング制御方法。
6. The system according to claim 6, wherein the page-in data and the page-out data are stored in a virtual memory of the second computer by a plurality of paging service daemon processes.
Even if one of the paging service daemon processes is stopped, the data corresponding to the stopped process is restored from the other page-in data or page-out data. The paging control method for a virtual storage system according to claim 5.
【請求項7】 メモリ管理装置を持つ複数の計算機シ
ステムにおいて、 実メモリのページング先となる疑似ページングデバイス
と、前記疑似ページングデバイスの処理を実行する疑似
ページングデバイスドライバとを有する第1の計算機シ
ステムと、 前記疑似ページングデバイスドライバがページイン/ペ
ージアウトに対応して発行するI/Oリクエストを受け
取るページングサービスデーモンプロセスを有する第2
の計算機システムと、 前記第2の計算機システムの前記ページングサービスデ
ーモンプロセスが前記第1の計算機の前記疑似ページン
グデバイスドライバからページアウトのI/Oリクエス
トと共にページアウトデータを受けた場合、前記ページ
アウトデータを受け取り自システム内の仮想アドレス空
間内に保存する手段と、 前記第2の計算機システムの前記ページングサービスデ
ーモンプロセスが前記第1の計算機の前記疑似ページン
グデバイスドライバからページインのI/Oリクエスト
を受けた場合、前記自システム内の仮想アドレス空間内
に保存してあったデータをページインデータとして前記
第1の計算機システムに送り返す手段と、 を具備することを特徴とする仮想記憶システムのページ
ング制御装置。
7. A plurality of computer systems having a memory management device, comprising: a first computer system having a pseudo paging device serving as a paging destination of a real memory; and a pseudo paging device driver executing processing of the pseudo paging device. A paging service daemon process for receiving an I / O request issued by the pseudo paging device driver in response to page-in / page-out.
And the paging service daemon process of the second computer system receives the page-out data together with the page-out I / O request from the pseudo-paging device driver of the first computer. Means for receiving a page-in I / O request from the pseudo-paging device driver of the first computer by the paging service daemon process of the second computer system. Means for sending back data stored in the virtual address space in the own system to the first computer system as page-in data, comprising: a paging control device for the virtual storage system. .
JP11139828A 1999-05-20 1999-05-20 Method and device for paging control over virtual storage system Pending JP2000330949A (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP11139828A JP2000330949A (en) 1999-05-20 1999-05-20 Method and device for paging control over virtual storage system
TW89116001A TWI267701B (en) 1999-05-20 2000-08-09 Positive type actinic ray-decomposing and developing dry film and pattern-forming method by use of the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP11139828A JP2000330949A (en) 1999-05-20 1999-05-20 Method and device for paging control over virtual storage system

Publications (1)

Publication Number Publication Date
JP2000330949A true JP2000330949A (en) 2000-11-30

Family

ID=15254440

Family Applications (1)

Application Number Title Priority Date Filing Date
JP11139828A Pending JP2000330949A (en) 1999-05-20 1999-05-20 Method and device for paging control over virtual storage system

Country Status (1)

Country Link
JP (1) JP2000330949A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8099522B2 (en) 2008-06-09 2012-01-17 International Business Machines Corporation Arrangements for I/O control in a virtualized system

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8099522B2 (en) 2008-06-09 2012-01-17 International Business Machines Corporation Arrangements for I/O control in a virtualized system

Similar Documents

Publication Publication Date Title
US10423568B2 (en) Apparatus and method for transferring data and commands in a memory management environment
US8180996B2 (en) Distributed computing system with universal address system and method
CN112948318B (en) RDMA-based data transmission method and device under Linux operating system
US7664909B2 (en) Method and apparatus for a shared I/O serial ATA controller
US7275050B2 (en) Storage system, a method of file data backup and method of copying of file data
US5991797A (en) Method for directing I/O transactions between an I/O device and a memory
US12079506B2 (en) Memory expander, host device using memory expander, and operation method of sever system including memory expander
US6421769B1 (en) Efficient memory management for channel drivers in next generation I/O system
CN102918509B (en) Data reading and writing method, device and storage system
US8732381B2 (en) SAS expander for communication between drivers
CN107329704A (en) One kind caching mirror method and controller
CN114827151B (en) Heterogeneous server cluster, and data forwarding method, device and equipment
JP2004054916A (en) Method of executing hardware support communication between processors
US20200319819A1 (en) Method and Apparatus for Improving Parity Redundant Array of Independent Drives Write Latency in NVMe Devices
US7200716B1 (en) Method and apparatus to offload operations in a networked storage system
US7725654B2 (en) Affecting a caching algorithm used by a cache of storage system
CN103595720A (en) Offloaded data transferring method, device and client
US6374248B1 (en) Method and apparatus for providing local path I/O in a distributed file system
US7089378B2 (en) Shared receive queues
CN118210449A (en) Cache synchronization method, device, computer equipment and storage medium
KR20250026635A (en) Computer networking device and method for inmemory database
JP2000330949A (en) Method and device for paging control over virtual storage system
US7657717B1 (en) Coherently sharing any form of instant snapshots separately from base volumes
CN118708368B (en) Data processing method and device for distributed memory computing engine cluster
JP2866376B2 (en) Disk array device

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20050406

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050407

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20050415

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20050406

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20050415

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20060424

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060509

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060710

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20070313