JP2003050731A - ファイルシステムアクセス方法及びその実施装置並びにその処理プログラム - Google Patents

ファイルシステムアクセス方法及びその実施装置並びにその処理プログラム

Info

Publication number
JP2003050731A
JP2003050731A JP2001237595A JP2001237595A JP2003050731A JP 2003050731 A JP2003050731 A JP 2003050731A JP 2001237595 A JP2001237595 A JP 2001237595A JP 2001237595 A JP2001237595 A JP 2001237595A JP 2003050731 A JP2003050731 A JP 2003050731A
Authority
JP
Japan
Prior art keywords
address
block
file system
file
data
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
JP2001237595A
Other languages
English (en)
Inventor
Kazunari Koyama
和成 小山
Hiroyuki Kumazaki
裕之 熊▲崎▼
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.)
Hitachi Software Engineering Co Ltd
Hitachi Ltd
Original Assignee
Hitachi Software Engineering Co Ltd
Hitachi 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 Hitachi Software Engineering Co Ltd, Hitachi Ltd filed Critical Hitachi Software Engineering Co Ltd
Priority to JP2001237595A priority Critical patent/JP2003050731A/ja
Publication of JP2003050731A publication Critical patent/JP2003050731A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

(57)【要約】 【課題】 ファイルシステムの整合性検証に要する時間
を短縮させることが可能な技術を提供する。 【解決手段】 記憶装置上に構築されたファイルシステ
ムへアクセスするファイルシステムアクセス方法におい
て、ファイルのデータが格納されるデータブロックをデ
ータブロック領域に割り当て、その割り当てたデータブ
ロックのアドレスをアドレスブロック領域のアドレスブ
ロックに格納するステップと、前記データブロックのア
ドレスが格納されたアドレスブロックの内容をアドレス
ブロック領域から読み込み、その読み込んだデータブロ
ックのアドレスを使ってファイルのアドレス情報の整合
性を検証するステップとを有するものである。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は磁気ディスクドライ
ブ等の外部記憶装置上のファイルシステムへアクセスす
る計算機システムに関し、特に格納するデータ種別毎の
ブロック領域をファイルシステムに設け同一種別のデー
タはその種別に対応するブロック領域のブロックとする
計算機システムに適用して有効な技術に関するものであ
る。
【0002】
【従来の技術】従来の計算機システムでは、磁気ディス
クドライブ等の外部記憶装置上にファイルシステムを作
成し、そのファイルシステム中のブロックにファイルの
データを格納している。
【0003】例えば「UNIX(登録商標) 4.3B
SD」のUNIXファイルシステムにおいては、外部記
憶装置(ディスク)はパーティションと呼ばれる1また
は複数の区分に分割されている。パーティションはただ
1つのファイルシステムを含むことができ、1つのファ
イルシステムが複数のパーティションにまたがることは
ない。そしてそのファイルシステムの中には1または複
数のファイルが存在している。
【0004】また、パーティションはシリンダグループ
と呼ばれる1または複数の領域に分割されている。シリ
ンダグループは当該シリンダグループに関する管理情
報、例えば当該シリンダグループ中の利用可能な物理ブ
ロック数等、を保持する管理領域を有している。
【0005】1つの物理ブロックは1つ以上の隣接する
セクタによって構成され、1つの論理ブロックは1つ以
上の物理ブロックから構成される。1つの物理ブロック
の内容はディスク上で隣接しているが、1つのファイル
を構成する物理ブロック同士は隣接しているとは限らな
い為、論理ブロックの内容はディスク上で隣接している
とは限らない。
【0006】また、1つのファイルを構成する物理ブロ
ックは複数のシリンダグループに存在し、1つのシリン
ダグループには複数のファイルが存在し得る。例えばフ
ァイルAを構成する3つの物理ブロックの内の2つ物理
ブロックがあるシリンダグループに存在し、残りの1つ
の物理ブロックが他のシリンダグループに存在したり、
それらのシリンダグループに他のファイルの物理ブロッ
クが存在していることもある。
【0007】ところで、「UNIX 4.3BSDの設
計と実装、中村明、相田仁、計宇生、小池汎平 共訳、
丸善株式会社、ISBN4-621-03607-6 C3055」の「7.2
ファイルシステム内部の概要」200ページから202
ページ「ディスク上のブロック割り当てと検索」による
と、UNIXファイルシステムのファイルは1または複
数のデータブロックと1または複数のアドレスブロック
(間接ブロック)から構成されている。データブロック
とはファイルのデータを格納するブロックで、アドレス
ブロックとはデータブロックのディスク上の物理的な配
置を示すアドレス情報を格納するブロックである。アド
レスブロックの位置はファイル毎に存在するファイル管
理テーブル(iノード)に格納されており、ファイルの
データにアクセスする時はまずファイル管理テーブルを
読んでアドレスブロックの位置を求め、次にそのアドレ
スブロックを読んでデータブロックの位置を求めてデー
タブロックにアクセスする。
【0008】また、「UNIX 4.3BSDの設計と
実装」の「7.4ファイルシステムのデータ構造」21
6ページから217ページ「ファイルブロックの割り当
て」によると、UNIXオペレーティングシステムはフ
ァイルに出力する際にアドレスブロックとデータブロッ
クを必要に応じて動的にその都度割り当てるが、このと
きデータブロックの割り当てとアドレスブロックの割り
当ては区別されることが無い為、同じ割り当て方式に基
づいて任意の未使用ブロックから割り当てられる。この
為、アドレスブロックとデータブロックとは混在した状
態でファイルシステム全体に渡って分散して配置されて
しまう。
【0009】オペレーティングシステムがファイルシス
テムへの出力処理中に異常終了した場合には、ファイル
システムのブロックの2重割り当てや空きブロックが割
り当て中の状態になる等の不整合がファイルシステムに
発生することがある。この為、異常終了した計算機シス
テムの再起動時には必ずファイルシステムの整合性検証
処理を実行する必要がある。
【0010】ファイルシステムの整合性検証処理では、
ブロック割り当ての不整合状態を検出する為にファイル
システムのアドレスブロックを全て読み込み、そこに格
納されているファイル毎のデータブロックの配置情報と
ファイルシステム全体のブロック使用情報を突き合わせ
てブロック割り当て状態の整合性を検証し、ブロックの
2重割り当てや空きブロックが割り当て中の状態になる
等の不整合状態を検出した場合はこれを修復する。
【0011】従来のブロック割り当て方式ではアドレス
ブロックはデータブロックと混在してファイルシステム
全体に渡って分散配置されている為、ファイルシステム
整合性検証処理では分散配置された個々のアドレスブロ
ックを一ブロックずつ読み込んでいた。
【0012】
【発明が解決しようとする課題】上記従来技術では、フ
ァイルシステムの整合性検証処理でアドレスブロックを
読み込む際に、アドレスブロックの入力がファイルシス
テムの全アドレスブロックの個数と等しい回数だけ実行
される。
【0013】外部記憶装置の入力処理は一般にトータル
で同じ量を入力する場合は一回の入力サイズが大きい方
が高速であり、更に同じ入力サイズでも分散したブロッ
クをランダムにアクセスするより連続するブロックをシ
ーケンシャルにアクセスする方が高速であるが、従来の
アドレスブロック入力処理では、ファイル管理テーブル
中に記録されたアドレスブロックの位置情報の順でアク
セスが行われる為、サイズの小さい入力がランダムアク
セスで実行されて入力性能が低下し、ファイルシステム
の整合性検証処理で非常に多くの時間がかかっていた。
【0014】本発明の目的は上記問題を解決し、ファイ
ルシステムの整合性検証に要する時間を短縮させること
が可能な技術を提供することにある。
【0015】
【課題を解決するための手段】本発明は、記憶装置上に
構築されたファイルシステムへアクセスする計算機シス
テムにおいて、アドレスブロック領域に格納されたデー
タブロックのアドレスを使ってファイルのアドレス情報
の整合性を検証するものである。
【0016】本発明の計算機システムでは、まずファイ
ルのデータを格納するデータブロックが割り当てられる
データブロック領域と、データブロックのアドレスを格
納するアドレスブロックが割り当てられるデータブロッ
ク領域とをファイルシステムに設けておく。
【0017】ファイルシステムに対してファイル出力処
理が行われると、そのファイルのデータが格納されるデ
ータブロックをデータブロック領域に割り当てた後、そ
の割り当てたデータブロックのアドレスをアドレスブロ
ック領域のアドレスブロックに格納し、そのファイルの
データを前記データブロックに格納する。
【0018】そしてオペレーティングシステムがファイ
ルシステムへの出力処理中に異常終了し、その計算機シ
ステムを再起動させた場合には、ファイルシステムの整
合性検証処理を開始し、前記データブロックのアドレス
が格納されたアドレスブロックの内容をアドレスブロッ
ク領域から読み込み、その読み込んだデータブロックの
内容を使ってファイルのアドレス情報の整合性を検証す
る。
【0019】前記の様に本発明では、データブロックの
アドレスをアドレスブロック領域に格納しており、アド
レスブロックはファイルシステム中に分散すること無く
アドレスブロック領域に局所化するので、ファイルシス
テムの整合性検証処理でアドレスブロックを読み込む際
にはこの局所化したアドレスブロックの入力を行うこと
となり、アドレスブロックの入力を効率化させてファイ
ルシステムの整合性検証に要する時間を短縮することが
可能である。
【0020】またアドレスブロック領域内の割り当て済
みアドレスブロックの配置を調べて、その配置が連続し
ていた場合には、割り当て済みの複数のアドレスブロッ
クをまとめて大きなサイズで読み込むことによりアドレ
スブロックの入力回数を減少させて入力性能を向上させ
るので、ファイルシステムの整合性検証に要する時間を
短縮することが可能である。
【0021】以上の様に本発明の計算機システムによれ
ば、アドレスブロック領域に格納されたデータブロック
のアドレスを使ってファイルのアドレス情報の整合性を
検証するので、ファイルシステムの整合性検証に要する
時間を短縮させることが可能である。
【0022】
【発明の実施の形態】以下に記憶装置上に構築されたフ
ァイルシステムへアクセスする一実施形態の計算機シス
テムについて説明する。
【0023】図1は本実施形態の計算機システムのシス
テム構成を示す図である。図1に示す様に本実施形態の
計算機11は、ブロック割り当て処理部2aと、ファイ
ルシステム整合性検証処理部5と、ファイルシステム作
成処理部13とを有している。
【0024】ブロック割り当て処理部2aは、ファイル
9のデータが格納されるデータブロックをデータブロッ
ク領域に割り当て、その割り当てたデータブロックのア
ドレスをアドレスブロック領域のアドレスブロックに格
納する処理部である。
【0025】ファイルシステム整合性検証処理部5は、
前記データブロックのアドレスが格納されたアドレスブ
ロックの内容をアドレスブロック領域から読み込み、そ
の読み込んだデータブロックのアドレスを使ってファイ
ル9のアドレス情報の整合性を検証する処理部である。
【0026】ファイルシステム作成処理部13は、ファ
イル9のデータが格納されるデータブロック領域と、デ
ータブロック領域に割り当てられたデータブロックのア
ドレスを格納するアドレスブロック領域とを有するファ
イルシステム8を作成する処理部である。
【0027】計算機11をブロック割り当て処理部2
a、ファイルシステム整合性検証処理部5及びファイル
システム作成処理部13として機能させる為のプログラ
ムは、CD−ROM等の記録媒体に記録され磁気ディス
ク等に格納された後、メモリにロードされて実行される
ものとする。なお前記プログラムを記録する記録媒体は
CD−ROM以外の他の記録媒体でも良い。また前記プ
ログラムを当該記録媒体から情報処理装置にインストー
ルして使用しても良いし、ネットワークを通じて当該記
録媒体にアクセスして前記プログラムを使用するものと
しても良い。
【0028】図1において、主記憶装置1は各種プログ
ラムやデータを格納する記憶装置であり、オペレーティ
ングシステム2、ブロック割り当て処理部2a、バッフ
ァキャッシュ3、ユーザプログラム4、ファイルシステ
ム整合性検証処理部5やファイルシステム作成処理部1
3はこの主記憶装置1に格納され、中央処理装置10に
より各処理を実行する。
【0029】外部記憶装置6のパーティション7にはフ
ァイルシステム8が作成され、オペレーティングシステ
ム2はユーザプログラム4からの要求を受けてファイル
システム8上に1または複数のファイル9を作成し、こ
れに対して入出力を実行する。
【0030】ユーザプログラム4がファイル9に対して
出力を実行する場合には、一旦オペレーティングシステ
ム2のバッファキャッシュ3に対して出力が実行され
る。バッファキャッシュ3に対する出力結果は、ユーザ
プログラム4の出力要求とは非同期にオペレーティング
システム2により後からファイルシステム8に出力され
る。
【0031】オペレーティングシステム2が異常終了し
た場合は、異常終了した時点のバッファキャッシュ3の
内容の内、ファイルシステム8に対してまだ出力されて
いない部分をファイルシステム8に反映する機会が無い
為、ファイルシステム8は不整合な状態となる。この様
な場合には次にオペレーティングシステム2が起動する
際に、ファイルシステム8の整合性を保証する為にファ
イルシステム整合性検証処理部5が実行される。
【0032】ファイルシステム整合性検証処理部5は、
ファイルシステム8のアドレスブロックの内容を読み込
み、アドレスブロックに格納されているデータブロック
の配置情報を基にしてファイルシステム8の整合性を検
査し、不整合が見つかった場合はこれを修復する。
【0033】図2は本実施形態のファイルシステム8の
構造を示す図である。図2に示す様に計算機11のファ
イルシステム作成処理部13は、ファイル9のデータが
格納されるデータブロック領域20と、データブロック
領域20に割り当てられたデータブロックのアドレスを
格納するアドレスブロック領域30とを有するファイル
システム8を作成する。
【0034】ファイルシステム8は、ファイルシステム
作成処理部13によって外部記憶装置6の1区分である
パーティション7上に作成される。UNIXファイルシ
ステムの場合、前述の様にファイルシステム8は更に1
または複数のシリンダグループ12に分割されている。
【0035】各シリンダグループ12は、各ファイル9
のデータを記録するデータブロック領域20と、当該フ
ァイル9に割り当てられたデータブロックのファイルシ
ステム8内の位置を示す情報であるアドレスを記録する
アドレスブロック領域30と、更にデータブロック領域
20やアドレスブロック領域30の使用/空き情報やフ
ァイル管理テーブル等のシリンダグループ12を管理す
るのに必要な情報を記録する領域である管理領域14と
から構成される。
【0036】従来のファイルシステム8ではデータブロ
ックもアドレスブロックも構造上は区別されることなく
管理されており、どちらもシリンダグループ12の単一
のブロック領域の空きブロックから割り当てられてい
た。
【0037】本実施形態のファイルシステム8では、シ
リンダグループ12のブロック領域をデータブロック領
域20とアドレスブロック領域30に分け、データブロ
ックはデータブロック領域20の空きブロックから、ア
ドレスブロックはアドレスブロック領域30の空きブロ
ックから優先的に割り当てられる。
【0038】データブロック領域20とアドレスブロッ
ク領域30はシリンダグループ12につき一つずつ存在
し、ファイルシステム8全体としてはシリンダグループ
12の個数と同じ数のデータブロック領域20とアドレ
スブロック領域30が作成される。
【0039】データブロック領域20とアドレスブロッ
ク領域30の比率やファイルシステム8に含まれるシリ
ンダグループ12の個数等は、システムの運用形態を考
慮して計算機システム管理者によって決定され、ファイ
ルシステム作成処理部13にパラメータとして渡され
る。ファイルシステム作成処理部13は、渡されたパラ
メータに従ってファイルシステム8を作成する。
【0040】図2の例ではファイルシステム8全体が2
個のシリンダグループ12に分割されており、それぞれ
が一つのデータブロック領域20と一つのアドレスブロ
ック領域30を含んでいる。
【0041】図3は本実施形態のファイル出力時のファ
イルシステム8のブロック割り当てを示す図である。フ
ァイルシステム作成処理部13によって作成された直後
のファイルシステム8は全てのブロックが空きブロック
であるが、オペレーティングシステム2によりファイル
9が作成されるとデータブロック領域20及びアドレス
ブロック領域30には使用中の割り当て済みブロックが
含まれる様になる。
【0042】ブロック201〜210はデータブロック
領域20に属する割り当て済みデータブロック、ブロッ
ク211〜215はデータブロック領域20に属する未
割り当てブロック、ブロック301〜305はアドレス
ブロック領域30に属する割り当て済みアドレスブロッ
ク、ブロック306〜310はアドレスブロック領域3
0に属する未割り当てブロックである。
【0043】図4は本実施形態のファイルシステム8に
出力する際のブロック割り当ての処理手順を示すフロー
チャートである。図4に示す様に計算機11のブロック
割り当て処理部2aは、ファイル9のデータが格納され
るデータブロックをデータブロック領域20に割り当
て、その割り当てたデータブロックのアドレスをアドレ
スブロック領域30のアドレスブロックに格納する処理
を行う。
【0044】ユーザプログラム4がオペレーティングシ
ステム2にファイル9へのデータの出力を要求すると、
ステップ31でオペレーティングシステム2のブロック
割り当て処理部2aは、管理領域14中のデータブロッ
ク領域20の割り当て済みデータブロックと未割り当て
ブロックを示すビットマップを参照してデータブロック
領域20から空きブロックを探し出し、データブロック
領域20に空きがある場合にはステップ32へ進む。
【0045】ステップ32では、ステップ31で見つか
った空きブロックをデータブロックとして割り当て、管
理領域14中のデータブロック領域20のビットマップ
内で前記割り当てられたデータブロックに対応するビッ
トマップ部分のビット情報を割り当て済みであることを
示すビット情報に更新する。
【0046】本実施形態のブロック割り当て処理部2a
は、データブロック領域20が複数ある場合、当該ファ
イル9に割り当て済みのデータブロックがあればこれと
同じデータブロック領域20のブロックを優先して割り
当て、割り当て済みのデータブロックと同じデータブロ
ック領域20に空きが無い場合、またはファイル9に割
り当て済みのデータブロックが無い場合は、空きブロッ
クの一番多いデータブロック領域20のブロックを割り
当てるものとする。
【0047】ステップ31で当該ファイルシステム8を
構成する全てのデータブロック領域20に空きブロック
が見つからない場合はステップ33へ進み、ステップ3
3では、管理領域14中のアドレスブロック領域30の
割り当て済みアドレスブロックと未割り当てブロックを
示すビットマップを参照してファイルシステム8を構成
するシリンダグループ12のアドレスブロック領域30
から空きブロックを探し出し、アドレスブロック領域3
0に空きがある場合にはステップ34へ進む。
【0048】ステップ34では、ステップ33で見つか
った空きブロックをデータブロック領域20に変更して
データブロックとして割り当て、管理領域14中のデー
タブロック領域20のビットマップ内で前記割り当てら
れたデータブロックに対応するビットマップ部分のビッ
ト情報を割り当て済みであることを示すビット情報に更
新する。
【0049】本実施形態のブロック割り当て処理部2a
は、アドレスブロック領域30が複数ある場合、空きブ
ロックの一番多いアドレスブロック領域30のブロック
を割り当てるものとする。なお、全てのアドレスブロッ
ク領域30に空きが無い場合は、ファイルシステム8に
空きブロックが一つも無い状態なのでファイル出力エラ
ーとなる。
【0050】次にステップ35でこのデータブロックの
アドレスを記録する為に他のデータブロックのアドレス
用に使用しているアドレスブロックに空きエントリが存
在するかどうかを判定し、空きエントリが存在する場合
はステップ36でこのアドレスブロックにアドレスを記
録し、空きエントリが存在しない場合はステップ37へ
進む。
【0051】ステップ37では、管理領域14中のアド
レスブロック領域30の割り当て済みデータブロックと
未割り当てブロックを示すビットマップを参照してアド
レスブロック領域30から空きブロックを探し出し、ア
ドレスブロック領域30に空きがある場合にはステップ
38へ進む。
【0052】ステップ38では、ステップ37で見つか
った空きブロックをアドレスブロックとして割り当て、
管理領域14中のアドレスブロック領域30のビットマ
ップ内で前記割り当てられたアドレスブロックに対応す
るビットマップ部分のビット情報を割り当て済みである
ことを示すビット情報に更新する。また前記割り当てら
れたアドレスブロックのアドレスを管理領域14のファ
イル管理テーブル中に格納する。
【0053】本実施形態のブロック割り当て処理部2a
は、アドレスブロック領域30が複数ある場合、このフ
ァイル9が登録されているファイル管理テーブルが存在
するシリンダグループ12のアドレスブロック領域30
を優先するものとする。
【0054】これはファイルシステム8の整合性チェッ
クにはファイル9のファイル管理テーブルの情報と当該
ファイル9のアドレスブロックの両方を使用する為、両
者が同じシリンダグループ12にあるとファイルシステ
ム8の整合性検証処理が高速に実行できる為である。
【0055】ファイル9が登録されているファイル管理
テーブルが存在するシリンダグループ12のアドレスブ
ロック領域30に空きが無い場合は空きブロックの一番
多いアドレスブロック領域30のブロックを割り当て
る。
【0056】アドレスブロック領域30からアドレスブ
ロックを割り当てる場合は、割り当て済みのアドレスブ
ロックと連続する様な空きブロックを優先する様にす
る。例えばアドレスブロック領域30中の空きブロック
が割り当て済みアドレスブロックの途中に存在している
場合にはその空きブロックの割り当てを優先し、割り当
て済みアドレスブロックの途中に空きブロックが存在し
ていない場合には、最後尾の割り当て済みアドレスブロ
ックの次に存在している空きブロックを優先する。これ
はアドレスブロックが連続していればファイルシステム
8の整合性検証処理で連続した複数のアドレスブロック
を一括して読み込んで高速に実行できる為である。
【0057】ステップ37でアドレスブロック領域30
に空きブロックが見つからない場合はステップ39へ進
み、ステップ39では、管理領域14中のデータブロッ
ク領域20の割り当て済みアドレスブロックと未割り当
てブロックを示すビットマップを参照してデータブロッ
ク領域20から空きブロックを探し出し、データブロッ
ク領域20に空きがある場合にはステップ39へ進む。
【0058】ステップ39では、ステップ38で見つか
った空きブロックをアドレスブロック領域30に変更し
てアドレスブロックとして割り当て、管理領域14中の
アドレスブロック領域30のビットマップ内で前記割り
当てられたアドレスブロックに対応するビットマップ部
分のビット情報を割り当て済みであることを示すビット
情報に更新する。また前記割り当てられたアドレスブロ
ックのアドレスを管理領域14のファイル管理テーブル
中に格納する。
【0059】本実施形態のブロック割り当て処理部2a
は、データブロック領域20が複数ある場合、空きブロ
ックの一番多いデータブロック領域20のブロックを割
り当てるものとする。
【0060】データブロック領域20にも空きブロック
が見つからない場合は、ファイルシステム8に空きブロ
ックが一つも無い状態なのでファイル出力エラーとな
る。
【0061】ステップ41では、前記割り当てたアドレ
スブロックにデータブロックのアドレスを記録し、デー
タをデータブロックに出力する。これらの出力処理は、
一旦バッファキャッシュ3に対して行われ、バッファキ
ャッシュ3に対する出力結果は、ユーザプログラム4の
出力要求とは非同期でオペレーティングシステム2によ
りファイルシステム8へ出力される。
【0062】本実施形態の計算機11において、オペレ
ーティングシステム2がファイルシステム8への出力処
理中に異常終了し、その計算機11を再起動させた場合
には、ファイルシステム8の整合性検証処理を開始し、
前記データブロックのアドレスが格納された全てのアド
レスブロックの内容をアドレスブロック領域から読み込
み、その読み込んだデータブロックのアドレスを使って
ファイル9のアドレス情報の整合性を検証する。
【0063】図5は本実施形態のファイルシステム8の
整合性検証処理の処理手順を示すフローチャートであ
る。図5に示す様に計算機11のファイルシステム整合
性検証処理部5は、前記データブロックのアドレスが格
納された全てのアドレスブロックの内容をアドレスブロ
ック領域30から読み込み、その読み込んだデータブロ
ックのアドレスを使ってファイル9のアドレス情報の整
合性を検証する処理を行う。
【0064】まずステップ51でファイルシステム整合
性検証処理部5は、ファイルシステム8のシリンダグル
ープ12毎に整合性検証を実行する。まずシリンダグル
ープ12の管理領域14中のアドレスブロック領域30
のビットマップを読み込んで、このシリンダグループ1
2に属するアドレスブロックの配置を調べる。
【0065】次にステップ52では、このシリンダグル
ープ12に属する割り当て済みのアドレスブロックを全
て読み込み、主記憶装置1に格納する。このとき、アド
レスブロックが連続している部分(例えばブロック30
1〜ブロック305)をまとめて読み込む。アドレスブ
ロックは割り当ての際にアドレスブロック領域30内に
可能な限り連続する様に割り当てられている為、アドレ
スブロックの割り当て済み領域全体を少ない入力回数で
高速に読み込むことが可能である。
【0066】次にステップ53では、前記読み込んだア
ドレスブロックの内容とファイル管理テーブルの内容と
を比較してファイル9のアドレス情報の整合性を検証す
る。シリンダグループ12が複数ある場合は全てのシリ
ンダグループ12について(ステップ51)〜(ステッ
プ53)の処理を繰り返す(ステップ54)。
【0067】前記の様に本実施形態では、データブロッ
クのアドレスをアドレスブロック領域30に格納してお
り、アドレスブロックはファイルシステム8中に分散す
ること無くアドレスブロック領域30に局所化するの
で、ファイルシステム8の整合性検証処理でアドレスブ
ロックを読み込む際にはこの局所化したアドレスブロッ
クの入力を行うこととなり、アドレスブロックの入力を
効率化させてファイルシステム8の整合性検証に要する
時間を短縮することが可能である。
【0068】またアドレスブロック領域30内の割り当
て済みアドレスブロックの配置を調べて、その配置が連
続していた場合には、割り当て済みの複数のアドレスブ
ロックをまとめて大きなサイズで読み込むことによりア
ドレスブロックの入力回数を減少させて入力性能を向上
させるので、ファイルシステム8の整合性検証に要する
時間を短縮することが可能である。
【0069】また本実施形態において、データブロック
領域20に空きブロックが見つからない場合はアドレス
ブロック領域30の空き領域をデータブロック領域20
に変更し、アドレスブロック領域30に空きブロックが
見つからない場合はデータブロック領域20の空き領域
をアドレスブロック領域30に変更するので、ファイル
システム作成処理で作成されたデータブロック領域20
とアドレスブロック領域30の比率を運用中に最適な値
に変更することができる。
【0070】以上説明した様に本実施形態の計算機シス
テムによれば、アドレスブロック領域に格納されたデー
タブロックのアドレスを使ってファイルのアドレス情報
の整合性を検証するので、ファイルシステムの整合性検
証に要する時間を短縮させることが可能である。
【0071】
【発明の効果】本発明によればアドレスブロック領域に
格納されたデータブロックのアドレスを使ってファイル
のアドレス情報の整合性を検証するので、ファイルシス
テムの整合性検証に要する時間を短縮させることが可能
である。
【図面の簡単な説明】
【図1】本実施形態の計算機システムのシステム構成を
示す図である。
【図2】本実施形態のファイルシステム8の構造を示す
図である。
【図3】本実施形態のファイル出力時のファイルシステ
ム8のブロック割り当てを示す図である。
【図4】本実施形態のファイルシステム8に出力する際
のブロック割り当ての処理手順を示すフローチャートで
ある。
【図5】本実施形態のファイルシステム8の整合性検証
処理の処理手順を示すフローチャートである。
【符号の説明】
11…計算機、10…中央処理装置、1…主記憶装置、
2…オペレーティングシステム、3…バッファキャッシ
ュ、4…ユーザプログラム、6…外部記憶装置、7…パ
ーティション、8…ファイルシステム、9…ファイル、
2a…ブロック割り当て処理部、5…ファイルシステム
整合性検証処理部、13…ファイルシステム作成処理
部、12…シリンダグループ、14…管理領域、20…
データブロック領域、30…アドレスブロック領域、2
01〜210…ブロック、211〜215…ブロック、
301〜305…ブロック、306〜310…ブロッ
ク。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 小山 和成 神奈川県横浜市中区尾上町6丁目81番地 日立ソフトウエアエンジニアリング株式会 社内 (72)発明者 熊▲崎▼ 裕之 神奈川県横浜市戸塚区戸塚町5030番地 株 式会社日立製作所ソフトウェア事業部内 Fターム(参考) 5B082 FA01 GB06

