JP6099844B2 - Data management system, computer, data management method and program - Google Patents
Data management system, computer, data management method and program Download PDFInfo
- Publication number
- JP6099844B2 JP6099844B2 JP2016556150A JP2016556150A JP6099844B2 JP 6099844 B2 JP6099844 B2 JP 6099844B2 JP 2016556150 A JP2016556150 A JP 2016556150A JP 2016556150 A JP2016556150 A JP 2016556150A JP 6099844 B2 JP6099844 B2 JP 6099844B2
- Authority
- JP
- Japan
- Prior art keywords
- memory
- data
- computer
- control
- change message
- 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.)
- Active
Links
- 238000013523 data management Methods 0.000 title claims description 70
- 238000000034 method Methods 0.000 title claims description 40
- 230000015654 memory Effects 0.000 claims description 229
- 238000007726 management method Methods 0.000 claims description 86
- 238000012545 processing Methods 0.000 claims description 38
- 238000003860 storage Methods 0.000 claims description 33
- 230000007246 mechanism Effects 0.000 description 9
- 238000010586 diagram Methods 0.000 description 8
- 230000005540 biological transmission Effects 0.000 description 5
- 230000000694 effects Effects 0.000 description 5
- 238000004519 manufacturing process Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 238000004801 process automation Methods 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 238000013507 mapping Methods 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000000295 complement effect Effects 0.000 description 1
- 238000004883 computer application Methods 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000008531 maintenance mechanism Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 229910052710 silicon Inorganic materials 0.000 description 1
- 239000010703 silicon Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/06—Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/10—Address translation
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Programmable Controllers (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
本発明は、データ管理システム、計算機、データ管理方法及びプログラムに関する。特に、オペレーティングシステムの仮想記憶に関し、FA(Factory・Automation)、PA(Process・Automation)に関するデータ管理システム、計算機、データ管理方法及びプログラムに関する。 The present invention relates to a data management system, a computer, a data management method, and a program. In particular, the present invention relates to a virtual storage of an operating system, and relates to a data management system, a computer, a data management method, and a program related to FA (Factory Automation) and PA (Process Automation).
多くの現存するオペレーティングシステムは、ファイルの読み出し処理あるいは書き込み処理において、仮想記憶の機構を利用している。仮想記憶の機構では、ファイルのデータが格納されるストレージ領域を4KB単位のページに割り付け、仮想記憶で実装されているメモリアクセス違反のトラップ処理を利用してファイルの読み出し処理あるいは書き込み処理を実現している。この仮想記憶の機構は、アプリケーションプログラマに対して隠蔽されており、アプリケーションプログラマはファイルI/O・API(Application・Programming・Interface)を用いてファイルアクセス処理を記述する。 Many existing operating systems use a virtual memory mechanism in file read or write processing. The virtual memory mechanism allocates a storage area for storing file data to 4KB pages, and implements a file read or write process using the memory access violation trap process implemented in virtual memory. ing. This virtual storage mechanism is hidden from the application programmer, and the application programmer describes file access processing using file I / O API (Application, Programming, Interface).
上述のように、計算機のオペレーティングシステムでは、ファイルの読み出し処理あるいは書き込み処理において、仮想記憶の機構を利用することにより処理の効率化を図っている。
特許文献1には、IC(Integrated・Circuit)に中継器を配置することにより、ICに接続されたSRAM(Static・Random・Access・Memory)及びメモリなどの、データ転送幅、データ転送遅延等がそれぞれ異なる記憶装置に対し、データ転送経路を再構成し、処理の効率化を図ることが開示されている。As described above, in the computer operating system, in the file reading process or writing process, the virtual storage mechanism is used to improve the processing efficiency.
Patent Document 1 discloses a data transfer width, a data transfer delay, and the like of an SRAM (Static, Random, Access, and Memory) and a memory connected to the IC by arranging a repeater in the IC (Integrated Circuit). It is disclosed that data transfer paths are reconfigured for different storage devices to improve processing efficiency.
例えば、クラウドコンピューティングサービスにおいて処理の効率化を図るためには、FAあるいはPA等のようなクラウドを利用する制御装置におけるメモリの変更が迅速にクラウド側の計算機のメモリに反映されることが必要である。
しかしながら、特許文献1では、個々の計算機において個別に処理の効率化を図っているに過ぎず、クラウドを利用する制御装置におけるメモリの変更を迅速にクラウド側の計算機に反映することができないという課題がある。For example, in order to improve processing efficiency in a cloud computing service, it is necessary that the memory change in the control device using the cloud such as FA or PA is reflected in the memory of the computer on the cloud side quickly. It is.
However, in Patent Document 1, only the efficiency of processing is individually achieved in each computer, and the problem that the memory change in the control device using the cloud cannot be quickly reflected in the computer on the cloud side. There is.
本発明は、クラウドを利用する制御装置とクラウド側の計算機との間で仮想的なメモリを共有することにより、クラウドを利用する制御装置におけるメモリの変更を迅速にクラウド側の計算機のメモリに反映することができるデータ管理システムを提供することを目的とする。 In the present invention, by sharing a virtual memory between a control device using the cloud and the computer on the cloud side, the memory change in the control device using the cloud is quickly reflected in the memory of the computer on the cloud side. An object of the present invention is to provide a data management system capable of doing so.
本発明に係るデータ管理システムは、制御メモリを有する制御装置と、計算機メモリを有し、前記制御装置とネットワークを介して接続される計算機とを備え、前記制御メモリと前記計算機メモリとは共通のデータが記憶されるデータ管理システムにおいて、
前記制御装置は、
前記制御メモリに記憶された少なくとも一部のデータが第1のデータに変更されたことを表す第1変更メッセージを前記計算機に送信する制御管理部を備え、
前記計算機は、
キャッシュメモリを備え、
前記第1変更メッセージを受信し、前記第1変更メッセージに基づいて、前記計算機メモリに記憶された少なくとも一部のデータを前記第1のデータに変更すると共に、前記第1のデータに対応するアドレスを無効化するメモリ管理部と、
前記第1のデータに対するアクセスが発生した場合に、前記第1のデータを前記キャッシュメモリに書き込み、前記第1のデータに対応するアドレスを有効化するアクセス処理部とを備える。A data management system according to the present invention includes a control device having a control memory, a computer memory, and a computer connected to the control device via a network, wherein the control memory and the computer memory are common. In a data management system in which data is stored,
The controller is
A control management unit for transmitting to the computer a first change message indicating that at least part of the data stored in the control memory has been changed to first data;
The calculator is
With cache memory,
The first change message is received, and at least a part of the data stored in the computer memory is changed to the first data based on the first change message, and an address corresponding to the first data A memory management unit for disabling
An access processing unit that writes the first data into the cache memory and validates an address corresponding to the first data when an access to the first data occurs;
本発明に係るデータ管理システムは、制御装置の制御管理部が、制御メモリに記憶されたデータが第1のデータに変更されたことを表す第1変更メッセージをネットワークを介して計算機に送信し、計算機のメモリ管理部が、第1変更メッセージに基づいて計算機メモリに記憶されたデータを第1のデータに変更すると共に、第1のデータに対応するアドレスを無効化し、計算機のアクセス処理部が、第1のデータに対するアクセスが発生した場合に、第1のデータをキャッシュメモリに書き込み、第1のデータに対応するアドレスを有効化するので、クラウドを利用する制御装置におけるメモリの変更を迅速にクラウド側の計算機のメモリに反映することができるという効果を奏する。 In the data management system according to the present invention, the control management unit of the control device transmits a first change message indicating that the data stored in the control memory is changed to the first data to the computer via the network, The memory management unit of the computer changes the data stored in the computer memory to the first data based on the first change message, invalidates the address corresponding to the first data, and the access processing unit of the computer When the access to the first data occurs, the first data is written to the cache memory and the address corresponding to the first data is validated, so that the memory change in the control device using the cloud can be quickly made in the cloud The effect is that it can be reflected in the memory of the computer on the side.
実施の形態1.
図1から図3を用いて、本実施の形態に係るデータ管理システム800及び計算機200について説明する。Embodiment 1 FIG.
A
データセンター101は、世界中に展開されている。例えば、世界中に30弱程度のデータセンター101が展開されている。データセンター101間は、専用線103で結合されている。データセンター101のデータは、全データセンター101で一貫性が保証されている。 Data centers 101 are deployed all over the world. For example, about 30 data centers 101 are deployed all over the world. The data centers 101 are connected by a dedicated line 103. Data in the data center 101 is guaranteed to be consistent in all data centers 101.
データセンター101は膨大な数の計算機200から構成されている。何千というラックマウントの各ラック、例えばラック104には2、3個のCPUが搭載されたブレードが12枚程度収容される。データセンター101では数十万から百万個のCPUが収容され、マーシャントシリコンと呼ばれる、通信データの振り分けを行うコントロールプレーンは、ソフトウェアで実装できるスイッチにて相互接続されている。
The data center 101 is composed of a huge number of
ルータ105は、データセンター101とそのデータセンター101の利用者を接続する。ルータ105は、セキュリティの観点からファイアウォールや、VPN(Virtual・Private・Network)ルータの機能を備える場合がある。 The router 105 connects the data center 101 and a user of the data center 101. The router 105 may have functions of a firewall and a VPN (Virtual Private Network) router from the viewpoint of security.
ゲートウェイ装置106は、工場内のネットワークをデータセンター101に接続する装置である。
PLC107(Programmable・Logic・Controller)は、ゲートウェイ装置106を介して工場内のネットワークに接続されている。工場内のネットワークは、複数のプロプライエタリなネットワークを含み、それらのネットワークにもPLC107は接続され、異種ネットワーク及びゲートウェイ装置106を経由してデータセンター101に接続される。The gateway device 106 is a device that connects a network in a factory to the data center 101.
A PLC 107 (Programmable / Logic / Controller) is connected to a network in the factory via a gateway device 106. The network in the factory includes a plurality of proprietary networks. The PLC 107 is also connected to these networks, and is connected to the data center 101 via the heterogeneous network and the gateway device 106.
図2では、ラック104に収容されるブレード内の計算機200のシステム構成の概要を示す。計算機200は、計算機メモリ201、CPU203、ディスク装置205、NIC206(Network・Interface・Controller)を備える。
なお、以下の説明では、計算機200のメモリとPLC107のメモリとを区別するために、計算機200のメモリを計算機メモリ201と称し、PLC107のメモリを制御メモリ501と称するものとする。FIG. 2 shows an outline of the system configuration of the
In the following description, to distinguish between the memory of the
計算機メモリ201は、ノースブリッジと呼ばれるCPU203内に実装されたコントローラに接続される。計算機メモリ201以外の外部I/Oデバイスは、サウスブリッジと呼ばれるCPU203内に実装されたコントローラに接続される。サウスブリッジには、例えば、PCI−e202(Peripheral・Component・Interconnect・Express)、ディスク装置205が接続されているSATA(Serial・Advanced・Attachment)、10―Gigabit・Ethernet(登録商標)カードであるNIC206が接続されているPCI−e、GPIO204(General・Purpose・Input・Output)などのコントローラ群が実装されている。
The
図3に示すように、データ管理システム800は、計算機200とPLC107とを備える。計算機200とPLC107とは、ネットワーク600により接続されている。
As shown in FIG. 3, the
計算機200は、図2で説明したように、CPU203、計算機メモリ201、ディスク装置205、NIC206を備える。
CPU203は、キャッシュメモリ253を備える。キャッシュメモリ253は、1次階層キャッシュメモリ301、2次階層キャッシュメモリ302、3次階層キャッシュメモリ303を備える。
ディスク装置205は、マップトファイル2052が格納される不揮発性記憶装置である。As described with reference to FIG. 2, the
The
The
PLC107には、制御メモリ501と、NIC506とが接続される。なお、PLC107が、制御メモリ501とNIC506とを備えていてもよい。
計算機200とPLC107とは、NIC206とNIC506とを介して、IP(Internet・Protocol)網などのネットワーク600で接続されている。A
The
1次階層キャッシュメモリ301は、CPUコアが操作するオブジェクトが格納される1次キャッシュメモリであり、L1キャッシュメモリとも称される。格納領域3011は、1次階層キャッシュメモリ301の同期ステート・属性情報を格納する領域である。
2次階層キャッシュメモリ302は、第1のバックストアである2次キャッシュメモリであり、L2キャッシュメモリとも称される。格納領域3021は、2次階層キャッシュメモリ302の同期ステート・属性情報を格納する領域である。
3次階層キャッシュメモリ303は、第2のバックストアである3次キャッシュメモリであり、L3キャッシュメモリとも称される。格納領域3031は、3次階層キャッシュメモリ303の同期ステート・属性情報を格納する領域である。The primary
The secondary
The tertiary
計算機メモリ201は、第3のバックストアである。格納領域2011は、計算機メモリ201の同期ステート・属性情報を格納する領域である。計算機メモリ201は、例えば、DDR4(Double・Data・Rate4)と呼ばれるDRAM(Dynamic・Random・Access・Memory)である。
The
ディスク装置205は、第4のバックストアとして機能する。格納領域2051は、ディスク装置205の同期ステート・属性情報の格納領域である。
The
PLC107の制御メモリ501は、第5のバックストアである。格納領域5011は、PLC107の制御メモリ501の同期ステート・属性情報を格納する領域である。制御メモリ501は、例えば、DDR3(Double・Data・Rate3)と呼ばれるDRAMである。
The
ここで、計算機メモリ201を例とするメモリについて説明する。
Here, a memory using the
オペレーティングシステムの仮想記憶とは、システムの貴重なリソースであるDRAM等のメモリのメモリ領域に仮想的なアドレスを割り当てて管理する方式である。4KB単位のページ単位で、メモリと不揮発記憶である磁気ディスク記憶装置等の記憶装置とをマッピングし、メモリ上に収容できないときは、記憶装置を補助記憶装置として仮想的にメモリ領域を割り当て、収容できないページを書き出す。 The virtual memory of the operating system is a system in which a virtual address is allocated and managed in a memory area of a memory such as DRAM which is a valuable resource of the system. When memory and storage devices such as magnetic disk storage devices that are non-volatile storage are mapped in units of pages of 4 KB units and cannot be accommodated on the memory, a memory area is virtually allocated and accommodated using the storage device as an auxiliary storage device Export pages that cannot.
限られたメモリリソースで、記憶装置を補完的に用いることにより、仮想記憶は、実行プログラムに仮想的に大きなメモリ領域を与える。仮想記憶は、より効率のよいメモリ使用とするために、プロセスが使用するページ数を一定にするワーキングセット、プロセスの優先順位に応じて、低順位のプロセスが使用しているページを全て開放する方式、使用頻度の少ないページを開放する方式等のポリシーにて実装されてきた。 By using the storage device in a complementary manner with limited memory resources, the virtual memory gives a virtually large memory area to the execution program. Virtual memory releases all pages used by lower-order processes according to the working set and process priority, which keeps the number of pages used by processes constant, in order to use memory more efficiently. It has been implemented with policies such as a method and a method of releasing pages that are not frequently used.
ところがICの製造プロセス技術の進歩により、ICの微細化、多層化が進んだ。DDR4と呼ばれるメモリは、DIMM(Dual・Inline・Memory・Module)にフルマウントすると、DDR4の容量は1TBに達する。1TBの容量は、現状のオペレーティングシステムやアプリケーションの実行で、おそらくは消費し尽くすことがありえないメモリ容量である。よって、収容できないページの退避のための記憶装置は不要になり、メモリの位置づけは多くの場合、高速にアクセスできる記憶領域に過ぎなくなる。アプリケーションプログラムが確保したメモリ領域はそのまま開放される。よって、DDR4を第3のバックストアである計算機メモリ201として用いることにより、計算機200の処理速度が向上する。
However, with advances in IC manufacturing process technology, IC miniaturization and multilayering have advanced. When a memory called DDR4 is fully mounted on a DIMM (Dual, Inline, Memory, Module), the capacity of the DDR4 reaches 1 TB. The capacity of 1 TB is a memory capacity that cannot possibly be consumed by the current operating system or application execution. Therefore, a storage device for saving pages that cannot be accommodated becomes unnecessary, and in many cases, the memory is positioned only as a storage area that can be accessed at high speed. The memory area reserved by the application program is released as it is. Therefore, by using DDR4 as the
しかし、メモリの用途は単なるプログラムの実行領域に限らない。オペレーティングシステムでは、ファイルの読み出し処理あるいは書き込み処理において、仮想記憶の機構を利用している。仮想記憶の機構では、上述したように、ファイルのデータが格納されるストレージ領域を4KB単位のページに割り付け、仮想記憶で実装されているメモリアクセス違反のトラップ処理を利用してファイルの読み出し処理あるいは書き込み処理を実現している。この仮想記憶の機構は、アプリケーションプログラマに対して隠蔽されており、アプリケーションプログラマはファイルI/O・APIを用いてファイルアクセス処理を記述する。 However, the use of the memory is not limited to a program execution area. The operating system uses a virtual storage mechanism in file read processing or write processing. In the virtual storage mechanism, as described above, a storage area in which file data is stored is allocated to 4 KB pages, and a file access process or a memory access violation trap process implemented in the virtual storage is used. Write processing is realized. This virtual memory mechanism is hidden from the application programmer, and the application programmer describes the file access processing using the file I / O API.
次に、図4を用いて、計算機200内の計算機メモリ201とPLC107の制御メモリ501とをネットワーク600経由で共有させるデータ管理システム800のブロック構成について説明する。
Next, a block configuration of a
***構成の説明***
まず、図4を用いて、本実施の形態に係るデータ管理システム800の主要な構成及び機能について説明する。
図4に示すように、データ管理システム800は、制御メモリ501を有する制御装置500と、計算機メモリ201を有し、制御装置500とネットワーク600を介して接続される計算機200とを備える。*** Explanation of configuration ***
First, the main configuration and functions of the
As shown in FIG. 4, the
制御メモリ501と計算機メモリ201とは共通のデータが記憶される。制御メモリ501と計算機メモリ201とに記憶される共通のデータとは、例えば、PLC107において取得されたPLCデータである。データ管理システム800では、PLCデータを仮想アドレスにマッピングすることにより、制御メモリ501と計算機メモリ201とにおいて、あたかもメモリを共有しているかのように扱う。
The
計算機200は、アプリケーション実行部251、OS実行部252、メモリ管理部254、キャッシュメモリ253、計算機メモリ201を備える。OS実行部252は、アクセス処理部2521を有する。
The
また、制御装置500は、PLC107を有する。PLC107は、制御管理部510、制御メモリ501を備える。
The control device 500 includes a
制御管理部510は、制御メモリ501に記憶された少なくとも一部のデータが第1のデータ614に変更されたことを表す第1変更メッセージ601を計算機200に送信する。第1のデータ614については後で説明する。
制御管理部510は、第1のデータ614と第1のデータ614に対応するアドレス613とを第1変更メッセージ601に含める。第1変更メッセージ601は、制御装置500から計算機200に送信されるメッセージである。また、第2変更メッセージ602は、計算機200から制御装置500に送信されるメッセージである。The
The
計算機200は、キャッシュメモリ253を備える。
メモリ管理部254は、第1変更メッセージ601を受信し、第1変更メッセージ601に基づいて計算機メモリ201に記憶された少なくとも一部のデータを第1のデータ614に変更すると共に、第1のデータ614に対応するアドレス613を無効化する。第1のデータ614に対応するアドレス613を第1のアドレス613とする。
つまり、メモリ管理部254は、第1のデータ614と第1のアドレス613とを含む第1変更メッセージ601を受信し、受信した第1変更メッセージ601に基づいて、計算機メモリ201における第1のアドレス613に対応するデータを第1のデータ614に変更すると共に、計算機メモリ201における第1のアドレス613を無効化する。
アクセス処理部2521は、第1のデータ614に対するアクセスが発生した場合に、第1のデータ614をキャッシュメモリ253に書き込み、第1のデータ614に対応する第1のアドレス613を有効化する。The
The
That is, the
When access to the
アプリケーション実行部251は、アプリケーションソフトウェア群を実行する。
OS実行部252は、仮想記憶機構を含むオペレーティングシステムを実行する。
メモリ管理部254は、PLCデータが記憶されたメモリの管理を行う。メモリ管理部254のように、メモリの管理を行うソフトウェアをページャーと称する。メモリ管理部254は、例えば、PLCページャーと称される。The
The
The
PLC107の制御管理部510は、PLC107のデータ管理を行う。制御管理部510は、PLCデータ管理部とも称される。制御管理部510は、計算機200のメモリ管理部254と通信し、PLC107の制御メモリ501のデータの変更を行う。
The
なお、メモリ管理部254、制御管理部510が行うデータの変更には、データの参照、データの更新が含まれるものとする。
Note that the data change performed by the
図5は、本実施の形態に係る制御管理部510とメモリ管理部254とが交換する第1変更メッセージ及び第2変更メッセージのデータフォーマット611である。
PLC107の制御メモリ501は、16ビットの空間上に実装されている。データフォーマット611の先頭4バイトには、2バイト単位で変更を行うデータ数612が格納される。
その後には、データ数612分の16ビットアドレスであるアドレス613と、このアドレス613に対応する2バイトのデータ614との組合せが格納される。例えば、第1のアドレス613に対応する第1のデータ614が格納され、第2のアドレス613に対応する第2のデータ614が格納される。FIG. 5 shows a data format 611 of the first change message and the second change message exchanged between the
The
Thereafter, a combination of an
***動作の説明***
図6を用いて、本実施の形態に係るデータ管理方法における第1変更メッセージ送信処理及びメモリ管理処理について説明する。
以下において、対応するアドレス613とデータ614とは、対応する第1のアドレス613と第1のデータ614との例である。
上述したように、データ管理システム800は、制御メモリ501を有する制御装置500と、計算機メモリ201とキャッシュメモリ253とを有し、制御装置500とネットワーク600を介して接続される計算機200とを備える。また、制御メモリ501と計算機メモリ201とは共通のデータ、すなわちPLCデータが記憶される。*** Explanation of operation ***
The first change message transmission process and the memory management process in the data management method according to the present embodiment will be described with reference to FIG.
In the following, corresponding
As described above, the
<第1変更メッセージ送信処理S110>
S110において、制御管理部510は、制御メモリ501に記憶された少なくとも一部のデータが第1のデータに変更された場合に、制御メモリ501に記憶された少なくとも一部のデータが第1のデータに変更されたことを表す第1変更メッセージ601を計算機200に送信する第1変更メッセージ送信処理を実行する。<First Change Message Transmission Processing S110>
In S110, when at least part of the data stored in the
以下に、より詳しく説明する。
S110において、PLC107の制御メモリ501にPLCデータの変更が発生すると、制御管理部510は、PLCデータの変更を示す第1変更メッセージ601を計算機200のメモリ管理部254に送信する。
このS110における第1変更メッセージ601の送信は、レイヤ2の信頼性が高ければUDP(User・Datagram・Protocol)にて送信する。TCP(Transmission・Control・Protocol)の場合に発生する3Wayハンドシェークやウィンドウ制御による遅延時間を排除するためである。また、セキュアにするためPLCデータを管理する制御管理部510とPLCページャーであるメモリ管理部254とは事前に共有秘密鍵を保有し、データの暗号化・復号化を行っても良い。This will be described in more detail below.
In S110, when the PLC data change occurs in the
The first change message 601 in S110 is transmitted by UDP (User Datagram Protocol) if the reliability of the layer 2 is high. This is to eliminate the delay time due to 3-Way handshake and window control that occurs in the case of TCP (Transmission, Control, Protocol). Further, in order to secure, the
<メモリ管理処理S200>
S211からS213において、計算機200のメモリ管理部254は、制御装置500から第1変更メッセージ601を受信し、第1変更メッセージ601に基づいて計算機メモリ201に記憶された少なくとも一部のデータを第1のデータに変更すると共に、第1のデータに対応するアドレスを無効化するメモリ管理処理を実行する。<Memory management process S200>
In S <b> 211 to S <b> 213, the
以下に、より詳しく説明する。
S211において、メモリ管理部254は、第1変更メッセージ601を受け取る。第1変更メッセージ601には、図5で説明したように、変更箇所を示すアドレス613と、変更後のデータ614とが含まれる。
S212において、メモリ管理部254は、受信した第1変更メッセージ601に基づいて、計算機メモリ201におけるアドレス613に対応するデータを、アドレス613に対応するデータ614に変更する。すなわち、メモリ管理部254は、第1変更メッセージ601の内容で計算機メモリ201を書き換える。This will be described in more detail below.
In S211, the
In S212, the
S213において、メモリ管理部254は、計算機メモリ201におけるアドレス613を無効化する。メモリ管理部254は、S211に戻り、第1変更メッセージ601の待ち状態となる。
In S213, the
ここで、計算機メモリ201におけるアドレス613を無効化するとは、データ614を含むページのページテーブルエントリを無効化することである。ページテーブルは、データ管理システム800が稼働を始めた直後に生成される。ページテーブルは、オペレーティングシステムのカーネルが管理するデータであり、例えば、物理メモリの約2倍のページテーブルを構成するページテーブルエントリと呼ばれるデータで構成される。
Here, invalidating the
図7を用いて、本実施の形態に係るメモリ管理方法におけるアクセス例外処理S220について説明する。 The access exception process S220 in the memory management method according to the present embodiment will be described with reference to FIG.
<アクセス例外処理S220>
S221からS223において、OS実行部252のアクセス処理部2521は、データ614に対するアクセスが発生した場合に、データ614をキャッシュメモリ253に書き込み、データ614に対応するアドレス613を有効化するアクセス例外処理を実行する。<Access exception processing S220>
In steps S221 to S223, when access to the
以下に、より詳しく説明する。
S221において、計算機200のCPU203がページテーブルエントリに定義されていた仮想アドレスにアクセスすると、アクセス対象のページテーブルエントリが無効化されている場合、MMU(Memory・Management・Unit)がメモリアクセス例外処理を発生させる。すなわち、CPU203によるデータ614に対応するアドレス613へのアクセスが発生すると、アドレス613に対応するページテーブルエントリが無効化されているので、MMUがメモリアクセス例外処理を発生させる。メモリアクセス例外処理は、オペレーティングシステムに規定された処理である。
OS実行部252のアクセス処理部2521は、メモリアクセス例外処理を実行する。This will be described in more detail below.
In S221, when the
The
S222において、アクセス処理部2521は、計算機メモリ201の無効化されたページを多層のキャッシュメモリ253に読み込ませる。つまり、アクセス処理部2521は、計算機メモリ201におけるアドレス613に対応するデータ614を多層のキャッシュメモリ253に読み込ませる。
In step S222, the
S223において、アクセス処理部2521は、データ614を含むページのページテーブルエントリの有効化を行う。アクセス処理部2521によるページテーブルエントリの有効化により、計算機メモリ201におけるデータ614に対応するアドレス613が有効化される。
In step S223, the
***効果の説明***
データ管理システムにおける計算機の仮想記憶管理方式は、物理メモリの4KBのページ領域に対応するデータ管理ソフトウェアの指定手段と、このページ領域の仮想アドレスへのマッピング情報を格納するページテーブルエントリの管理手段とを有する。また、この仮想記憶管理方式では、データ管理ソフトウェアの何れかによってデータ変更があった場合には、当該ページ領域の当該データを変更し、ページテーブルエントリの属性情報を無効とする。そして、仮想記憶管理方式では、CPUが当該ページの当該データもしくはキャッシュデータに当該仮想アドレスにてアクセスした時に、データアクセス例外を発生させることにより、キャッシュデータを更新する。*** Explanation of effects ***
The virtual storage management method of the computer in the data management system includes a data management software specifying means corresponding to a 4 KB page area of physical memory, and a page table entry management means for storing mapping information to the virtual address of the page area. Have Further, in this virtual storage management method, when data is changed by any of the data management software, the data in the page area is changed and the attribute information of the page table entry is invalidated. In the virtual memory management method, when the CPU accesses the data or cache data of the page with the virtual address, the cache data is updated by generating a data access exception.
以上のように、本実施の形態に係るデータ管理システムによれば、PLCで発生したデータの変更を計算機のメモリ及び多層のキャッシュメモリに発生させることができ、PLC側のメモリの変更を、即座に計算機のメモリ及び多層のキャッシュメモリに反映させることができる。 As described above, according to the data management system according to the present embodiment, it is possible to cause a change in data generated in the PLC to occur in the memory of the computer and the multi-layer cache memory, and to change the memory on the PLC side immediately. Can be reflected in the memory of the computer and the multi-layer cache memory.
また、本実施の形態に係るデータ管理システムによれば、計算機メモリの内容とPLCの制御メモリの内容とを制御管理部とメモリ管理部とを用いてネットワーク経由で共有させることができる。
計算機メモリとPLCの制御メモリとを共有させるということは、計算機のアプリケーションの処理に即座に反映することができるということである。したがって、本実施の形態に係るデータ管理システムによれば、多数のPLCのメモリの情報、例えば生産ラインに備えられ、PLCと接続されたセンサや機器からの情報を、クラウドと呼ばれるデータセンターに集約できる。そして、本実施の形態に係るデータ管理システムによれば、多数のPLCの制御メモリの情報をクラウド上に実装されたアプリケーションによって多岐にわたる処理に反映できることとなる。Further, according to the data management system according to the present embodiment, the contents of the computer memory and the contents of the control memory of the PLC can be shared via the network using the control management unit and the memory management unit.
Sharing the computer memory and the control memory of the PLC means that it can be immediately reflected in the processing of the computer application. Therefore, according to the data management system according to the present embodiment, information of a large number of PLC memories, for example, information from sensors and devices provided in a production line and connected to the PLC is collected in a data center called a cloud. it can. According to the data management system according to the present embodiment, information in a large number of PLC control memories can be reflected in a wide variety of processes by applications installed on the cloud.
本実施の形態に係るデータ管理システムでは、グローバルに展開された企業の生産設備、また個々の生産設備を構成するコントローラやデバイス等のステータス情報といったPLCデータを仮想的なメモリ領域に格納する。本実施の形態に係るデータ管理システムによれば、ステータス情報の利用要件、通信遅延、通信データ量を勘案して、ステータス情報の最適なデータコヒーレンシ維持機構を柔軟に再構成する手段を提供する。 In the data management system according to the present embodiment, PLC data such as status information on the production facilities of companies deployed globally and the controllers and devices constituting the individual production facilities is stored in a virtual memory area. The data management system according to the present embodiment provides means for flexibly reconfiguring an optimal data coherency maintenance mechanism for status information in consideration of usage requirements for status information, communication delay, and communication data amount.
実施の形態2.
本実施の形態では、主に、実施の形態1との差異点について説明する。
本実施の形態では、実施の形態1で説明した構成部と同様の構成部については同一の符号を付し、その説明を省略する場合がある。Embodiment 2. FIG.
In the present embodiment, differences from the first embodiment will be mainly described.
In the present embodiment, the same components as those described in the first embodiment are denoted by the same reference numerals, and the description thereof may be omitted.
本実施の形態では、計算機200のCPU203が、PLCページャーであるメモリ管理部254の管理下の計算機メモリ201に対し、データ変更を行う場合について説明する。本実施の形態に係るデータ管理システム801によれば、計算機200のCPU203により工場の制御を可能にする。CPU203により実行されるデータの変更には、データの参照、データの更新が含まれるものとする。
In the present embodiment, a case will be described in which the
***構成の説明***
図8は、本実施の形態に係るデータ管理システム801のブロック構成図である。
図8に示すデータ管理システム801は、実施の形態1で説明したデータ管理システム800の構成に加え、変更判定部255を備える。また、データ管理システム801は、実施の形態1では用いられていない第2変更メッセージ602を用いる。*** Explanation of configuration ***
FIG. 8 is a block configuration diagram of the
A
メモリ管理部254は、計算機メモリ201に記憶された少なくとも一部のデータが第2のデータ614に変更された場合、計算機メモリ201に記憶された少なくとも一部のデータが第2のデータ614に変更されたことを表す第2変更メッセージ602を制御装置500に送信する。
制御管理部510は、メモリ管理部254から送信された第2変更メッセージ602を受信し、第2変更メッセージ602に基づいて制御メモリ501に記憶された少なくとも一部のデータを第2のデータ614に変更する。When at least a part of data stored in the
The
変更判定部255は、計算機メモリ201に記憶された少なくとも一部のデータが第2のデータ614に変更された場合、第2のデータ614に対応する第2のアドレス613に基づいて、制御メモリ501に記憶された少なくとも一部のデータを第2のデータ614に変更するか否かを判定する。
メモリ管理部254は、変更判定部255により制御メモリ501に記憶された少なくとも一部のデータを第2のデータ614に変更すると判定された場合に、第2変更メッセージ602を制御装置500に送信する。When at least a part of the data stored in the
The
***動作の説明***
図9を用いて、本実施の形態に係るデータ管理システム801のデータ管理方法について説明する。*** Explanation of operation ***
A data management method of the
S410において、CPU203が計算機メモリ201のデータの変更あるいは更新を行う。例えば、計算機200のアプリケーション実行部251は、計算機メモリ201のPLCデータの変更あるいは更新をするアプリケーションプログラム実行する。このとき、計算機メモリ201の第2のアドレス613のデータを第2のデータ614に変更するものとする。
In S410, the
S411において、変更判定部255は、計算機メモリ201の変更あるいは更新を、PLC107の制御メモリ501に反映させるか否かを判定する。変更判定部255は、PLC107のエンジニアリング環境が管理するメモリ管理データを参照し、PLC107へのデータ更新が必要か否かを判断する。変更判定部255は、PLC107のエンジニアリング環境が管理するメモリ管理データを参照し、第2のアドレスが意味のあるアドレスか否かを判断し、その判断結果により、PLC107へのデータ更新が必要か否かを判断する。
In step S <b> 411, the
変更判定部255によりPLCへのデータ更新が必要でないと判断されると、処理を終了する。
変更判定部255によりPLCへのデータ更新が必要と判断されると、S412に進む。If the
When the
S412において、変更判定部255は、PLCページャーであるメモリ管理部254により計算機メモリ201の書き換えを行ったことを、仮想アドレス、すなわち第2のアドレス613をもって通知する。メモリ管理部254は、仮想アドレス、すなわち第2のアドレス613に対応するメモリ上の第2のデータ614から、第2変更メッセージを生成する。メモリ管理部254は、生成した第2変更メッセージを登録されているIP接続に対して送信する。
In S <b> 412, the
S310において、制御管理部510は、メモリ管理部254から送信された第2変更メッセージ602を受信する。
S311において、制御管理部510は、受信した第2変更メッセージ602に含まれる第2のアドレス613と第2のデータ614とに基づいて、制御メモリ501において第2のアドレス613に対応するデータを、第2のデータ614に変更する。In S310, the
In S <b> 311, the
なお、PLC107において、制御メモリ501のデータが変更されると、PLC107のキャッシュメモリにも制御メモリ501のデータの変更が反映される。例えば、計算機200と同様に、メモリのデータをキャッシュメモリに反映させてもよい。
When the data in the
***効果の説明***
以上のように、本実施の形態に係るデータ管理システムによれば、CPUまたはメモリ管理部が計算機メモリのページデータを変更したときは、制御メモリに変更が反映されるので、計算機のCPUにより工場の制御をすることができる。*** Explanation of effects ***
As described above, according to the data management system according to the present embodiment, when the CPU or the memory management unit changes the page data of the computer memory, the change is reflected in the control memory. Can be controlled.
また、本実施の形態に係るデータ管理システムによれば、変更判定部により、制御メモリに変更を反映するか否かを判定するので、必要のない変更については第2変更メッセージを送信しないため、計算機のCPUによる工場の制御を効率的にすることができる。 Further, according to the data management system according to the present embodiment, the change determination unit determines whether or not to reflect the change in the control memory, so the second change message is not transmitted for an unnecessary change. The factory can be efficiently controlled by the CPU of the computer.
実施の形態3.
本実施の形態では、主に、実施の形態1との差異点について説明する。
本実施の形態では、実施の形態1で説明した構成部と同様の構成部については同一の符号を付し、その説明を省略する場合がある。Embodiment 3 FIG.
In the present embodiment, differences from the first embodiment will be mainly described.
In the present embodiment, the same components as those described in the first embodiment are denoted by the same reference numerals, and the description thereof may be omitted.
***構成の説明***
本実施の形態では、データ管理システム802は計算機200を複数有する。すなわち、PLC107の制御管理部510が、ネットワーク600を介して複数の計算機200の各計算機200のPLCページャーであるメモリ管理部254に接続する。*** Explanation of configuration ***
In this embodiment, the data management system 802 includes a plurality of
PLC107の制御メモリ501と、複数の計算機200の各計算機200が備える計算機メモリ201とには、共通のデータであるPLCデータが記憶される。
PLC data, which is common data, is stored in the
***動作の説明***
データ管理システム802では、PLC107の制御管理部510が複数のメモリ管理部254に接続され、PLCデータが複数の計算機メモリ201に多重に記憶されている。
データ管理システム802では、PLC107で制御メモリ501のPLCデータが変更された場合に、複数のメモリ管理部254のそれぞれに対して第1変更メッセージ601を送信することにより、PLC107の制御メモリ501と、複数の計算機200のそれぞれの計算機メモリ201とで同期をとることができる。*** Explanation of operation ***
In the data management system 802, the
In the data management system 802, when the PLC data of the
また、データ管理システム802では、複数のメモリ管理部254のいずれかで計算機メモリ201のPLCデータが変更された場合に、PLC107に対して第2変更メッセージ602を送信することにより、PLC107の制御メモリ501と、複数の計算機200のそれぞれの計算機メモリ201とで同期をとることができる。
なお、複数のPLCページャー間の排他制御機構は特別に用意せずとも良い。なぜならば複数の計算機上から同時にデータ更新を行うとは運用上発生しないためである。Further, in the data management system 802, when the PLC data of the
Note that an exclusive control mechanism between a plurality of PLC pagers does not have to be specially prepared. This is because updating data simultaneously from a plurality of computers does not occur in operation.
***効果の説明***
以上のように、本実施の形態に係るデータ管理システムによれば、1つのページ領域に2以上のデータ管理ソフトウェア、すなわちメモリ管理部をマッピングする。よって、PLCデータを複数の計算機メモリに多重に記憶させることができるので、より安全性の高いシステムを提供することができる。*** Explanation of effects ***
As described above, according to the data management system of the present embodiment, two or more data management software, that is, memory management units are mapped to one page area. Therefore, since PLC data can be stored in multiple computer memories in a multiplexed manner, a more secure system can be provided.
実施の形態4.
本実施の形態では、主に、実施の形態1との差異点について説明する。
実施の形態1で説明した構成部と同様の構成部については、同一の符号を付し、その説明を省略する場合がある。Embodiment 4 FIG.
In the present embodiment, differences from the first embodiment will be mainly described.
The same components as those described in Embodiment 1 are denoted by the same reference numerals, and the description thereof may be omitted.
本実施の形態に係るデータ管理システム803では、同じ物理メモリのページを計算機メモリ20とディスク装置205とに2重にマッピングされる場合について説明する。
In the
***構成の説明***
図10を用いて、本実施の形態に係るデータ管理システム803のブロック構成図について説明する。
図10に示すデータ管理システム803は、実施の形態1で説明したデータ管理システム800の構成に加え、ディスク装置205、ディスク装置205のデータを管理するディスク装置ページャーであるディスク装置管理部256を備える。*** Explanation of configuration ***
A block configuration diagram of the
A
計算機200は、ディスク装置205を備え、計算機メモリ201とディスク装置205とには、共通のデータであるPLCデータが記憶される。
The
***動作の説明***
図11を用いて、本実施の形態に係る計算機メモリ書き換え処理S212について説明する。計算機メモリ書き換え処理S212は、図6の計算機メモリ書き換え処理S212に対応する処理である。本実施の形態に係る計算機メモリ書き換え処理S212は、S212aとS212bとを備える。*** Explanation of operation ***
The computer memory rewriting process S212 according to the present embodiment will be described with reference to FIG. The computer memory rewriting process S212 is a process corresponding to the computer memory rewriting process S212 of FIG. The computer memory rewriting process S212 according to the present embodiment includes S212a and S212b.
S212aでは、実施の形態1で説明したS212と同様に、メモリ管理部254は、受信した第1変更メッセージ601に基づいて、計算機メモリ201における第1のアドレス613に対応するデータを、第1のアドレス613に対応する第1のデータ614に変更する。さらに、メモリ管理部254は、同じ仮想アドレスである第1のアドレス613にマッピングされたディスク装置205のデータを、第1のアドレス613に対応する第1のデータ614に変更するため、ディスク装置ページャーであるディスク装置管理部256に第1変更メッセージ601の内容を通知する。
In S212a, similarly to S212 described in the first embodiment, the
S212bにおいて、ディスク装置管理部256は、第1のアドレス613にマッピングされたディスク装置205のデータを第1のデータ614に変更する。
In S212b, the disk
***効果の説明***
以上のように、本実施の形態に係るデータ管理システムによれば、同じ物理メモリのページがPLCページャーであるメモリ管理部と、ディスク装置ページャーであるディスク装置管理部とにより2重にマッピングされるので、より安全性の高いシステムを提供することができる。また、計算機が複数のディスク装置を備え、同じ物理メモリのページを複数のディスク装置に多重にマッピングしてもよい。*** Explanation of effects ***
As described above, according to the data management system according to the present embodiment, the same physical memory page is doubly mapped by the memory management unit that is the PLC pager and the disk device management unit that is the disk device pager. Therefore, a system with higher safety can be provided. Further, the computer may include a plurality of disk devices, and the same physical memory page may be mapped to the plurality of disk devices in a multiple manner.
上記実施の形態1から4に係るデータ管理システムによれば、計算機のディスク装置に格納されるデータの全ては、データセンターの全ての拠点間で同期される。よって、PLCの制御メモリ上のデータを全てのデータセンターの計算機のメモリ上に展開される。すなわち、(1)PLCデータの更新が発生した場合、PLC側のメモリが更新されるとともに、データセンターのディスク装置に記憶されている物理的なPLCデータ本体が更新される。(2)また、PLC側のメモリが更新されると、データセンター側にメモリの第1変更メッセージが送信され、この第1変更メッセージに基づいて、データセンター側のメモリが変更される。
したがって、アプリケーションプログラムは仮想アドレスでのメモリアクセスにて特定のPLCのデータ操作が可能になり、アプリケーションプログラマに非常に高い利便性を与える。According to the data management system according to the first to fourth embodiments, all of the data stored in the disk device of the computer is synchronized between all the bases of the data center. Therefore, the data on the control memory of the PLC is expanded on the memories of all the data center computers. That is, (1) When the PLC data is updated, the PLC-side memory is updated, and the physical PLC data main body stored in the disk device of the data center is updated. (2) When the memory on the PLC side is updated, a first change message of the memory is transmitted to the data center side, and the memory on the data center side is changed based on the first change message.
Therefore, the application program enables data operation of a specific PLC by memory access at a virtual address, which gives the application programmer very high convenience.
以上、本発明の実施の形態について説明したが、これらの実施の形態のうち、2つ以上を組み合わせて実施しても構わない。あるいは、これらの実施の形態のうち、1つを部分的に実施しても構わない。あるいは、これらの実施の形態のうち、2つ以上を部分的に組み合わせて実施しても構わない。
なお、以上の実施の形態は、本質的に好ましい例示であって、本発明、その適用物や用途の範囲を制限することを意図するものではなく、矛盾しない範囲であれば必要に応じて種々の変更が可能である。As mentioned above, although embodiment of this invention was described, you may implement in combination of 2 or more among these embodiment. Alternatively, one of these embodiments may be partially implemented. Alternatively, two or more of these embodiments may be partially combined.
The above-described embodiments are essentially preferable examples, and are not intended to limit the scope of the present invention, its applied products, and uses. Can be changed.
101 データセンター、103 専用線、104 ラック、105 ルータ、106 ゲートウェイ装置、107 PLC、200 計算機、201 計算機メモリ、202 PCI−e、203 CPU、204 GPIO、205 ディスク装置、206 NIC、251 アプリケーション実行部、252 OS実行部、253 キャッシュメモリ、254 メモリ管理部、255 変更判定部、256 ディスク装置管理部、301 1次階層キャッシュメモリ、302 2次階層キャッシュメモリ、303 3次階層キャッシュメモリ、500 制御装置、501 制御メモリ、506 NIC、510 制御管理部、600 ネットワーク、601 第1変更メッセージ、602 第2変更メッセージ、611 データフォーマット、612 データ数、613 アドレス、614 データ、800,801,802 データ管理システム、2011,2051,3011,3021,3031,5011 格納領域、2052 マップトファイル、2521 アクセス処理部、S210 メモリ管理処理、S220 アクセス例外処理。
101 Data Center, 103 Dedicated Line, 104 Rack, 105 Router, 106 Gateway Device, 107 PLC, 200 Computer, 201 Computer Memory, 202 PCI-e, 203 CPU, 204 GPIO, 205 Disk Device, 206 NIC, 251
Claims (9)
前記制御装置は、
前記制御メモリに記憶された少なくとも一部のデータであって前記計算機メモリにマッピングされた少なくとも一部のデータが第1のデータに変更されたことを表す第1変更メッセージを前記計算機に送信する制御管理部を備え、
前記計算機は、
前記第1変更メッセージを受信し、前記第1変更メッセージに基づいて、前記少なくとも一部のデータに対応するアドレスについて、仮想アドレスと物理アドレスをマッチングするデータをキャッシュするキャッシュメモリを無効化すると共に、前記計算機メモリと前記ストレージ領域との各々に記憶された前記少なくとも一部のデータを前記第1のデータに変更するメモリ管理部と、
前記計算機メモリの前記第1のデータを含むページに前記計算機のCPUが書き込みを行ったときのメモリ書き込み例外処理により、書き込みデータを前記ストレージ領域に書き込み、前記計算機メモリに書き込みを行ったことを表す第2変更メッセージを前記制御装置に送信するアクセス処理部と
を備えるデータ管理システム。 A control device having a control memory; and a computer having a computer memory and connected to the control device via a network, wherein the control memory and a storage area of the computer are mapped to a page of the computer memory In the data management system,
The controller is
Control for transmitting to the computer a first change message indicating that at least a part of data stored in the control memory and at least a part of the data mapped in the computer memory is changed to the first data With a management department,
The calculator is
Receiving the first change message, and invalidating a cache memory that caches data matching a virtual address and a physical address for an address corresponding to the at least some data based on the first change message ; A memory management unit that changes the at least some data stored in each of the computer memory and the storage area to the first data ;
The memory write exception processing when the CPU of the computer has been written to the page that contains the first data of said computer memory, writes the write data into the storage area, representing that writing to said computer memory A data management system comprising: an access processing unit that transmits a second change message to the control device .
前記少なくとも一部のデータに対応するアドレスについて、仮想アドレスと物理アドレスをマッチングするデータをキャッシュするキャッシュメモリを有効化して、無効化された前記キャッシュメモリを有効化する請求項1に記載のデータ管理システム。 2. The data management according to claim 1, wherein, for an address corresponding to the at least a part of the data, a cache memory that caches data that matches a virtual address and a physical address is validated, and the invalidated cache memory is validated. system.
前記計算機を複数有し、
前記制御メモリと前記複数の計算機の各計算機が備える前記計算機メモリとには、共通のデータが記憶される請求項1または2に記載のデータ管理システム。 The data management system includes:
A plurality of the computers;
Said computer the memory, the data management system according to claim 1 or 2 common data is stored for each computer comprises a plurality of computers and the control memory.
前記計算機メモリと前記ディスク装置とには、前記共通のデータが記憶される請求項3に記載のデータ管理システム。 The computer includes a disk device having the storage area ,
4. The data management system according to claim 3, wherein the common data is stored in the computer memory and the disk device.
少なくとも1次階層キャッシュメモリと2次階層キャッシュメモリとを含む多層キャッシュメモリである請求項1から4のいずれか1項に記載のデータ管理システム。 The cache memory is
The data management system according to any one of claims 1 to 4, wherein the data management system is a multi-layer cache memory including at least a primary hierarchy cache memory and a secondary hierarchy cache memory.
前記制御メモリに記憶された少なくとも一部のデータであって前記計算機メモリにマッピングされた少なくとも一部のデータが第1のデータに変更されたことを表す第1変更メッセージを前記計算機に送信する前記制御装置の制御管理部から前記第1変更メッセージを受信し、前記第1変更メッセージに基づいて、前記少なくとも一部のデータに対応するアドレスについて、仮想アドレスと物理アドレスをマッチングするデータをキャッシュするキャッシュメモリを無効化すると共に、前記計算機メモリと前記ストレージ領域との各々に記憶された前記少なくとも一部のデータを前記第1のデータに変更し、前記少なくとも一部のデータに対応するアドレスについて、前記キャッシュメモリを有効化するメモリ管理部と、
前記計算機メモリの前記第1のデータを含むページに前記計算機のCPUが書き込みを行ったときのメモリ書き込み例外処理により、書き込みデータを前記ストレージ領域に書き込み、前記計算機メモリに書き込みを行ったことを表す第2変更メッセージを前記制御装置に送信するアクセス処理部とを備える計算機。 A computer having a computer memory and connected to a control device having a control memory via a network, wherein the control memory and the storage area of the computer are mapped to a page of the computer memory.
Transmitting a first change message to the computer indicating that at least a portion of the data stored in the control memory and mapped to the computer memory is changed to the first data; A cache that receives the first change message from the control management unit of the control device, and caches data matching a virtual address and a physical address for an address corresponding to the at least part of the data based on the first change message Invalidating the memory , changing the at least part of the data stored in each of the computer memory and the storage area to the first data, and for the address corresponding to the at least part of the data, A memory management unit for enabling cache memory ;
The memory write exception processing when the CPU of the computer has been written to the page that contains the first data of said computer memory, writes the write data into the storage area, representing that writing to said computer memory A computer comprising: an access processing unit that transmits a second change message to the control device .
前記制御装置の制御管理部は、前記制御メモリに記憶された少なくとも一部のデータであって前記計算機メモリにマッピングされた少なくとも一部のデータが第1のデータに変更されたことを表す第1変更メッセージを前記計算機に送信し、
前記計算機のメモリ管理部は、前記第1変更メッセージを受信し、前記第1変更メッセージに基づいて、前記少なくとも一部のデータに対応するアドレスについて、仮想アドレスと物理アドレスをマッチングするデータをキャッシュするキャッシュメモリを無効化すると共に、前記計算機メモリと前記ストレージ領域との各々に記憶された前記少なくとも一部のデータを前記第1のデータに変更し、前記少なくとも一部のデータに対応するアドレスについて、前記キャッシュメモリを有効化し、
前記計算機のアクセス処理部は、前記計算機メモリの前記第1のデータを含むページに前記計算機のCPUが書き込みを行ったときのメモリ書き込み例外処理により、書き込みデータを前記ストレージ領域に書き込み、前記計算機メモリに書き込みを行ったことを表す第2変更メッセージを前記制御装置に送信するデータ管理方法。 A controller having a control memory having a computer memory, and a computer connected via the control device and the network, and the control memory and the storage area of said computer is mapped to the page of the computer memory In the data management method of the data management system,
The control management unit of the control device is a first unit representing that at least a part of data stored in the control memory and mapped to the computer memory is changed to the first data. Send a change message to the computer,
Memory management unit of said computer receives said first change message, based on the first change message, even before Kisukuna without the address corresponding to a portion of the data, matching the virtual address and physical address Invalidate a cache memory that caches data, and change the at least some data stored in each of the computer memory and the storage area to the first data, and correspond to the at least some data Enable the cache memory for the address to be
The access processing unit of the computer writes write data to the storage area by a memory write exception process when the CPU of the computer writes to a page including the first data in the computer memory , and the computer memory A data management method for transmitting to the control device a second change message indicating that data has been written to
前記制御メモリに記憶された少なくとも一部のデータであって前記計算機メモリにマッピングされた少なくとも一部のデータが第1のデータに変更されたことを表す第1変更メッセージを送信する前記制御装置から前記第1変更メッセージを受信し、前記第1変更メッセージに基づいて、前記少なくとも一部のデータに対応するアドレスについて、仮想アドレスと物理アドレスをマッチングするデータをキャッシュするキャッシュメモリを無効化すると共に、前記計算機メモリと前記ストレージ領域との各々に記憶された前記少なくとも一部のデータを前記第1のデータに変更し、前記少なくとも一部のデータに対応するアドレスについて、前記キャッシュメモリを有効化するメモリ管理処理と、
前記計算機メモリの前記第1のデータを含むページに前記計算機のCPUが書き込みを行ったときのメモリ書き込み例外処理により、書き込みデータを前記ストレージ領域に書き込み、前記計算機メモリに書き込みを行ったことを表す第2変更メッセージを前記制御装置に送信するアクセス例外処理とをコンピュータに実行させるプログラム。 And has a calculated machine memory, a computer connected via a control device and a network having a control memory, said control memory and storage area of the computer of the computer that is mapped to a page of the computer memory In the program
From the control device that transmits a first change message indicating that at least a part of data stored in the control memory and mapped to the computer memory is changed to the first data. receiving the first change message, based on the first change message, even before Kisukuna without the address corresponding to a portion of data, invalidate the cache memory to cache data that matches the virtual address and physical address And at least part of the data stored in each of the computer memory and the storage area is changed to the first data, and the cache memory is changed for the address corresponding to the at least part of the data. The memory management process to enable ,
The memory write exception processing when the CPU of the computer has been written to the page that contains the first data of said computer memory, writes the write data into the storage area, representing that writing to said computer memory A program for causing a computer to execute access exception processing for transmitting a second change message to the control device .
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2014/079041 WO2016067444A1 (en) | 2014-10-31 | 2014-10-31 | Data management system, computer, data management method and program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP6099844B2 true JP6099844B2 (en) | 2017-03-22 |
JPWO2016067444A1 JPWO2016067444A1 (en) | 2017-04-27 |
Family
ID=55856826
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016556150A Active JP6099844B2 (en) | 2014-10-31 | 2014-10-31 | Data management system, computer, data management method and program |
Country Status (3)
Country | Link |
---|---|
JP (1) | JP6099844B2 (en) |
TW (1) | TW201616364A (en) |
WO (1) | WO2016067444A1 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2019057097A (en) * | 2017-09-20 | 2019-04-11 | 株式会社東芝 | controller |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1995002865A1 (en) * | 1993-07-15 | 1995-01-26 | Bull S.A. | Computer system memory management method, and computer system and memory using said method |
JP2000207278A (en) * | 1999-01-14 | 2000-07-28 | Hitachi Ltd | Information processor with decentralized shared main storage |
JP2013073335A (en) * | 2011-09-27 | 2013-04-22 | Toshiba Corp | Information processing device |
-
2014
- 2014-10-31 JP JP2016556150A patent/JP6099844B2/en active Active
- 2014-10-31 WO PCT/JP2014/079041 patent/WO2016067444A1/en active Application Filing
-
2015
- 2015-01-16 TW TW104101432A patent/TW201616364A/en unknown
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1995002865A1 (en) * | 1993-07-15 | 1995-01-26 | Bull S.A. | Computer system memory management method, and computer system and memory using said method |
JPH07507174A (en) * | 1993-07-15 | 1995-08-03 | ブル・エス・アー | Memory management method in an information system, information system using the method |
US6240491B1 (en) * | 1993-07-15 | 2001-05-29 | Bull S.A. | Process and system for switching between an update and invalidate mode for each cache block |
JP2000207278A (en) * | 1999-01-14 | 2000-07-28 | Hitachi Ltd | Information processor with decentralized shared main storage |
JP2013073335A (en) * | 2011-09-27 | 2013-04-22 | Toshiba Corp | Information processing device |
Also Published As
Publication number | Publication date |
---|---|
JPWO2016067444A1 (en) | 2017-04-27 |
TW201616364A (en) | 2016-05-01 |
WO2016067444A1 (en) | 2016-05-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6953488B2 (en) | Hybrid Memory Cube System Interconnect Directory-Based Cache Coherence Method | |
Alian et al. | Application-transparent near-memory processing architecture with memory channel network | |
US20210112003A1 (en) | Network interface for data transport in heterogeneous computing environments | |
US7979645B2 (en) | Multiprocessor system for memory mapping of processing nodes | |
US9792210B2 (en) | Region probe filter for distributed memory system | |
US9952975B2 (en) | Memory network to route memory traffic and I/O traffic | |
KR20210147911A (en) | Memory with cache-coherent interconnect | |
CN115039077A (en) | Maintaining storage namespace identifiers for real-time virtualized execution environment migration | |
JP5841255B2 (en) | Computer system with processor local coherency for virtualized input / output | |
KR20210147976A (en) | Systems and methods for scalable and coherent memory devices | |
US20130013889A1 (en) | Memory management unit using stream identifiers | |
US11392528B2 (en) | Methods and apparatus for DMA engine descriptors for high speed data systems | |
JPH04353947A (en) | Memory-page-characteristic tagging system | |
CN103870435A (en) | Server and data access method | |
KR20200123187A (en) | Trace logging by logging inflows to the lower-tier cache based on entries in the upper-tier cache | |
US10613999B2 (en) | Device, system and method to access a shared memory with field-programmable gate array circuitry without first storing data to computer node | |
US20220179792A1 (en) | Memory management device | |
US20220137864A1 (en) | Memory expander, host device using memory expander, and operation method of sever system including memory expander | |
JP6099844B2 (en) | Data management system, computer, data management method and program | |
EP2979193B1 (en) | Shared memory system | |
Ros et al. | Emc 2: Extending magny-cours coherence for large-scale servers | |
US7904693B2 (en) | Full virtualization of resources across an IP interconnect using page frame table | |
US9535851B2 (en) | Transactional memory that performs a programmable address translation if a DAT bit in a transactional memory write command is set | |
Thorson et al. | SGI® UV2: A fused computation and data analysis machine | |
CN113849262A (en) | Techniques for moving data between virtual machines without replication |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20161102 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20161102 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20170124 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20170221 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6099844 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |