JP2003006137A - Storage access system - Google Patents

Storage access system

Info

Publication number
JP2003006137A
JP2003006137A JP2001188570A JP2001188570A JP2003006137A JP 2003006137 A JP2003006137 A JP 2003006137A JP 2001188570 A JP2001188570 A JP 2001188570A JP 2001188570 A JP2001188570 A JP 2001188570A JP 2003006137 A JP2003006137 A JP 2003006137A
Authority
JP
Japan
Prior art keywords
virtual address
address information
external input
output device
node
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
JP2001188570A
Other languages
Japanese (ja)
Inventor
Kazuichi Oe
和一 大江
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2001188570A priority Critical patent/JP2003006137A/en
Publication of JP2003006137A publication Critical patent/JP2003006137A/en
Withdrawn legal-status Critical Current

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

PROBLEM TO BE SOLVED: To reduce latency by simplifying data transfer operation between a node device, such as a PC and a WS and an external input/output device, and also to secure a data transfer band (rate) that can fully utilizes the performance of an IB switch, when the IB switch is introduced. SOLUTION: This system comprises a virtual address management means 5 for making at least virtual address information associate with physical address information, showing a particular storage area of a storage means 25 of the external input/output device 2 side to manage them, in order to handle respective storage means 12 and 25 of the node device 1 and the external input/output device 2 side as virtual distributed shared memories, and a control means 6 for controlling data transfer between the storage area of the storage means 25 and the storage means 12 of the node device 1 via a connection means 3, on the basis of the virtual address information managed by the virtual address management means 5.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【発明の属する技術分野】本発明は、ストレージアクセ
スシステムに関し、特に、パーソナルコンピュータ(P
C)やワークステーション(WS)等のノード装置から
ディスク装置等の外部入出力装置へのアクセス技術に関
する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a storage access system, and more particularly to a personal computer (P
The present invention relates to a technique for accessing a node device such as C) or a workstation (WS) to an external input / output device such as a disk device.

【0002】[0002]

【従来の技術】図21に既存のストレージアクセスシス
テムの一例を示す。この図21に示すように、本システ
ムは、PCやWS等のノード装置100(以下、単に、
「ノード100」という)と、SCSI(Small Comput
er System Interface)バス300を介してこのノード
100に接続された入出力(I/O)装置200とをそ
なえており、ノード100には、CPU101,主記憶
部(メインメモリ)102,SCSIカード103等が
装備されており、これらが内部バス104を介して相互
に通信可能に接続されている。また、I/O装置200
には、ディスクコントローラ201,バッファ202及
びディスク装置203が装備されている。
2. Description of the Related Art FIG. 21 shows an example of an existing storage access system. As shown in FIG. 21, the present system includes a node device 100 (hereinafter, simply referred to as a PC, WS, etc.
"Node 100") and SCSI (Small Comput
The system includes an input / output (I / O) device 200 connected to the node 100 via a bus system 300, and the node 100 includes a CPU 101, a main storage unit (main memory) 102, and a SCSI card 103. And the like, which are connected to each other via an internal bus 104 so that they can communicate with each other. In addition, the I / O device 200
Is equipped with a disk controller 201, a buffer 202, and a disk device 203.

【0003】なお、SCSIバス300には、複数のI
/O装置200が接続される場合もある。また、ノード
100(メインメモリ102)とI/O装置200との
接続には、ファイバチャネル(FC)等の他のインタフ
ェースが用いられる場合もある。そして、このようなシ
ステムにおいて、ノード100(メインメモリ102)
とI/O装置200(ディスク装置203)との間でデ
ータ転送を行なう場合は、ノード100側からSCSI
のプロトコルを使用してI/O装置200のディスクコ
ントローラ201を起動する必要がある。例えば、ファ
イルシステム105がディスク装置203へデータの書
き込みを行なう場合、従来は、以下のような手順が実行
されるようなっている。
The SCSI bus 300 has a plurality of I's.
The / O device 200 may be connected in some cases. Further, another interface such as a fiber channel (FC) may be used to connect the node 100 (main memory 102) and the I / O device 200. In such a system, the node 100 (main memory 102)
When data is transferred between the I / O device 200 and the I / O device 200 (disk device 203), the SCSI is set from the node 100 side.
It is necessary to start the disk controller 201 of the I / O device 200 by using the above protocol. For example, when the file system 105 writes data to the disk device 203, conventionally, the following procedure is executed.

【0004】即ち、まず、図21及び図22に示すよう
に、ノード100側のファイルシステム105が、SC
SIドライバ106にディスク書き込み要求を依頼する
(ステップA1)。なお、上記のファイルシステム10
5及びSCSIドライバ106は、いずれも、通常はO
S(オペレーティングシステム)等の一機能として組み
込まれるもので、CPU101がメインメモリ102に
格納されているファイルシステムデータ及びドライバデ
ータを読み込んで動作することによってそれぞれの機能
が実現される。
That is, first, as shown in FIG. 21 and FIG. 22, the file system 105 on the node 100 side is SC
A disk write request is requested to the SI driver 106 (step A1). The above file system 10
5 and SCSI driver 106 are both normally O
It is incorporated as one function of S (operating system) and the like, and each function is realized by the CPU 101 reading and operating the file system data and the driver data stored in the main memory 102.

【0005】さて、上記のディスク書き込み要求を受け
たSCSIドライバ106は、対象のI/O装置200
のディスクコントローラ201と、SCSIバス300
上でのデータ転送レート決定等のためのネゴシエーショ
ンを数回実行することによりコネクションを設定した後
(ステップA2)、実際にデータの転送を開始して当該
データの書き込みをディスクコントローラ201に依頼
する(ステップA3)。なお、SCSIドライバ106
は、I/O装置200内でのディスク装置203へのデ
ータ書き込み処理に時間がかかる場合、ディスクコント
ローラ201とのコネクションを一旦解除する。
Now, the SCSI driver 106 that has received the above-mentioned disk write request operates as a target I / O device 200.
Disk controller 201 and SCSI bus 300
After setting the connection by executing the negotiation for determining the data transfer rate and the like several times (step A2), the data transfer is actually started and the disk controller 201 is requested to write the data ( Step A3). The SCSI driver 106
Disconnects the connection with the disk controller 201 once when it takes time to write data to the disk device 203 in the I / O device 200.

【0006】I/O装置200では、ディスクコントロ
ーラ201が、SCSIバス300を通じてノード10
0から受け取ったデータを一旦バッファ202に格納し
た後(ステップA4)、ディスク装置203へ書き込む
(ステップA5)。このI/O装置200での内部処理
(データ書き込み)が終了すると(ステップA6,A
7)、ディスクコントローラ201は、SCSIドライ
バ106に対して割り込みを上げて転送(書き込み)が
完了したことを報告し(ステップA8)、SCSIドラ
イバ106は、ファイルシステム105に転送完了を通
知する(ステップA9)。
In the I / O device 200, the disk controller 201 is connected to the node 10 via the SCSI bus 300.
The data received from 0 is once stored in the buffer 202 (step A4) and then written in the disk device 203 (step A5). When the internal processing (data writing) in this I / O device 200 is completed (steps A6 and A).
7) The disk controller 201 raises an interrupt to the SCSI driver 106 to report that the transfer (write) is completed (step A8), and the SCSI driver 106 notifies the file system 105 of the transfer completion (step A8). A9).

【0007】[0007]

【発明が解決しようとする課題】しかしながら、このよ
うな従来のシステムでは、ノード100からSCSIや
FC等のプロトコルを使用してI/O装置200側のデ
ィスクコントローラ201を起動する必要があり、ま
た、実際にデータの転送が起きるまでの動作も繁雑(ノ
ード100とディスクコントローラ201との間で数回
ネゴシエーションする必要がある)なため、レイテンシ
が大きいという課題がある。
However, in such a conventional system, it is necessary to activate the disk controller 201 on the I / O device 200 side from the node 100 using a protocol such as SCSI or FC. However, the operation until data transfer actually occurs is complicated (need to negotiate several times between the node 100 and the disk controller 201), and therefore there is a problem that the latency is large.

【0008】また、ノード100とI/O装置200と
の間の転送帯域(転送レート)に関しては、SCSI,
FC共に改善されてきた(〜160MB/s)が、インフィ
ニバンド(IB)が内部ネットワークとして導入される
と、ノード100側の内部バス104の転送速度を数GB
/s程度まで引き上げることが可能となる。しかし、現在
のSCSIやFC等の既存のインタフェース規格では、
上述のごとくレイテンシが大きいため、十分にその性能
を活かすことができない。
Regarding the transfer band (transfer rate) between the node 100 and the I / O device 200, SCSI,
Both FC have been improved (up to 160MB / s), but when InfiniBand (IB) is introduced as an internal network, the transfer speed of the internal bus 104 on the node 100 side will be several GB.
It is possible to raise it to about / s. However, in the existing interface standards such as current SCSI and FC,
Since the latency is large as described above, the performance cannot be fully utilized.

【0009】本発明は、このような課題に鑑み創案され
たもので、データ転送動作の簡略化を図ってレイテンシ
を削減するとともに、IB等の高速内部ネットワークを
導入した場合のその性能を十分に活かせるデータ転送帯
域(レート)を確保することのできる、ストレージアク
セスシステムを提供することを目的とする。
The present invention was conceived in view of the above problems, and simplifies the data transfer operation to reduce the latency, and at the same time, when the high-speed internal network such as IB is introduced, its performance is sufficiently improved. An object of the present invention is to provide a storage access system that can secure a data transfer bandwidth (rate) that can be utilized.

【0010】[0010]

【課題を解決するための手段】上記の目的を達成するた
めに、本発明のストレージアクセスシステムは、(1)ノ
ード装置側記憶手段をそなえたノード装置と、(2)外部
入出力装置側記憶手段をそなえた外部入出力装置と、
(3)これらのノード装置と外部入出力装置とを接続して
そのノード装置と外部入出力装置との間のデータ転送を
可能にする接続手段と、(4)上記の各記憶手段を仮想分
散共有メモリとして扱うべく、少なくとも、仮想アドレ
ス情報と上記の入出力側装置側記憶手段の特定の記憶領
域を示す物理アドレス情報とを対応付けて管理する仮想
アドレス管理手段と、(5)この仮想アドレス管理手段で
管理されている仮想アドレス情報に基づいて外部入出力
装置側記憶手段の記憶領域とノード装置側記憶手段との
間の接続手段を介したデータ転送を制御する制御手段と
をそなえたことを特徴としている(請求項1)。
In order to achieve the above object, a storage access system of the present invention comprises: (1) a node device having a node device side storage means; and (2) an external input / output device side storage device. An external input / output device equipped with means,
(3) connection means for connecting these node devices and external input / output devices to enable data transfer between the node devices and external input / output devices, and (4) virtual distribution of the above storage means. In order to treat it as a shared memory, at least a virtual address management unit that manages the virtual address information and the physical address information indicating the specific storage area of the input / output side device storage unit in association with each other, (5) this virtual address A control means for controlling data transfer via a connection means between the storage area of the external input / output device side storage means and the node device side storage means based on virtual address information managed by the management means. (Claim 1).

【0011】上述のごとく構成された本発明のストレー
ジアクセスシステムでは、ノード装置において仮想アド
レス情報を用いた仮想分散共有メモリ空間へのアクセス
を契機に、その仮想アドレス情報に対応する物理アドレ
ス情報の示す外部入出力装置側記憶手段の記憶領域への
アクセスが実行されるので、従来のようにデータ転送に
先立って繁雑なネゴシエーション等の前処理が不要にな
る。
In the storage access system of the present invention configured as described above, triggered by the access to the virtual distributed shared memory space using the virtual address information in the node device, the physical address information corresponding to the virtual address information is indicated. Since the storage area of the external input / output device side storage means is accessed, it is not necessary to perform complicated pre-processing such as negotiation prior to data transfer as in the prior art.

【0012】ここで、上記のノード装置は、上記の接続
手段を介して複数接続されていてもよく、この場合は、
これら複数のノード装置の各仮想アドレス管理手段が、
それぞれ、同一の外部入出力装置側記憶手段の物理アド
レス情報を上述した仮想アドレス情報と対応付けて管理
するように構成されるのが好ましい。これにより、複数
のノード装置は、それぞれ、単一の外部入出力装置に対
してそれぞれ繁雑なネゴシエーション等の前処理を行な
うことなくアクセスすることが可能となる(請求項
2)。
Here, a plurality of the above node devices may be connected through the above connecting means. In this case,
Each virtual address management means of these plurality of node devices,
It is preferable that the physical address information of the same external input / output device side storage means is managed in association with the above-mentioned virtual address information. As a result, each of the plurality of node devices can access a single external input / output device without performing complicated pre-processing such as negotiation (claim 2).

