JPH1165910A - コンピュータのファイル更新管理方法及びコンピュータのファイルシステムを記録した記録媒体 - Google Patents

コンピュータのファイル更新管理方法及びコンピュータのファイルシステムを記録した記録媒体

Info

Publication number
JPH1165910A
JPH1165910A JP9222590A JP22259097A JPH1165910A JP H1165910 A JPH1165910 A JP H1165910A JP 9222590 A JP9222590 A JP 9222590A JP 22259097 A JP22259097 A JP 22259097A JP H1165910 A JPH1165910 A JP H1165910A
Authority
JP
Japan
Prior art keywords
update
record
computer
time
file system
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.)
Pending
Application number
JP9222590A
Other languages
English (en)
Inventor
Akiko Ogura
晶子 小椋
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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP9222590A priority Critical patent/JPH1165910A/ja
Publication of JPH1165910A publication Critical patent/JPH1165910A/ja
Pending legal-status Critical Current

Links

Abstract

(57)【要約】 【課題】 複数プログラムからのレコードの同時更新に
よる不具合を確実に防止することによりデータの信頼性
を向上させるとともに、プログラムの同時実行性を保
つ。 【解決手段】 ファイルのレコード情報都市手更新日時
エリアをもち、レコード読み込み時に取得した更新日時
エリアの内容とレコード更新時の更新日時エリアの内容
を比較し、両者が等しい場合のみ他のプログラムでは更
新が行われていないと判断して更新を実行する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、ファイルシステム
におけるレコードの更新制御に関し、特に、複数のアプ
リケーションプログラム(以下プログラムと略記)が同
時に同一ファイルのレコードを読み出して更新を行う同
時更新の制御に関する。
【0002】
【従来の技術】複数のプログラムが同時に同一ファイル
のレコードを読み出して更新を行う際の同時更新による
不具合を防止する方法のひとつとして、従来よりレコー
ド排他制御が行われている(以下、従来例1と呼ぶ)。
【0003】従来例1の1例を挙げると、レコード読み
込み時に該当するレコードに対してロックを行い、レコ
ード更新が終了しロックが解除されるまで他のプログラ
ムからのアクセスを禁止するといった方法が行われてい
る。
【0004】同時更新による不具合を防止するためのも
う一つの方法として、複数項目から形成される一つのデ
ータを一項目から形成される複数レコードの集まりと考
えることにより真に必要な項目のみの更新を可能とする
方法がある(以下、従来例2と呼ぶ)。図6を参照して
従来例2の構成を説明する。
【0005】ここでは共用ファイルに対して複数コンピ
ュータからのアクセスを可能とするファイルシステムを
前提とする。図6において、10はホストコンピュー
タ、11はホストコンピュータが有している共用ファイ
ルである。この共用ファイルに格納されたレコードは端
末コンピュータ12、13の各プログラムA、Bにより
読み込みまたは更新が行われる。共用ファイル11内の
図はレコード構造を示したもので、一つのレコードは一
つの項目によって形成されており、項目データA1〜G
1が格納された一連の項目(レコード)を相互に関連す
るもの同士として一つのブロックにまとめるようにして
いる。
【0006】次に、従来例2の動作について説明する。
【0007】まず、端末コンピュータ12が共用ファイ
ルのあるブロック中の項目データ(レコード)A1をA
3に更新し、同時に端末コンピュータ13が同じブロッ
ク中の項目データ(レコード)B1をB3に更新する場
合を考える。
【0008】この場合、プログラムAはブロックを読み
出すことなく、また、ブロック中の他の項目データを上
書きすることもなく、A3のみを直接書き込むことがで
きる。プログラムBについても同様である。
【0009】その結果、ブロックの内容は「A3,B
3,C1,D1,E1,F1,G1」となり、このよう
な場合は同時更新を行っても無用な上書きが行われず不
具合は発生しない。
【0010】
【発明が解決しようとする課題】従来例1における問題
点について説明する。
【0011】第1の問題点は、レコード排他制御を使用
すると、複数のプログラムを同時に実行する際に制約が
生じることである。
【0012】その理由は、プログラムがレコード排他制
御を解除するまで他のプログラムからの排他制御による
アクセスは禁止されるからである。
【0013】第2の問題点は、レコードの同時更新を行
う可能性がある全てのプログラムにおいて意識的に排他
制御を使用しない限り、データの整合性は保たれないと
いうことである。
【0014】その理由は、一方のプログラムが排他制御
を使用してレコードにアクセスしている最中でも、他方
のプログラムが排他制御を使用しない場合読み込みに限
っては行うことができるので、せっかく排他制御を使用
してレコード更新を行っても排他制御を解除したあと更
新前の情報で再び上書きされる恐れがあるからである。
【0015】また、プログラムが同時更新を行う可能性
がないと判断した場合、データ処理速度の向上を考慮し
て排他制御を使用しないのが通例であるが、予期しない
タイミングで同時更新が発生する場合もある。このよう
な場合に一つのプログラムでも判断が誤っているとたち
まちデータの整合性が保たれずレコード排他制御の効力
は発揮できなくなる。
【0016】従来例2でも以下のような問題が発生す
る。
【0017】第1の問題点は、項目データの更新内容に
よっては同時更新による不具合が発生してしまうという
ことである。その理由は以下の通りである。
【0018】図6において、端末コンピュータ12、1
3がそれぞれA1をA3、B1をB3に更新する場合に
ついて説明したが、今度はどちらもデータC1が格納さ
れている項目Cを1加算した内容に更新する場合につい
て考える。ただしCは数値項目とする。
【0019】この場合、端末コンピュータ12、13か
らの更新終了後の項目Cの内容はC1に2を加算したも
のになっていることが要求される。この場合は従来の技
術で述べた場合と異なり、まず項目Cの内容を読み込む
ことが必要になる。プログラムAが項目Cの内容を読み
込んだ後、更新を行わないうちにプログラムBが同様に
項目Cの内容を読み込んだとする。その後にプログラム
Aが項目Cに1を加算した内容で更新を行い、次いで、
プログラムBが同様にして項目Cに1を加算した内容で
更新を行ったとする。すると、項目Cの内容はC1に1
を加算したものにしかならない。
【0020】このように、更新後の内容が更新前の内容
に依存するような場合については、この方法では同時更
新による不具合が発生してしまうという問題がある。
【0021】これまでは共用ファイルに対して複数コン
ピュータがアクセスする場合について説明してきたが、
マルチタスク機能を有する1台のコンピュータを使用
し、ディスク内の同一ファイルに対して複数プログラム
からアクセスする場合についても上記と同様の問題が発
生する。
【0022】本発明は、上記のような問題点を解消する
ためになされたものである。即ち、本発明が解決しよう
とする課題は、複数プログラムからのレコードの同時更
新による不具合をいかなる更新内容によっても防止する
ことによりデータの信頼性を向上させるとともに、プロ
グラムの同時実行性も保たれるようなファイルシステム
を提供することである。
【0023】
【課題を解決するための手段】この課題を解決するため
の手段として、ファイルのレコード情報として更新日時
エリア7(図2)を持ち、レコード読み込み時に取得し
た更新日時エリアの内容とレコード更新時の更新日時エ
リアの内容を比較し、両者が等しい場合のみ他のプログ
ラムでは更新が行われていないと判断して更新を実行す
ることを特徴とする。
【0024】本発明のファイルシステムにおいては、プ
ログラムからレコード読み込みの要求があるとデータを
読み出すとともに更新日時エリアの内容も取得してお
く。また、プログラムからレコード更新の要求があると
再度更新日時エリアの内容を取得し、読み込み時に取得
しておいた更新日時と再度取得した更新日時を比較す
る。両者が一致した場合のみ実際に更新が行われ、同時
に更新日時エリアを現在日時に更新する。そうでない場
合は他のプログラムから更新が行われたと判断し、更新
を中止する。
【0025】このようにファイルシステムにおいて常に
他のプログラムにより更新済みかどうかをチェックする
ので、プログラム側で意識することなく同時更新による
不具合が防止される。また、プログラムがレコードを読
み込み更新を行うまでの間であっても、他のプログラム
からの同一レコードのアクセスには特に制限はなく、従
来の排他制御ではレコードの読み込みから更新までの処
理時間が長くなるほど同時実行性が低下するのに対し
て、本発明の方法ではレコードの読み込みから更新まで
の処理時間が長くなると逆にその間に他のプログラムの
レコードの読み込み及び更新が成功する可能性が高くな
るため、プログラムの同時実行性も保つことができる。
【0026】
【発明の実施の形態】次に本発明の第1の実施の形態に
ついて図面を参照して説明する。
【0027】図1は第1の実施の形態のハードウェア及
びソフトウェア構成の概略を示したブロック図である。
ここではホストコンピュータ3を使用して、ホストコン
ピュータが有している共用フィル4に対して複数コンピ
ュータ1、2からアクセスを行うこととする。コンピュ
ータ1、2のプログラム5、6は本発明のファイルシス
テムに対してレコード読み込み、レコード更新など共用
ファイル4にアクセスするために必要な要求を行い、共
用ファイル4への実際のアクセスはファイルシステムが
行う。
【0028】図2は第1の実施の形態の共用ファイルの
レコード構造を示したものであり、各々のレコードはレ
コード情報として更新日時エリアをもっている。
【0029】次に、第1の実施の形態の動作を説明す
る。
【0030】図3、4はそれぞれ本発明のファイルシス
テムにおけるレコード読み込み時及びレコード更新時の
動作を示すフローチャートである。図中のST1〜ST
10は各ステップを示す。
【0031】図1において、プログラム5が共用ファイ
ルのレコードRの内容Dを読み込みD1に更新し、同時
にプログラム6が同じレコードRの内容を読み込みD2
に更新する場合を考える。
【0032】まず、プログラム5がファイルシステムに
対してレコードRの読み込み要求を行う。ファイルシス
テムはこの要求を受け取ると(ST1)、共用ファイル
4から要求に該当するレコードRを読みだし、データD
及びレコード情報の更新日時Tを取得し(ST2)、プ
ログラム5へ引き渡す(ST3)。次いで、プログラム
6も同様のステップを経て共用ファイルからレコードR
の内容Dを読み込む。その後、プログラム5が編集処理
を行いファイルシステムに対してレコードRの内容Dか
らD1への更新要求を行う。この時保存しておいた読み
込み時の更新日時Tも同時に引き渡す。ファイルシステ
ムはこの要求を受け取ると(ST4)、共用ファイル4
から再度レコードRのレコード情報の更新日時Tを取得
し(ST6)、プログラム5から受け取った読み込み時
の更新日時Tと比較する。この場合、両者は一致するの
で(ST7)、実際にレコードRへの書き出しを行い、
レコード情報の更新日時エリアを現在日時T1に更新す
る(ST9)。
【0033】続いて、プログラム6が編集処理を行いフ
ァイルシステムに対してレコードRの内容DからD2へ
の更新要求を行う。この時もプログラム5の場合と同様
保存しておいた読み込み時の更新日時Tも同時に引き渡
す。この要求を受け取ったファイルシステムはプログラ
ム5の場合と同様にして再度レコードRのレコード情報
の更新日時を取得するが、この値がT1であるためプロ
グラム6から受け取った読み込み時の更新日時Tと比較
すると一致しない(ST8)のでレコードRへの書き出
しを行わず、他のプログラムから更新が行われたことを
プログラム6に通知する(ST10)。通知を受け取っ
たプログラム6は再びレコードの読み込みから処理をや
り直すことになる。
【0034】ところで、レコードの更新処理において
は、他のプログラムにより更新が行われたかどうかに拘
らず、強制的にデータの上書きを行いたい場合がある。
そのような場合においても、第1の実施の形態によれば
容易に実現できる。
【0035】例えば、上記の動作説明において、プログ
ラム6が強制的にレコードRの内容をD2に変更したい
とする。この時、プログラム6がレコードRの更新要求
をファイルシステムに対して行う際、読み込み時に保存
しておいた更新日時Tの代わりに、強制書き込みを示す
初期値(例えば0)を引き渡すことにする。この要求を
受け取ったファイルシステムは更新日時の比較を行わ
ず、無条件にレコードRへの書き出しを行い、更新日時
エリアを現在日時に更新する(ST5)。この方法はレ
コードの読み込みを行わずに直接更新を行う場合にも用
いることができる。
【0036】また、レコードを新規追加する場合におい
ては、更新日時エリアとして現在日時を設定するように
する。
【0037】このように第1の実施の形態によれば、プ
ログラムが特に意識して強制書き込みの指定を行わない
限り、他のプログラムにより更新が行われたかどうかの
チェックが常に行われることになる。
【0038】次に、第2の実施の形態について図面を参
照して説明する。
【0039】第1の実施の形態では、ホストコンピュー
タが有している共用ファイルに対して複数コンピュータ
からアクセスを行う場合について述べたが、第2の実施
の形態では、図5のようにマルチタスク機能を有する1
台のコンピュータ8を使用し、ディスク内の同一ファイ
ル9に対して複数プログラムからアクセスする。第2の
実施の形態に対しても第1の実施の形態と同様の方法が
適用できるのは、当業者には明らかである。
【0040】以上、本発明を実施の形態に基づいて説明
したが、本発明はこれに限定されるものではなく、当業
者の通常の知識の範囲内でその変更や改良が可能である
ことは勿論である。
【0041】
【発明の効果】本発明の第1の効果は、複数プログラム
からのレコードの同時更新による不具合がいかなる更新
内容であっても確実に防止できて、データの信頼性が向
上するということである。
【0042】その理由は、プログラムが特に意識しない
限り、本発明のファイルシステムは常に他のプログラム
から更新が行われたかどうかのチェックを行っているか
らである。
【0043】また、特に強制的に更新を行う必要がある
時のみプログラムが意識して指定すればよく、その判断
は容易であるので、プログラム側での複雑な判断も必要
とせず、その結果同時更新による不具合も確実に防止で
きることになる。
【0044】本発明の第2の効果は、複数プログラムに
よるレコードの同時更新においてプログラムの同時実行
性が保たれるということである。
【0045】その理由は、本発明のファイルシステムに
おいてはプログラムがレコードを読み込み更新を行うま
での間であっても、他のプログラムからの同一レコード
のアクセスには特に制限はないため、レコードの読み込
みから更新までの処理時間が長くなってもその間に他の
プログラムのレコードの読み込み及び更新が成功する可
能性が高くなり、他のプログラムに与える影響も少ない
からである。
【図面の簡単な説明】
【図1】本発明の第1の実施の形態におけるハードウェ
ア及びソフトウェア構成の概略を示したブロック図であ
る。
【図2】本発明の第1の実施の形態における共用ファイ
ルのレコード構造を示した説明図である。
【図3】本発明の第1の実施の形態におけるレコード読
み込み時のファイルシステムの動作を示すフローチャー
トである。
【図4】本発明の第1の実施の形態におけるレコード更
新時のファイルシステムの動作を示すフローチャートで
ある。
【図5】本発明の第2の実施の形態を示すブロック図で
ある。
【図6】従来例における共用ファイルのレコード構造及
び動作を示した説明図である。
【符号の説明】
1、2、12、13 端末コンピュータ 3、10 ホストコンピュータ 4、11 共用ファイル 5、6 アプリケーションプログラム 7 レコード情報(更新日時エリア) 8 コンピュータ 9 ファイル

