米国特許情報 | 欧州特許情報 | 国際公開(PCT)情報 | Google の米国特許検索
 
     特許分類
A 農業
B 衣類
C 家具
D 医学
E スポ−ツ;娯楽
F 加工処理操作
G 机上付属具
H 装飾
I 車両
J 包装;運搬
L 化学;冶金
M 繊維;紙;印刷
N 固定構造物
O 機械工学
P 武器
Q 照明
R 測定; 光学
S 写真;映画
T 計算機;電気通信
U 核技術
V 電気素子
W 発電
X 楽器;音響


  ホーム -> 計算機;電気通信 -> 日本電気株式会社

発明の名称 ファイル管理情報復元方式
発行国 日本国特許庁(JP)
公報種別 公開特許公報(A)
公開番号 特開平9−16451
公開日 平成9年(1997)1月17日
出願番号 特願平7−184677
出願日 平成7年(1995)6月28日
代理人 【弁理士】
【氏名又は名称】境 廣巳
発明者 渡▲辺▼ 理彦
要約 目的
索引ファイルのファイル管理情報をメインメモリに展開し、それを利用して索引ファイルをアクセスしている時に商用電源がダウンした場合、索引ファイルの実際の内容と整合するファイル管理情報を高速に復元する。

構成
索引ファイル5のファイルオープン時、ファイル管理情報展開手段9が、索引ファイル5のファイル管理情報4をバックアップメモリ13上に展開する。ファイル管理情報更新手段10は、索引ファイル5の更新時、必要に応じてバックアップメモリ13上に展開されているファイル管理情報4を更新する。復元手段14は、商用電源ダウン後の再立ち上げ時、バックアップメモリ13上に展開されているファイル管理情報及び索引ファイル5の内容に基づいてファイル管理情報4を実際の索引ファイル5の内容に整合したものにする。
特許請求の範囲
【請求項1】 索引ファイルのファイルオープン時に、前記索引ファイルを管理する、二次記憶装置に格納されているファイル管理情報をメインメモリ上に展開し、前記索引ファイルの更新時に、前記メインメモリ上に展開されているファイル管理情報を利用して前記索引ファイルを更新すると共に必要に応じて前記メインメモリ上に展開されているファイル管理情報を更新し、前記索引ファイルのファイルクローズ時に、前記メインメモリ上に展開されているファイル管理情報を前記二次記憶装置に書き戻すコンピュータシステムに於いて、バックアップメモリと、前記索引ファイルのファイルオープン時に、前記二次記憶装置に格納されているファイル管理情報を前記バックアップメモリ上に展開するファイル管理情報展開手段と、前記索引ファイルの更新時に、必要に応じて前記バックアップメモリ上に展開されているファイル更新情報を更新するファイル管理情報更新手段と、商用電源ダウン後の再立ち上げ時に、前記バックアップメモリ上に展開されているファイル管理情報と前記索引ファイルとの内容とに基づいて、前記索引ファイルの内容と整合するファイル管理情報を復元する復元手段とを備えたことを特徴とするファイル管理情報復元方式。
【請求項2】 索引ファイルのファイルオープン時、前記索引ファイルを管理する、二次記憶装置に格納されているファイル管理情報をメインメモリ上に展開し、前記索引ファイルの更新時、前記メインメモリ上に展開されているファイル管理情報を利用して前記索引ファイルを更新すると共に必要に応じて前記メインメモリ上に展開されているファイル管理情報を更新し、前記索引ファイルのファイルクローズ時、前記メインメモリ上に展開されているファイル管理情報を前記二次記憶装置に書き戻すコンピュータシステムに於いて、無停電電源装置と、該無停電電源装置がシステムパワーオフを検出した時、前記メインメモリ上に展開されているファイル管理情報を前記二次記憶装置に書き戻す書き戻し手段と、商用電源ダウン後の再立ち上げ時に、前記二次記憶装置に書き戻されたファイル管理情報と前記索引ファイルの内容とに基づいて、前記索引ファイルの内容と整合するファイル管理情報を復元する復元手段とを備えたことを特徴とするファイル管理情報復元方式。
【請求項3】 索引ファイルのファイルオープン時、前記索引ファイルを管理する、二次記憶装置に格納されているファイル管理情報をメインメモリ上に展開し、前記索引ファイルの更新時、前記メインメモリ上に展開されているファイル管理情報を利用して前記索引ファイルを更新すると共に必要に応じて前記メインメモリ上に展開されているファイル管理情報を更新し、前記索引ファイルのファイルクローズ時、前記メインメモリ上に展開されているファイル管理情報を前記二次記憶装置に書き戻すコンピュータシステムであって、少なくともバックアップメモリ或いは無停電電源装置の何れか一方を備えたコンピュータシステムに於いて、前記コンピュータシステムがバックアップメモリを備えている場合は前記索引ファイルのファイルオープン時に、前記二次記憶装置に格納されているファイル管理情報を前記バックアップメモリ上に展開するファイル管理情報展開手段と、前記コンピュータシステムがバックアップメモリを備えている場合は前記索引ファイルの更新時に、必要に応じて前記バックアップメモリ上に展開されているファイル管理情報を更新するファイル管理情報更新手段と、前記コンピュータシステムがバックアップメモリを備えていない場合は無停電電源装置がシステムパワーオフを検出した時、前記メインメモリ上に展開されているファイル管理情報を前記二次記憶装置に書き戻す書き戻し手段と、前記コンピュータシステムがバックアップメモリを備えている場合は、商用電源ダウン後の再立ち上げ時に前記バックアップメモリ上に展開されているファイル管理情報と前記索引ファイルの内容とに基づいて前記索引ファイルの内容と整合したファイル管理情報を復元し、前記コンピュータシステムがバックアップメモリを備えていない場合は、商用電源ダウン後の再立ち上げ時に前記書き戻し手段によって前記二次記憶装置に書き戻されたファイル管理情報と前記索引ファイルの内容とに基づいて前記索引ファイルの内容と整合したファイル管理情報を復元する復元手段とを備えたことを特徴とするファイル管理情報復元方式。
発明の詳細な説明
【0001】
【産業上の利用分野】本発明は索引ファイルのファイルオープン時に二次記憶装置に格納されているファイル管理情報をメインメモリ上に展開し、索引ファイルの更新時にメインメモリ上に展開されているファイル管理情報を利用して索引ファイルを更新すると共に必要に応じてメインメモリ上に展開されたファイル管理情報を更新し、ファイルクローズ時にメインメモリ上に展開されているファイル管理情報を二次記憶装置に書き戻すコンピュータに関し、特に、メインメモリ上に展開されたファイル管理情報を二次記憶装置に書き戻す前に、商用電源がダウンすることによりメインメモリ上に展開されているファイル管理情報が失われた場合に於いても索引ファイルの実際の内容と整合したファイル管理情報を復元することができるファイル管理情報復元方式に関する。
【0002】
【従来の技術】大容量でランダムアクセス可能な磁気ディスク装置等の二次記憶装置を有するコンピュータに於いて、索引アクセスを可能にするための索引部とレコードが格納されたデータ部とを備えたファイル(索引ファイル)をアクセスする場合、ファイルオープン時に、二次記憶装置に格納されているファイル管理情報(索引ファイルの開始アドレス,索引ファイルの終了アドレス,データ部の位置情報,第1レベルの索引ブロックのアドレス,削除レコード数等)をメインメモリ上に展開しておき、ファイルアクセス時にはメインメモリ上に展開されているファイル管理情報を利用して索引ファイルをアクセスすると共に、必要に応じてメインメモリ上に展開されているファイル管理情報を更新するということが従来から行われている。ここで、ファイル管理情報をメインメモリ上に展開するのは、アクセス処理を高速化するためである。また、ファイルクローズ時に、メインメモリ上に展開されたファイル管理情報を二次記憶装置に書き戻すということも従来から行われている(例えば、「NECオフィスプロセッサ A−VX10 データ管理説明書」,1991年10月第4版,P3,発行所 日本電気株式会社)。
【0003】ところで、索引ファイルの内容とファイル管理情報との整合性は、ファイルクローズ時にメインメモリ上に展開されているファイル管理情報を二次記憶装置に書き戻すことにより保つことができるが、メインメモリ上に展開されているファイル管理情報を二次記憶装置に書き戻す前に、商用電源がダウンすると、メインメモリ上に展開されているファイル管理情報が失われるため、索引ファイルの内容と整合するファイル管理情報が存在しなくなってしまう。
【0004】このような場合、従来は、索引ファイルに格納されているレコードを1件ずつ読み込んで索引部を1件ずつ組み立て、更に、組み立てた索引部の内容,読み込んだレコードの内容,レコードの存在する範囲等に基づいて、索引ファイルの内容と整合するファイル管理情報を復元するようにするか、或いは、索引ファイル中の全レコードを読み込んでソートし、ソート結果を用いて索引部を組み立て、更に、組み立てた索引部の内容,読み込んだレコードの内容,レコードの存在する範囲等に基づいて、索引ファイルの内容と整合するファイル管理情報を復元するようにしている。
【0005】例えば、ファイル管理情報中の第1レベルの索引ブロックのアドレスは索引部の内容に基づいて復元することができ、データ部の位置情報はレコードの存在する範囲に基づいて復元することができ、削除レコード数は読み込んだレコードの内容に基づいて復元することができる。尚、索引ファイルからレコードを読み込む際は、索引ファイルの実際の内容と整合がとれたファイル管理情報が存在しないので、データ部中のレコードと思われるものを全て読み込むようにしている。
【0006】
【発明が解決しようとする課題】上述したように、従来は、データ部中のレコードを1件ずつ読み込んで索引部を組み立てていくという処理であっても、データ部中のレコードを全件読み込んで、ソートの手法により索引部を生成するという処理であっても、データ部中の全てのレコードを1回は読み込まなければならないため、索引ファイルの内容と整合したファイル管理情報を復元するのに時間がかかるという問題があった。また、データ部中のレコードと思われるものを読み込んで、その内容及び存在範囲に基づいてファイル管理情報を復元するようにしているので、復元したファイル管理情報と索引ファイルの内容とが整合しない場合があるという問題もあった。
【0007】そこで、本発明の目的は、索引ファイルの実際の内容と整合するファイル管理情報を高速に復元することができるファイル管理情報復元方式を提供することにある。
【0008】
【課題を解決するための手段】本発明は上記目的を達成するため、索引ファイルのファイルオープン時に、前記索引ファイルを管理する、二次記憶装置に格納されているファイル管理情報をメインメモリ上に展開し、前記索引ファイルの更新時に、前記メインメモリ上に展開されているファイル管理情報を利用して前記索引ファイルを更新すると共に必要に応じて前記メインメモリ上に展開されているファイル管理情報を更新し、前記索引ファイルのファイルクローズ時に、前記メインメモリ上に展開されているファイル管理情報を前記二次記憶装置に書き戻すコンピュータシステムに於いて、バックアップメモリと、前記索引ファイルのファイルオープン時に、前記二次記憶装置に格納されているファイル管理情報を前記バックアップメモリ上に展開するファイル管理情報展開手段と、前記索引ファイルの更新時に、必要に応じて前記バックアップメモリ上に展開されているファイル更新情報を更新するファイル管理情報更新手段と、商用電源ダウン後の再立ち上げ時に、前記バックアップメモリ上に展開されているファイル管理情報と前記索引ファイルとの内容とに基づいて、前記索引ファイルの内容と整合するファイル管理情報を復元する復元手段とを備えている。
【0009】また、本発明は上記目的を達成するため、索引ファイルのファイルオープン時、前記索引ファイルを管理する、二次記憶装置に格納されているファイル管理情報をメインメモリ上に展開し、前記索引ファイルの更新時、前記メインメモリ上に展開されているファイル管理情報を利用して前記索引ファイルを更新すると共に必要に応じて前記メインメモリ上に展開されているファイル管理情報を更新し、前記索引ファイルのファイルクローズ時、前記メインメモリ上に展開されているファイル管理情報を前記二次記憶装置に書き戻すコンピュータシステムに於いて、無停電電源装置と、該無停電電源装置がシステムパワーオフを検出した時、前記メインメモリ上に展開されているファイル管理情報を前記二次記憶装置に書き戻す書き戻し手段と、商用電源ダウン後の再立ち上げ時に、前記二次記憶装置に書き戻されたファイル管理情報と前記索引ファイルの内容とに基づいて、前記索引ファイルの内容と整合するファイル管理情報を復元する復元手段とを備えている。
【0010】更に、本発明はコンピュータシステムがバックアップメモリ,無停電電源装置の両方を備えている場合であっても、何れか一方しか備えていない場合であっても、ファイル管理情報と索引ファイルとの整合性を保つことができるようにするため、索引ファイルのファイルオープン時、前記索引ファイルを管理する、二次記憶装置に格納されているファイル管理情報をメインメモリ上に展開し、前記索引ファイルの更新時、前記メインメモリ上に展開されているファイル管理情報を利用して前記索引ファイルを更新すると共に必要に応じて前記メインメモリ上に展開されているファイル管理情報を更新し、前記索引ファイルのファイルクローズ時、前記メインメモリ上に展開されているファイル管理情報を前記二次記憶装置に書き戻すコンピュータシステムであって、少なくともバックアップメモリ或いは無停電電源装置の何れか一方を備えたコンピュータシステムに於いて、前記コンピュータシステムがバックアップメモリを備えている場合は前記索引ファイルのファイルオープン時に、前記二次記憶装置に格納されているファイル管理情報を前記バックアップメモリ上に展開するファイル管理情報展開手段と、前記コンピュータシステムがバックアップメモリを備えている場合は前記索引ファイルの更新時に、必要に応じて前記バックアップメモリ上に展開されているファイル管理情報を更新するファイル管理情報更新手段と、前記コンピュータシステムがバックアップメモリを備えていない場合は無停電電源装置がシステムパワーオフを検出した時、前記メインメモリ上に展開されているファイル管理情報を前記二次記憶装置に書き戻す書き戻し手段と、前記コンピュータシステムがバックアップメモリを備えている場合は、商用電源ダウン後の再立ち上げ時に前記バックアップメモリ上に展開されているファイル管理情報と前記索引ファイルの内容とに基づいて前記索引ファイルの内容と整合したファイル管理情報を復元し、前記コンピュータシステムがバックアップメモリを備えていない場合は、商用電源ダウン後の再立ち上げ時に前記書き戻し手段によって前記二次記憶装置に書き戻されたファイル管理情報と前記索引ファイルの内容とに基づいて前記索引ファイルの内容と整合したファイル管理情報を復元する復元手段とを備えている。
【0011】
【作用】索引ファイルのファイルオープン時、ファイル管理情報展開手段がバックアップメモリに、二次記憶装置に格納されているファイル管理情報を展開し、索引ファイルの更新時、ファイル管理情報更新手段が必要に応じてバックアップメモリ上に展開されているファイル管理情報を更新する。また、復元手段は、商用電源ダウン後の再立ち上げ時に、バックアップメモリ上に展開されているファイル管理情報と索引ファイルの内容とに基づいて索引ファイルの内容とファイル管理情報とを整合させる。
【0012】
【実施例】次に本発明の実施例について図面を参照して詳細に説明する。
【0013】図1は本発明の実施例のブロック図であり、コンピュータシステムがバックアップメモリを備えている場合と、バックアップメモリは備えていないが無停電電源装置は備えている場合とで、処理を切り換えるようにした場合についてのものである。
【0014】図1に示すように、本実施例は、アプリケーションプログラム1と、ファイル制御手段2と、磁気ディスク装置等の二次記憶装置3と、メインメモリ6と、ファイル管理情報更新手段7と、ファイル管理情報入出力制御部8と、バックアップメモリ13と、復元手段14と、無停電電源装置15と、書き戻し指示手段16とを備えている。ファイル管理情報入出力制御部8は、ファイル管理情報展開手段9と、ファイル管理情報更新手段10と、書き戻し手段11と、入力手段12とを有している。尚、図1に於いては、バックアップメモリ13,無停電電源装置15の両方を備えている場合を示しているが、バックアップメモリ13,無停電電源装置15の両方を備えることは必ずしも必要ではなく、少なくとも何れか一方を備えていれば良い。
【0015】二次記憶装置3には、索引ファイル5と、索引ファイル5を管理するためのファイル管理情報4とが格納されている。索引ファイル5は、索引部51と、未使用領域52と、データ部53とから構成されている。
【0016】図2は索引ファイル5の内容例を示した図である。同図の例は、アドレス「A1」〜「A4」が索引部51に、アドレス「A5」〜「A100」が未使用領域52に、アドレス「A101」〜「A109」がデータ部53に割り当てられている状態を示している。そして、データ部53のアドレス「A101」,「A102」,…,「A109」にはキー値が「100」,「200」,…,「900」のレコードが格納され、索引部51の各アドレス「A1」〜「A4」にはそれぞれ索引エントリ数が3個の索引ブロック511〜514が格納されている。
【0017】各索引ブロック511〜514のレベルには、その索引ブロックが最下位レベルの索引ブロックである場合には80(16)が、最下位レベル以外の索引ブロックである場合には00(16)が、削除索引ブロックである場合にはFF(16)が設定される。
【0018】また、Pポインタには、その索引ブロックがレベル内の先頭の索引ブロックである場合にはFF(16)が、直前に索引ブロックが存在する場合にはそのアドレスが設定される。Nポインタには、その索引ブロックがレベル内の最終の索引ブロックである場合にはFF(16)が、直後に索引ブロックが存在する場合にはそのアドレスが設定される。
【0019】また、索引エントリには、その索引ブロックが最下位レベルの索引ブロックである場合にはレコードのキー値とそのレコードのアドレスとが設定され、最下位レベルの索引ブロックでない場合には、下位レベルの索引ブロックの最大キー値とアドレスとが設定される。
【0020】図3は第1レベルの索引ブロック511によって第2レベルの索引ブロック512〜514がポイントされ、第2レベルの索引ブロック512〜514によってデータ部53に格納されているキー値が「100」〜「900」のレコードがポイントされる様子を示した図である。
【0021】図4は索引ファイル5の内容が図2に示したものであるとしたときのファイル管理情報4の内容例を示した図であり、索引ファイル5の開始アドレス,終了アドレスとしてそれぞれ「A1」,「A109」が、未使用領域52の開始アドレス,終了アドレスとしてそれぞれ「A5」,「A100」が、削除索引ブロック開始アドレスとしてFF(16)が、削除索引ブロック数として0が、削除レコード開始アドレスとしてFF(16)が、削除レコード数として0が設定されている。ここで、削除索引ブロック,削除レコードが存在しない場合、削除索引ブロック開始アドレス,削除レコード開始アドレスには、図4に示すようにFF(16)が設定される。
【0022】ファイル制御手段2は、アプリケーションプログラム1から発行された命令によって指示された操作を索引ファイル5に対して行う機能,ファイルオープン時に二次記憶装置3に格納されているファイル管理情報4をメインメモリ6上に展開する機能,ファイルクローズ時にメインメモリ6上に展開されているファイル管理情報を二次記憶装置3に書き戻す機能,メインメモリ6上に展開されているファイル管理情報を更新することが必要になった場合、ファイル管理情報の変更を指示するファイル管理情報変更指示を出力する機能,ファイルオープン時にファイル管理情報入出力制御部8に対してファイル管理情報4を含むファイル管理情報展開指示を出力する機能等を有する。
【0023】ファイル管理情報更新手段7は、メインメモリ6上に展開されているファイル管理情報をファイル制御手段2からのファイル管理情報更新指示に従って更新する機能を有する。
【0024】無停電電源装置15は、コンピュータシステムの電源ダウン時に、コンピュータシステムの各部に電力を供給する機能,電力を供給できなくなる直前(例えば、3分前)の状態になったことを検出した時、即ちシステムパワーオフを検出した時、システムパワーオフ検出信号を出力する機能を有する。
【0025】書き戻し指示手段16は、無停電電源装置15からシステムパワーオフ検出信号が出力されることにより、書き戻し指示を出力する機能を有する。
【0026】ファイル管理情報展開手段9は、ファイル制御手段2からファイル管理情報展開指示が出力された時、コンピュータシステムがバックアップメモリを備えている場合は、バックアップメモリにファイル管理情報を展開する機能を有する。
【0027】ファイル管理情報更新手段10は、ファイル制御手段2からファイル管理情報更新指示が出力された時、コンピュータシステムがバックアップメモリを備えている場合はバックアップメモリに展開されているファイル管理情報をファイル管理情報更新指示に従って更新する機能を有する。
【0028】書き戻し手段11は、書き戻し指示手段16から書き戻し指示が出力された時、コンピュータシステムがバックアップメモリを備えていない場合は、メインメモリ6上に展開されているファイル管理情報を二次記憶装置3に書き戻す機能を有する。
【0029】入力手段12は、復元手段14からファイル管理情報の入力要求があった時、コンピュータシステムがバックアップメモリを備えている場合はバックアップメモリ上に展開されているファイル管理情報を復元手段14に渡し、バックアップメモリを備えていない場合は二次記憶装置3に格納されているファイル管理情報4を復元手段14に渡す機能を有する。
【0030】復元手段14は、商用電源ダウン後の再立ち上げ時、ファイル管理情報入出力制御部8に対してファイル管理情報の入力要求を行う機能,入力要求に応答してファイル管理情報入出力制御部8からファイル管理情報が渡されることによりそれと索引ファイル5の内容に基づいて索引ファイル5の内容と整合するファイル管理情報を復元する機能を有する。
【0031】次に本実施例の動作について説明する。
【0032】アプリケーションプログラム1は、索引ファイル5をアクセスする場合、それに先立ってファイルオープン命令を発行する。
【0033】ファイル制御手段2は、アプリケーションプログラム1がファイルオープン命令を発行すると、ファイルオープン処理を行う。その際、ファイル制御手段2は、二次記憶装置3に格納されているファイル管理情報4をメインメモリ6上に展開すると共に、ファイル管理情報入出力制御部8に対してファイル管理情報4を含むファイル管理情報展開指示を出力する。
【0034】ファイル管理情報入出力制御部8内のファイル管理情報展開手段9は、ファイル制御手段2からファイル管理情報展開指示が出力されると、図5の流れ図に示すように、コンピュータシステムがバックアップメモリを備えている場合に限り、ファイル制御手段2からのファイル管理情報展開指示に含まれているファイル管理情報をバックアップメモリに展開する(ステップS1,S2)。図1の例の場合、コンピュータシステムはバックアップメモリ13を備えているので、ファイル管理情報展開手段9は、バックアップメモリ13にファイル管理情報4を展開することになる。
【0035】ファイルオープン後、アプリケーションプログラム1から索引ファイル5のデータ部53を操作するための命令が発行されると、ファイル制御手段2は、メインメモリ6上に展開されているファイル管理情報4及び索引ファイル5の索引部51を利用してデータ部53に対して上記命令によって指定された操作を行う。更に、ファイル制御手段2は、データ部53を操作することにより索引部51を更新することが必要になった場合は、索引部51を更新し、メインメモリ6上に展開されているファイル管理情報4を更新することが必要になった場合は、更新内容を示すファイル管理情報更新指示を出力する。
【0036】今、例えば、索引ファイル5の内容が図2に示すものであり、且つメインメモリ6に展開されているファイル管理情報4が図4に示すものであるときに、アプリケーションプログラム1からキー値が「500」のレコードの読み取りを指示する命令が発行されたとすると、ファイル制御手段2は以下の処理を行う。
【0037】ファイル制御手段2は、上記命令が発行されると、先ず、メインメモリ6上に展開されているファイル管理情報4を参照し、第1レベルの索引ブロック511のアドレス「A1」を取得する。次いで、ファイル制御手段2は、アドレス「A1」に格納されている第1レベルの索引ブロック511、アドレス「A3」に格納されている第2レベル(最下位レベル)の索引ブロック513をたどることにより、キー値が「500」のレコードのアドレス「A105」を取得する。次いで、ファイル制御手段2は、アドレス「A105」に格納されているレコードを読み取り、アプリケーションプログラム1に渡す。
【0038】また、例えば、索引ファイル5の内容が図2に示すものであり、且つメインメモリ6に展開されているファイル管理情報4が図4に示すものであるときに、アプリケーションプログラム1からキー値が「500」のレコードの削除を指示する命令が発行されたとすると、以下の処理が行われる。
【0039】ファイル制御手段2は、上記命令が発行されると、前述したと同様にしてキー値が「500」のレコードが格納されているアドレス「A105」を取得する。次いで、ファイル制御手段2は、アドレス「A105」に格納されているレコードに、削除レコードであることを示すコードFF(16)及び削除レコードのチェインの最後のレコードであることを示すコードFF000(16)を設定する。
【0040】上記処理を行うことにより、索引部51及びメインメモリ6上に展開されているファイル管理情報4を更新することが必要になるので、ファイル制御手段2は、索引部51を更新すると共に、ファイル管理情報4の更新を指示するファイル管理情報更新指示を出力する。この例の場合は、ファイル制御手段2は、索引ブロック513中のキー値「500」のレコードをポイントする索引エントリを削除すると共に、削除レコード開始アドレスを「A105」に変更すること及び削除レコード数を「1」に更新することを指示するファイル管理情報更新指示を出力する。
【0041】また、例えば、索引ファイル5の内容が図2に示すものであり、且つメインメモリ6上に展開されているファイル管理情報4が図4に示すものであるとき、アプリケーションプログラム1からキー値が「450」のレコードの追加を指示する命令が発行されたとすると、以下の処理がファイル制御手段2に於いて行われる。
【0042】ファイル制御手段2は、上記命令が発行されると、先ず、メインメモリ6上に展開されたファイル管理情報4の削除レコード数に基づいて削除レコードが存在するか否かを判断する。そして、存在すると判断した場合は、削除レコード開始アドレスに設定されているアドレスに追加レコードを格納し、存在しないと判断した場合は、未使用領域終了アドレスに設定されているアドレスによって示される未使用領域52中の領域に追加レコードを格納する。この例の場合、削除レコードは存在しないので、ファイル制御手段2は、未使用領域終了アドレスに設定されているアドレス「A100」によって示される領域に追加レコードを格納する。上記処理を行うことより、索引部51及びメインメモリ6上に展開されているファイル管理情報4を更新することが必要になるので、ファイル制御手段2は、索引部51を更新すると共に、ファイル管理情報更新指示を出力する。
【0043】ファイル制御手段2からファイル管理情報更新指示が出力されると、ファイル管理情報更新手段7は、それに従ってメインメモリ6上に展開してあるファイル管理情報4を更新する。
【0044】また、ファイル制御手段2からファイル管理情報更新指示が出力されると、ファイル管理情報更新手段10は、図6の流れ図に示すように、コンピュータシステムがバックアップメモリを備えている場合のみ、バックアップメモリ上に展開されているファイル管理情報4をファイル管理情報更新指示に従って更新する(ステップS11,S12)。図1の例の場合、コンピュータシステムは、バックアップメモリ13を備えているので、バックアップメモリ13に展開されているファイル管理情報がファイル管理情報更新指示に従って更新される。
【0045】アプリケーションプログラム1は、索引ファイル5に対するアクセス処理が終了すると、ファイルクローズ命令を発行し、ファイル制御手段2は、ファイルクローズ命令が発行されると、ファイルクローズ処理を行うと共に、メインメモリ6上に展開されているファイル管理情報を二次記憶装置3に書き戻す。この処理により、二次記憶装置3上のファイル管理情報4と索引ファイル5の内容との整合性が保たれる。
【0046】しかし、メインメモリ6上に展開されているファイル管理情報を二次記憶装置3に書き戻す前に商用電源がダウンすると、二次記憶装置3上のファイル管理情報4と索引ファイル5との内容の整合性が保たれなくなってしまう。そこで、本実施例では、次のようにして整合性を保つようにしている。
【0047】電源ダウンが発生すると、無停電電源装置15が動作し、無停電電源装置15から供給される電力によってコンピュータシステムは処理を継続して行う。
【0048】その後、無停電電源装置15がシステムパワーオフ検出信号を出力すると、書き戻し指示手段16がファイル管理情報入出力制御部8に対して書き戻し指示を出力する。
【0049】この指示を受けると、書き戻し手段11は、コンピュータシステムがバックアップメモリを備えていない場合に限り、メインメモリ6上に展開されているファイル管理情報を二次記憶装置3に書き戻す。図1の例の場合、コンピュータシステムは、バックアップメモリ13を備えているので、メインメモリ6上に展開されているファイル管理情報が二次記憶装置3に書き戻されることはないが、若し、書き戻されたとすると、書き戻されたファイル管理情報4は索引ファイル5の内容とは整合しているか、不整合があったとしても高々1更新命令分である。
【0050】その後、コンピュータシステムが再立ち上げされると、復元手段14は、図7,図8の流れ図に示す処理を行う。
【0051】先ず、復元手段14は、ファイル管理情報入出力制御部8内の入力手段12に対してファイル管理情報の入力を要求する(ステップS21)。
【0052】入力手段12は、ファイル管理情報の入力が要求されると、コンピュータシステムがバックアップメモリを備えている場合は、バックアップメモリ13に展開されているファイル管理情報を復元手段14に渡し、バックアップメモリを備えていない場合は、書き戻し手段11によって二次記憶装置3に書き戻されたファイル管理情報4を復元手段14に渡す。図1の例の場合、コンピュータシステムは、バックアップメモリ13を備えているので、入力手段12は、バックアップメモリ13に展開されているファイル管理情報を復元手段14に渡す。ここで、バックアップメモリ13に展開されているファイル管理情報は、ファイル管理情報更新手段10によって更新が必要になる度に更新されているので、索引ファイル5の内容と整合しているか、不整合があったとしても高々1更新命令分である。
【0053】復元手段14は、入力手段12から渡されたファイル管理情報を入力すると(ステップS22)、入力手段12から渡されたファイル管理情報中の第1レベル索引ブロックアドレスが索引ファイル5の内容と整合しているか否かを判断する(ステップS23)。この判断は、第1レベル索引ブロックアドレスによってポイントされる索引ブロック中のPポインタ,Nポインタが共にFF(16)になっているか否かに基づいて判断する。
【0054】そして、整合していると判断した場合、即ちPポインタ,Nポインタが共にFF(16)である場合は、復元手段14はステップS26の処理を行う。また、整合していないと判断した場合は、索引部51をサーチしてPポインタ,Nポインタが共にFF(16)になっている索引ブロックのアドレスを求め(ステップS24)、二次記憶装置3に格納されているファイル管理情報4中の第1レベル索引ブロックアドレスをステップS24で求めたアドレスに更新し(ステップS25)、その後、ステップS26の処理を行う。
【0055】ステップS26では、復元手段14は、先ず、索引部51中の全ての索引ブロックのアドレスの内の最大アドレスを、第1レベルの索引ブロックから下位レベルの索引ブロックに向かって順番にたどることにより求め、二次記憶装置3に格納されているファイル管理情報4中の未使用領域開始アドレスを、求めた最大アドレスの次のアドレスに更新する。
【0056】次のステップS27では、二次記憶装置3に格納されているファイル管理情報4中の未使用領域終了アドレスと、未使用領域52の実際の終了アドレスとが整合しているか否かを判断する。ここで、未使用領域終了アドレスが整合しているか否かは、例えば、次のようにして判断する。先ず、ファイル管理情報4中の未使用領域終了アドレスに設定されているアドレスに従って、索引ファイル5からそのアドレスの内容を読み込む。次に読み込んだ内容中の、レコードのキー値に対応する部分を抽出する。その後、索引部51をサーチし、抽出したキー値とファイル管理情報4中の未使用領域終了アドレスとの組を含む索引エントリが存在するか否かを調べる。そして、存在する場合は整合していないと判断し、存在しない場合は整合していると判断する。
【0057】そして、整合していると判断した場合は、復元手段14は、図8のステップS29の処理を行う。また、整合していないと判断した場合は、二次記憶装置3に格納されているファイル管理情報4中の未使用領域終了アドレスを、1アドレス分前のアドレスに更新し(ステップS28)、その後、ステップS29の処理を行う。
【0058】ステップS29では、二次記憶装置3に格納されているファイル管理情報4中の削除索引ブロック数が実際の削除索引ブロック数と整合しているか否かを判断する。ここで、削除索引ブロック数が整合しているか否かは、例えば、次のようにして判断する。先ず、索引部51中の全ての索引ブロックを順次読み込み、レベルにFF(16)が設定されている削除索引ブロックの数をカウントする。次いで、カウント値とファイル管理情報4中の削除索引ブロック数とを比較し、一致している場合は整合していると判断し、一致していない場合は整合していないと判断する。
【0059】そして、ステップS29で整合していると判断した場合は、復元手段14はステップS32の処理を行う。また、整合していないと判断した場合は、ファイル管理情報4中の削除索引ブロック数を上記カウント値に更新し(ステップS30)、更に、索引部51中の削除索引ブロックのポインタのつなぎ替えを行い、ファイル管理情報4中の削除索引ブロック開始アドレスをポインタのつなぎ替え後の先頭の削除索引ブロックのアドレスに更新する(ステップS31)。
【0060】ステップS32では、二次記憶装置3に格納されているファイル管理情報4中の削除レコード数と実際の削除レコード数が整合しているか否かを判断する。ここで、削除レコード数が整合しているか否かは、例えば、次のようにして判断する。先ず、データ部53中の全てのレコードを順次読み込み、FF(16)が設定されている削除レコードの数をカウントする。次いで、カウント値とファイル管理情報4中の削除レコード数とを比較し、一致している場合は整合していると判断し、一致していない場合は整合していないと判断する。
【0061】そして、ステップS32に於いて整合していると判断した場合は、復元手段14はその処理を終了する。また、整合していないと判断した場合は、ファイル管理情報4中の削除レコード数を上記カウント値に更新し(ステップS33)、更に、データ部53中の削除レコードのポインタのつなぎ替えを行い、ファイル管理情報4中の削除レコード開始アドレスをポインタの付け替え後の先頭の削除レコードのアドレスに更新する(ステップS34)。
【0062】以上の処理を行うことにより、二次記憶装置3中のファイル管理情報4を索引ファイル5の内容と整合させることができる。また、復元手段14は、入力手段12から二次記憶装置3に格納されているファイル管理情報4が渡された場合も前述したと同様の処理を行う。この場合、入力手段12から渡されるファイル管理情報4は、メインメモリ6上に展開されているファイル管理情報を書き戻し手段11によって書き戻したものであり、索引ファイル5の内容と不整合があったとしても高々1更新命令分であるので、前述したと同様の処理を行うことにより、ファイル管理情報4と索引ファイル5の内容とを整合させることができる。
【0063】
【発明の効果】以上説明したように本発明は、ファイル管理情報をバックアップメモリにも展開しておき、ファイル管理情報を更新することが必要になった場合は、バックアップメモリに展開されているファイル管理情報を更新するようにしており、商用電源がダウンした場合に於いても、索引ファイルの内容と整合しているか、或いは不整合があったとしても高々1更新命令分の不整合しかないファイル管理情報がバックアップメモリに保存されるので、それに基づいて高速にファイル管理情報を復元できる効果がある。
【0064】また、本発明は、メインメモリ上に展開されているファイル管理情報を無停電電源装置がシステムパワーオフを検出した時、二次記憶装置に書き戻すようにしており、商用電源がダウンした場合に於いても、索引ファイルの内容と整合しているか、或いは不整合があったとしても高々1更新命令分の不整合しかないファイル管理情報が二次記憶装置に書き戻されるので、それに基づいて更新にファイル管理情報を復元できる効果がある。




 

 


     NEWS
会社検索順位 特許の出願数の順位が発表

URL変更
平成6年
平成7年
平成8年
平成9年
平成10年
平成11年
平成12年
平成13年


 
   お問い合わせ info@patentjp.com patentjp.com   Copyright 2007-2013