【0013】これに対し、上記の外部入出力装置が上記
の接続手段を介して複数接続されていてもよく、この場
合は、上記の仮想アドレス管理手段が、これら複数の外
部入出力装置の各外部入出力装置側記憶手段の物理アド
レス情報をそれぞれ仮想アドレス情報と対応付けて管理
するように構成されるのが好ましい。これにより、ノー
ド装置側記憶手段の物理アドレス情報と複数の外部入出
力装置側記憶手段の物理アドレス情報とが同一メモリ空
間にマップされて、各メモリが仮想分散共有メモリとし
て扱われることになるので、ノード装置は、上記の同一
メモリ空間にアクセスするだけで、任意の外部入出力装
置側記憶手段に対して繁雑なネゴシエーション等の前処
理を行なうことなくアクセスすることが可能となる(請
求項3)。
On the other hand, a plurality of the above-mentioned external input / output devices may be connected via the above-mentioned connecting means, and in this case, the above-mentioned virtual address management means is provided for each of these plurality of external input / output devices. It is preferable that the physical address information of the external input / output device side storage means is managed in association with the virtual address information. As a result, the physical address information of the node device side storage means and the physical address information of the plurality of external input / output device side storage means are mapped in the same memory space, and each memory is treated as a virtual distributed shared memory. , The node device can access the same memory space without performing any pre-processing such as complicated negotiation for any external input / output device side storage means (claim 3). ).

【0014】なお、この場合、仮想アドレス管理手段
は、異なる外部入出力装置側記憶手段の物理アドレス情
報をそれぞれ連続する仮想アドレス情報と対応付けて管
理するようにしてもよい。このようにすれば、連続する
仮想アドレス情報により上記のメモリ空間にアクセスす
ることで、連続して異なる外部入出力装置側記憶手段に
対するアクセスが発生することになる(請求項4)。
In this case, the virtual address management means may manage the physical address information of different external input / output device side storage means by associating it with the continuous virtual address information. With this configuration, by accessing the above memory space with successive virtual address information, different external I / O device side storage means are successively accessed (claim 4).

【0015】また、上記の外部入出力装置が複数接続さ
れている場合、上記の制御手段は、上記の外部入出力装
置側記憶手段の記憶領域へ転送して書き込むべきデータ
についてのパリティデータを生成するパリティデータ生
成部と、このパリティデータ生成部で生成されたパリテ
ィデータを特定の外部入出力装置側記憶手段に書き込む
べく転送するパリティ転送部とをそなえていてもよい。
これにより、パリティチェックによるデータエラーの検
出が可能になる(請求項5)。
When a plurality of the external input / output devices are connected, the control means generates parity data for the data to be transferred and written in the storage area of the external input / output device side storage means. And a parity transfer unit that transfers the parity data generated by the parity data generation unit so as to be written in a specific external input / output device-side storage means.
Thereby, the data error can be detected by the parity check (claim 5).

【0016】さらに、上記の仮想アドレス管理手段は、
異なる外部入出力装置側記憶手段の複数の物理アドレス
情報を同じ仮想アドレス情報に対応付けて管理するよう
に構成されていてもよい。このようにすれば、或る仮想
アドレス情報を用いた仮想分散共有メモリ空間へのアク
セスにより、複数の異なる外部入出力装置側記憶手段に
対する同時アクセスが実現できる(請求項6)。
Further, the above virtual address management means is
A plurality of pieces of physical address information of different external input / output device side storage means may be configured to be associated with the same virtual address information and managed. In this way, by accessing the virtual distributed shared memory space using certain virtual address information, it is possible to realize simultaneous access to a plurality of different external input / output device side storage means (claim 6).

【0017】また、上記の外部入出力装置側記憶手段
は、記録装置と、この記録装置と上記のノード装置との
間で転送されるデータを一時的にバッファする外部入出
力装置側バッファとにより構成されていてもよく、この
場合、上記の仮想アドレス管理手段は、上記のノード装
置側記憶手段としてのカーネル内バッファの物理アドレ
ス情報及び上記の外部入出力装置側バッファの物理アド
レス情報をそれぞれ上述した仮想アドレス情報として、
上記の記録装置の物理アドレス情報と対応付けて管理す
るように構成されていてもよい。
The external input / output device side storage means includes a recording device and an external input / output device side buffer for temporarily buffering data transferred between the recording device and the node device. In this case, the virtual address management means may include the physical address information of the kernel buffer as the node device side storage means and the physical address information of the external input / output device side buffer, respectively. As virtual address information,
It may be configured to be managed in association with the physical address information of the recording device.

【0018】このようにすれば、ノード装置側のカーネ
ル内バッファの物理アドレス情報と外部入出力装置側の
バッファの物理アドレス情報とが同一メモリ空間上にマ
ップされ、これらの各バッファが仮想分散共有メモリと
して扱われるので、上記の同一メモリ空間にアクセスす
るだけで、外部入出力装置に対して繁雑なネゴシエーシ
ョン等の前処理を行なうことなく上記記録装置へのアク
セスが可能となるほか、上記同一メモリ空間を削減する
ことも可能となる(請求項7)。
With this configuration, the physical address information of the buffer in the kernel on the node device side and the physical address information of the buffer on the external input / output device side are mapped in the same memory space, and these buffers are virtually distributed and shared. Since it is handled as a memory, it is possible to access the recording device without performing complicated pre-processing such as negotiation for the external input / output device by simply accessing the same memory space. It is also possible to reduce the space (claim 7).

【0019】また、上記の仮想アドレス管理手段は、上
記の外部入出力装置から外部入出力装置側メモリの特定
の記憶領域を示す物理アドレス情報を受けることによ
り、その物理アドレス情報に仮想アドレス情報を割り当
てることにより上述した仮想アドレス情報と物理アドレ
ス情報との対応付けを構築する仮想アドレス割当手段
と、この仮想アドレス割当手段による仮想アドレス情報
の割当結果を上記の外部入出力装置へ通知する仮想アド
レス割当結果通知手段とをそなえていてもよい。
Further, the virtual address management means receives the physical address information indicating a specific storage area of the external input / output device side memory from the external input / output device, and thereby the virtual address information is added to the physical address information. Virtual address allocation means for constructing the correspondence between the above-mentioned virtual address information and physical address information by allocation, and virtual address allocation for notifying the external input / output device of the allocation result of the virtual address information by this virtual address allocation means. It may have a result notifying means.

【0020】このようにすれば、外部入出力装置側記憶
手段の任意の物理アドレス情報を仮想分散共有メモリ空
間にマップすることができるので、上述したメモリアク
セス(ストレージアクセス)を柔軟に実現することがで
きる(請求項8)。なお、上記の接続手段としては、例
えば、インフィニバンドを高速内部ネットワークとして
適用するのが好ましい(請求項9)。
In this way, any physical address information of the external input / output device side storage means can be mapped in the virtual distributed shared memory space, so that the above memory access (storage access) can be flexibly realized. (Claim 8). As the connection means, for example, Infiniband is preferably applied as a high-speed internal network (claim 9).

【0021】[0021]

【発明の実施の形態】以下、図面を参照して本発明の実
施の形態を説明する。 (A)第1実施形態の説明 図1は本発明の第1実施形態としてのストレージアクセ
スシステムの構成を示すブロック図で、この図1に示す
システムは、PCやWS等のノード装置1と、外部入出
力(I/O)装置2と、これらのノード装置1(以下、
単に「ノード1」という)とI/O装置2とを相互に接
続してノード1−I/O装置2間のデータ転送を可能に
する接続手段としてのIB(インフィニバンド)ネット
ワーク(IBスイッチ3)とをそなえて構成されてい
る。なお、I/O装置2としては、例えば、外部ハード
ディスク装置,MO,CD−R(R/W),DVD−R
AM等が挙げられる。
BEST MODE FOR CARRYING OUT THE INVENTION Embodiments of the present invention will be described below with reference to the drawings. (A) Description of First Embodiment FIG. 1 is a block diagram showing a configuration of a storage access system according to a first embodiment of the present invention. The system shown in FIG. 1 includes a node device 1 such as a PC and a WS. The external input / output (I / O) device 2 and these node devices 1 (hereinafter,
An IB (Infiniband) network (IB switch 3) as a connecting means for connecting data between the node 1 and the I / O device 2 by simply connecting the I / O device 2 and the I / O device 2 to each other. ) And is configured. The I / O device 2 may be, for example, an external hard disk device, MO, CD-R (R / W), DVD-R.
AM etc. are mentioned.

【0022】そして、この図1に示すように、ノード1
には、例えば、CPU11,主記憶部(メインメモリ;
ノード装置側記憶手段)12,メモリコントローラ13
及びホストチャンネルアダプタ14が設けられており、
これらのコンポーネントが内部バス15により相互通信
可能に接続されている。また、I/O装置2には、ター
ゲットチャンネルアダプタ21,メモリコントローラ2
2,バッファ23,ディスクコントローラ24及びディ
スク装置(記録装置;外部入出力装置側記憶手段)25
(以下、単に「ディスク25」ともいう)が設けられて
おり、これらのコンポーネントもそれぞれ内部バス26
を介して相互通信可能に接続されている。
As shown in FIG. 1, the node 1
Include, for example, the CPU 11 and the main storage unit (main memory;
Node device side storage means) 12, memory controller 13
And host channel adapter 14 are provided,
These components are connected by an internal bus 15 so that they can communicate with each other. Further, the I / O device 2 includes a target channel adapter 21 and a memory controller 2
2, buffer 23, disk controller 24 and disk device (recording device; external input / output device side storage means) 25
(Hereinafter, also simply referred to as “disk 25”), each of these components also has an internal bus 26.
Are connected so that they can communicate with each other.

【0023】ここで、ノード1において、CPU11
は、ノード1の動作を統括制御するもので、例えば、メ
インメモリ12からファイルシステムデータを読み込ん
で動作することにより、OS等の一機能として組み込ま
れるファイルシステムが実現されるようになっている。
また、メインメモリ(以下、単に「メモリ」ともいう)
12は、上記のファイルシステムデータやその他のアプ
リケーションデータ,ユーザデータ等の各種データを記
憶するためのものであり、ホストチャンネルアダプタ1
4は、IBスイッチ3(IBネットワーク)との間のイ
ンタフェースをとるためのものである。
Here, in the node 1, the CPU 11
Controls the operation of the node 1. For example, by reading the file system data from the main memory 12 and operating it, a file system incorporated as one function of the OS or the like is realized.
In addition, the main memory (hereinafter, also simply referred to as "memory")
Reference numeral 12 is for storing various data such as the above-mentioned file system data, other application data, and user data, and the host channel adapter 1
Reference numeral 4 is for taking an interface with the IB switch 3 (IB network).

【0024】そして、メモリコントローラ13は、メモ
リ12へのアクセス(データ書き込み/読み出し)と、
ホストチャンネルアダプタ14及びIBスイッチ3を介
したI/O装置2側のディスク25へのアクセス(デー
タ転送処理)とを制御するもので、本実施形態では、ノ
ード1側のメモリ12及びI/O装置2側のディスク2
5を仮想分散共有メモリとして扱うために、例えば図2
(A)に示すような仮想アドレステーブル131を有し
ており、このテーブル131の内容に基づいて上記の各
アクセスが制御されるようになっている。
Then, the memory controller 13 accesses the memory 12 (writes / reads data),
It controls access (data transfer processing) to the disk 25 on the I / O device 2 side via the host channel adapter 14 and the IB switch 3, and in the present embodiment, the memory 12 and I / O on the node 1 side. Disk 2 on device 2 side
5 is treated as a virtual distributed shared memory, for example, as shown in FIG.
It has a virtual address table 131 as shown in (A), and each access described above is controlled based on the contents of this table 131.

【0025】ここで、具体的に、仮想アドレステーブル
131には、この図2(A)に示すように、仮想アドレ
ス(Virtual Address)領域132,ローカル物理アド
レス領域133,ノードアドレス(Node Address)領域
134,物理/セクタアドレス(Physical/Sector Addr
ess)領域135及びフラグ(Flags)領域136が用意
されており、仮想アドレス領域132には、前記のファ
イルシステムがアクセスするメモリ空間内での仮想アド
レス〔NUMA(Non-Uniform Memory Access)に基づく仮
想アドレス〕が格納されるようになっている。なお、仮
想アドレスの割り当て方法については後述する。
Here, specifically, in the virtual address table 131, as shown in FIG. 2A, a virtual address area 132, a local physical address area 133, and a node address area. 134, Physical / Sector Addr
An ess) area 135 and a flag (Flags) area 136 are prepared. The virtual address area 132 has a virtual address [NUMA (Non-Uniform Memory Access) based virtual address in the memory space accessed by the file system. Address] is stored. The method of assigning the virtual address will be described later.

【0026】また、ローカル物理アドレス領域133に
は、自ノード1内でローカル(メモリ12)にキャッシ
ュしたデータを格納したアドレス情報が格納され、ノー
ドアドレス領域134には、データの実体又はキャッシ
ュが存在するノード1(あるいは、I/O装置2)のI
B(インフィニバンド)アドレス情報(IBスイッチ3
に対する接続位置情報)が格納される。なお、このIB
アドレスには、データの実体が存在するノードとキャッ
シュノードとを区別するビットも設けられる。
Further, the local physical address area 133 stores address information in which data cached locally (memory 12) within the own node 1 is stored, and the node address area 134 contains data entity or cache. I of node 1 (or I / O device 2)
B (Infiniband) address information (IB switch 3
Connection location information) is stored. In addition, this IB
The address is also provided with a bit that distinguishes the node where the substance of the data exists from the cache node.