Claims (6)

    【特許請求の範囲】
  1. 【請求項1】 コンピュータのファイル更新管理方法に
    おいて、レコードの読み込み及び更新の日時を比較する
    段階と、日時が一致する場合は更新を実行し、一致しな
    い場合は更新を中止する段階とを含むことを特徴とする
    コンピュータのファイル更新管理方法。
  2. 【請求項2】 コンピュータのファイルシステムを記録
    したコンピュータ読取可能な記憶媒体において、前記フ
    ァイルシステムは、 レコード情報を格納する領域に日時を格納する更新日時
    領域を含み、 アプリケーションプログラムによるレコード読み込み時
    に前記更新日時領域に格納されている第1の日時を記憶
    する処理と、 前記アプリケーションプログラムによる該レコードに対
    するレコード更新の命令が発行された時に前記更新日時
    領域に格納されている第2の日時を記憶する処理と、 前記第1及び第2の日時を比較する処理と、 前記第1及び前記第2の日時が同じ場合、レコードの更
    新を実行するとともに前記更新日時領域の日時を前記第
    2の日時に更新し、前記第1及び第2の日時が異なる場
    合、レコードの更新を中止するとともに前記アプリケー
    ションプログラムにレコードの更新中止を通知する処理
    とをコンピュータに実行させることを特徴とするコンピ
    ュータのファイルシステムを記録した記録媒体。
  3. 【請求項3】 請求項2記載のコンピュータのファイル
    システムを記録した記録媒体において、前記ファイルシ
    ステムは共用ファイルに対して複数のコンピュータから
    のアクセスを可能とするファイルシステムであることを
    特徴とするコンピュータのファイルシステムを記録した
    記録媒体。
  4. 【請求項4】 請求項2記載のコンピュータのファイル
    システムを記録した記録媒体において、前記ファイルシ
    ステムはマルチタスク機能を有する1台のコンピュータ
    を使用し、外部記憶装置内の同一ファイルに対して複数
    のプログラムからのアクセスを可能とするファイルシス
    テムであることを特徴とするコンピュータのファイルシ
    ステムを記録した記録媒体。
  5. 【請求項5】 コンピュータのネットワークオペレーテ
    ィングシステムを記録したコンピュータ読取可能な記録
    媒体において、前記ネットワークオペレーティングシス
    テムは請求項2及び3のいずれかに記載のファイルシス
    テムを備えることを特徴とするコンピュータのネットワ
    ークオペレーティングシステムを記録した記録媒体。
  6. 【請求項6】 マルチタスク機能を有するオペレーティ
    ングシステムを記録したコンピュータ読取可能な記録媒
    体において、前記オペレーティングシステムは請求項2
    及び4のいずれかに記載のファイルシステムを備えるこ
    とを特徴とするマルチタスク機能を有するオペレーティ
    ングシステムを記録した記録媒体。
