(57)【要約】  制御装置（５００）は、制御メモリ（５０１）に記憶されたデータが第１のデータに変更されたことを表す第１変更メッセージ（６０１）を計算機（２００）に送信する制御管理部（５１０）を備え、計算機（２００）は、第１変更メッセージ（６０１）に基づいて計算機メモリ（２０１）に記憶されたデータを第１のデータに変更すると共に、第１のデータに対応するアドレスを無効化するメモリ管理部（２５４）と、第１のデータに対するアクセスが発生した場合に、第１のデータをキャッシュメモリ２５３に書き込み、アドレスを有効化するアクセス処理部（２５２１）とを備える。
2016067444.tif 000002
【特許請求の範囲】
【請求項１】
制御メモリを有する制御装置と、計算機メモリを有し、前記制御装置とネットワークを介して接続される計算機とを備え、前記制御メモリと前記計算機メモリとは共通のデータが記憶されるデータ管理システムにおいて、
前記制御装置は、
前記制御メモリに記憶された少なくとも一部のデータが第１のデータに変更されたことを表す第１変更メッセージを前記計算機に送信する制御管理部を備え、
前記計算機は、
キャッシュメモリを備え、
前記第１変更メッセージを受信し、前記第１変更メッセージに基づいて、前記計算機メモリに記憶された少なくとも一部のデータを前記第１のデータに変更すると共に、前記第１のデータに対応するアドレスを無効化するメモリ管理部と、
前記第１のデータに対するアクセスが発生した場合に、前記第１のデータを前記キャッシュメモリに書き込み、前記第１のデータに対応するアドレスを有効化するアクセス処理部と
を備えるデータ管理システム。
【請求項２】
前記制御管理部は、
前記第１のデータと前記第１のデータに対応するアドレスである第１のアドレスとを前記第１変更メッセージに含め、
前記メモリ管理部は、
前記第１のデータと前記第１のアドレスとを含む前記第１変更メッセージを受信し、受信した前記第１変更メッセージに基づいて、前記計算機メモリにおける前記第１のアドレスに対応するデータを前記第１のデータに変更すると共に、前記計算機メモリにおける前記第１のアドレスを無効化する請求項１に記載のデータ管理システム。
【請求項３】
前記メモリ管理部は、
前記計算機メモリに記憶された少なくとも一部のデータが第２のデータに変更されたことを表す第２変更メッセージを前記制御装置に送信し、
前記制御管理部は、
前記メモリ管理部から送信された前記第２変更メッセージを受信し、前記第２変更メッセージに基づいて前記制御メモリに記憶された少なくとも一部のデータを前記第２のデータに変更する請求項１または２に記載のデータ管理システム。
【請求項４】
前記計算機は、
前記第２のデータに対応する第２のアドレスに基づいて、前記制御メモリに記憶された少なくとも一部のデータを前記第２のデータに変更するか否かを判定する変更判定部を備え、
前記メモリ管理部は、
前記変更判定部により前記制御メモリに記憶された少なくとも一部のデータを前記第２のデータに変更すると判定された場合に、前記第２変更メッセージを前記制御装置に送信する請求項３に記載のデータ管理システム。
【請求項５】
前記データ管理システムは、
前記計算機を複数有し、
前記制御メモリと前記複数の計算機の各計算機が備える前記計算機メモリとには、前記共通のデータが記憶される請求項１から４のいずれか１項に記載のデータ管理システム。
【請求項６】
前記計算機は、ディスク装置を備え、
前記計算機メモリと前記ディスク装置とには、前記共通のデータが記憶される請求項１から５のいずれか１項に記載のデータ管理システム。
【請求項７】
前記キャッシュメモリは、
少なくとも１次階層キャッシュメモリと２次階層キャッシュメモリとを含む多層キャッシュメモリである請求項１から６のいずれか１項に記載のデータ管理システム。
【請求項８】
前記制御装置は、ＰＬＣ（ｐｒｏｇｒａｍｍａｂｌｅ  ｌｏｇｉｃ  ｃｏｎｔｒｏｌｌｅｒ）を有する請求項１から７のいずれか１項に記載のデータ管理システム。
【請求項９】
計算機メモリを有すると共に、制御メモリを有する制御装置とネットワークを介して接続される計算機であって、前記制御メモリと前記計算機メモリとは共通のデータが記憶される計算機において、
キャッシュメモリを備え、
前記制御メモリに記憶された少なくとも一部のデータが第１のデータに変更されたことを表す第１変更メッセージを前記計算機に送信する前記制御装置の制御管理部から前記第１変更メッセージを受信し、前記第１変更メッセージに基づいて前記計算機メモリに記憶された少なくとも一部のデータを前記第１のデータに変更すると共に、前記第１のデータに対応するアドレスを無効化するメモリ管理部と、
前記第１のデータに対するアクセスが発生した場合に、前記第１のデータを前記キャッシュメモリに書き込み、前記第１のデータに対応するアドレスを有効化するアクセス処理部とを備える計算機。
【請求項１０】
制御メモリを有する制御装置と、計算機メモリとキャッシュメモリとを有し、前記制御装置とネットワークを介して接続される計算機とを備え、前記制御メモリと前記計算機メモリとは共通のデータが記憶されるデータ管理システムのデータ管理方法において、
前記制御装置の制御管理部は、前記制御メモリに記憶された少なくとも一部のデータが第１のデータに変更されたことを表す第１変更メッセージを前記計算機に送信し、
前記計算機のメモリ管理部は、前記第１変更メッセージを受信し、前記第１変更メッセージに基づいて前記計算機メモリに記憶された少なくとも一部のデータを前記第１のデータに変更すると共に、前記第１のデータに対応するアドレスを無効化し、
前記計算機のアクセス処理部は、前記第１のデータに対するアクセスが発生した場合に、前記第１のデータを前記キャッシュメモリに書き込み、前記第１のデータに対応するアドレスを有効化するデータ管理方法。
【請求項１１】
キャッシュメモリと計算機メモリとを有すると共に、制御メモリを有する制御装置とネットワークを介して接続される計算機であって、前記制御メモリと前記計算機メモリとは共通のデータが記憶される計算機のプログラムにおいて、
前記制御メモリに記憶された少なくとも一部のデータが第１のデータに変更されたことを表す第１変更メッセージを送信する前記制御装置から前記第１変更メッセージを受信し、前記第１変更メッセージに基づいて前記計算機メモリに記憶された少なくとも一部のデータを前記第１のデータに変更すると共に、前記第１のデータに対応するアドレスを無効化するメモリ管理処理と、
前記第１のデータに対するアクセスが発生した場合に、前記第１のデータを前記キャッシュメモリに書き込み、前記第１のデータに対応するアドレスを有効化するアクセス例外処理とをコンピュータに実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ管理システム、計算機、データ管理方法及びプログラムに関する。特に、オペレーティングシステムの仮想記憶に関し、ＦＡ（Ｆａｃｔｏｒｙ・Ａｕｔｏｍａｔｉｏｎ）、ＰＡ（Ｐｒｏｃｅｓｓ・Ａｕｔｏｍａｔｉｏｎ）に関するデータ管理システム、計算機、データ管理方法及びプログラムに関する。
【背景技術】
【０００２】
多くの現存するオペレーティングシステムは、ファイルの読み出し処理あるいは書き込み処理において、仮想記憶の機構を利用している。仮想記憶の機構では、ファイルのデータが格納されるストレージ領域を４ＫＢ単位のページに割り付け、仮想記憶で実装されているメモリアクセス違反のトラップ処理を利用してファイルの読み出し処理あるいは書き込み処理を実現している。この仮想記憶の機構は、アプリケーションプログラマに対して隠蔽されており、アプリケーションプログラマはファイルＩ／Ｏ・ＡＰＩ（Ａｐｐｌｉｃａｔｉｏｎ・Ｐｒｏｇｒａｍｍｉｎｇ・Ｉｎｔｅｒｆａｃｅ）を用いてファイルアクセス処理を記述する。【０００３】
上述のように、計算機のオペレーティングシステムでは、ファイルの読み出し処理あるいは書き込み処理において、仮想記憶の機構を利用することにより処理の効率化を図っている。
特許文献１には、ＩＣ（Ｉｎｔｅｇｒａｔｅｄ・Ｃｉｒｃｕｉｔ）に中継器を配置することにより、ＩＣに接続されたＳＲＡＭ（Ｓｔａｔｉｃ・Ｒａｎｄｏｍ・Ａｃｃｅｓｓ・Ｍｅｍｏｒｙ）及びメモリなどの、データ転送幅、データ転送遅延等がそれぞれ異なる記憶装置に対し、データ転送経路を再構成し、処理の効率化を図ることが開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】国際公開第２０１１／０８９８９９号
【発明の概要】
【発明が解決しようとする課題】
【０００５】
例えば、クラウドコンピューティングサービスにおいて処理の効率化を図るためには、ＦＡあるいはＰＡ等のようなクラウドを利用する制御装置におけるメモリの変更が迅速にクラウド側の計算機のメモリに反映されることが必要である。
しかしながら、特許文献１では、個々の計算機において個別に処理の効率化を図っているに過ぎず、クラウドを利用する制御装置におけるメモリの変更を迅速にクラウド側の計算機に反映することができないという課題がある。【０００６】
本発明は、クラウドを利用する制御装置とクラウド側の計算機との間で仮想的なメモリを共有することにより、クラウドを利用する制御装置におけるメモリの変更を迅速にクラウド側の計算機のメモリに反映することができるデータ管理システムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明に係るデータ管理システムは、制御メモリを有する制御装置と、計算機メモリを有し、前記制御装置とネットワークを介して接続される計算機とを備え、前記制御メモリと前記計算機メモリとは共通のデータが記憶されるデータ管理システムにおいて、
前記制御装置は、
前記制御メモリに記憶された少なくとも一部のデータが第１のデータに変更されたことを表す第１変更メッセージを前記計算機に送信する制御管理部を備え、
前記計算機は、
キャッシュメモリを備え、
前記第１変更メッセージを受信し、前記第１変更メッセージに基づいて、前記計算機メモリに記憶された少なくとも一部のデータを前記第１のデータに変更すると共に、前記第１のデータに対応するアドレスを無効化するメモリ管理部と、
前記第１のデータに対するアクセスが発生した場合に、前記第１のデータを前記キャッシュメモリに書き込み、前記第１のデータに対応するアドレスを有効化するアクセス処理部とを備える。
【発明の効果】
【０００８】
本発明に係るデータ管理システムは、制御装置の制御管理部が、制御メモリに記憶されたデータが第１のデータに変更されたことを表す第１変更メッセージをネットワークを介して計算機に送信し、計算機のメモリ管理部が、第１変更メッセージに基づいて計算機メモリに記憶されたデータを第１のデータに変更すると共に、第１のデータに対応するアドレスを無効化し、計算機のアクセス処理部が、第１のデータに対するアクセスが発生した場合に、第１のデータをキャッシュメモリに書き込み、第１のデータに対応するアドレスを有効化するので、クラウドを利用する制御装置におけるメモリの変更を迅速にクラウド側の計算機のメモリに反映することができるという効果を奏する。
【図面の簡単な説明】
【０００９】
【図１】実施の形態１に係るデータ管理システムの概要を説明するための図。
【図２】実施の形態１に係る計算機のシステム構成の概要を示す図。
【図３】実施の形態１に係るデータ管理システムを説明するための図。
【図４】実施の形態１に係るデータ管理システムのブロック構成図。
【図５】実施の形態１に係る制御管理部とメモリ管理部とが交換する第１変更メッセージ及び第２変更メッセージのデータフォーマット。
【図６】実施の形態１に係るデータ管理方法における第１変更メッセージ送信処理及びメモリ管理処理を示すフローチャート。
【図７】実施の形態１に係るデータ管理方法におけるアクセス例外処理を示すフローチャート。
【図８】実施の形態２に係るデータ管理システム８０１のブロック構成図。
【図９】実施の形態２に係るデータ管理システム８０１のデータ管理方法を示すフローチャート。
【図１０】実施の形態４に係るデータ管理システム８０３のブロック構成図。
【図１１】実施の形態４に係る計算機メモリ書き換え処理Ｓ２１１を示すフローチャート。
【発明を実施するための形態】
【００１０】
実施の形態１．
図１から図３を用いて、本実施の形態に係るデータ管理システム８００及び計算機２００について説明する。
【００１１】
データセンター１０１は、世界中に展開されている。例えば、世界中に３０弱程度のデータセンター１０１が展開されている。データセンター１０１間は、専用線１０３で結合されている。データセンター１０１のデータは、全データセンター１０１で一貫性が保証されている。
【００１２】
データセンター１０１は膨大な数の計算機２００から構成されている。何千というラックマウントの各ラック、例えばラック１０４には２、３個のＣＰＵが搭載されたブレードが１２枚程度収容される。データセンター１０１では数十万から百万個のＣＰＵが収容され、マーシャントシリコンと呼ばれる、通信データの振り分けを行うコントロールプレーンは、ソフトウェアで実装できるスイッチにて相互接続されている。
【００１３】
ルータ１０５は、データセンター１０１とそのデータセンター１０１の利用者を接続する。ルータ１０５は、セキュリティの観点からファイアウォールや、ＶＰＮ（Ｖｉｒｔｕａｌ・Ｐｒｉｖａｔｅ・Ｎｅｔｗｏｒｋ）ルータの機能を備える場合がある。
【００１４】
ゲートウェイ装置１０６は、工場内のネットワークをデータセンター１０１に接続する装置である。
ＰＬＣ１０７（Ｐｒｏｇｒａｍｍａｂｌｅ・Ｌｏｇｉｃ・Ｃｏｎｔｒｏｌｌｅｒ）は、ゲートウェイ装置１０６を介して工場内のネットワークに接続されている。工場内のネットワークは、複数のプロプライエタリなネットワークを含み、それらのネットワークにもＰＬＣ１０７は接続され、異種ネットワーク及びゲートウェイ装置１０６を経由してデータセンター１０１に接続される。
【００１５】
図２では、ラック１０４に収容されるブレード内の計算機２００のシステム構成の概要を示す。計算機２００は、計算機メモリ２０１、ＣＰＵ２０３、ディスク装置２０５、ＮＩＣ２０６（Ｎｅｔｗｏｒｋ・Ｉｎｔｅｒｆａｃｅ・Ｃｏｎｔｒｏｌｌｅｒ）を備える。
なお、以下の説明では、計算機２００のメモリとＰＬＣ１０７のメモリとを区別するために、計算機２００のメモリを計算機メモリ２０１と称し、ＰＬＣ１０７のメモリを制御メモリ５０１と称するものとする。
【００１６】
計算機メモリ２０１は、ノースブリッジと呼ばれるＣＰＵ２０３内に実装されたコントローラに接続される。計算機メモリ２０１以外の外部Ｉ／Ｏデバイスは、サウスブリッジと呼ばれるＣＰＵ２０３内に実装されたコントローラに接続される。サウスブリッジには、例えば、ＰＣＩ−ｅ２０２（Ｐｅｒｉｐｈｅｒａｌ・Ｃｏｍｐｏｎｅｎｔ・Ｉｎｔｅｒｃｏｎｎｅｃｔ・Ｅｘｐｒｅｓｓ）、ディスク装置２０５が接続されているＳＡＴＡ（Ｓｅｒｉａｌ・Ａｄｖａｎｃｅｄ・Ａｔｔａｃｈｍｅｎｔ）、１０―Ｇｉｇａｂｉｔ・Ｅｔｈｅｒｎｅｔ（登録商標）カードであるＮＩＣ２０６が接続されているＰＣＩ−ｅ、ＧＰＩＯ２０４（Ｇｅｎｅｒａｌ・Ｐｕｒｐｏｓｅ・Ｉｎｐｕｔ・Ｏｕｔｐｕｔ）などのコントローラ群が実装されている。
【００１７】
図３に示すように、データ管理システム８００は、計算機２００とＰＬＣ１０７とを備える。計算機２００とＰＬＣ１０７とは、ネットワーク６００により接続されている。
【００１８】
計算機２００は、図２で説明したように、ＣＰＵ２０３、計算機メモリ２０１、ディスク装置２０５、ＮＩＣ２０６を備える。
ＣＰＵ２０３は、キャッシュメモリ２５３を備える。キャッシュメモリ２５３は、１次階層キャッシュメモリ３０１、２次階層キャッシュメモリ３０２、３次階層キャッシュメモリ３０３を備える。
ディスク装置２０５は、マップトファイル２０５２が格納される不揮発性記憶装置である。
【００１９】
ＰＬＣ１０７には、制御メモリ５０１と、ＮＩＣ５０６とが接続される。なお、ＰＬＣ１０７が、制御メモリ５０１とＮＩＣ５０６とを備えていてもよい。
計算機２００とＰＬＣ１０７とは、ＮＩＣ２０６とＮＩＣ５０６とを介して、ＩＰ（Ｉｎｔｅｒｎｅｔ・Ｐｒｏｔｏｃｏｌ）網などのネットワーク６００で接続されている。
【００２０】
１次階層キャッシュメモリ３０１は、ＣＰＵコアが操作するオブジェクトが格納される１次キャッシュメモリであり、Ｌ１キャッシュメモリとも称される。格納領域３０１１は、１次階層キャッシュメモリ３０１の同期ステート・属性情報を格納する領域である。
２次階層キャッシュメモリ３０２は、第１のバックストアである２次キャッシュメモリであり、Ｌ２キャッシュメモリとも称される。格納領域３０２１は、２次階層キャッシュメモリ３０２の同期ステート・属性情報を格納する領域である。
３次階層キャッシュメモリ３０３は、第２のバックストアである３次キャッシュメモリであり、Ｌ３キャッシュメモリとも称される。格納領域３０３１は、３次階層キャッシュメモリ３０３の同期ステート・属性情報を格納する領域である。
【００２１】
計算機メモリ２０１は、第３のバックストアである。格納領域２０１１は、計算機メモリ２０１の同期ステート・属性情報を格納する領域である。計算機メモリ２０１は、例えば、ＤＤＲ４（Ｄｏｕｂｌｅ・Ｄａｔａ・Ｒａｔｅ４）と呼ばれるＤＲＡＭ（Ｄｙｎａｍｉｃ・Ｒａｎｄｏｍ・Ａｃｃｅｓｓ・Ｍｅｍｏｒｙ）である。
【００２２】
ディスク装置２０５は、第４のバックストアとして機能する。格納領域２０５１は、ディスク装置２０５の同期ステート・属性情報の格納領域である。
【００２３】
ＰＬＣ１０７の制御メモリ５０１は、第５のバックストアである。格納領域５０１１は、ＰＬＣ１０７の制御メモリ５０１の同期ステート・属性情報を格納する領域である。制御メモリ５０１は、例えば、ＤＤＲ３（Ｄｏｕｂｌｅ・Ｄａｔａ・Ｒａｔｅ３）と呼ばれるＤＲＡＭである。
【００２４】
ここで、計算機メモリ２０１を例とするメモリについて説明する。
【００２５】
オペレーティングシステムの仮想記憶とは、システムの貴重なリソースであるＤＲＡＭ等のメモリのメモリ領域に仮想的なアドレスを割り当てて管理する方式である。４ＫＢ単位のページ単位で、メモリと不揮発記憶である磁気ディスク記憶装置等の記憶装置とをマッピングし、メモリ上に収容できないときは、記憶装置を補助記憶装置として仮想的にメモリ領域を割り当て、収容できないページを書き出す。
【００２６】
限られたメモリリソースで、記憶装置を補完的に用いることにより、仮想記憶は、実行プログラムに仮想的に大きなメモリ領域を与える。仮想記憶は、より効率のよいメモリ使用とするために、プロセスが使用するページ数を一定にするワーキングセット、プロセスの優先順位に応じて、低順位のプロセスが使用しているページを全て開放する方式、使用頻度の少ないページを開放する方式等のポリシーにて実装されてきた。
【００２７】
ところがＩＣの製造プロセス技術の進歩により、ＩＣの微細化、多層化が進んだ。ＤＤＲ４と呼ばれるメモリは、ＤＩＭＭ（Ｄｕａｌ・Ｉｎｌｉｎｅ・Ｍｅｍｏｒｙ・Ｍｏｄｕｌｅ）にフルマウントすると、ＤＤＲ４の容量は１ＴＢに達する。１ＴＢの容量は、現状のオペレーティングシステムやアプリケーションの実行で、おそらくは消費し尽くすことがありえないメモリ容量である。よって、収容できないページの退避のための記憶装置は不要になり、メモリの位置づけは多くの場合、高速にアクセスできる記憶領域に過ぎなくなる。アプリケーションプログラムが確保したメモリ領域はそのまま開放される。よって、ＤＤＲ４を第３のバックストアである計算機メモリ２０１として用いることにより、計算機２００の処理速度が向上する。
【００２８】
しかし、メモリの用途は単なるプログラムの実行領域に限らない。オペレーティングシステムでは、ファイルの読み出し処理あるいは書き込み処理において、仮想記憶の機構を利用している。仮想記憶の機構では、上述したように、ファイルのデータが格納されるストレージ領域を４ＫＢ単位のページに割り付け、仮想記憶で実装されているメモリアクセス違反のトラップ処理を利用してファイルの読み出し処理あるいは書き込み処理を実現している。この仮想記憶の機構は、アプリケーションプログラマに対して隠蔽されており、アプリケーションプログラマはファイルＩ／Ｏ・ＡＰＩを用いてファイルアクセス処理を記述する。
【００２９】
次に、図４を用いて、計算機２００内の計算機メモリ２０１とＰＬＣ１０７の制御メモリ５０１とをネットワーク６００経由で共有させるデータ管理システム８００のブロック構成について説明する。
【００３０】
＊＊＊構成の説明＊＊＊
まず、図４を用いて、本実施の形態に係るデータ管理システム８００の主要な構成及び機能について説明する。
図４に示すように、データ管理システム８００は、制御メモリ５０１を有する制御装置５００と、計算機メモリ２０１を有し、制御装置５００とネットワーク６００を介して接続される計算機２００とを備える。
【００３１】
制御メモリ５０１と計算機メモリ２０１とは共通のデータが記憶される。制御メモリ５０１と計算機メモリ２０１とに記憶される共通のデータとは、例えば、ＰＬＣ１０７において取得されたＰＬＣデータである。データ管理システム８００では、ＰＬＣデータを仮想アドレスにマッピングすることにより、制御メモリ５０１と計算機メモリ２０１とにおいて、あたかもメモリを共有しているかのように扱う。
【００３２】
計算機２００は、アプリケーション実行部２５１、ＯＳ実行部２５２、メモリ管理部２５４、キャッシュメモリ２５３、計算機メモリ２０１を備える。ＯＳ実行部２５２は、アクセス処理部２５２１を有する。
【００３３】
また、制御装置５００は、ＰＬＣ１０７を有する。ＰＬＣ１０７は、制御管理部５１０、制御メモリ５０１を備える。
【００３４】
制御管理部５１０は、制御メモリ５０１に記憶された少なくとも一部のデータが第１のデータ６１４に変更されたことを表す第１変更メッセージ６０１を計算機２００に送信する。第１のデータ６１４については後で説明する。
制御管理部５１０は、第１のデータ６１４と第１のデータ６１４に対応するアドレス６１３とを第１変更メッセージ６０１に含める。第１変更メッセージ６０１は、制御装置５００から計算機２００に送信されるメッセージである。また、第２変更メッセージ６０２は、計算機２００から制御装置５００に送信されるメッセージである。
【００３５】
計算機２００は、キャッシュメモリ２５３を備える。
メモリ管理部２５４は、第１変更メッセージ６０１を受信し、第１変更メッセージ６０１に基づいて計算機メモリ２０１に記憶された少なくとも一部のデータを第１のデータ６１４に変更すると共に、第１のデータ６１４に対応するアドレス６１３を無効化する。第１のデータ６１４に対応するアドレス６１３を第１のアドレス６１３とする。
つまり、メモリ管理部２５４は、第１のデータ６１４と第１のアドレス６１３とを含む第１変更メッセージ６０１を受信し、受信した第１変更メッセージ６０１に基づいて、計算機メモリ２０１における第１のアドレス６１３に対応するデータを第１のデータ６１４に変更すると共に、計算機メモリ２０１における第１のアドレス６１３を無効化する。
アクセス処理部２５２１は、第１のデータ６１４に対するアクセスが発生した場合に、第１のデータ６１４をキャッシュメモリ２５３に書き込み、第１のデータ６１４に対応する第１のアドレス６１３を有効化する。
【００３６】
アプリケーション実行部２５１は、アプリケーションソフトウェア群を実行する。
ＯＳ実行部２５２は、仮想記憶機構を含むオペレーティングシステムを実行する。
メモリ管理部２５４は、ＰＬＣデータが記憶されたメモリの管理を行う。メモリ管理部２５４のように、メモリの管理を行うソフトウェアをページャーと称する。メモリ管理部２５４は、例えば、ＰＬＣページャーと称される。
【００３７】
ＰＬＣ１０７の制御管理部５１０は、ＰＬＣ１０７のデータ管理を行う。制御管理部５１０は、ＰＬＣデータ管理部とも称される。制御管理部５１０は、計算機２００のメモリ管理部２５４と通信し、ＰＬＣ１０７の制御メモリ５０１のデータの変更を行う。
【００３８】
なお、メモリ管理部２５４、制御管理部５１０が行うデータの変更には、データの参照、データの更新が含まれるものとする。
【００３９】
図５は、本実施の形態に係る制御管理部５１０とメモリ管理部２５４とが交換する第１変更メッセージ及び第２変更メッセージのデータフォーマット６１１である。
ＰＬＣ１０７の制御メモリ５０１は、１６ビットの空間上に実装されている。データフォーマット６１１の先頭４バイトには、２バイト単位で変更を行うデータ数６１２が格納される。
その後には、データ数６１２分の１６ビットアドレスであるアドレス６１３と、このアドレス６１３に対応する２バイトのデータ６１４との組合せが格納される。例えば、第１のアドレス６１３に対応する第１のデータ６１４が格納され、第２のアドレス６１３に対応する第２のデータ６１４が格納される。
【００４０】
＊＊＊動作の説明＊＊＊
図６を用いて、本実施の形態に係るデータ管理方法における第１変更メッセージ送信処理及びメモリ管理処理について説明する。
以下において、対応するアドレス６１３とデータ６１４とは、対応する第１のアドレス６１３と第１のデータ６１４との例である。
上述したように、データ管理システム８００は、制御メモリ５０１を有する制御装置５００と、計算機メモリ２０１とキャッシュメモリ２５３とを有し、制御装置５００とネットワーク６００を介して接続される計算機２００とを備える。また、制御メモリ５０１と計算機メモリ２０１とは共通のデータ、すなわちＰＬＣデータが記憶される。
【００４１】
＜第１変更メッセージ送信処理Ｓ１１０＞
Ｓ１１０において、制御管理部５１０は、制御メモリ５０１に記憶された少なくとも一部のデータが第１のデータに変更された場合に、制御メモリ５０１に記憶された少なくとも一部のデータが第１のデータに変更されたことを表す第１変更メッセージ６０１を計算機２００に送信する第１変更メッセージ送信処理を実行する。
【００４２】
以下に、より詳しく説明する。
Ｓ１１０において、ＰＬＣ１０７の制御メモリ５０１にＰＬＣデータの変更が発生すると、制御管理部５１０は、ＰＬＣデータの変更を示す第１変更メッセージ６０１を計算機２００のメモリ管理部２５４に送信する。
このＳ１１０における第１変更メッセージ６０１の送信は、レイヤ２の信頼性が高ければＵＤＰ（Ｕｓｅｒ・Ｄａｔａｇｒａｍ・Ｐｒｏｔｏｃｏｌ）にて送信する。ＴＣＰ（Ｔｒａｎｓｍｉｓｓｉｏｎ・Ｃｏｎｔｒｏｌ・Ｐｒｏｔｏｃｏｌ）の場合に発生する３Ｗａｙハンドシェークやウィンドウ制御による遅延時間を排除するためである。また、セキュアにするためＰＬＣデータを管理する制御管理部５１０とＰＬＣページャーであるメモリ管理部２５４とは事前に共有秘密鍵を保有し、データの暗号化・復号化を行っても良い。
【００４３】
＜メモリ管理処理Ｓ２００＞
Ｓ２１１からＳ２１３において、計算機２００のメモリ管理部２５４は、制御装置５００から第１変更メッセージ６０１を受信し、第１変更メッセージ６０１に基づいて計算機メモリ２０１に記憶された少なくとも一部のデータを第１のデータに変更すると共に、第１のデータに対応するアドレスを無効化するメモリ管理処理を実行する。
【００４４】
以下に、より詳しく説明する。
Ｓ２１１において、メモリ管理部２５４は、第１変更メッセージ６０１を受け取る。第１変更メッセージ６０１には、図５で説明したように、変更箇所を示すアドレス６１３と、変更後のデータ６１４とが含まれる。
Ｓ２１２において、メモリ管理部２５４は、受信した第１変更メッセージ６０１に基づいて、計算機メモリ２０１におけるアドレス６１３に対応するデータを、アドレス６１３に対応するデータ６１４に変更する。すなわち、メモリ管理部２５４は、第１変更メッセージ６０１の内容で計算機メモリ２０１を書き換える。
【００４５】
Ｓ２１３において、メモリ管理部２５４は、計算機メモリ２０１におけるアドレス６１３を無効化する。メモリ管理部２５４は、Ｓ２１１に戻り、第１変更メッセージ６０１の待ち状態となる。
【００４６】
ここで、計算機メモリ２０１におけるアドレス６１３を無効化するとは、データ６１４を含むページのページテーブルエントリを無効化することである。ページテーブルは、データ管理システム８００が稼働を始めた直後に生成される。ページテーブルは、オペレーティングシステムのカーネルが管理するデータであり、例えば、物理メモリの約２倍のページテーブルを構成するページテーブルエントリと呼ばれるデータで構成される。
【００４７】
図７を用いて、本実施の形態に係るメモリ管理方法におけるアクセス例外処理Ｓ２２０について説明する。
【００４８】
＜アクセス例外処理Ｓ２２０＞
Ｓ２２１からＳ２２３において、ＯＳ実行部２５２のアクセス処理部２５２１は、データ６１４に対するアクセスが発生した場合に、データ６１４をキャッシュメモリ２５３に書き込み、データ６１４に対応するアドレス６１３を有効化するアクセス例外処理を実行する。
【００４９】
以下に、より詳しく説明する。
Ｓ２２１において、計算機２００のＣＰＵ２０３がページテーブルエントリに定義されていた仮想アドレスにアクセスすると、アクセス対象のページテーブルエントリが無効化されている場合、ＭＭＵ（Ｍｅｍｏｒｙ・Ｍａｎａｇｅｍｅｎｔ・Ｕｎｉｔ）がメモリアクセス例外処理を発生させる。すなわち、ＣＰＵ２０３によるデータ６１４に対応するアドレス６１３へのアクセスが発生すると、アドレス６１３に対応するページテーブルエントリが無効化されているので、ＭＭＵがメモリアクセス例外処理を発生させる。メモリアクセス例外処理は、オペレーティングシステムに規定された処理である。
ＯＳ実行部２５２のアクセス処理部２５２１は、メモリアクセス例外処理を実行する。
【００５０】
Ｓ２２２において、アクセス処理部２５２１は、計算機メモリ２０１の無効化されたページを多層のキャッシュメモリ２５３に読み込ませる。つまり、アクセス処理部２５２１は、計算機メモリ２０１におけるアドレス６１３に対応するデータ６１４を多層のキャッシュメモリ２５３に読み込ませる。
【００５１】
Ｓ２２３において、アクセス処理部２５２１は、データ６１４を含むページのページテーブルエントリの有効化を行う。アクセス処理部２５２１によるページテーブルエントリの有効化により、計算機メモリ２０１におけるデータ６１４に対応するアドレス６１３が有効化される。
【００５２】
＊＊＊効果の説明＊＊＊
データ管理システムにおける計算機の仮想記憶管理方式は、物理メモリの４ＫＢのページ領域に対応するデータ管理ソフトウェアの指定手段と、このページ領域の仮想アドレスへのマッピング情報を格納するページテーブルエントリの管理手段とを有する。また、この仮想記憶管理方式では、データ管理ソフトウェアの何れかによってデータ変更があった場合には、当該ページ領域の当該データを変更し、ページテーブルエントリの属性情報を無効とする。そして、仮想記憶管理方式では、ＣＰＵが当該ページの当該データもしくはキャッシュデータに当該仮想アドレスにてアクセスした時に、データアクセス例外を発生させることにより、キャッシュデータを更新する。
【００５３】
以上のように、本実施の形態に係るデータ管理システムによれば、ＰＬＣで発生したデータの変更を計算機のメモリ及び多層のキャッシュメモリに発生させることができ、ＰＬＣ側のメモリの変更を、即座に計算機のメモリ及び多層のキャッシュメモリに反映させることができる。
【００５４】
また、本実施の形態に係るデータ管理システムによれば、計算機メモリの内容とＰＬＣの制御メモリの内容とを制御管理部とメモリ管理部とを用いてネットワーク経由で共有させることができる。
計算機メモリとＰＬＣの制御メモリとを共有させるということは、計算機のアプリケーションの処理に即座に反映することができるということである。したがって、本実施の形態に係るデータ管理システムによれば、多数のＰＬＣのメモリの情報、例えば生産ラインに備えられ、ＰＬＣと接続されたセンサや機器からの情報を、クラウドと呼ばれるデータセンターに集約できる。そして、本実施の形態に係るデータ管理システムによれば、多数のＰＬＣの制御メモリの情報をクラウド上に実装されたアプリケーションによって多岐にわたる処理に反映できることとなる。
【００５５】
本実施の形態に係るデータ管理システムでは、グローバルに展開された企業の生産設備、また個々の生産設備を構成するコントローラやデバイス等のステータス情報といったＰＬＣデータを仮想的なメモリ領域に格納する。本実施の形態に係るデータ管理システムによれば、ステータス情報の利用要件、通信遅延、通信データ量を勘案して、ステータス情報の最適なデータコヒーレンシ維持機構を柔軟に再構成する手段を提供する。
【００５６】
実施の形態２．
本実施の形態では、主に、実施の形態１との差異点について説明する。
本実施の形態では、実施の形態１で説明した構成部と同様の構成部については同一の符号を付し、その説明を省略する場合がある。
【００５７】
本実施の形態では、計算機２００のＣＰＵ２０３が、ＰＬＣページャーであるメモリ管理部２５４の管理下の計算機メモリ２０１に対し、データ変更を行う場合について説明する。本実施の形態に係るデータ管理システム８０１によれば、計算機２００のＣＰＵ２０３により工場の制御を可能にする。ＣＰＵ２０３により実行されるデータの変更には、データの参照、データの更新が含まれるものとする。
【００５８】
＊＊＊構成の説明＊＊＊
図８は、本実施の形態に係るデータ管理システム８０１のブロック構成図である。
図８に示すデータ管理システム８０１は、実施の形態１で説明したデータ管理システム８００の構成に加え、変更判定部２５５を備える。また、データ管理システム８０１は、実施の形態１では用いられていない第２変更メッセージ６０２を用いる。
【００５９】
メモリ管理部２５４は、計算機メモリ２０１に記憶された少なくとも一部のデータが第２のデータ６１４に変更された場合、計算機メモリ２０１に記憶された少なくとも一部のデータが第２のデータ６１４に変更されたことを表す第２変更メッセージ６０２を制御装置５００に送信する。
制御管理部５１０は、メモリ管理部２５４から送信された第２変更メッセージ６０２を受信し、第２変更メッセージ６０２に基づいて制御メモリ５０１に記憶された少なくとも一部のデータを第２のデータ６１４に変更する。
【００６０】
変更判定部２５５は、計算機メモリ２０１に記憶された少なくとも一部のデータが第２のデータ６１４に変更された場合、第２のデータ６１４に対応する第２のアドレス６１３に基づいて、制御メモリ５０１に記憶された少なくとも一部のデータを第２のデータ６１４に変更するか否かを判定する。
メモリ管理部２５４は、変更判定部２５５により制御メモリ５０１に記憶された少なくとも一部のデータを第２のデータ６１４に変更すると判定された場合に、第２変更メッセージ６０２を制御装置５００に送信する。
【００６１】
＊＊＊動作の説明＊＊＊
図９を用いて、本実施の形態に係るデータ管理システム８０１のデータ管理方法について説明する。
【００６２】
Ｓ４１０において、ＣＰＵ２０３が計算機メモリ２０１のデータの変更あるいは更新を行う。例えば、計算機２００のアプリケーション実行部２５１は、計算機メモリ２０１のＰＬＣデータの変更あるいは更新をするアプリケーションプログラム実行する。このとき、計算機メモリ２０１の第２のアドレス６１３のデータを第２のデータ６１４に変更するものとする。
【００６３】
Ｓ４１１において、変更判定部２５５は、計算機メモリ２０１の変更あるいは更新を、ＰＬＣ１０７の制御メモリ５０１に反映させるか否かを判定する。変更判定部２５５は、ＰＬＣ１０７のエンジニアリング環境が管理するメモリ管理データを参照し、ＰＬＣ１０７へのデータ更新が必要か否かを判断する。変更判定部２５５は、ＰＬＣ１０７のエンジニアリング環境が管理するメモリ管理データを参照し、第２のアドレスが意味のあるアドレスか否かを判断し、その判断結果により、ＰＬＣ１０７へのデータ更新が必要か否かを判断する。
【００６４】
変更判定部２５５によりＰＬＣへのデータ更新が必要でないと判断されると、処理を終了する。
変更判定部２５５によりＰＬＣへのデータ更新が必要と判断されると、Ｓ４１２に進む。
【００６５】
Ｓ４１２において、変更判定部２５５は、ＰＬＣページャーであるメモリ管理部２５４により計算機メモリ２０１の書き換えを行ったことを、仮想アドレス、すなわち第２のアドレス６１３をもって通知する。メモリ管理部２５４は、仮想アドレス、すなわち第２のアドレス６１３に対応するメモリ上の第２のデータ６１４から、第２変更メッセージを生成する。メモリ管理部２５４は、生成した第２変更メッセージを登録されているＩＰ接続に対して送信する。
【００６６】
Ｓ３１０において、制御管理部５１０は、メモリ管理部２５４から送信された第２変更メッセージ６０２を受信する。
Ｓ３１１において、制御管理部５１０は、受信した第２変更メッセージ６０２に含まれる第２のアドレス６１３と第２のデータ６１４とに基づいて、制御メモリ５０１において第２のアドレス６１３に対応するデータを、第２のデータ６１４に変更する。
【００６７】
なお、ＰＬＣ１０７において、制御メモリ５０１のデータが変更されると、ＰＬＣ１０７のキャッシュメモリにも制御メモリ５０１のデータの変更が反映される。例えば、計算機２００と同様に、メモリのデータをキャッシュメモリに反映させてもよい。
【００６８】
＊＊＊効果の説明＊＊＊
以上のように、本実施の形態に係るデータ管理システムによれば、ＣＰＵまたはメモリ管理部が計算機メモリのページデータを変更したときは、制御メモリに変更が反映されるので、計算機のＣＰＵにより工場の制御をすることができる。
【００６９】
また、本実施の形態に係るデータ管理システムによれば、変更判定部により、制御メモリに変更を反映するか否かを判定するので、必要のない変更については第２変更メッセージを送信しないため、計算機のＣＰＵによる工場の制御を効率的にすることができる。
【００７０】
実施の形態３．
本実施の形態では、主に、実施の形態１との差異点について説明する。
本実施の形態では、実施の形態１で説明した構成部と同様の構成部については同一の符号を付し、その説明を省略する場合がある。
【００７１】
＊＊＊構成の説明＊＊＊
本実施の形態では、データ管理システム８０２は計算機２００を複数有する。すなわち、ＰＬＣ１０７の制御管理部５１０が、ネットワーク６００を介して複数の計算機２００の各計算機２００のＰＬＣページャーであるメモリ管理部２５４に接続する。
【００７２】
ＰＬＣ１０７の制御メモリ５０１と、複数の計算機２００の各計算機２００が備える計算機メモリ２０１とには、共通のデータであるＰＬＣデータが記憶される。
【００７３】
＊＊＊動作の説明＊＊＊
データ管理システム８０２では、ＰＬＣ１０７の制御管理部５１０が複数のメモリ管理部２５４に接続され、ＰＬＣデータが複数の計算機メモリ２０１に多重に記憶されている。
データ管理システム８０２では、ＰＬＣ１０７で制御メモリ５０１のＰＬＣデータが変更された場合に、複数のメモリ管理部２５４のそれぞれに対して第１変更メッセージ６０１を送信することにより、ＰＬＣ１０７の制御メモリ５０１と、複数の計算機２００のそれぞれの計算機メモリ２０１とで同期をとることができる。
【００７４】
また、データ管理システム８０２では、複数のメモリ管理部２５４のいずれかで計算機メモリ２０１のＰＬＣデータが変更された場合に、ＰＬＣ１０７に対して第２変更メッセージ６０２を送信することにより、ＰＬＣ１０７の制御メモリ５０１と、複数の計算機２００のそれぞれの計算機メモリ２０１とで同期をとることができる。
なお、複数のＰＬＣページャー間の排他制御機構は特別に用意せずとも良い。なぜならば複数の計算機上から同時にデータ更新を行うとは運用上発生しないためである。
【００７５】
＊＊＊効果の説明＊＊＊
以上のように、本実施の形態に係るデータ管理システムによれば、１つのページ領域に２以上のデータ管理ソフトウェア、すなわちメモリ管理部をマッピングする。よって、ＰＬＣデータを複数の計算機メモリに多重に記憶させることができるので、より安全性の高いシステムを提供することができる。
【００７６】
実施の形態４．
本実施の形態では、主に、実施の形態１との差異点について説明する。
実施の形態１で説明した構成部と同様の構成部については、同一の符号を付し、その説明を省略する場合がある。
【００７７】
本実施の形態に係るデータ管理システム８０３では、同じ物理メモリのページを計算機メモリ２０とディスク装置２０５とに２重にマッピングされる場合について説明する。
【００７８】
＊＊＊構成の説明＊＊＊
図１０を用いて、本実施の形態に係るデータ管理システム８０３のブロック構成図について説明する。
図１０に示すデータ管理システム８０３は、実施の形態１で説明したデータ管理システム８００の構成に加え、ディスク装置２０５、ディスク装置２０５のデータを管理するディスク装置ページャーであるディスク装置管理部２５６を備える。
【００７９】
計算機２００は、ディスク装置２０５を備え、計算機メモリ２０１とディスク装置２０５とには、共通のデータであるＰＬＣデータが記憶される。
【００８０】
＊＊＊動作の説明＊＊＊
図１１を用いて、本実施の形態に係る計算機メモリ書き換え処理Ｓ２１２について説明する。計算機メモリ書き換え処理Ｓ２１２は、図６の計算機メモリ書き換え処理Ｓ２１２に対応する処理である。本実施の形態に係る計算機メモリ書き換え処理Ｓ２１２は、Ｓ２１２ａとＳ２１２ｂとを備える。
【００８１】
Ｓ２１２ａでは、実施の形態１で説明したＳ２１２と同様に、メモリ管理部２５４は、受信した第１変更メッセージ６０１に基づいて、計算機メモリ２０１における第１のアドレス６１３に対応するデータを、第１のアドレス６１３に対応する第１のデータ６１４に変更する。さらに、メモリ管理部２５４は、同じ仮想アドレスである第１のアドレス６１３にマッピングされたディスク装置２０５のデータを、第１のアドレス６１３に対応する第１のデータ６１４に変更するため、ディスク装置ページャーであるディスク装置管理部２５６に第１変更メッセージ６０１の内容を通知する。
【００８２】
Ｓ２１２ｂにおいて、ディスク装置管理部２５６は、第１のアドレス６１３にマッピングされたディスク装置２０５のデータを第１のデータ６１４に変更する。
【００８３】
＊＊＊効果の説明＊＊＊
以上のように、本実施の形態に係るデータ管理システムによれば、同じ物理メモリのページがＰＬＣページャーであるメモリ管理部と、ディスク装置ページャーであるディスク装置管理部とにより２重にマッピングされるので、より安全性の高いシステムを提供することができる。また、計算機が複数のディスク装置を備え、同じ物理メモリのページを複数のディスク装置に多重にマッピングしてもよい。
【００８４】
上記実施の形態１から４に係るデータ管理システムによれば、計算機のディスク装置に格納されるデータの全ては、データセンターの全ての拠点間で同期される。よって、ＰＬＣの制御メモリ上のデータを全てのデータセンターの計算機のメモリ上に展開される。すなわち、（１）ＰＬＣデータの更新が発生した場合、ＰＬＣ側のメモリが更新されるとともに、データセンターのディスク装置に記憶されている物理的なＰＬＣデータ本体が更新される。（２）また、ＰＬＣ側のメモリが更新されると、データセンター側にメモリの第１変更メッセージが送信され、この第１変更メッセージに基づいて、データセンター側のメモリが変更される。
したがって、アプリケーションプログラムは仮想アドレスでのメモリアクセスにて特定のＰＬＣのデータ操作が可能になり、アプリケーションプログラマに非常に高い利便性を与える。
【００８５】
以上、本発明の実施の形態について説明したが、これらの実施の形態のうち、２つ以上を組み合わせて実施しても構わない。あるいは、これらの実施の形態のうち、１つを部分的に実施しても構わない。あるいは、これらの実施の形態のうち、２つ以上を部分的に組み合わせて実施しても構わない。
なお、以上の実施の形態は、本質的に好ましい例示であって、本発明、その適用物や用途の範囲を制限することを意図するものではなく、矛盾しない範囲であれば必要に応じて種々の変更が可能である。
【符号の説明】
【００８６】
１０１  データセンター、１０３  専用線、１０４  ラック、１０５  ルータ、１０６  ゲートウェイ装置、１０７  ＰＬＣ、２００  計算機、２０１  計算機メモリ、２０２  ＰＣＩ−ｅ、２０３  ＣＰＵ、２０４  ＧＰＩＯ、２０５  ディスク装置、２０６  ＮＩＣ、２５１  アプリケーション実行部、２５２  ＯＳ実行部、２５３  キャッシュメモリ、２５４  メモリ管理部、２５５  変更判定部、２５６  ディスク装置管理部、３０１  １次階層キャッシュメモリ、３０２  ２次階層キャッシュメモリ、３０３  ３次階層キャッシュメモリ、５００  制御装置、５０１  制御メモリ、５０６  ＮＩＣ、５１０  制御管理部、６００  ネットワーク、６０１  第１変更メッセージ、６０２  第２変更メッセージ、６１１  データフォーマット、６１２  データ数、６１３  アドレス、６１４  データ、８００，８０１，８０２  データ管理システム、２０１１，２０５１，３０１１，３０２１，３０３１，５０１１  格納領域、２０５２  マップトファイル、２５２１  アクセス処理部、Ｓ２１０  メモリ管理処理、Ｓ２２０  アクセス例外処理。
【図１】
2016067444.tif 000003
【図２】
2016067444.tif 000004
【図３】
2016067444.tif 000005
【図４】
2016067444.tif 000006
【図５】
2016067444.tif 000007
【図６】
2016067444.tif 000008
【図７】
2016067444.tif 000009
【図８】
2016067444.tif 000010
【図９】
2016067444.tif 000011
【図１０】
2016067444.tif 000012
【図１１】
2016067444.tif 000013
【手続補正書】
【提出日】平成28年11月2日(2016.11.2)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
制御メモリを有する制御装置と、計算機メモリを有し、前記制御装置とネットワークを介して接続される計算機とを備え、前記制御メモリと前記計算機のストレージ領域とが前記計算機メモリのページにマッピングされたデータ管理システムにおいて、
前記制御装置は、
前記制御メモリに記憶された少なくとも一部のデータであって前記計算機メモリにマッピングされた少なくとも一部のデータが第１のデータに変更されたことを表す第１変更メッセージを前記計算機に送信する制御管理部を備え、
前記計算機は、
前記第１変更メッセージを受信し、前記第１変更メッセージに基づいて、前記少なくとも一部のデータに対応するアドレスについて、仮想アドレスと物理アドレスをマッチングするデータをキャッシュするキャッシュメモリを無効化すると共に、前記計算機メモリと前記ストレージ領域との各々に記憶された前記少なくとも一部のデータを前記第１のデータに変更するメモリ管理部と、
前記計算機メモリの前記第１のデータを含むページに前記計算機のＣＰＵが書き込みを行ったときのメモリ書き込み例外処理により、書き込みデータを前記ストレージ領域に書き込み、前記計算機メモリに書き込みを行ったことを表す第２変更メッセージを前記制御装置に送信するアクセス処理部と
を備えるデータ管理システム。
【請求項２】
前記メモリ管理部は、
前記少なくとも一部のデータに対応するアドレスについて、仮想アドレスと物理アドレスをマッチングするデータをキャッシュするキャッシュメモリを有効化して、無効化された前記キャッシュメモリを有効化する請求項１に記載のデータ管理システム。
【請求項３】
前記データ管理システムは、
前記計算機を複数有し、
前記制御メモリと前記複数の計算機の各計算機が備える前記計算機メモリとには、共通のデータが記憶される請求項１または２に記載のデータ管理システム。
【請求項４】
前記計算機は、前記ストレージ領域を有するディスク装置を備え、
前記計算機メモリと前記ディスク装置とには、前記共通のデータが記憶される請求項３に記載のデータ管理システム。
【請求項５】
前記キャッシュメモリは、
少なくとも１次階層キャッシュメモリと２次階層キャッシュメモリとを含む多層キャッシュメモリである請求項１から４のいずれか１項に記載のデータ管理システム。
【請求項６】
前記制御装置は、ＰＬＣ（ｐｒｏｇｒａｍｍａｂｌｅ  ｌｏｇｉｃ  ｃｏｎｔｒｏｌｌｅｒ）を有する請求項１から５のいずれか１項に記載のデータ管理システム。
【請求項７】
計算機メモリを有すると共に、制御メモリを有する制御装置とネットワークを介して接続される計算機であって、前記制御メモリと前記計算機のストレージ領域とが前記計算機メモリのページにマッピングされた計算機において、
前記制御メモリに記憶された少なくとも一部のデータであって前記計算機メモリにマッピングされた少なくとも一部のデータが第１のデータに変更されたことを表す第１変更メッセージを前記計算機に送信する前記制御装置の制御管理部から前記第１変更メッセージを受信し、前記第１変更メッセージに基づいて、前記少なくとも一部のデータに対応するアドレスについて、仮想アドレスと物理アドレスをマッチングするデータをキャッシュするキャッシュメモリを無効化すると共に、前記計算機メモリと前記ストレージ領域との各々に記憶された前記少なくとも一部のデータを前記第１のデータに変更し、前記少なくとも一部のデータに対応するアドレスについて、前記キャッシュメモリを有効化するメモリ管理部と、
前記計算機メモリの前記第１のデータを含むページに前記計算機のＣＰＵが書き込みを行ったときのメモリ書き込み例外処理により、書き込みデータを前記ストレージ領域に書き込み、前記計算機メモリに書き込みを行ったことを表す第２変更メッセージを前記制御装置に送信するアクセス処理部とを備える計算機。
【請求項８】
制御メモリを有する制御装置と、計算機メモリを有し、前記制御装置とネットワークを介して接続される計算機とを備え、前記制御メモリと前記計算機のストレージ領域とが前記計算機メモリのページにマッピングされたデータ管理システムのデータ管理方法において、
前記制御装置の制御管理部は、前記制御メモリに記憶された少なくとも一部のデータであって前記計算機メモリにマッピングされた少なくとも一部のデータが第１のデータに変更されたことを表す第１変更メッセージを前記計算機に送信し、
前記計算機のメモリ管理部は、前記第１変更メッセージを受信し、前記第１変更メッセージに基づいて、前記少なくとも一部のデータに対応するアドレスについて、仮想アドレスと物理アドレスをマッチングするデータをキャッシュするキャッシュメモリを無効化すると共に、前記計算機メモリと前記ストレージ領域との各々に記憶された前記少なくとも一部のデータを前記第１のデータに変更し、前記少なくとも一部のデータに対応するアドレスについて、前記キャッシュメモリを有効化し、
前記計算機のアクセス処理部は、前記計算機メモリの前記第１のデータを含むページに前記計算機のＣＰＵが書き込みを行ったときのメモリ書き込み例外処理により、書き込みデータを前記ストレージ領域に書き込み、前記計算機メモリに書き込みを行ったことを表す第２変更メッセージを前記制御装置に送信するデータ管理方法。
【請求項９】
計算機メモリを有すると共に、制御メモリを有する制御装置とネットワークを介して接続される計算機であって、前記制御メモリと前記計算機のストレージ領域とが前記計算機メモリのページにマッピングされた計算機のプログラムにおいて、
前記制御メモリに記憶された少なくとも一部のデータであって前記計算機メモリにマッピングされた少なくとも一部のデータが第１のデータに変更されたことを表す第１変更メッセージを送信する前記制御装置から前記第１変更メッセージを受信し、前記第１変更メッセージに基づいて、前記少なくとも一部のデータに対応するアドレスについて、仮想アドレスと物理アドレスをマッチングするデータをキャッシュするキャッシュメモリを無効化すると共に、前記計算機メモリと前記ストレージ領域との各々に記憶された前記少なくとも一部のデータを前記第１のデータに変更し、前記少なくとも一部のデータに対応するアドレスについて、前記キャッシュメモリを有効化するメモリ管理処理と、
前記計算機メモリの前記第１のデータを含むページに前記計算機のＣＰＵが書き込みを行ったときのメモリ書き込み例外処理により、書き込みデータを前記ストレージ領域に書き込み、前記計算機メモリに書き込みを行ったことを表す第２変更メッセージを前記制御装置に送信するアクセス例外処理とをコンピュータに実行させるプログラム。
【国際調査報告】
2016067444.tif 000014
2016067444.tif 000015
2016067444.tif 000016
2016067444.tif 000017