【0027】さらに、物理/セクタアドレス領域135
には、I/O装置2側のディスク25内でデータの実体
が存在する記憶領域(セクタ)の位置情報(セクタアド
レス)が格納され、フラグ領域136には、ローカルに
キャッシュしたデータ内容もしくはI/O装置2側のデ
ィスク25にキャッシュした(書き込んだ)データが有
効か否かを判定するためのフラグ(例えば、“1”で有
効、“0”で無効)が格納されるようになっている。
Further, the physical / sector address area 135
Stores the position information (sector address) of the storage area (sector) where the substance of the data exists in the disk 25 on the I / O device 2 side. The flag area 136 stores the locally cached data content or I A flag (for example, "1" is valid, "0" is invalid) for determining whether or not the data cached (written) is valid is stored in the disk 25 of the / O device 2 side. There is.

【0028】以上のような情報を有する仮想アドレステ
ーブル131をメモリコントローラ13に装備すること
で、ノード1側のメモリ12のアドレス(物理アドレス
情報)とI/O装置2側のディスク25のセクタアドレ
ス(物理アドレス情報)とが同一メモリ空間4A(図1
参照)にマップされ、メモリ12及びディスク25を仮
想分散共有メモリとして扱うことが可能になる。
By equipping the memory controller 13 with the virtual address table 131 having the above information, the address (physical address information) of the memory 12 on the node 1 side and the sector address of the disk 25 on the I / O device 2 side are provided. (Physical address information) is the same memory space 4A (see FIG.
It is possible to handle the memory 12 and the disk 25 as a virtual distributed shared memory.

【0029】即ち、前記のファイルシステムが、或る仮
想アドレスにより上記の同一メモリ空間(仮想分散共有
メモリ空間)4Aにアクセス(データの書き込み/読み
出し)すると、メモリコントローラ13は、その仮想ア
ドレスに対応するローカル物理アドレス、もしくは、物
理/セクタアドレスに対するアクセスを実行することに
なる。
That is, when the file system accesses (writes / reads data) the same memory space (virtual distributed shared memory space) 4A with a certain virtual address, the memory controller 13 corresponds to the virtual address. Access to the local physical address or physical / sector address to be executed.

【0030】例えば、ファイルシステムが、或る仮想ア
ドレスにより上記のメモリ空間4Aにおいてメモリ12
のアドレスがマップされた領域にアクセスすると、メモ
リコントローラ13は、メモリ12に対するアクセスを
実行する一方、ファイルシステムが、或る仮想アドレス
によりディスク25のセクタアドレスがマップされた領
域にアクセスすると、メモリコントローラ13は、ホス
トチャンネルアダプタ14及びIBスイッチ3を介して
I/O装置2側のディスク25に対するアクセス(デー
タ転送処理)を実行することになるのである。なお、こ
のディスク25に対するアクセスの具体的な動作につい
ては後述する。
For example, the file system may have a memory 12 in the above memory space 4A by a virtual address.
When the memory controller 13 accesses the area where the address of the disk 25 is mapped, the memory controller 13 accesses the memory 12, while when the file system accesses the area where the sector address of the disk 25 is mapped by a certain virtual address, the memory controller 13 13 executes access (data transfer processing) to the disk 25 on the I / O device 2 side via the host channel adapter 14 and the IB switch 3. The specific operation of accessing the disk 25 will be described later.

【0031】次に、I/O装置2において、ターゲット
チャンネルアダプタ21は、IBスイッチ3側(IBネ
ットワーク)とのインタフェースをとるためのものであ
り、メモリコントローラ22は、バッファ23に対する
アクセス(データの書き込み/読み出し)を制御するた
めのもので、本第1実施形態では、上述したようにディ
スク25とノード1側のメモリ12とを仮想分散共有メ
モリとして扱うため、ノード1側の仮想アドレステーブ
ル131と同様の仮想アドレステーブル221〔図2
(B)参照〕が実装されている。
Next, in the I / O device 2, the target channel adapter 21 serves to interface with the IB switch 3 side (IB network), and the memory controller 22 accesses the buffer 23 (data In the first embodiment, since the disk 25 and the memory 12 on the node 1 side are treated as a virtual distributed shared memory as described above, the virtual address table 131 on the node 1 side is controlled. Virtual address table 221 similar to
(See (B)] is implemented.

【0032】ただし、このI/O装置2側の仮想アドレ
ステーブル221のローカル物理アドレス領域223に
は、I/O装置2内においてローカル(バッファ23)
にキャッシュしたデータの格納位置(バッファアドレ
ス)が格納される。これにより、バッファ23に一時的
にキャッシュされたデータのバッファアドレス(Buffer
Address0,1,2等)と、そのデータが実際にディスク25
に格納されたときのセクタアドレス(Sector0,1,2等)
との対応付けがなされることになる。
However, the local physical address area 223 of the virtual address table 221 on the I / O device 2 side is local to the I / O device 2 (buffer 23).
The storage location (buffer address) of the cached data is stored in. As a result, the buffer address of the data temporarily cached in the buffer 23 (Buffer
Address0, 1, 2 etc.) and the data is actually the disk 25
Address when stored in (Sector0,1,2, etc.)
Will be associated with.

【0033】そして、ディスクコントローラ24は、上
記のバッファ23に一旦格納されたデータをディスク2
5に書き込む(このときのセクタアドレスが上記の仮想
アドレステーブル221の物理/セクタアドレス領域2
25に格納される)一方、ノード1側から仮想アドレス
を用いて読み出しアクセスされたときの仮想アドレステ
ーブル221における対応する物理/セクタアドレスが
示すディスク25のセクタに格納されているデータを一
旦バッファ23に読み出してノード1へ送出するための
機能を有するものである。なお、図2(B)において
も、符号222は仮想アドレス領域、符号224はノー
トアドレス領域をそれぞれ表す。
Then, the disk controller 24 transfers the data once stored in the buffer 23 to the disk 2
5 (the sector address at this time is the physical / sector address area 2 of the virtual address table 221).
On the other hand, the data stored in the sector of the disk 25 indicated by the corresponding physical / sector address in the virtual address table 221 when read-accessed from the node 1 side using the virtual address is temporarily buffered by the buffer 23. It has a function of reading out to the node 1 and sending it to the node 1. Also in FIG. 2B, reference numeral 222 represents a virtual address area, and reference numeral 224 represents a note address area.

【0034】つまり、上述したノード1側のメモリコン
トローラ13及びI/O装置2側のメモリコントローラ
22は、上記の仮想アドレステーブル131及び221
が実装されることにより、メモリ12,ディスク25を
仮想分散共有メモリとして扱うべく、少なくとも、上記
メモリ空間4Aにおける仮想アドレスとディスク25の
特定の記憶領域(セクタ)を示す物理アドレス情報(セ
クタアドレス)とを対応付けて管理する仮想アドレス管
理部5としての機能と、この仮想アドレス管理部5で管
理されている仮想アドレスに基づいてI/O装置2側の
ディスク25のセクタ(記憶領域)とノード1側のメモ
リ12との間のIBスイッチ3(IBネットワーク)を
介したデータ転送を制御する制御部6としての機能を果
たしていることになる。
That is, the memory controller 13 on the side of the node 1 and the memory controller 22 on the side of the I / O device 2 have the virtual address tables 131 and 221.
By implementing, in order to treat the memory 12 and the disk 25 as a virtual distributed shared memory, at least the physical address information (sector address) indicating the virtual address in the memory space 4A and a specific storage area (sector) of the disk 25. And a function as a virtual address management unit 5 that manages the above, and a sector (storage area) and a node of the disk 25 on the I / O device 2 side based on the virtual address managed by the virtual address management unit 5. This means that it functions as a control unit 6 that controls data transfer via the IB switch 3 (IB network) with the memory 12 on the first side.

【0035】以下、上述のごとく構成されたシステムの
動作について詳述する。 I/O装置2側のディスク25のセクタに仮想アドレ
スを割り当てる方法 まず、I/O装置2がパワーオンされると、図3に示す
ように、I/O装置2の初期化の過程でメモリコントロ
ーラ22が、メモリ空間4Aにマップしてほしいセクタ
情報(ディスク25の全セクタでもよいし一部でもよ
い)をノード1側のメモリコントローラ13に通知する
(ステップS1)。
The operation of the system configured as described above will be described in detail below. Method for assigning virtual address to sector of disk 25 on I / O device 2 side First, when the I / O device 2 is powered on, as shown in FIG. The controller 22 informs the memory controller 13 on the node 1 side of the sector information (may be all sectors or some of the disk 25) to be mapped in the memory space 4A (step S1).

【0036】ノード1側のメモリコントローラ13は、
I/O装置2側のメモリコントローラ22から受信され
る上記のセクタ情報に対して仮想アドレスの割り当てを
行ない、自メモリコントローラ13内の仮想アドレステ
ーブル131(仮想アドレス領域131及び物理/セク
タアドレス領域135)に書き込み(ステップS2)、
割り当てた仮想アドレスのリストをI/O装置2側のメ
モリコントローラ22に通知する(ステップS3)。
The memory controller 13 on the node 1 side is
A virtual address is assigned to the above sector information received from the memory controller 22 on the I / O device 2 side, and a virtual address table 131 (virtual address area 131 and physical / sector address area 135) in the own memory controller 13 is assigned. ) (Step S2),
The list of assigned virtual addresses is notified to the memory controller 22 on the I / O device 2 side (step S3).

【0037】これにより、I/O装置2側のメモリコン
トローラ22は、ノード1側のメモリコントローラ13
から送られてきた仮想アドレスのリストを自メモリコン
トローラ22内の仮想アドレステーブル221に書き込
む(ステップS4)。以上のようにして、I/O装置2
側(メモリコントローラ22)が要求するディスク25
のセクタに仮想アドレスが割り当てられて、仮想アドレ
ステーブル131,221がそれぞれメモリコントロー
ラ13,22内で構築・保持される。
As a result, the memory controller 22 on the I / O device 2 side becomes the memory controller 13 on the node 1 side.
The list of virtual addresses sent from is written in the virtual address table 221 in the own memory controller 22 (step S4). As described above, the I / O device 2
Disk 25 requested by the side (memory controller 22)
Virtual addresses are allocated to the sectors of the above, and virtual address tables 131 and 221 are constructed and held in the memory controllers 13 and 22, respectively.

【0038】つまり、本実施形態では、上記のメモリコ
ントローラ13(仮想アドレス管理部5)が次のような
各機能を有していることになる。 (1)I/O装置2からディスク25の特定のセクタアド
レスを受けることにより、そのセクタアドレスに仮想ア
ドレスを割り当てることにより仮想アドレスとセクタア
ドレスとの対応付け(仮想アドレステーブル131)を
構築する仮想アドレス割当部51としての機能 (2)この仮想アドレス割当部51による仮想アドレスの
割当結果をI/O装置2(メモリコントローラ22)へ
通知する仮想アドレス割当結果通知部52としての機能 なお、仮想アドレスの割り当ては、I/O装置2側から
行なうようにしてもよい。
That is, in this embodiment, the memory controller 13 (virtual address management unit 5) has the following functions. (1) By receiving a specific sector address of the disk 25 from the I / O device 2 and assigning a virtual address to the sector address, a virtual address and a sector address are associated with each other (virtual address table 131). Function as Address Allocation Unit 51 (2) Function as Virtual Address Allocation Result Notification Unit 52 for Notifying the I / O Device 2 (Memory Controller 22) of Virtual Address Allocation Result by the Virtual Address Allocation Unit 51 May be assigned from the I / O device 2 side.

【0039】I/O装置2(ディスク25)へのデー
タ転送(書き込み)処理 さて、次に、上述のごとくメモリコントローラ13,2
2においてそれぞれ仮想アドレステーブル131,22
1が構築された状態で、図4に示すように、ノード1の
ファイルシステムが、仮想分散共有メモリ空間4Aにお
いてディスク25の或るセクタがマップされた領域に書
き込みを行なったとする(ステップS11)。
Data transfer (writing) processing to the I / O device 2 (disk 25) Next, as described above, the memory controllers 13 and 2
2, virtual address tables 131 and 22 respectively
4, it is assumed that the file system of the node 1 writes to the area of the virtual distributed shared memory space 4A in which a certain sector of the disk 25 is mapped, as shown in FIG. 4 (step S11). .

【0040】すると、その書き込みデータは、メモリコ
ントローラ13の制御によって、IB用のメッセージ
(仮想アドレスが含まれる;以下、「IBメッセージ」
という)としてホストチャンネルアダプタ14及びIB
スイッチ3(IBネットワーク)経由でI/O装置2側
に送られる(ステップS12,S13)。なお、このと
き、メモリコントローラ13は、仮想アドレステーブル
131のフラグ領域136を更新(データが有効である
ことを示す情報を格納)する。
Then, the write data is a message for IB (including a virtual address; hereinafter, "IB message") under the control of the memory controller 13.
Host channel adapter 14 and IB
It is sent to the I / O device 2 side via the switch 3 (IB network) (steps S12 and S13). At this time, the memory controller 13 updates the flag area 136 of the virtual address table 131 (stores information indicating that the data is valid).

【0041】I/O装置2側では、メモリコントローラ
22が、上述のごとくノード1から送られてきたデータ
(IBメッセージ)を、一旦、バッファ23の空き領域
に蓄積した後(ステップS14)、ディスクコントロー
ラ24を起動して、ディスクコントローラ24がバッフ
ァ23に蓄積されたデータを読み出してディスク25に
書き込む(ステップS15)。書き込みが終了すると、
メモリコントローラ22が、仮想アドレステーブル22
1のフラグ領域226をノード1側の仮想アドレステー
ブル221と同様に更新して処理を終了する。
On the I / O device 2 side, the memory controller 22 temporarily stores the data (IB message) sent from the node 1 as described above in the empty area of the buffer 23 (step S14), and then the disk. The controller 24 is activated, and the disk controller 24 reads the data accumulated in the buffer 23 and writes it on the disk 25 (step S15). When writing is finished,
The memory controller 22 uses the virtual address table 22.
The flag area 226 of No. 1 is updated similarly to the virtual address table 221 on the node 1 side, and the processing is ended.

【0042】ディスクコントローラ24は、このように
ディスク25へのデータ書き込みが完了すると、図5に
示すように、その旨をメモリコントローラ22へ通知
し、これにより、メモリコントローラ22は、ノード1
側のメモリコントローラ13に対して、データ書き込み
完了通知を行ない(ステップS16〜S18)、メモリ
コントローラ13は、その旨をファイルシステムに対し
て通知して処理を完了する(ステップS19)。
When the data writing to the disk 25 is completed in this way, the disk controller 24 notifies the memory controller 22 to that effect, as shown in FIG.
Data write completion notification is sent to the memory controller 13 on the side (steps S16 to S18), and the memory controller 13 notifies the file system to that effect and completes the processing (step S19).

【0043】I/O装置2(ディスク25)からのデ
ータ転送(読み込み)処理 一方、ノード1において、ファイルシステムが、データ
読み込みのために仮想分散共有メモリ空間4Aにおいて
ディスク25のセクタがマップされた領域に仮想アドレ
スによりアクセスすると(ステップS21)、メモリコ
ントローラ12が、その仮想アドレスを含むIBメッセ
ージをI/O装置2側のメモリコントローラ22へ送出
する。
Data transfer (reading) processing from the I / O device 2 (disk 25) On the other hand, in the node 1, the file system maps the sector of the disk 25 in the virtual distributed shared memory space 4A for reading data. When the area is accessed by the virtual address (step S21), the memory controller 12 sends an IB message including the virtual address to the memory controller 22 on the I / O device 2 side.

【0044】I/O装置2側のメモリコントローラ22
は、受信したIBメッセージに含まれる仮想アドレスを
検索キーにして仮想アドレステーブル221を検索して
対応するディスク25のセクタアドレスを特定し、その
セクタアドレスをディスクコントローラ24に通知す
る。ディスクコントローラ24は、通知されたセクタア
ドレスに格納されているデータを一旦バッファ23に読
み出し(ステップS22)、この読み出されたデータを
メモリコントローラ22が順次バッファ23から読み出
してノード1側のメモリコントローラ13へ送出する
(ステップS23,S24)。ノード1では、メモリコ
ントローラ13が、I/O装置2からの受信データを
(ローカル)メモリ12に書き込むとともに、仮想アド
レステーブル131の内容を更新(フラグ領域136の
値を、データ無しを意味する値(例えば、“0”)に更
新)して処理を終了する(ステップS25,S26)。
Memory controller 22 on the side of I / O device 2
Uses the virtual address included in the received IB message as a search key to search the virtual address table 221 to identify the sector address of the corresponding disk 25, and notifies the disk controller 24 of the sector address. The disk controller 24 once reads the data stored at the notified sector address into the buffer 23 (step S22), and the memory controller 22 sequentially reads the read data from the buffer 23 to cause the memory controller on the node 1 side. It is sent to 13 (steps S23 and S24). In the node 1, the memory controller 13 writes the received data from the I / O device 2 into the (local) memory 12 and updates the contents of the virtual address table 131 (the value of the flag area 136 is a value meaning no data). (For example, it is updated to "0") and the process ends (steps S25 and S26).

【0045】以上のように、本実施形態のストレージシ
ステムによれば、メモリ空間4Aに対するアクセス(デ
ータ書き込み/読み出し)のみでノード1とI/O装置
2との間のデータ転送が完了するので、従来のSCSI
におけるデータ転送前のネゴシエーション等の繁雑な操
作が削減され、レイテンシの大幅な向上が期待できる。
また、レイテンシの大幅な向上により、IBスイッチ3
(IBネットワーク)によるデータ転送帯域(レート)
を有効に活用することができ、データ転送速度を従来よ
りも大幅に向上することができる。
As described above, according to the storage system of this embodiment, the data transfer between the node 1 and the I / O device 2 is completed only by accessing (writing / reading) the memory space 4A. Traditional SCSI
Complex operations such as negotiations before data transfer in are reduced, and a significant improvement in latency can be expected.
Also, due to the significant improvement in latency, the IB switch 3
Data transfer band (rate) by (IB network)
Can be effectively utilized, and the data transfer rate can be significantly improved as compared with the conventional one.

【0046】また、上述した例では、図3により前述し
たように、I/O装置2側からメモリ空間4Aにマップ
してもらいたいディスク25のセクタをノード1に通知
することにより、仮想アドレステーブル131,221
が構築されるので、ディスク25の任意のセクタをメモ
リ空間4Aにマップすることができる。従って、ディス
ク25のセクタを必要に応じて全部もしくは部分的にメ
モリ空間4Aにマップすることが可能であり、柔軟なス
トレージアクセスを実現することができる。
Further, in the above-described example, as described above with reference to FIG. 3, the virtual address table is notified by notifying the node 1 of the sector of the disk 25 to be mapped in the memory space 4A from the I / O device 2 side. 131,221
Is constructed, any sector of the disk 25 can be mapped to the memory space 4A. Therefore, the sectors of the disk 25 can be wholly or partially mapped in the memory space 4A as required, and flexible storage access can be realized.

【0047】(A1)第1実施形態の第1変形例の説明 上述したノード1は、例えば図7に示すように、IBス
イッチ3(IBネットワーク)を介して複数台(2台以
上)接続してもよい。この場合は、各ノード1のメモリ
12のアドレスと、ディスク25〔図7では、I/O装
置2側の他の構成要素の図示は省略している(図9,図
12,図13,図15〜図20においても同じ)〕のセ
クタとを同一メモリ空間4Bに割り付ける(マッピング
する)ことにより、各ノード1のメモリ12と各ノード
1に共通のディスク25とを仮想分散共有メモリとして
扱うことが可能になる。なお、以下において、既述の符
号と同一符号を付すものは、特に断らない限り、既述の
ものと同様のものである。
(A1) Description of First Modification of First Embodiment As shown in FIG. 7, for example, a plurality of (two or more) nodes 1 are connected to each other via an IB switch 3 (IB network). May be. In this case, the address of the memory 12 of each node 1 and the disk 25 (in FIG. 7, other components on the I / O device 2 side are not shown (FIG. 9, FIG. 12, FIG. 13, FIG. 15 to FIG. 20)] are allocated to the same memory space 4B (mapping) to treat the memory 12 of each node 1 and the disk 25 common to each node 1 as a virtual distributed shared memory. Will be possible. It should be noted that, in the following, components having the same reference numerals as those described above are the same as those described above unless otherwise specified.

【0048】このようなメモリ空間4Bを構築するに
は、ノード1側のメモリコントローラ13にそれぞれ例
えば図8(A)に示すような仮想アドレステーブル13
1をもたせ、I/O装置2側のメモリコントローラ22
に例えば図8(B)に示すような仮想アドレステーブル
221をもたせればよい。即ち、この場合は、複数のノ
ード1の各仮想アドレス管理部5が、それぞれ、同じI
/O装置2側のディスク25のセクタアドレス(物理ア
ドレス情報)をそれぞれメモリ空間4Bにおける仮想ア
ドレスと対応付けて管理するのである。
To construct such a memory space 4B, the virtual address table 13 as shown in FIG.
1, the memory controller 22 on the I / O device 2 side
For example, a virtual address table 221 as shown in FIG. That is, in this case, the virtual address management units 5 of the plurality of nodes 1 have the same I
The sector address (physical address information) of the disk 25 on the side of the / O device 2 is managed in association with each virtual address in the memory space 4B.

【0049】これにより、各ノード1は、それぞれ、フ
ァイルシステムが同一メモリ空間4BにおいてI/O装
置2のディスク25のセクタがマップされた領域〔図8
(A)の場合なら仮想アドレス“100”以降〕にアク
セスするだけで、制御部6(メモリコントローラ13,
22)によって、同一ディスク25に対する共有アクセ
スが可能になる。
As a result, in each node 1, the file system has an area in which the sectors of the disk 25 of the I / O device 2 are mapped in the same memory space 4B [FIG. 8].
In the case of (A), the virtual address "100" or later] is simply accessed, and the control unit 6 (memory controller 13,
22) enables shared access to the same disk 25.