JP9222590A 1997-08-19 1997-08-19 コンピュータのファイル更新管理方法及びコンピュータのファイルシステムを記録した記録媒体 Pending JPH1165910A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP9222590A JPH1165910A (ja) 1997-08-19 1997-08-19 コンピュータのファイル更新管理方法及びコンピュータのファイルシステムを記録した記録媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP9222590A JPH1165910A (ja) 1997-08-19 1997-08-19 コンピュータのファイル更新管理方法及びコンピュータのファイルシステムを記録した記録媒体

Publications (1)

Publication Number Publication Date
JPH1165910A true JPH1165910A (ja) 1999-03-09

Family

ID=16784862

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9222590A Pending JPH1165910A (ja) 1997-08-19 1997-08-19 コンピュータのファイル更新管理方法及びコンピュータのファイルシステムを記録した記録媒体

Country Status (1)

Country Link
JP (1) JPH1165910A (ja)

Similar Documents

Publication Publication Date Title
US5241670A (en) Method and system for automated backup copy ordering in a time zero backup copy session
JP2643070B2 (ja) データのバックアップ・コピー中の同時アクセスの方法及びシステム
US20060123210A1 (en) Method for logically consistent backup of open computer files
HU224852B1 (en) Microprocessor-based computer system, method of operating it, and a backup system for it
US20100138391A1 (en) Management method, management program and management apparatus of database
JPH0679285B2 (ja) トランザクション処理方法およびシステム
US8380660B2 (en) Database system, database update method, database, and database update program
EP0710375A1 (en) File backup system
US9262433B2 (en) Virtualization of file input/output operations
KR100213849B1 (ko) 매체 저장 장치로의 액세스 제한 시스템 및 방법
JP2804974B2 (ja) 光磁気ディスクのデータ整合性を維持する方法および装置
JPH02148235A (ja) データ退避方式
JPH1165910A (ja) コンピュータのファイル更新管理方法及びコンピュータのファイルシステムを記録した記録媒体
JPH11212845A (ja) バックアップデータ管理装置、バックアップデータ管理方法、及び記録媒体
JP2002108673A (ja) 共有ファイルシステム及び同システムに適用されるメタデータサーバコンピュータ
JP2856003B2 (ja) 非同期データ入出力方式
JPH0235537A (ja) 多重化ボリューム更新制御方式
JP3133525B2 (ja) データバックアップシステム
JPH01255028A (ja) 外部記憶装置のアクセス方法
KR20230032654A (ko) 실행시간 백업 정보의 통합 관리 방법 및그 시스템
CA2153508C (en) A method of operating a computer system
JP2003186629A (ja) データコピーシステム
JP2913477B2 (ja) 制御装置
JPS6341149B2 (ja)
JP2000514211A (ja) コンピュータシステムの操作方法

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20001025