Claims (5)

    【特許請求の範囲】
  1. 【請求項1】 記憶装置上に構築されたファイルシステ
    ムへアクセスするファイルシステムアクセス方法におい
    て、 ファイルのデータが格納されるデータブロックをデータ
    ブロック領域に割り当て、その割り当てたデータブロッ
    クのアドレスをアドレスブロック領域のアドレスブロッ
    クに格納するステップと、 前記データブロックのアドレスが格納されたアドレスブ
    ロックの内容をアドレスブロック領域から読み込み、そ
    の読み込んだデータブロックのアドレスを使ってファイ
    ルのアドレス情報の整合性を検証するステップとを有す
    ることを特徴とするファイルシステムアクセス方法。
  2. 【請求項2】 アドレスブロック領域にアドレスブロッ
    クを割り当てる際に、割り当て済みのアドレスブロック
    と連続する空きブロックを優先して割り当てることを特
    徴とする請求項1に記載されたファイルシステムアクセ
    ス方法。
  3. 【請求項3】 前記アドレスブロックの内容をアドレス
    ブロック領域から読み込む際に、連続して配置されてい
    る複数のアドレスブロックの内容をアドレスブロック領
    域からまとめて読み込むことを特徴とする請求項1また
    は請求項2のいずれかに記載されたファイルシステムア
    クセス方法。
  4. 【請求項4】 記憶装置上に構築されたファイルシステ
    ムへアクセスする計算機システムにおいて、 ファイルのデータが格納されるデータブロックをデータ
    ブロック領域に割り当て、その割り当てたデータブロッ
    クのアドレスをアドレスブロック領域のアドレスブロッ
    クに格納するブロック割り当て処理部と、 前記データブロックのアドレスが格納されたアドレスブ
    ロックの内容をアドレスブロック領域から読み込み、そ
    の読み込んだデータブロックのアドレスを使ってファイ
    ルのアドレス情報の整合性を検証する整合性検証処理部
    とを備えることを特徴とする計算機システム。
  5. 【請求項5】 記憶装置上に構築されたファイルシステ
    ムへアクセスする計算機システムとしてコンピュータを
    機能させる為のプログラムにおいて、 ファイルのデータが格納されるデータブロックをデータ
    ブロック領域に割り当て、その割り当てたデータブロッ
    クのアドレスをアドレスブロック領域のアドレスブロッ
    クに格納するブロック割り当て処理部と、 前記データブロックのアドレスが格納されたアドレスブ
    ロックの内容をアドレスブロック領域から読み込み、そ
    の読み込んだデータブロックのアドレスを使ってファイ
    ルのアドレス情報の整合性を検証する整合性検証処理部
    としてコンピュータを機能させることを特徴とするプロ
    グラム。