【0050】ただし、この場合、同一メモリ空間4Bに
対する読み込み/書き込み指示が複数のノード1から同
時に発行される可能性があるため、排他制御が必要にな
るが、これは、例えば、IBの“atomic operation”等
を使用して実現することができる。この排他制御を除け
ば、個々のノード1からディスク25に対するアクセス
方法は、上述した第1実施形態と同様のアクセス方法に
なる。
However, in this case, since read / write instructions for the same memory space 4B may be issued from a plurality of nodes 1 at the same time, exclusive control is required. This is, for example, "atomic" of IB. It can be realized by using "operation" or the like. Excluding this exclusive control, the access method from each node 1 to the disk 25 is the same access method as in the first embodiment described above.

【0051】従って、例えば、一部のノード1がダウン
しても、他のノード1(待機系)への切り替えを高速に
実行することが可能になるので、システム全体の信頼性
を大幅に向上することできる。 (A2)第1実施形態の第2変形例の説明 次に、上記のI/O装置2は、例えば図9に示すよう
に、ノード1に対してIBスイッチ3(IBネットワー
ク)を介して複数台接続することもできる。この場合
は、ノード1のメモリ12のアドレスと、複数のI/O
装置2のディスク25のセクタアドレスとを同一メモリ
空間4Cにマッピングすることにより、メモリ12と複
数のディスク25を仮想分散共有メモリとして扱うこと
が可能になる。
Therefore, for example, even if some of the nodes 1 are down, it is possible to switch to another node 1 (standby system) at high speed, so that the reliability of the entire system is greatly improved. You can do it. (A2) Description of Second Modification of First Embodiment Next, as shown in FIG. 9, for example, the above-mentioned I / O devices 2 are provided to a plurality of nodes 1 via an IB switch 3 (IB network). It is also possible to connect the units. In this case, the address of the memory 12 of the node 1 and a plurality of I / O
By mapping the sector address of the disk 25 of the device 2 in the same memory space 4C, the memory 12 and the plurality of disks 25 can be treated as a virtual distributed shared memory.

【0052】例えば、ノード1側のメモリコントローラ
13に例えば図10(A)に示すような仮想アドレステ
ーブル131をもたせ、I/O装置2側のメモリコント
ローラ22にそれぞれ例えば図10(B)に示すような
仮想アドレステーブル221をもたせることで、上記の
メモリ空間4Cが構築される。ここで、これらの図9,
図10(A)及び図10(B)に示すように、メモリ空
間4Cにおいて複数のディスク25のセクタを1アドレ
スずつ順番に(連続して)仮想アドレスに割り当ててお
けば、ファイルシステムが、連続する仮想アドレスによ
りメモリ空間4Cにおいてディスク25のセクタがマッ
プされた領域〔図10(A)の場合なら仮想アドレス
“100”以降〕に連続してアクセスすると、制御部6
によって、複数のディスク25に対するアクセス(デー
タ転送)が連続して発生することになる。
For example, the memory controller 13 on the node 1 side is provided with a virtual address table 131 as shown in FIG. 10A, and the memory controller 22 on the I / O device 2 side is shown as FIG. 10B, respectively. By providing such a virtual address table 221, the above memory space 4C is constructed. Here, these FIG.
As shown in FIGS. 10 (A) and 10 (B), if the sectors of the plurality of disks 25 are sequentially (continuously) assigned to the virtual addresses in the memory space 4C one by one, the file system becomes continuous. If the area in which the sectors of the disk 25 are mapped in the memory space 4C by the virtual address to be accessed (in the case of FIG. 10A, the virtual address "100" and thereafter) is continuously accessed, the control unit 6
As a result, access (data transfer) to the plurality of disks 25 occurs continuously.

