JP4494950B2 - テーブル切替プログラムおよびコンピュータシステム - Google Patents

テーブル切替プログラムおよびコンピュータシステム Download PDF

Info

Publication number
JP4494950B2
JP4494950B2 JP2004355222A JP2004355222A JP4494950B2 JP 4494950 B2 JP4494950 B2 JP 4494950B2 JP 2004355222 A JP2004355222 A JP 2004355222A JP 2004355222 A JP2004355222 A JP 2004355222A JP 4494950 B2 JP4494950 B2 JP 4494950B2
Authority
JP
Japan
Prior art keywords
record
standby
current
switching
access
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
Application number
JP2004355222A
Other languages
English (en)
Other versions
JP2006163895A (ja
Inventor
友是 金澤
博之 川田
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 JP2004355222A priority Critical patent/JP4494950B2/ja
Publication of JP2006163895A publication Critical patent/JP2006163895A/ja
Application granted granted Critical
Publication of JP4494950B2 publication Critical patent/JP4494950B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Hardware Redundancy (AREA)

Description

本発明は、業務プログラムで利用する共有メモリ上のテーブルを切り替えるテーブル切替プログラムおよびコンピュータシステムに関するものである。
従来、現用系と待機系を持つ二重化構造の装置においてはその運用テーブルについて、待機系の初期化時などに運用テーブルの内容を現用系と同じにしてから起動し、運用テーブルの内容を一致させる技術があった(特許文献1)。
また、共有メモリ上のテーブルの現用と待機とを切り替える場合、参照のみが行われるテーブルについては、現用と待機とでテーブルのデータが同じであるため、24時間連続運転するコンピュータシステムにおいても利用上の問題はなかった。
しかし、更新が行われるテーブルについては、上記技術では切替時に待機のテーブルの内容を現用のテーブルと同じにする間は現用の運用を一時停止しなくてはならず、24時間連続運転するコンピュータシステムでは、共有メモリ上に更新が行われるテーブルを配置して利用することは実質的に不可能であった。
特開平08−274779号公報
本発明は、上記問題点に鑑みてなされた発明であって、24時間運転するコンピュータシステムにおいても共有メモリ上に更新が行われるテーブルを配置しても、テーブルの切替時に業務処理を止めずに常に最新のデータを用いて業務処理を継続することを可能とするテーブル切替プログラムを提供することにある。
本発明は、この問題を解決するため、共有メモリ上のテーブルのレコード毎に現用/待機を表すフラグを設けてレコード単位に現用のテーブルから待機のテーブルへコピーし、この処理の間の業務プログラムからのアクセスについては、フラグが現用であるレコードをアクセス対象として全てのレコードのコピーが終わった段階でテーブルを切り替えるようにしている。
本発明は、24時間連続運転中のシステムにおいて、共有メモリ上に更新が行われるテーブルを配置し、このテーブルの切替処理を行う場合であっても、業務プログラムによる業務処理を止めることなく、常に最新のデータを用いて業務処理を継続させることが可能となる。
本発明は、共有メモリ上のテーブルのレコード毎に現用/待機を表すフラグを設けて、レコード単位に現用のテーブルから待機のテーブルへコピーし、この処理の間の業務プログラムからのアクセスについては、フラグが現用であるレコードをアクセス対象とし、全てのレコードのコピーが終わった段階でテーブルを切り替えるものである。
図1は、本発明のシステム構成図を示す。
図1において、コンピュータ1は、プログラムに従い各種処理を実行するものであって、ここでは、全体コピー手段2、共有メモリアクセス手段3、通常アクセス手段31、特別アクセス手段32、共有メモリ4、外部記憶装置8、入力装置9、および出力装置10などから構成されるものである。
全体コピー手段2は、共有メモリ4内に設けた例えば現用のテーブルA6のレコードを順次、待機のテーブルB7にコピーして、引継フラグを切り替え、テーブル切替処理を行うものである(図2から図4を用いて後述する)。
共有メモリアクセス手段3は、業務処理を行う図示外の業務プログラムや図示外のネットワークを介した他の業務プログラムなどからの指示をもとに共有メモリ4内に設けたテーブルA6(あるいはテーブルB7)をアクセスするものであり、切り替え処理を行っていない時に動作する通常アクセス手段31と、切り替え処理を行っている時だけ動作する特別アクセス手段32とからなるものである。
共有メモリ4は、コンピュータ1内の図示外の業務プログラムが共通にアクセスするメモリであって、例えば、系フラグテーブル5、テーブルA6およびテーブルB7を設けるメモリである。
系フラグテーブル5は、共有メモリ4内に設けて複数のアクセス元(複数の業務プログラム)が共有して参照などして業務処理を行うテーブルであって、例えばテーブルAとテーブルBの現用/待機の別を示すフラグを持つものである。
テーブルA6,テーブルB7は、共有メモリ4内に設けて複数のアクセス元(複数の業務プログラム)が共有して参照などして業務処理を行うテーブルであって、いずれか一方が現用であれば他方が待機となる関係にあるものである。
外部記憶装置8は、不揮発性の記憶装置(ハードディスク装置など)であって、ここでは、例えば共有メモリ4内に設けたテーブルA6,テーブルB7の退避データであるテーブルA6’,A7’等を記憶するものである。
入力装置9は、各種指示、データを入力するものであって、キーボードやマウスなどの入力装置である。
出力装置10は、各種データ、結果などを出力するものであって、ディスプレイなどの出力装置である。
次に、図2のフローチャートの順番に従い、図1の構成の動作を詳細に説明する。
図2は、本発明のコンピュータ1の全体コピー手段2が行うテーブル切替処理の動作説明フローチャートを示す。
S1で、現用テーブルのレコードにアクセスする。
続いてS2で、共有メモリ4内の現用のテーブルのレコードが、共有メモリアクセス手段3からアクセスされておらず、アクセス可能であるか判別する。該当レコードが共有メモリアクセス手段3によりアクセス中である場合、アクセス不可能と判定し(S2でNO)、S3で共有メモリアクセス手段3による該当レコードへのアクセスの終了を待ち合わせ、S2に戻る。
S2で外部アクセス手段3によりアクセス中ではない場合、アクセス可能と判定し(S3でYES),S5で現用のテーブルのレコードデータを待機テーブルのレコードへコピーし、S6で現用のテーブルのレコード引継フラグを待機、待機レコード引継フラグを現用へそれぞれ変更する。例えば、図3(a)の共有メモリ4内の現状の状態
・現用のテーブルA6 ・待機のテーブルB7
キー データ 引継フラグ キー データ 引継フラグ
冷蔵庫 29800 現用 冷蔵庫 39800 待機
を、図3(b)の共有メモリ4内の状態
・現用のテーブルA6 ・待機のテーブルB7
キー データ 引継フラグ キー データ 引継フラグ
冷蔵庫 29800 待機 冷蔵庫 29800 現用
へ変更する。
次に、S7で、全レコードについてコピーが終了したか判別する。全レコードについてコピーが終了していないと判別すると(S7でNO)、S2に戻って現用のテーブルの次のレコードを参照し、S3以降を繰り返す。この判別については、現用又は待機のテーブルの全てのレコードの引継フラグの切替により判定する方法や、予めテーブルのレコード件数を記憶しておき、この記憶しておいたレコード件数を満たすまで、レコードのコピーの都度コピー件数をカウントアップまたはカウントダウンする方法などの方法がある。
全レコードについてコピーが終了したと判別すると(S7でYES),S8で共有メモリ4上の系フラグテーブル5の系フラグを切り替える。例えば図3(b)に示す
・系フラグ
・テーブルA=現用系テーブル
・テーブルB=待機系テーブル
の状態から図3(c)に示す
・系フラグ
・テーブルA=待機系テーブル
・テーブルB=現用系テーブル
の状態へ切り替える。以上の処理により、一連のテーブル切り替えが完了したこととなる。
以上のように、図1のコンピュータ1内の図示外の複数の業務プログラムが共有の現用のテーブルAをそれぞれ参照して業務処理を実行しているときに、管理者などからテーブルの切り替えの指示があると、現用のテーブルAからレコード単位に業務プログラムからアクセスされていないか判定し、アクセスされていないときに、順次、待機のテーブルBにコピーおよび引継フラグを切り替えることを繰り返し、現用のテーブルの全てのレコードについて待機のテーブルにコピーおよび引継フラグの切り替えが終了したときに、系フラグテーブル5のテーブルの系を切り替えて一連のテーブル切り替え処理を終了する。これにより、24時間連続運転中のコンピュータ内の複数の業務プログラムが使用するテーブルの切り替え時であっても、処理を止めずに常に最新のデータを用いて業務処理を継続することが可能となる。
図3は、本発明の説明図を示す。
図3の(a)は、共有メモリ4内の現用のテーブルA6,待機のテーブルB7の状態の例を示す。
図3の(b)は、1レコードを現用のテーブルA6から待機のテーブルB7にコピーおよび引継フラグを切り替えた後の状態の例を示す。現用のテーブルA6の先頭の1レコードを、待機のテーブルB7にコピーし、引継フラグを切り替えた状態を示している。
図3の(c)は、テーブルAとテーブルBで系を切り替えた後の状態を示す。現用のテーブルA6の全レコードの待機系のテーブルB7へコピーして引継フラグの切り替えが完了した後、元は図3(a),(b)に示すように
・系フラグ
・テーブルA=現用系テーブル
・テーブルB=待機系テーブル
であったものを、当該図3(c)の
・系フラグ
・テーブルA=待機系テーブル
・テーブルB=現用系テーブル
へ切り替えた状態を示している。これにより、以降は、テーブルBが現用、テーブルAが待機となる。また、現用のテーブルA6の全レコードについて待機のテーブルB7へコピーして引継フラグの切り替えを終了した段階で、図1の不揮発性の外部記憶装置8にテーブルA6’およびテーブルB7’として退避し、記憶する。
図4は、本発明の共有メモリアクセス手段3の動作説明フローチャートを示す。
図4において、S11で、共有メモリアクセス手段3は、アクセス対象のテーブルが全件コピー手段2によるテーブル切替処理中か判別する。テーブル切替処理中ではないと判別すると(S11でNO)、S12で通常アクセス手段31による通常のメモリアクセス処理を行う。なお、この処理については従来技術であり、本発明の要旨に直接関連しないため詳述しない。
一方、テーブル切替処理中であると判別すると(S11でYES)、S13に進む。なお、以降S23までは特別アクセス手段32による処理となる。特別アクセス手段32は、S13で、テーブル中のアクセス対象のレコードをアクセスする。
S14で、アクセス対象のレコードにアクセス可能であったか判別する。該当レコードが全件コピー手段2によるテーブル切替処理や、他の業務プログラムからの更新系のアクセスでロックされているときは、アクセス不可能であるため(S14でNO),S15でアクセスの終了を待ち合わせ、S14に戻る。
一方、該当レコードが全件コピー手段2によるテーブル切替処理や、他の業務プログラムからの更新系のアクセスでロックされていないときは、アクセス可能であったため(S4でYES)、S16に進み、アクセスしたレコードの引継フラグが現用であるか判別する。引継フラグが待機である場合(S16のNO)、S17で待機テーブルの該当レコードにアクセスし、S18でアクセス可能であったか判別する。該当レコードが全件コピー手段2によるテーブル切替処理や、他の業務プログラムからの更新系のアクセスでロックされているときは、アクセス不可能であるため(S18でNO),S19でアクセスの終了を待ち合わせ、S18に戻る。
一方、該当レコードが全件コピー手段2によるテーブル切替処理や、他の業務プログラムからの更新系のアクセスでロックされていないときは、アクセス可能であったため(S18でYES),S20で業務プログラムの業務処理を行い、メモリテーブルアクセス処理を終了する。なお、業務プログラムが更新系のアクセスである場合には該当レコードがロックされることになる。
S16で引継フラグが現用である場合(S16のYES),S21で業務プログラムの業務処理を行い、S22で現用のテーブルのレコードデータを待機のテーブルのレコードへコピーし、S23で現用のテーブルのレコードの引継フラグを待機、待機レコードの引継フラグを現用へそれぞれ変更し、メモリテーブルアクセス処理を終了する。
以上によって、共有メモリ上のテーブルに業務プログラムからの最新データへのアクセスを妨げることなく、しかも、全体コピー手段2によるテーブル切替処理と重複することなしに、現用のテーブルから待機のテーブルへレコードをコピ−するため、テーブルの切替を迅速かつ効率的に実現することが可能となる。
(付記1)
連続運転するシステムで利用する共有メモリ上のテーブルを切り替えるテーブル切替プログラムであって、
コンピュータに、
共有メモリ上に常駐する、レコード毎に現用・待機を識別するための引継フラグを設けた現用のテーブルについて、当該共有メモリ上の待機のテーブルへの切替指示があったときに、該現用のテーブルのレコードの引継フラグが現用であるレコードを待機のテーブルにコピーして現用のテーブルのレコードの引継フラグを待機、待機のテーブルのレコードの引継フラグを現用に切り替えることを繰り返すコピーステップと、
業務プログラムからの前記テーブルのレコードへのアクセス要求に応じて、現用のテーブルのアクセス対象レコードの引継フラグが待機である場合、対応する待機のテーブルの引継フラグが現用であるレコードにアクセスする特別アクセスステップと
を実行させるテーブル切替プログラム。
(付記2)
前記特別アクセスステップは、更に、前記コピーステップ動作時、前記現用のテーブルの処理対象レコードの引継フラグが現用のときは当該レコードからデータを読み出して業務プログラムに渡すと共に待機のテーブルにコピーして引継フラグを現用に切り替え、現用のテーブルの該当レコードの引継フラグを待機に切り替えることを特徴とする付記1記載のテーブル切替プログラム。
(付記3)
前記現用のテーブルのレコードのフラグについて、全て待機となったときに、現用のテーブルと待機のテーブルとを切り替えることを特徴とする付記1あるいは付記2記載のテーブル切替プログラム。
(付記4)
連続運転するシステムで利用する共有メモリ上のテーブルを切り替えるテーブル切替システムにおいて、
共有メモリ上に常駐する、レコード毎に現用・待機を識別するための引継フラグを設けた現用のテーブルについて、当該共有メモリ上の待機のテーブルへの切替指示があったときに、該現用のテーブルのレコードの引継フラグが現用であるレコードを待機のテーブルにコピーして現用のテーブルのレコードの引継フラグを待機、待機のテーブルのレコードの引継フラグを現用に切り替えることを繰り返すコピー手段と、
業務プログラムからの前記テーブルのレコードへのアクセス要求に応じて、現用のテーブルのアクセス対象レコードの引継フラグが待機である場合、対応する待機のテーブルの引継フラグが現用であるレコードにアクセスする特別アクセスステップと
を備えたことを特徴とするテーブル切替システム。
本発明は、24時間連続運転中のシステムにおいて、テーブルの切替時に業務処理を止めずに常に最新のデータを用いて処理を継続することを可能とする。
本発明のシステム構成図である。 本発明の動作説明フローチャートである。 本発明の説明図である。 本発明の動作説明フローチャートである。
符号の説明
1:コンピュータ
2:全体コピー手段
3:共有メモリアクセス手段
31:通常アクセス手段
32:特別アクセス手段
4:共有メモリ
5:系フラグテーブル
6,7、6’、7’:テーブル
8:外部記憶装置
9:入力装置
10:出力装置

Claims (2)

  1. 業務プログラムで利用する共有メモリ上のテーブルを切り替えるテーブル切替プログラムであって、
    コンピュータに、
    共有メモリ上に常駐する、レコード毎に現用・待機を識別するための引継フラグを設けた現用のテーブルについて、待機のテーブルへの切替指示があったときに、該現用のテーブルのレコードを、前記待機のテーブルにコピーして、前記待機のテーブルの当該コピー先のレコードの引継フラグを現用に切り替え、前記現用のテーブルの当該コピー元のレコードの引継フラグを待機に切り替えるコピーステップと、
    前記業務プログラムからの前記テーブルのレコードへのアクセス要求に応じて、前記現用のテーブルの当該アクセス対象レコードの引継フラグが現用である場合には、前記現用のテーブルのアクセス対象レコードにアクセスして業務プログラムに渡すと共にその処理結果を前記待機のテーブルに書き込み、該待機のテーブルに書き込んだレコードの引継フラグを現用に切り替え、前記現用のテーブルの前記アクセス対象レコードの引継フラグを待機に切り替え、一方、前記現用のテーブルの前記アクセス対象レコードの引継フラグが待機である場合には、対応する待機のテーブルの引継フラグが現用であるレコードにアクセスする特別アクセスステップを実行させるテーブル切替プログラム。
  2. レコード毎に現用・待機を識別するための引継フラグを設けた現用のテーブルおよび待機のテーブルを記憶する共有メモリと、
    前記現用のテーブルについて、待機のテーブルへの切替指示があったときに、該現用のテーブルのレコードを、前記待機のテーブルにコピーして、前記待機のテーブルの当該コピー先のレコードの引継フラグを現用に切り替え、前記現用のテーブルの当該コピー元のレコードの引継フラグを待機に切り替えるコピー手段と、
    業務プログラムからの前記テーブルのレコードへのアクセス要求に応じて、前記現用のテーブルの当該アクセス対象レコードの引継フラグが現用である場合には、前記現用のテーブルのアクセス対象レコードにアクセスして業務プログラムに渡すと共にその処理結果を前記待機のテーブルに書き込み、該待機のテーブルに書き込んだレコードの引継フラグを現用に切り替え、前記現用のテーブルの前記アクセス対象レコードの引継フラグを待機に切り替え、一方、前記現用のテーブルの前記アクセス対象レコードの引継フラグが待機である場合には、対応する待機のテーブルの引継フラグが現用であるレコードにアクセスする特別アクセス手段と
    を備えたことを特徴とするコンピュータシステム。
JP2004355222A 2004-12-08 2004-12-08 テーブル切替プログラムおよびコンピュータシステム Expired - Fee Related JP4494950B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004355222A JP4494950B2 (ja) 2004-12-08 2004-12-08 テーブル切替プログラムおよびコンピュータシステム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004355222A JP4494950B2 (ja) 2004-12-08 2004-12-08 テーブル切替プログラムおよびコンピュータシステム

Publications (2)

Publication Number Publication Date
JP2006163895A JP2006163895A (ja) 2006-06-22
JP4494950B2 true JP4494950B2 (ja) 2010-06-30

Family

ID=36665838

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004355222A Expired - Fee Related JP4494950B2 (ja) 2004-12-08 2004-12-08 テーブル切替プログラムおよびコンピュータシステム

Country Status (1)

Country Link
JP (1) JP4494950B2 (ja)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001166974A (ja) * 1999-09-30 2001-06-22 Fujitsu Ltd 記憶装置のデータ領域間の複写処理方法、記憶システム、及びその記憶媒体
JP2002140315A (ja) * 2000-11-02 2002-05-17 Nec Soft Ltd 二重化マルチプロトコルスイッチ

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2643811B2 (ja) * 1993-11-29 1997-08-20 日本電気株式会社 データベース再編成方式
JPH1185576A (ja) * 1997-09-04 1999-03-30 Hitachi Ltd データ移行方法および情報処理システム

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001166974A (ja) * 1999-09-30 2001-06-22 Fujitsu Ltd 記憶装置のデータ領域間の複写処理方法、記憶システム、及びその記憶媒体
JP2002140315A (ja) * 2000-11-02 2002-05-17 Nec Soft Ltd 二重化マルチプロトコルスイッチ

Also Published As

Publication number Publication date
JP2006163895A (ja) 2006-06-22

Similar Documents

Publication Publication Date Title
JP4339371B2 (ja) 情報処理装置および情報処理方法
WO2004079583A1 (ja) データ転送制御装置およびdmaデータ転送制御方法
JP2010224845A (ja) ストレージ装置
JP4294059B2 (ja) 情報処理装置および情報処理方法
JP2006527874A5 (ja)
TWI359377B (en) System and method for providing execute-in-place f
JP5183448B2 (ja) 情報処理装置及び情報処理方法及びプログラム
KR101590764B1 (ko) 컴퓨팅 시스템 및 컴퓨팅 시스템의 메모리 관리 방법
JP4047281B2 (ja) キャッシュメモリをメインメモリに同期させる方法
US20070079109A1 (en) Simulation apparatus and simulation method
JP4494950B2 (ja) テーブル切替プログラムおよびコンピュータシステム
WO2019183849A1 (zh) 数据处理方法和设备
JP2007272675A (ja) スナップショット作成装置、方法、およびプログラム
JP2007286990A (ja) キャッシュメモリ装置及びそれに用いるキャッシュメモリ制御方法並びにそのプログラム
JP2006040065A (ja) データ記憶装置およびデータ記憶方法
JP2009199384A (ja) データ処理装置
JP2007122089A (ja) コンピュータシステム、それにおける基本プログラムの起動方法、及びローダプログラム
JP2004246787A (ja) 情報処理装置およびプログラム制御方法
JP2641399B2 (ja) フアイル管理装置
US7610200B2 (en) System and method for controlling sound data
JP2007179286A (ja) 記憶装置および情報処理装置
JPS6329861A (ja) Ipl制御方式
JPH02161514A (ja) 空き記憶ブロックの管理処理方式
CN114860724A (zh) 数据库共享内存缓冲池的处理方法、存储介质与设备
JP4785777B2 (ja) コンパイラ、コンパイル方法、およびコンピュータプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20071004

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090630

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090707

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090904

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20091020

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20091208

A911 Transfer of reconsideration by examiner before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20100127

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: 20100406

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100408

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130416

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140416

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees