JP5975419B2 - 情報処理装置、情報処理方法、及びプログラム - Google Patents
情報処理装置、情報処理方法、及びプログラム Download PDFInfo
- Publication number
- JP5975419B2 JP5975419B2 JP2012060355A JP2012060355A JP5975419B2 JP 5975419 B2 JP5975419 B2 JP 5975419B2 JP 2012060355 A JP2012060355 A JP 2012060355A JP 2012060355 A JP2012060355 A JP 2012060355A JP 5975419 B2 JP5975419 B2 JP 5975419B2
- Authority
- JP
- Japan
- Prior art keywords
- information
- shared memory
- transaction
- data
- memory area
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 230000010365 information processing Effects 0.000 title claims description 38
- 238000003672 processing method Methods 0.000 title claims description 7
- 238000012217 deletion Methods 0.000 claims description 3
- 230000037430 deletion Effects 0.000 claims description 3
- 238000000034 method Methods 0.000 description 43
- 230000008569 process Effects 0.000 description 39
- 230000008859 change Effects 0.000 description 8
- 230000000694 effects Effects 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 230000008901 benefit Effects 0.000 description 1
- 230000007717 exclusion Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
(実施形態)
複数のプログラムから平行して同一のデータにアクセス可能な共有メモリと呼ばれる技術がある。本実施形態では、トランザクションで共有メモリ上のデータを参照すると共に、同じデータを、当該トランザクションとは別プロセスに係る更新コマンドで更新する場合を考える。
このようなシステムの処理は、以下のような処理に分解することができる。
(b)共有メモリ上のデータの更新及び削除は、トランザクションのプロセスとは別のプロセスで実行される。
(c)トランザクションの処理中は、共有メモリ上のデータが更新されても、当該トランザクションが参照する共有メモリ領域は変更しない。
(d)トランザクションが実行されるプロセスは、共有メモリ上のデータが更新されると、トランザクションが参照すべき共有メモリ領域を変更する。
(1)トランザクションを実行するスレッド
(2)データの更新を受信し、トランザクションで参照すべき共有メモリ領域を変更すると共に、参照されなくなった共有メモリ領域を開放するスレッド
以下、情報処理装置1の構成を、図1を参照しながら説明する。上述した通り、情報処理装置1のシステムは、共有メモリ100と、共有メモリを参照及び更新するプロセス200と、共有メモリ100を更新する共有メモリ更新コマンド300と、プロセス200に含まれる各スレッドが参照及び更新する共有メモリ参照テーブル400とを含む。
世代番号110は、共有メモリ更新コマンド300により新たな共有メモリ領域120が確保される毎に加算(又は減算)される番号である。この世代番号110の値は、最新のデータが格納された共有メモリ領域120のメモリ番号121と一致する。
次に、情報処理装置1による処理の流れを、図2乃至図4をそれぞれ参照しながら説明する。以下、「3.1」で共有メモリ100へのデータ更新時の処理の流れを、「3.2」でトランザクション開始時又は終了時の処理の流れを説明する。
図2及び図3を参照しながら、共有メモリ100へのデータ更新時(作成時)の処理の流れを説明する。図2及び図3は、それぞれ、共有メモリ100へのデータ更新時(作成時)の、共有メモリ更新手段310及び共有メモリ設定手段221の処理の流れを説明するためのフローチャートである。
以上により、共有メモリ100の更新処理が完了する。
続いて、トランザクション開始時又は終了時の処理の流れを、図4を参照しながら説明する。尚、本実施形態では、トランザクション開始時及び終了時に、それぞれトランザクション開始手段211及びトランザクション終了手段213が、図4に示す同一の処理を行うが、ここでは、トランザクション開始手段211の処理として説明する。
以下、図5を参照しながら、本実施形態に係る情報処理装置1の処理の具体例を説明する。図5は、共有メモリ100のデータ更新及び開放に関する処理の流れの具体例を説明するための図である。以下、共有メモリ100及び共有メモリ参照テーブル400の状態遷移に着目しながら説明する。
次に、トランザクションスレッド210によるトランザクション中に、共有メモリ更新コマンド300が共有メモリ100を更新する場合を考える。
共有メモリ更新手段310は、これらの処理が完了した後、その旨を変更スレッド220の共有メモリ設定手段221に通知する。
上述したように、本実施形態に係る情報処理装置1は、次回トランザクション参照メモリ領域情報420に、共有メモリ更新コマンド300で作成した共有メモリ領域120の情報を格納し、トランザクションの開始時又は終了時の少なくとも一方に、次回トランザクション参照メモリ領域情報420の情報を、トランザクション参照メモリ領域情報410に設定する。これにより、トランザクション中でも、当該トランザクションによる参照処理との排他制御を行わずに、また誤参照することなく、共有メモリ100に対する更新を行うことができる。
尚、前述の各実施形態の構成は、組み合わせたり或いは一部の構成部分を入れ替えたりしてもよい。また、本発明の構成は前述の実施形態のみに限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々変更を加えてもよい。
また、前述の各実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
第1のデータが記憶された記憶媒体上の位置に関する第1の位置情報を記憶する第1の記憶手段と、前記第1の記憶手段に記憶された前記第1の位置情報に基づき、第1のデータを参照して第1のトランザクションを処理する第1の処理手段と、前記第1のデータを更新した第2のデータを、前記第1のデータとは異なる前記記憶媒体上の位置に記録する更新手段と、前記第2のデータが記録された前記記憶媒体上の位置に関する第2の位置情報を記憶する第2の記憶手段と、前記第1の記憶手段に記憶された前記第1の位置情報が、前記第2の記憶手段に記憶された前記第2の位置情報と異なる場合に、前記第1の記憶手段に前記第2の位置情報を記録する位置情報更新手段とを備える情報処理装置。
前記位置情報更新手段は、前記第1のトランザクションの次に実行される第2のトランザクションの開始に伴い、前記第1の記憶手段に前記第2の位置情報を記録する、付記1に記載の情報処理装置。
前記位置情報更新手段は、前記第1のトランザクションの終了に伴い、前記第1の記憶手段に前記第2の位置情報を記録する、付記1又は付記2記載の情報処理装置。
前記位置情報更新手段が前記第1の記憶手段に前記第2の記憶情報を記録する際に、前記第1の記憶手段に記憶されていた前記第1の位置情報が記録される第3の記憶手段を更に備える、付記1乃至付記3記載の情報処理装置。
前記第3の記憶手段に記憶された前記第1の位置情報と、前記第1の位置情報に対応する前記第1のデータとを削除する削除手段を更に備える、付記4記載の情報処理装置。
第1のデータが記憶された記憶媒体上の位置に関する第1の位置情報を第1の記憶手段に記録するステップと、前記第1の記憶手段に記憶された前記第1の位置情報に基づき、第1のデータを参照して第1のトランザクションを処理するステップと、前記第1のデータを更新した第2のデータを、前記第1のデータとは異なる前記記憶媒体上の位置に記録するステップと、前記第2のデータが記録された前記記憶媒体上の位置に関する第2の位置情報を前記第2の記憶手段に記録するステップと、前記第1の記憶手段に記憶された前記第1の位置情報が、前記第2の記憶手段に記憶された前記第2の位置情報と異なる場合に、前記第1の記憶手段に前記第2の位置情報を位置情報更新手段に記録するステップとを備える情報処理方法。
情報処理装置に、第1のデータが記憶された記憶媒体上の位置に関する第1の位置情報を第1の記憶手段に記録するステップと、前記第1の記憶手段に記憶された前記第1の位置情報に基づき、第1のデータを参照して第1のトランザクションを処理するステップと、前記第1のデータを更新した第2のデータを、前記第1のデータとは異なる前記記憶媒体上の位置に記録するステップと、前記第2のデータが記録された前記記憶媒体上の位置に関する第2の位置情報を前記第2の記憶手段に記録するステップと、前記第1の記憶手段に記憶された前記第1の位置情報が、前記第2の記憶手段に記憶された前記第2の位置情報と異なる場合に、前記第1の記憶手段に前記第2の位置情報を位置情報更新手段に記録するステップとを実行させるためのプログラム。
Claims (7)
- 第1のデータが記憶された記憶媒体上の第1メモリ番号を持つ位置に関する第1の位置情報を記憶する第1の記憶手段と、
前記第1メモリ番号を世代情報として管理する手段と、
前記第1の記憶手段に記憶された前記第1の位置情報に基づき、前記第1のデータを参照して第1のトランザクションを処理する第1の処理手段と、
前記第1のデータを更新した第2のデータを、前記第1のデータとは異なる前記記憶媒体上の第2メモリ番号を持つ位置に記録すると共に、前記世代情報に前記第2メモリ番号を登録する更新手段と、
前記世代情報を参照することにより、前記第2のデータが記録された前記記憶媒体上の前記第2メモリ番号を持つ位置に関する第2の位置情報を記憶する第2の記憶手段と、
前記第1の記憶手段に記憶された前記第1の位置情報が、前記第2の記憶手段に記憶された前記第2の位置情報と異なる場合に、前記第1の記憶手段に前記第2の位置情報を記録する位置情報更新手段と
を備える情報処理装置。 - 前記位置情報更新手段は、前記第1のトランザクションの次に実行される第2のトランザクションの開始に伴い、前記第1の記憶手段に前記第2の位置情報を記録する、
請求項1に記載の情報処理装置。 - 前記位置情報更新手段は、前記第1のトランザクションの終了に伴い、前記第1の記憶手段に前記第2の位置情報を記録する、
請求項1又は請求項2に記載の情報処理装置。 - 前記位置情報更新手段が前記第1の記憶手段に前記第2の記憶情報を記録する際に、前記第1の記憶手段に記憶されていた前記第1の位置情報が記録される第3の記憶手段
を更に備える、請求項1乃至請求項3記載の情報処理装置。 - 前記第3の記憶手段に記憶された前記第1の位置情報と、前記第1の位置情報に対応する前記第1のデータとを削除する削除手段
を更に備える、請求項4記載の情報処理装置。 - 第1のデータが記憶された記憶媒体上の第1メモリ番号を持つ位置に関する第1の位置情報を第1の記憶手段に記録するステップと、
前記第1メモリ番号を世代情報として管理する手段と、
前記第1の記憶手段に記憶された前記第1の位置情報に基づき、前記第1のデータを参照して第1のトランザクションを処理するステップと、
前記第1のデータを更新した第2のデータを、前記第1のデータとは異なる前記記憶媒体上の第2メモリ番号を持つ位置に記録すると共に、前記世代情報に前記第2メモリ番号を登録するステップと、
前記世代情報を参照することにより、前記第2のデータが記録された前記記憶媒体上の前記第2メモリ番号を持つ位置に関する第2の位置情報を前記第2の記憶手段に記録するステップと、
前記第1の記憶手段に記憶された前記第1の位置情報が、前記第2の記憶手段に記憶された前記第2の位置情報と異なる場合に、前記第1の記憶手段に前記第2の位置情報を位置情報更新手段に記録するステップと
を備える情報処理方法。 - 情報処理装置に、
第1のデータが記憶された記憶媒体上の第1メモリ番号を持つ位置に関する第1の位置情報を第1の記憶手段に記録するステップと、
前記第1メモリ番号を世代情報として管理するステップと、
前記第1の記憶手段に記憶された前記第1の位置情報に基づき、前記第1のデータを参照して第1のトランザクションを処理するステップと、
前記第1のデータを更新した第2のデータを、前記第1のデータとは異なる前記記憶媒体上の第2メモリ番号を持つ位置に記録すると共に、前記世代情報に前記第2メモリ番号を登録するステップと、
前記世代情報を参照することにより、前記第2のデータが記録された前記記憶媒体上の前記第2メモリ番号を持つ位置に関する第2の位置情報を前記第2の記憶手段に記録するステップと、
前記第1の記憶手段に記憶された前記第1の位置情報が、前記第2の記憶手段に記憶された前記第2の位置情報と異なる場合に、前記第1の記憶手段に前記第2の位置情報を位置情報更新手段に記録するステップと
を実行させるためのプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012060355A JP5975419B2 (ja) | 2012-03-16 | 2012-03-16 | 情報処理装置、情報処理方法、及びプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012060355A JP5975419B2 (ja) | 2012-03-16 | 2012-03-16 | 情報処理装置、情報処理方法、及びプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2013196129A JP2013196129A (ja) | 2013-09-30 |
JP5975419B2 true JP5975419B2 (ja) | 2016-08-23 |
Family
ID=49395055
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012060355A Expired - Fee Related JP5975419B2 (ja) | 2012-03-16 | 2012-03-16 | 情報処理装置、情報処理方法、及びプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5975419B2 (ja) |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000305767A (ja) * | 1999-04-19 | 2000-11-02 | Nec Corp | 分散処理システム |
JP5343399B2 (ja) * | 2008-05-22 | 2013-11-13 | 富士通株式会社 | 管理プログラム、管理方法、及び管理装置 |
-
2012
- 2012-03-16 JP JP2012060355A patent/JP5975419B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2013196129A (ja) | 2013-09-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108009008B (zh) | 数据处理方法和***、电子设备 | |
JP6198226B2 (ja) | 順次並んだスワップ・ファイルを使用するワーキング・セットのスワップ | |
US20200320036A1 (en) | Data unit cloning in memory-based file systems | |
US10585691B2 (en) | Distribution system, computer, and arrangement method for virtual machine | |
US20140173226A1 (en) | Logical object deletion | |
US20160098295A1 (en) | Increased cache performance with multi-level queues of complete tracks | |
JP2016535380A (ja) | 順方向専用にページ化されたデータストレージ管理 | |
US11516287B2 (en) | Method and apparatus for performing simple storage service seamless migration using index objects | |
CN103559139A (zh) | 一种数据存储方法及装置 | |
CN109086462A (zh) | 一种分布式文件***中元数据的管理方法 | |
JP5719083B2 (ja) | データベース装置、プログラムおよびデータ処理方法 | |
US11176089B2 (en) | Systems and methods for implementing dynamic file systems | |
US20230289207A1 (en) | Techniques for Concurrently Supporting Virtual NUMA and CPU/Memory Hot-Add in a Virtual Machine | |
JP2012155561A (ja) | 情報処理装置及び書き込み制御方法 | |
US9703599B2 (en) | Assignment control method, system, and recording medium | |
JP5975419B2 (ja) | 情報処理装置、情報処理方法、及びプログラム | |
US10430287B2 (en) | Computer | |
JP2006079463A (ja) | 時系列データ記録用バッファ管理方法、装置、システムおよびプログラム | |
JP2014127015A (ja) | 情報処理装置、分散データベースシステム、およびバックアップ方法 | |
US11163642B2 (en) | Methods, devices and computer readable medium for managing a redundant array of independent disks | |
JP2009157441A (ja) | 情報処理装置、ファイル再配置方法およびプログラム | |
CN104461382A (zh) | 运行多个文件***的文件服务器的内部写方法和服务器 | |
CN112579384B (zh) | 一种sas域的节点监控方法、装置、***及节点 | |
JP5473016B2 (ja) | データ共有システム、端末装置、データ共有方法、及びプログラム | |
JP2017117437A (ja) | 下位レベルキャッシュにおけるキャシュラインのエイジを制御することによりメモリへのライトバックを低減すること |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20150212 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20151124 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20151216 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20160129 |
|
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: 20160627 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5975419 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20160710 |
|
LAPS | Cancellation because of no payment of annual fees |