【0053】即ち、この場合は、仮想アドレス管理部5
が、異なるI/O装置2のディスク25のセクタアドレ
スをそれぞれ上記メモリ空間4Cにおける連続する仮想
アドレスと対応付けて管理するのである。これにより、
複数のディスク25に対するいわゆる「ストライピン
グ」が実現されることになる。従って、データ転送帯域
を稼ぐことができ、IBスイッチ3(IBネットワー
ク)の帯域を最大限に有効利用した高速なデータ転送処
理が実現される。
That is, in this case, the virtual address management unit 5
However, the sector addresses of the disks 25 of different I / O devices 2 are managed in association with the continuous virtual addresses in the memory space 4C. This allows
So-called “striping” for the plurality of disks 25 is realized. Therefore, a data transfer band can be earned, and a high-speed data transfer process can be realized by making the most effective use of the band of the IB switch 3 (IB network).

【0054】(A3)第1実施形態の第3変形例の説明 なお、上述したように複数のI/O装置2を設ける場
合、例えば図11に示すように、その一部のディスク2
5を他のディスクに記録されるデータのパリティチェッ
ク用のデータ(パリティデータ)を格納するディスクと
して割り当てることもできる。なお、以下では、説明の
便宜上、データ記録用のディスク25を25a、パリテ
ィデータ記録用のディスク25b、ディスク25aをも
つI/O装置2をI/O装置2a、ディスク25bをも
つI/O装置2をI/O装置2bと表記する。
(A3) Description of Third Modified Example of First Embodiment When a plurality of I / O devices 2 are provided as described above, for example, as shown in FIG.
5 can also be assigned as a disk for storing data for checking the parity of data recorded on another disk (parity data). In the following, for convenience of description, the data recording disk 25a, the parity data recording disk 25b, the I / O device 2 having the disk 25a is the I / O device 2a, and the disk 25b is the I / O device. 2 is referred to as an I / O device 2b.

【0055】この場合、ノード1のファイルシステム
が、メモリ空間4Cにおいてディスク25aのセクタの
マップされた領域に対してアクセスする(データ書き込
みを行なう)と、メモリコントローラ13′が、該当セ
クタにデータを書き込むためのIBメッセージ(仮想ア
ドレス及び書き込みデータが含まれる)を作成してI/
O装置2aに送付するとともに、上記の書き込みデータ
についてパリティ演算を行ない、その演算結果(パリテ
ィデータ)を含むIBメッセージを作成してI/O装置
2bに送付する。
In this case, when the file system of the node 1 accesses (writes data) the mapped area of the sector of the disk 25a in the memory space 4C, the memory controller 13 'writes the data to the corresponding sector. Create an IB message (including virtual address and write data) for writing and I /
In addition to sending to the O device 2a, a parity operation is performed on the above-mentioned write data, an IB message including the operation result (parity data) is created, and sent to the I / O device 2b.

【0056】I/O装置2a(2b)側では、メモリコ
ントローラ22及びディスクコントローラ24が、IB
メッセージとして受け取った書き込みデータ〔パリティ
データ(以下、単に「パリティ」ともいう)〕をそのI
Bメッセージに含まれる仮想アドレスにより特定される
ディスク25a(25b)の該当セクタに書き込む。つ
まり、本変形例のメモリコントローラ13′(制御部
6)は、図11に示すように、I/O装置2側のディス
ク25のセクタへ転送して書き込むべきデータについて
のパリティデータを生成するパリティデータ生成部61
としての機能と、このパリティデータ生成部61で生成
されたパリティデータを特定のディスク25に書き込む
べく転送するパリティ転送部62としての機能を有して
いるのである。
On the side of the I / O device 2a (2b), the memory controller 22 and the disk controller 24 are
The write data [parity data (hereinafter, also simply referred to as “parity”)] received as a message is the I
The data is written in the corresponding sector of the disk 25a (25b) specified by the virtual address included in the B message. That is, as shown in FIG. 11, the memory controller 13 ′ (control unit 6) of the present modification generates parity data for data to be transferred and written to the sector of the disk 25 on the I / O device 2 side. Data generator 61
And a function as a parity transfer unit 62 for transferring the parity data generated by the parity data generation unit 61 so as to be written in the specific disk 25.

【0057】一方、データ読み出しの場合は、ノード1
側のメモリコントローラ13′にて、パリティを書き込
んだ仮想アドレスを記録しておくことで、ファイルシス
テムがメモリ空間4Cに対して読み出しアクセスを行な
った仮想アドレスに対応するパリティの書き込みアドレ
ス(仮想アドレス)を特定できるので、その仮想アドレ
スを含むIBメッセージをI/O装置2bへ送付するこ
とにより、ディスク25aから読み出されるデータに対
するパリティをディスク25bから読み出すことができ
る。
On the other hand, in the case of data reading, the node 1
By writing the virtual address to which the parity is written in the memory controller 13 'on the side, the write address of the parity (virtual address) corresponding to the virtual address to which the file system has read-accessed the memory space 4C. Since the IB message containing the virtual address is sent to the I / O device 2b, the parity for the data read from the disk 25a can be read from the disk 25b.

【0058】これにより、ノード1側のメモリコントロ
ーラ13′は、ディスク25aから読み出されたデータ
と、そのデータに対応するディスク25bから読み出さ
れたパリティとによりパリティチェックを行ない、その
結果(正常/エラー有り)を読み出しデータとともにフ
ァイルシステムに通知することになる。つまり、本変形
例のシステムでは、図1〜図6により上述した実施形態
のアーキテクチャを基本として、メモリコントローラ1
3′を実装することにより、いわゆるRAID(Redundant
Array of Independent Disks)-3,4と呼ばれるパリティ
チェック機能付きのストレージアーキテクチャが実現さ
れているのである。従って、前述した実施形態と同様の
利点が得られるほか、パリティチェックによりデータエ
ラーを発見することができるので、より高度なデータの
信頼性,システムの安全性(エラーの在るデータを基に
処理が進むこと等の防止)を確保すること可能である。
As a result, the memory controller 13 'on the node 1 side performs a parity check on the data read from the disk 25a and the parity read from the disk 25b corresponding to the data, and as a result (normal / Error) will be notified to the file system together with the read data. That is, in the system of this modification, the memory controller 1 is based on the architecture of the embodiment described above with reference to FIGS.
By implementing 3 ', so-called RAID (Redundant
Array of Independent Disks) -3,4 storage architecture with parity check function has been realized. Therefore, in addition to the same advantages as those of the above-described embodiment, a data error can be found by a parity check, so that higher data reliability and system safety (processing based on error data can be performed). It is possible to secure the prevention)

【0059】なお、図12に示すように、データ書き込
み用のI/O装置2(ディスク25)が複数存在し、同
一データをそれらのI/O装置2へ書き込むには、メモ
リコントローラ13′からデータ書き込みを依頼するI
BメッセージをそれぞれのI/O装置2宛に送付すれば
よい。また、パリティを書き込むディスク25は予め固
定的に決めておく必要はなく、いわゆるRAID-5のように
複数のディスク25に分散して書き込まれるようにして
もよい。更には、RAID-4のように特定のディスク25
を、ビット化け等のエラーを訂正するためのECC(Er
ror-Correcting Code)記録用として用いることもでき
る。
As shown in FIG. 12, there are a plurality of I / O devices 2 (disks 25) for writing data, and in order to write the same data to those I / O devices 2, the memory controller 13 'is used. Request to write data I
The B message may be sent to each I / O device 2. Further, the disks 25 for writing the parity do not have to be fixedly determined in advance, and may be distributed and written in a plurality of disks 25 like so-called RAID-5. Furthermore, specific disk 25 such as RAID-4
To correct errors such as garbled bits.
ror-Correcting Code) can also be used for recording.

【0060】(A4)第1実施形態の第4変形例の説明 次に、図9により前述したように複数台のI/O装置2
(ディスク25)がIBスイッチ3(IBネットワー
ク)に接続される構成では、例えば図13に示すよう
に、メモリ空間4Cの1つの領域(仮想アドレス)に複
数のディスク25のセクタをマッピングしてもよい。
(A4) Description of Fourth Modification of First Embodiment Next, as described above with reference to FIG. 9, a plurality of I / O devices 2 are used.
In the configuration in which the (disk 25) is connected to the IB switch 3 (IB network), even if sectors of a plurality of disks 25 are mapped to one area (virtual address) of the memory space 4C as shown in FIG. 13, for example. Good.

【0061】即ち、ノード1(Node Address=0)側の
メモリコントローラ13には、例えば図14(A)に示
すような仮想アドレステーブル131をもたせ、各I/
O装置2側のメモリコントローラ22(図13では図示
を省略している)には、例えば図14(B)に示すよう
な仮想アドレステーブル221をもたせることにより、
1つの領域(同じ仮想アドレス)に複数のディスク25
のセクタをマッピングしたメモリ空間4Cを構築する。
つまり、この場合は、仮想アドレス管理部5において、
異なるI/O装置2のディスク25の複数のセクタアド
レスが同じ仮想アドレスに対応付けて管理されるのであ
る。
That is, the memory controller 13 on the node 1 (Node Address = 0) side is provided with a virtual address table 131 as shown in FIG.
By providing the memory controller 22 (not shown in FIG. 13) on the O device 2 side with a virtual address table 221 as shown in FIG. 14B, for example,
Multiple disks 25 in one area (same virtual address)
The memory space 4C is constructed by mapping the sectors of.
That is, in this case, in the virtual address management unit 5,
A plurality of sector addresses of the disks 25 of different I / O devices 2 are managed in association with the same virtual address.