JP2001237595A 2001-08-06 2001-08-06 ファイルシステムアクセス方法及びその実施装置並びにその処理プログラム Pending JP2003050731A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001237595A JP2003050731A (ja) 2001-08-06 2001-08-06 ファイルシステムアクセス方法及びその実施装置並びにその処理プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001237595A JP2003050731A (ja) 2001-08-06 2001-08-06 ファイルシステムアクセス方法及びその実施装置並びにその処理プログラム

Publications (1)

Publication Number Publication Date
JP2003050731A true JP2003050731A (ja) 2003-02-21

Family

ID=19068654

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001237595A Pending JP2003050731A (ja) 2001-08-06 2001-08-06 ファイルシステムアクセス方法及びその実施装置並びにその処理プログラム

Country Status (1)

Country Link
JP (1) JP2003050731A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10098665B2 (en) 2012-08-01 2018-10-16 DePuy Synthes Products, Inc. Spine derotation system

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10098665B2 (en) 2012-08-01 2018-10-16 DePuy Synthes Products, Inc. Spine derotation system

Similar Documents

Publication Publication Date Title
US7197598B2 (en) Apparatus and method for file level striping
US9785370B2 (en) Method and system for automatically preserving persistent storage
US5930828A (en) Real-time apparatus and method for minimizing disk fragmentation in a computer system
US6542960B1 (en) System and method for parity caching based on stripe locking in raid data storage
JP4571992B2 (ja) プログラム・コードを論理ディスクにインストールして最適化する方法
US9405487B2 (en) Media aware distributed data layout
JP5663585B2 (ja) 効率的なファイル保存のための複数のインデックスを有する重複排除ストレージシステム
US20030051117A1 (en) Method and apparatus for extending a file size beyond a file size limitation
US7805469B1 (en) Method and apparatus for splitting and merging file systems
TW201025114A (en) File system for storage device which uses different cluster sizes
US7085907B2 (en) Dynamic reconfiguration of memory in a multi-cluster storage control unit
US6591356B2 (en) Cluster buster
KR20010007111A (ko) 데이터 프로세서 제어형 데이터 저장 시스템, 동적재동기화 방법 및 컴퓨터 프로그램
CN103617133B (zh) 一种Windows系统中虚拟内存压缩方法和装置
JP4308152B2 (ja) メモリを予約するための方法、システム、および製品
US20100138406A1 (en) File access method and system
US8589652B2 (en) Reorganization of a fragmented directory of a storage data structure comprised of the fragmented directory and members
US7103739B2 (en) Method and apparatus for providing hardware aware logical volume mirrors
US11226769B2 (en) Large-scale storage system and data placement method in large-scale storage system
JP2003050731A (ja) ファイルシステムアクセス方法及びその実施装置並びにその処理プログラム
US20040078519A1 (en) Data reorganization method in a RAID striping system
JP2912221B2 (ja) 分散ネットワーク化ストライプド・ファイルシステム
JPH1021123A (ja) 情報処理装置
JPH0869399A (ja) ファイル管理装置
JP3206580B2 (ja) Dmaデータ転送制御方法及び入出力処理装置