【0062】これにより、例えば、ノード1のファイル
システムが、メモリ空間4Cのディスク25のセクタが
マップされた領域(例えば、仮想アドレス“100”の
示す領域)にアクセスしたとすると、メモリコントロー
ラ13は、図14(A)に示す仮想アドレステーブル1
31において仮想アドレス“100”に対して複数のI
/O装置2(Node Address=#0,#1)におけるディスク
25のセクタアドレス(Sector0,1)が割り当てられて
いることから、各I/O装置2側のメモリコントローラ
22に対してそれぞれIBメッセージを送付することに
なる。
As a result, for example, if the file system of the node 1 accesses the area (for example, the area indicated by the virtual address "100") of the disk 25 in the memory space 4C to which the sector is mapped, the memory controller 13 , Virtual address table 1 shown in FIG.
A plurality of I's corresponding to the virtual address “100” in 31
Since the sector address (Sector0,1) of the disk 25 in the I / O device 2 (Node Address = # 0, # 1) is assigned, an IB message is sent to the memory controller 22 on each I / O device 2 side. Will be sent.

【0063】一方、I/O装置2側のメモリコントロー
ラ22は、それぞれ、上記のIBメッセージを受信する
と、そのIBメッセージに含まれる仮想アドレス(“1
00”)を検索キーとして仮想アドレステーブル221
を検索し、自ノードアドレスに対応するディスク25の
セクタに対するアクセスを実行する。このようにして、
ノード1側においてファイルシステムが、メモリ空間4
Cのディスク25のセクタがマップされた領域に対して
アクセス(データ書き込み/読み出し)すると、制御部
6によって、同一データについての複数のディスク25
に対するアクセスが同時に発生する。
On the other hand, when the memory controller 22 on the I / O device 2 side receives the IB message, the virtual address ("1" included in the IB message is received.
00 ”) as a search key and the virtual address table 221
Is searched and the sector of the disk 25 corresponding to the own node address is accessed. In this way
The file system on the node 1 side has a memory space 4
When the sector of the disk 25 of C is accessed (data writing / reading), the control unit 6 causes the plurality of disks 25 of the same data to be accessed.
Access occurs simultaneously.

【0064】つまり、本変形例では、図1〜図6により
前述した実施形態のストレージアーキテクチャを基本と
して、保存データを二重化する、いわゆる「ミラーリン
グ」が実現されているのである。従って、万が一、一方
のディスク25が破壊された場合でも、もう一方のディ
スク25からデータを読み出すことが可能であり、前述
した実施形態と同様の効果ないし利点が得られるほか、
データ保存の安全性が大幅に向上するという利点がさら
に得られる。
That is, in this modification, so-called "mirroring" is realized, in which the stored data is duplicated, based on the storage architecture of the embodiment described above with reference to FIGS. Therefore, even if one of the disks 25 is destroyed, the data can be read from the other disk 25, and the same effects and advantages as the above-described embodiment can be obtained.
The additional advantage is that the security of data storage is greatly improved.

【0065】(B)第2実施形態の説明 上述した第1実施形態では、ノード1側のメモリ12と
I/O装置2側のディスク25とを分散共有メモリとし
て扱う場合であるが、例えば図15に示すように、I/
O装置2側のデバイス(ハードディスク,CD−R(R
/W),DVD−RAM等)25′用のバッファ23
と、デバイス25′用のデバイス(I/O)ドライバ
(以下、単に「ドライバ」という)16内のバッファ領
域(カーネル層内バッファ領域)161とを、第1実施
形態と同様にして、仮想分散共有メモリとして扱うこと
もできる。なお、この図15において、ノード1のCP
U11やメモリ12等の他の構成要素の図示は省略して
いる(図16〜図20においても同じ)。
(B) Description of Second Embodiment In the first embodiment described above, the memory 12 on the node 1 side and the disk 25 on the I / O device 2 side are handled as distributed shared memories. As shown in 15,
O device 2 side device (hard disk, CD-R (R
/ W), DVD-RAM, etc.) buffer 23 for 25 '
And a buffer area (kernel layer internal buffer area) 161 in a device (I / O) driver (hereinafter, simply referred to as “driver”) 16 for the device 25 ′ as in the first embodiment. It can also be handled as shared memory. Note that in FIG. 15, the CP of the node 1
Illustration of other components such as the U11 and the memory 12 is omitted (the same applies to FIGS. 16 to 20).

【0066】この場合は、カーネル層内バッファ領域1
61(以下、単に「バッファ161」と略記する)のバ
ッファアドレス(一部でも全てでもよい)と、I/O装
置2側のデバイス25′用のバッファ23のバッファア
ドレス(一部でも全てでもよい)とを、ドライバ16が
カーネル層においてアクセスする同じメモリ空間4Dに
マッピング(仮想アドレス管理部5において、バッファ
161の物理アドレス情報及びI/O装置2側のバッフ
ァ23の物理アドレス情報を仮想アドレスと対応付けて
管理)すればよい。
In this case, the kernel layer buffer area 1
A buffer address of 61 (hereinafter simply referred to as "buffer 161") (may be part or all) and a buffer address of the buffer 23 for the device 25 'on the I / O device 2 side (may be part or all). ) And the same memory space 4D that the driver 16 accesses in the kernel layer (in the virtual address management unit 5, the physical address information of the buffer 161 and the physical address information of the buffer 23 on the I / O device 2 side are set as virtual addresses). It may be managed in association with each other.

【0067】つまり、この場合は、ノード1側のドライ
バ16がI/O装置2側のバッファ23までアドレス管
理を行なうのである。なお、図15には図示を省略して
いるが、この場合のアドレス管理も、第1実施形態にて
前述した仮想アドレステーブル131,221をノード
1側,I/O装置2側にもたせることで実現される。こ
の点は、以降の各変形例においても同様である。
That is, in this case, the driver 16 on the node 1 side manages addresses up to the buffer 23 on the I / O device 2 side. Although not shown in FIG. 15, the address management in this case is also performed by providing the virtual address tables 131 and 221 described above in the first embodiment on the node 1 side and the I / O device 2 side. Will be realized. This point is the same in each of the following modifications.

【0068】これにより、ノード1側のドライバ16
が、メモリ空間4DにおいてI/O装置2側のバッファ
23のバッファアドレスがマップされた領域にアクセス
するだけで、デバイス25′用のバッファ23とドライ
バ16間のデータ転送が完了するので、第1実施形態と
同様に、従来のSCSIにおけるデータ転送前のネゴシ
エーション等の繁雑な操作が削減され、レイテンシの大
幅な向上が期待できる。また、これにより、IBスイッ
チ3(IBネットワーク)によるデータ転送帯域(レー
ト)を有効に活用することができ、従来よりも高速なデ
ータ転送が実現できる。
As a result, the driver 16 on the node 1 side
However, the data transfer between the buffer 23 for the device 25 'and the driver 16 is completed only by accessing the area in the memory space 4D where the buffer address of the buffer 23 on the I / O device 2 side is mapped. Similar to the embodiment, complicated operations such as negotiation before data transfer in the conventional SCSI are reduced, and a significant improvement in latency can be expected. Further, as a result, the data transfer band (rate) by the IB switch 3 (IB network) can be effectively utilized, and higher-speed data transfer than conventional can be realized.

【0069】(B1)第2実施形態の第1変形例の説明 さて、上述した第2実施形態では、バッファ23とデバ
イス25′との対応付けを行なっていないが、例えば図
16に示すように、デバイス25′がディスク25の場
合、バッファ23のバッファアドレスとディスク25の
セクタアドレスとを対応付けて管理するテーブル27も
メモリ空間4D上でアクセスできるようにしておくこと
で、メモリ空間4Dとディスク25との間のデータ転送
も実現できる。なお、上記のテーブル27は、第1実施
形態にて前述した仮想アドレステーブル131,221
を拡張(変形)したものに相当し、以降の変形例におい
ても同様である。
(B1) Description of First Modified Example of Second Embodiment Although the buffer 23 and the device 25 'are not associated with each other in the above-described second embodiment, as shown in FIG. 16, for example. If the device 25 'is the disk 25, the table 27 which manages the buffer address of the buffer 23 and the sector address of the disk 25 in association with each other is also made accessible on the memory space 4D, so that the memory space 4D and the disk Data transfer to and from 25 can also be realized. The table 27 is the virtual address tables 131 and 221 described in the first embodiment.
Corresponds to an expanded (deformed) version of the above, and the same applies to subsequent modified examples.

【0070】即ち、この場合は、例えば、上記のテーブ
ル27にコマンド領域271を設けておき、このコマン
ド領域271にノード1側のドライバ16がアクセスコ
マンド(ライトコマンド/リードコマンド)を書き込む
ことによって、バッファ23とディスク25との間のデ
ータ転送を指示することができる。例えば、メモリ空間
4Dに対して書き込みを行なう場合は、まず、テーブル
27をチェックして、メモリ空間4D(バッファ23)
に空き領域(バッファアドレス)があるか否かを確認す
る。空き領域が存在すればそのアドレスに対応するコマ
ンド領域271にライトコマンドを書き込むことで、上
記空き領域にデータを書き込む。
That is, in this case, for example, the command area 271 is provided in the table 27, and the driver 16 on the node 1 side writes an access command (write command / read command) in the command area 271. Data transfer between the buffer 23 and the disk 25 can be instructed. For example, when writing to the memory space 4D, first check the table 27 and check the memory space 4D (buffer 23).
Check if there is a free area (buffer address). If there is a free area, a write command is written in the command area 271 corresponding to the address to write the data in the free area.

【0071】なお、空き領域が無かった場合は、バッフ
ァ23にキャッシュされているデータ(古いデータや使
用頻度の低いデータ等)をディスク25に追い出し、バ
ッファ23に空き領域を作成してから、上記と同様に、
その空き領域に対応するコマンド領域271にライトコ
マンドを書き込むことで、データの書き込みを実行す
る。
If there is no free area, the data cached in the buffer 23 (old data, infrequently used data, etc.) is flushed to the disk 25, and a free area is created in the buffer 23. alike,
Data writing is executed by writing a write command in the command area 271 corresponding to the empty area.

【0072】一方、メモリ空間4Dからデータを読み出
す場合は、まず、テーブル27をチェックして、バッフ
ァ23に空き領域(バッファアドレス)があるか否かを
確認し、空き領域が存在すればそのアドレスに対応する
コマンド領域271にリードコマンドを書き込むこと
で、上記空き領域にディスク25の該当セクタからデー
タを読み込む。
On the other hand, when reading data from the memory space 4D, first, the table 27 is checked to see if there is a free area (buffer address) in the buffer 23. If there is a free area, that address is checked. By writing a read command in the command area 271 corresponding to, the data is read from the corresponding sector of the disk 25 into the empty area.

【0073】空き領域が無かった場合は、この場合も、
バッファ23にキャッシュされているデータ(古いデー
タや使用頻度の低いデータ等)をディスク25に追い出
し、バッファ23に空き領域を作成してから、その空き
領域に対応するコマンド領域271にリードコマンドを
書き込むことで、上記空き領域へのデータの読み込みを
実行する。
If there is no free area, in this case as well,
The data cached in the buffer 23 (old data, infrequently used data, etc.) is flushed to the disk 25, a free area is created in the buffer 23, and then a read command is written in the command area 271 corresponding to the free area. By doing so, the reading of the data into the empty area is executed.

【0074】このように、本変形例では、メモリ空間4
D上のテーブル27のコマンド領域271にアクセスコ
マンドを書き込むだけで、メモリ空間4Dとディスク2
5との間のデータ転送が完了するので、従来のSCSI
におけるデータ転送前のネゴシエーション等の繁雑な操
作が削減されて、レイテンシの大幅な向上が期待でき
る。従って、この場合も、IBスイッチ3(IBネット
ワーク)によるデータ転送帯域(レート)を有効に活用
することができ、従来よりも高速なデータ転送が実現で
きる。
As described above, in this modification, the memory space 4
Just write an access command to the command area 271 of the table 27 on D, and the memory space 4D and the disk 2
Since the data transfer with the 5 is completed, the conventional SCSI
The complicated operations such as negotiation before data transfer in are reduced, and a significant improvement in latency can be expected. Therefore, also in this case, the data transfer band (rate) by the IB switch 3 (IB network) can be effectively utilized, and data transfer at a higher speed than in the past can be realized.

【0075】(B2)第2実施形態の第2変形例の説明 なお、上述した第1変形例では、ノード1が1台の場合
であるが、勿論、例えば図17に示すように、1台のI
/O装置2に対して複数のノード1がIBスイッチ3を
介して接続される場合も、上記と同様に、複数ノード1
の各バッファ161とI/O装置2側のバッファ23と
を仮想分散共有メモリとして扱うこともできる。
(B2) Description of Second Modified Example of Second Embodiment In the first modified example described above, there is one node 1, but of course, as shown in FIG. Of I
Even when a plurality of nodes 1 are connected to the I / O device 2 through the IB switch 3, the plurality of nodes 1 are connected as described above.
Each of the buffers 161 and the buffer 23 on the I / O device 2 side can be treated as a virtual distributed shared memory.

【0076】即ち、この場合は、複数のバッファ161
のバッファアドレス(一部でも全てでもよい)と、I/
O装置2側のバッファ23のバッファアドレス(一部で
も全てでもよい)とを、ドライバ16がカーネル層にお
いてアクセスする同じメモリ空間4Eにマッピングする
のである。これにより、ドライバ16が、メモリ空間4
Eにアクセスするだけで、IBスイッチ3(IBネット
ワーク)を介して各バッファ161,23に対するアク
セスが発生し、所望バッファ間のデータ転送が完了する
ので、この場合も、従来のSCSIにおけるデータ転送
前のネゴシエーション等の繁雑な操作が削減されて、レ
イテンシの大幅な向上が期待でき、結果として、IBス
イッチ3(IBネットワーク)によるデータ転送帯域
(レート)を有効に活用することができ、従来よりも高
速なデータ転送が実現できる。
That is, in this case, a plurality of buffers 161
Buffer address (may be part or all) and I /
The buffer address (may be part or all) of the buffer 23 on the O device 2 side is mapped to the same memory space 4E that the driver 16 accesses in the kernel layer. As a result, the driver 16 causes the memory space 4
By simply accessing E, access to each buffer 161 and 23 occurs via the IB switch 3 (IB network), and data transfer between desired buffers is completed. In this case as well, before data transfer in the conventional SCSI. The complicated operations such as the negotiation of can be reduced, and the latency can be expected to be significantly improved. As a result, the data transfer band (rate) by the IB switch 3 (IB network) can be effectively used, which is more effective than before. High-speed data transfer can be realized.

【0077】なお、本変形例においても、上述した第2
実施形態の第1変形例と同様に、バッファ23及び16
1のバッファアドレスとディスク25のセクタとを対応
付けて管理するテーブル271をメモリ空間4Eに設け
ておけば、メモリ空間4Eとディスク25との間のデー
タ転送が可能になる。 (B3)第2実施形態の第3変形例の説明 また、上記の第2実施形態の第2変形例とは逆に、例え
ば図18に示すように、1台のノード1に対して複数の
I/O装置2がIBスイッチ3(IBネットワーク)を
介して接続される場合も、上記と同様に、ノード1のバ
ッファ161と複数のI/O装置2側の各バッファ23
とを仮想分散共有メモリとして扱うことができる。
Also in this modification, the above-mentioned second
Similar to the first modified example of the embodiment, the buffers 23 and 16
If a table 271 that manages the buffer address of 1 and the sector of the disk 25 in association with each other is provided in the memory space 4E, data transfer between the memory space 4E and the disk 25 becomes possible. (B3) Description of Third Modified Example of Second Embodiment Contrary to the second modified example of the second embodiment, as shown in FIG. 18, for example, as shown in FIG. Even when the I / O device 2 is connected via the IB switch 3 (IB network), similarly to the above, the buffer 161 of the node 1 and the buffers 23 on the side of the plurality of I / O devices 2 are provided.
And can be treated as virtual distributed shared memory.

【0078】即ち、この場合は、バッファ161のバッ
ファアドレス(一部でも全てでもよい)と、複数のバッ
ファ23のバッファアドレス(一部でも全てでもよい)
とを、ドライバ16がカーネル層においてアクセスする
同じメモリ空間4Fにマッピングするのである。これに
より、ドライバ16が、メモリ空間4Eにアクセスする
だけで、IBスイッチ3(IBネットワーク)を介して
各バッファ161,23に対するアクセスが発生し、所
望バッファ間のデータ転送が完了するので、この場合
も、従来のSCSIにおけるデータ転送前のネゴシエー
ション等の繁雑な操作が削減されて、レイテンシの大幅
な向上が期待でき、結果として、IBスイッチ3(IB
ネットワーク)によるデータ転送帯域(レート)を有効
に活用することができ、従来よりも高速なデータ転送が
実現できる。
That is, in this case, the buffer address of the buffer 161 (may be part or all) and the buffer addresses of the plurality of buffers 23 (may be part or all).
And are mapped to the same memory space 4F accessed by the driver 16 in the kernel layer. As a result, the driver 16 only accesses the memory space 4E to access the buffers 161 and 23 via the IB switch 3 (IB network), and the data transfer between the desired buffers is completed. However, complicated operations such as negotiation before data transfer in the conventional SCSI can be reduced, and a significant improvement in latency can be expected. As a result, the IB switch 3 (IB
It is possible to effectively utilize the data transfer band (rate) by the network, and it is possible to realize higher-speed data transfer than before.

【0079】なお、本変形例においても、例えば図19
に示すように、各バッファ23に対応して、バッファ2
3のバッファアドレスとディスク25のセクタとを対応
付けて管理するテーブル27をそれぞれメモリ空間4F
に設けておけば、メモリ空間4Fとディスク25との間
のデータ転送も可能になる。 (B4)第2実施形態の第4変形例の説明 なお、図18に示す構成において、例えば図20に示す
ように、メモリ空間4Fの同じ仮想アドレスに対して複
数のバッファ23のバッファアドレスを割り当てておけ
ば、第1実施形態の第4変形例と同様に、複数バッファ
23についていわゆる「ミラーリング」が実現されるこ
とになる。従って、万が一、一方のバッファ23が破壊
された場合でも、もう一方のバッファ23からデータを
読み出すことが可能であり、この場合も、データ保存の
安全性が大幅に向上するという利点がさらに得られる。
Also in this modification, for example, FIG.
As shown in FIG.
The table 27 for managing the buffer address of 3 and the sector of the disk 25 in association with each other is stored in the memory space 4F
In this case, data can be transferred between the memory space 4F and the disk 25. (B4) Description of Fourth Modification of Second Embodiment In the configuration shown in FIG. 18, buffer addresses of a plurality of buffers 23 are assigned to the same virtual address in the memory space 4F as shown in FIG. 20, for example. If so, the so-called “mirroring” is realized for the plurality of buffers 23, as in the fourth modified example of the first embodiment. Therefore, even if one of the buffers 23 is destroyed, it is possible to read the data from the other buffer 23, and in this case as well, there is an advantage that the safety of data storage is significantly improved. .

【0080】なお、本変形例においても、各バッファ2
3に対応して、バッファ23のバッファアドレスとディ
スク25のセクタとを対応付けて管理するテーブル27
1をそれぞれメモリ空間4Fに設けておけば、メモリ空
間4Fとディスク25との間のデータ転送も可能にな
る。 (C)その他 なお、上述した各実施形態及び各変形例では、いずれ
も、1つのノード1あるいはI/O装置2にはメモリ1
2あるいはディスク25が1つしか存在しない場合につ
いて説明したが、勿論、メモリ12あるいはディスク2
5が複数存在する場合についても、それぞれのアドレス
(記憶領域)を同一メモリ空間にマップすれば、上述し
た各実施形態と同様の作用効果が得られることはいうま
でもない。
Also in this modification, each buffer 2
Table 27 that manages the buffer address of the buffer 23 and the sector of the disk 25 in association with each other
If 1 is provided in each of the memory spaces 4F, data transfer between the memory space 4F and the disk 25 is also possible. (C) Others In each of the above-described embodiments and modified examples, one node 1 or I / O device 2 has the memory 1
Although the case where there is only one disk 2 or one disk 25 has been described, it goes without saying that the memory 12 or disk 2 is used.
Needless to say, even when there are a plurality of 5, if the respective addresses (storage areas) are mapped in the same memory space, the same operational effects as those of the above-described respective embodiments can be obtained.

【0081】そして、本発明は、上述した各実施形態及
び各変形例に限定されず、上記以外にも、本発明の趣旨
を逸脱しない範囲で種々変形して実施することができ
る。
The present invention is not limited to the above-described embodiments and modified examples, and can be variously modified and implemented without departing from the spirit of the present invention.

【0082】[0082]

【発明の効果】以上詳述したように、本発明によれば、
メモリ空間(仮想分散共有メモリ)に対するアクセス
(データ書き込み/読み出し)のみでノード装置と外部
入出力装置との間の接続手段を介したデータ転送が完了
するので、従来のSCSIにおけるデータ転送前のネゴ
シエーション等の繁雑な操作が削減され、レイテンシの
大幅な向上が期待できる。また、レイテンシの大幅な向
上により、接続手段(高速内部ネットワーク)によるデ
ータ転送帯域(レート)を有効に活用することができ、
データ転送速度を従来よりも大幅に向上することができ
る。
As described in detail above, according to the present invention,
Since the data transfer via the connection means between the node device and the external input / output device is completed only by accessing (writing / reading data) to the memory space (virtual distributed shared memory), the negotiation before the data transfer in the conventional SCSI is completed. It can be expected that the latency will be greatly improved by reducing complicated operations such as. Also, due to the significant improvement in latency, it is possible to effectively utilize the data transfer band (rate) by the connection means (high-speed internal network),
The data transfer rate can be greatly improved as compared with the conventional one.

【0083】また、外部入出力装置側からメモリ空間に
マップしてもらいたい外部入出力装置側記憶手段の物理
アドレス情報をノード装置に通知することにより、上記
メモリ空間(仮想分散共有メモリ)が構築されるので、
外部入出力装置側記憶手段の任意の物理アドレス情報を
メモリ空間にマップすることができる。従って、外部入
出力装置側記憶手段の物理アドレス情報を必要に応じて
全部もしくは部分的に上記メモリ空間にマップすること
が可能であり、柔軟なストレージアクセスを実現するこ
とができる。
Further, the above-mentioned memory space (virtual distributed shared memory) is constructed by notifying the node device of the physical address information of the external input / output device side storage means that the external input / output device side wants to map to the memory space. Because it is done
Any physical address information of the external input / output device side storage means can be mapped in the memory space. Therefore, it is possible to map the physical address information of the external input / output device side storage means to the memory space in whole or in part as needed, and it is possible to realize flexible storage access.

【0084】さらに、ノード側装置が接続手段に対して
複数接続される場合には、同じ外部入出力装置側記憶手
段の物理アドレス情報をそれぞれ同一メモリ空間におけ
る仮想アドレス情報と対応付けて管理することにより、
同一外部入出力装置側記憶手段に対する共有アクセスが
可能になるので、例えば、一部のノード側装置がダウン
しても、他のノード装置(待機系)への切り替えを高速
に実行することが可能になり、システム全体の信頼性を
大幅に向上することできる。
Further, when a plurality of node side devices are connected to the connection means, the physical address information of the same external input / output device side storage means is managed in association with each virtual address information in the same memory space. Due to
Since shared access to the same external input / output device side storage means is possible, for example, even if some node side devices are down, switching to another node device (standby system) can be performed at high speed. Therefore, the reliability of the entire system can be greatly improved.

【0085】また、外部入出力装置側記憶手段が接続手
段に対して複数接続される場合には、異なる外部入出力
装置側記憶手段の物理アドレス情報をそれぞれ上記メモ
リ空間における連続する仮想アドレスと対応付けて管理
することにより、複数の外部入出力装置側記憶手段に対
するいわゆる「ストライピング」が実現されることにな
るので、接続手段を介したデータ転送帯域を稼ぐことが
でき、接続手段の帯域を最大限に有効利用した高速なデ
ータ転送処理が実現される。
Further, when a plurality of external input / output device side storage means are connected to the connecting means, the physical address information of different external input / output device side storage means respectively correspond to consecutive virtual addresses in the memory space. By adding and managing it, so-called "striping" can be realized for the storage means on the external input / output device side, so that the data transfer bandwidth through the connection means can be earned and the bandwidth of the connection means can be maximized. High-speed data transfer processing that is effectively used is realized.

【0086】さらに、この場合、いわゆるRAID-4,5と呼
ばれるパリティチェック機能付きのストレージアーキテ
クチャを実現することもできるので、パリティチェック
によりデータエラーを発見することができ、より高度な
データの信頼性,システムの安全性(エラーの在るデー
タを基に処理が進むこと等の防止)を確保すること可能
である。
Further, in this case, a storage architecture with a parity check function, which is so-called RAID-4,5, can be realized, so that a data error can be found by the parity check, and higher data reliability can be obtained. , It is possible to secure the safety of the system (prevention of the progress of processing based on error data).

【0087】また、異なる外部入出力装置側記憶手段の
複数の物理アドレス情報を同じ仮想アドレス情報に対応
付けて管理すれば、同一データについての複数の外部入
出力装置側記憶手段に対するアクセスが同時に発生す
る、つまり、いわゆる「ミラーリング」が実現されの
で、データ保存の安全性が大幅に向上するという利点が
さらに得られる。
Further, if a plurality of physical address information of different external input / output device side storage means are managed in association with the same virtual address information, access to a plurality of external input / output device side storage means for the same data occurs simultaneously. In other words, the so-called “mirroring” is realized, and the advantage that the safety of data storage is significantly improved is further obtained.

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

【図1】本発明の第1実施形態としてのストレージアク
セスシステムの構成を示すブロック図である。
FIG. 1 is a block diagram showing a configuration of a storage access system as a first embodiment of the present invention.

【図2】(A)は図1に示すノード側の仮想アドレステ
ーブルの一例、(B)は図1に示すI/O装置側の仮想
アドレステーブルの一例を示す図である。
2A is an example of a virtual address table on the node side shown in FIG. 1, and FIG. 2B is a diagram showing an example of a virtual address table on the I / O device side shown in FIG.

【図3】図2(A),図2(B)に示す仮想アドレステ
ーブルの構築手順を説明するための図である。
FIG. 3 is a diagram for explaining a procedure for constructing a virtual address table shown in FIGS. 2 (A) and 2 (B).

【図4】図1に示すシステムの動作(データ書き込み手
順)を説明するための図である。
FIG. 4 is a diagram for explaining an operation (a data writing procedure) of the system shown in FIG.

【図5】図1に示すシステムの動作(データ書き込み手
順)を説明するためのシーケンス図である。
5 is a sequence diagram for explaining an operation (data writing procedure) of the system shown in FIG.

【図6】図1に示すシステムの動作(データ読み込み手
順)を説明するための図である。
FIG. 6 is a diagram for explaining an operation (a data reading procedure) of the system shown in FIG.

【図7】第1実施形態の第1変形例を示すブロック図で
ある。
FIG. 7 is a block diagram showing a first modification of the first embodiment.

【図8】(A)は図7に示すノード側の仮想アドレステ
ーブルの一例、(B)は図7に示すI/O装置側の仮想
アドレステーブルの一例を示す図である。
8A shows an example of a virtual address table on the node side shown in FIG. 7, and FIG. 8B shows an example of a virtual address table on the I / O device side shown in FIG.

【図9】第1実施形態の第2変形例を示すブロック図で
ある。
FIG. 9 is a block diagram showing a second modification of the first embodiment.

【図10】(A)は図9に示すノード側の仮想アドレス
テーブルの一例、(B)は図9に示すI/O装置側の仮
想アドレステーブルの一例を示す図である。
10A is an example of a virtual address table on the node side shown in FIG. 9, and FIG. 10B is an example of a virtual address table on the I / O device side shown in FIG. 9;

【図11】第1実施形態の第3変形例を示すブロック図
である。
FIG. 11 is a block diagram showing a third modified example of the first embodiment.

【図12】図11に示すシステムの他の構成を示すブロ
ック図である。
12 is a block diagram showing another configuration of the system shown in FIG.

【図13】第1実施形態の第4変形例を示すブロック図
である。
FIG. 13 is a block diagram showing a fourth modified example of the first embodiment.

【図14】(A)は図13に示すノード側の仮想アドレ
ステーブルの一例、(B)は図13に示すI/O装置側
の仮想アドレステーブルの一例を示す図である。
14A is a diagram showing an example of a virtual address table on the node side shown in FIG. 13, and FIG. 14B is a diagram showing an example of a virtual address table on the I / O device side shown in FIG.

【図15】本発明の第2実施形態としてのストレージア
クセスシステムの構成を示すブロック図である。
FIG. 15 is a block diagram showing a configuration of a storage access system as a second exemplary embodiment of the present invention.

【図16】第2実施形態の第1変形例を示すブロック図
である。
FIG. 16 is a block diagram showing a first modification of the second embodiment.

【図17】第2実施形態の第2変形例を示すブロック図
である。
FIG. 17 is a block diagram showing a second modification of the second embodiment.

【図18】第2実施形態の第3変形例を示すブロック図
である。
FIG. 18 is a block diagram showing a third modified example of the second embodiment.

【図19】図18に示すシステムの他の構成を示すブロ
ック図である。
19 is a block diagram showing another configuration of the system shown in FIG.

【図20】第2実施形態の第4変形例を示すブロック図
である。
FIG. 20 is a block diagram showing a fourth modified example of the second embodiment.

【図21】既存のストレージアクセスシステムの一例を
示すブロック図である。
FIG. 21 is a block diagram showing an example of an existing storage access system.

【図22】図21に示すシステムの動作(データ書き込
み手順)を説明するためのシーケンス図である。
22 is a sequence diagram for explaining an operation (a data writing procedure) of the system shown in FIG.

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

1 ノード装置 2 外部入出力(I/O)装置 3 インフィニバンド(IB)スイッチ 4A〜4F メモリ空間 5 仮想アドレス管理部 6 制御部 11 CPU 12 主記憶部(メインメモリ;ノード装置側記憶手
段) 13,13′,22 メモリコントローラ 14 ホストチャンネルアダプタ 15,26 内部バス 16 デバイス(I/O)ドライバ 21 ターゲットチャンネルアダプタ 23 バッファ 24 ディスクコントローラ 25 ディスク(外部入出力装置側記憶手段) 25′ デバイス 27 テーブル 51 仮想アドレス割当部 52 仮想アドレス割当結果通知部 61 パリティデータ生成部 62 パリティ転送部 131,221 仮想アドレステーブル 132,222 仮想アドレス(Virtual Address)領
域 133,223 ローカル物理アドレス領域 134,224 ノードアドレス(Node Address)領域 135,225 物理/セクタアドレス(Physical/Sec
tor Address)領域 136,226 フラグ(Flags)領域 161 カーネル層内バッファ領域 271 コマンド領域
1 Node Device 2 External Input / Output (I / O) Device 3 Infiniband (IB) Switch 4A-4F Memory Space 5 Virtual Address Management Unit 6 Control Unit 11 CPU 12 Main Storage Unit (Main Memory; Node Device Side Storage Means) 13 , 13 ', 22 memory controller 14 host channel adapter 15, 26 internal bus 16 device (I / O) driver 21 target channel adapter 23 buffer 24 disk controller 25 disk (external input / output device side storage means) 25' device 27 table 51 Virtual address allocation unit 52 Virtual address allocation result notification unit 61 Parity data generation unit 62 Parity transfer unit 131,221 Virtual address table 132,222 Virtual address area 133,223 Local physical address area 134,22 4 Node address area 135, 225 Physical / sector address (Physical / Sec)
tor Address area 136, 226 Flags area 161 Kernel layer buffer area 271 Command area

Claims (9)

【特許請求の範囲】[Claims] 【請求項1】 記憶手段を有するノード装置と、 記憶手段を有する外部入出力装置と、 該ノード装置と該外部入出力装置とを接続して該記憶手
段間のデータ転送を可能にする接続手段と、 上記の各記憶手段を仮想分散共有メモリとして扱うべ
く、少なくとも、仮想アドレス情報と外部入出力装置側
記憶手段の特定の記憶領域を示す物理アドレス情報とを
対応付けて管理する仮想アドレス管理手段と、 該仮想アドレス管理手段で管理されている該仮想アドレ
ス情報に基づいて外部入出力装置側記憶手段の記憶領域
とノード装置側記憶手段との間の該接続手段を介したデ
ータ転送を制御する制御手段とをそなえたことを特徴と
する、ストレージアクセスシステム。
1. A node device having a storage means, an external input / output device having a storage means, and a connection means for connecting the node device and the external input / output device to enable data transfer between the storage means. And a virtual address management means for managing at least virtual address information and physical address information indicating a specific storage area of the external input / output device side storage means in association with each other so as to treat each of the storage means as a virtual distributed shared memory. And controlling the data transfer between the storage area of the external input / output device side storage means and the node device side storage means via the connection means based on the virtual address information managed by the virtual address management means. A storage access system characterized by having a control means.
【請求項2】 該ノード装置が該接続手段を介して複数
接続されるとともに、 該複数のノード装置の各仮想アドレス管理手段が、それ
ぞれ、該外部入出力装置側記憶手段の該物理アドレス情
報を該仮想アドレス情報と対応付けて管理するように構
成されたことを特徴とする、請求項1記載のストレージ
アクセスシステム。
2. A plurality of the node devices are connected via the connecting means, and each virtual address management means of the plurality of node devices respectively stores the physical address information of the external input / output device side storage means. The storage access system according to claim 1, wherein the storage access system is configured to be managed in association with the virtual address information.
【請求項3】 該外部入出力装置が該接続手段を介して
複数接続されるとともに、該ノード装置の該仮想アドレ
ス管理手段が、複数の外部入出力装置側記憶手段の該物
理アドレス情報をそれぞれ該仮想アドレス情報と対応付
けて管理するように構成されたことを特徴とする、請求
項1記載のストレージアクセスシステム。
3. The plurality of external input / output devices are connected via the connecting means, and the virtual address management means of the node device respectively stores the physical address information of the plurality of external input / output device side storage means. The storage access system according to claim 1, wherein the storage access system is configured to be managed in association with the virtual address information.
【請求項4】 該仮想アドレス管理手段が、異なる外部
入出力装置側記憶手段の該物理アドレス情報をそれぞれ
連続する該仮想アドレス情報と対応付けて管理するよう
に構成されたことを特徴とする、請求項3記載のストレ
ージアクセスシステム。
4. The virtual address management means is configured to manage the physical address information of different external input / output device side storage means in association with each successive virtual address information. The storage access system according to claim 3.
【請求項5】 該制御手段が、 該外部入出力装置側記憶手段の該記憶領域へ転送して書
き込むべきデータについてのパリティデータを生成する
パリティデータ生成部と、 該パリティデータ生成部で生成された該パリティデータ
を特定の外部入出力装置側記憶手段に書き込むべく転送
するパリティ転送部とをそなえていることを特徴とす
る、請求項3記載のストレージアクセスシステム。
5. The parity data generation unit for generating parity data for data to be transferred to and written in the storage area of the external input / output device-side storage unit, the control unit being generated by the parity data generation unit. 4. The storage access system according to claim 3, further comprising a parity transfer unit that transfers the parity data so as to write the parity data into a storage unit on a specific external input / output device side.
【請求項6】 該仮想アドレス管理手段が、異なる該外
部入出力装置側記憶手段の複数の物理アドレス情報を同
じ仮想アドレス情報に対応付けて管理するように構成さ
れたことを特徴とする、請求項3記載のストレージアク
セスシステム。
6. The virtual address management means is configured to manage a plurality of physical address information of different external input / output device side storage means in association with the same virtual address information. Item 3. The storage access system according to item 3.
【請求項7】 該外部入出力装置側記憶手段が、 該ノード装置との間で転送されるデータを一時的にバッ
ファする外部入出力装置側バッファを有して構成される
とともに、 該仮想アドレス管理手段が、 該ノード装置側記憶手段としてのカーネル層内バッファ
の物理アドレス情報及び該外部入出力装置側バッファの
物理アドレス情報をそれぞれ該仮想アドレス情報とと対
応付けて管理するように構成されたことを特徴とする、
請求項1〜5のいずれか1項に記載のストレージアクセ
スシステム。
7. The external input / output device side storage means is configured to have an external input / output device side buffer for temporarily buffering data transferred to and from the node device, and the virtual address. The management means is configured to manage the physical address information of the kernel layer buffer as the node device side storage means and the physical address information of the external input / output device side buffer respectively in association with the virtual address information. Characterized by that
The storage access system according to claim 1.
【請求項8】 該仮想アドレス管理手段が、 該外部入出力装置から該外部入出力装置側記憶手段の特
定の記憶領域を示す物理アドレス情報を受けることによ
り、当該物理アドレス情報に該仮想アドレス情報を割り
当てることにより該仮想アドレス情報と該物理アドレス
情報との対応付けを構築する仮想アドレス割当手段と、 該仮想アドレス割当手段による該仮想アドレス情報の割
当結果を該外部入出力装置へ通知する仮想アドレス割当
結果通知手段とをそなえていることを特徴とする、請求
項1記載のストレージアクセスシステム。
8. The virtual address management means receives physical address information indicating a specific storage area of the external input / output device side storage means from the external input / output device, and the virtual address information is added to the physical address information. A virtual address assigning means for constructing a correspondence between the virtual address information and the physical address information by assigning the virtual address information, and a virtual address for notifying the external input / output device of the assignment result of the virtual address information by the virtual address assigning means. The storage access system according to claim 1, further comprising allocation result notifying means.
【請求項9】 該接続手段が、高速内部ネットワークで
あることを特徴とする、請求項1〜8のいずれか1項に
記載のストレージアクセスシステム。
9. The storage access system according to claim 1, wherein the connecting means is a high-speed internal network.
JP2001188570A 2001-06-21 2001-06-21 Storage access system Withdrawn JP2003006137A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001188570A JP2003006137A (en) 2001-06-21 2001-06-21 Storage access system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001188570A JP2003006137A (en) 2001-06-21 2001-06-21 Storage access system

Publications (1)

Publication Number Publication Date
JP2003006137A true JP2003006137A (en) 2003-01-10

Family

ID=19027646

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001188570A Withdrawn JP2003006137A (en) 2001-06-21 2001-06-21 Storage access system

Country Status (1)

Country Link
JP (1) JP2003006137A (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005190036A (en) * 2003-12-25 2005-07-14 Hitachi Ltd Storage controller and control method for storage controller
US7366835B2 (en) 2003-05-21 2008-04-29 Fujitsu Limited Data access responding system, storage system, client apparatus, cache apparatus, and method for accessing data access responding system
WO2014129160A1 (en) * 2013-02-20 2014-08-28 パナソニック株式会社 Wireless access device and wireless access system
WO2014129161A1 (en) * 2013-02-20 2014-08-28 パナソニック株式会社 Wireless access device and wireless access system
CN109697028A (en) * 2017-10-23 2019-04-30 美光科技公司 Virtual partition management

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7366835B2 (en) 2003-05-21 2008-04-29 Fujitsu Limited Data access responding system, storage system, client apparatus, cache apparatus, and method for accessing data access responding system
JP2005190036A (en) * 2003-12-25 2005-07-14 Hitachi Ltd Storage controller and control method for storage controller
US7669016B2 (en) 2003-12-25 2010-02-23 Hitachi, Ltd. Memory control device and method for controlling the same
US7975113B2 (en) 2003-12-25 2011-07-05 Hitachi, Ltd. Memory control device and method for controlling the same
US8516204B2 (en) 2003-12-25 2013-08-20 Hitachi, Ltd. Memory control device and method for controlling the same
WO2014129161A1 (en) * 2013-02-20 2014-08-28 パナソニック株式会社 Wireless access device and wireless access system
WO2014129160A1 (en) * 2013-02-20 2014-08-28 パナソニック株式会社 Wireless access device and wireless access system
JPWO2014129161A1 (en) * 2013-02-20 2017-02-02 パナソニックIpマネジメント株式会社 Wireless access device and wireless access system
JPWO2014129160A1 (en) * 2013-02-20 2017-02-02 パナソニックIpマネジメント株式会社 Wireless access device and wireless access system
US9762671B2 (en) 2013-02-20 2017-09-12 Panasonic Intellectual Property Management Co., Ltd. Wireless access device and wireless access system
US10162833B2 (en) 2013-02-20 2018-12-25 Panasonic Intellectual Property Management Co., Ltd. Wireless access device and wireless access system
CN109697028A (en) * 2017-10-23 2019-04-30 美光科技公司 Virtual partition management
CN109697028B (en) * 2017-10-23 2022-05-13 美光科技公司 Method for operating memory device, memory device and electronic system
US11340836B2 (en) 2017-10-23 2022-05-24 Micron Technology, Inc. Virtual partition management in a memory device
US11789661B2 (en) 2017-10-23 2023-10-17 Micron Technology, Inc. Virtual partition management

Similar Documents

Publication Publication Date Title
US5193184A (en) Deleted data file space release system for a dynamically mapped virtual data storage subsystem
US6542960B1 (en) System and method for parity caching based on stripe locking in raid data storage
JP3505093B2 (en) File management system
JP3431972B2 (en) Virtual disk system
US6009481A (en) Mass storage system using internal system-level mirroring
US8131927B2 (en) Fast accessible compressed thin provisioning volume
TWI261254B (en) Memory card and semiconductor device
US20100332745A1 (en) Automated on-line capacity expansion method for storage device
JP2002123479A (en) Disk control device and method for controlling its cache
JP2002244817A (en) Mirroring agent
JP2013156977A (en) Elastic cache of redundant cache data
JP2008117253A (en) Storage device system, computer system and processing method therefor
JP2012198639A (en) Control apparatus, control method, and storage apparatus
JP6649989B2 (en) Storage system and control method thereof
JP7232281B2 (en) Storage system and storage system control method
JP4727800B2 (en) Digital data subsystem including a directory for efficiently providing format information about stored records
JP2003044421A (en) Virtual storage system and switching node used for the same system
JP2001325207A (en) Switch with built-in cache, computer system and switch control method for switch with built-in cache
JP4252102B2 (en) Computer system and secondary storage device
JP2007524932A (en) Method, system, and program for generating parity data
JP2003006137A (en) Storage access system
JP2006099802A (en) Storage controller, and control method for cache memory
JP5923913B2 (en) Storage device, storage device control method, and storage system
JP5910596B2 (en) Storage management system, storage management method, program, and information processing system
JP4128206B2 (en) Computer system and secondary storage device

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20080902