JPWO2002056179A1 - 仮想ドライブを使用したパーティションの再生成方法、データ処理装置及びデータ記憶装置 - Google Patents
仮想ドライブを使用したパーティションの再生成方法、データ処理装置及びデータ記憶装置 Download PDFInfo
- Publication number
- JPWO2002056179A1 JPWO2002056179A1 JP2002556369A JP2002556369A JPWO2002056179A1 JP WO2002056179 A1 JPWO2002056179 A1 JP WO2002056179A1 JP 2002556369 A JP2002556369 A JP 2002556369A JP 2002556369 A JP2002556369 A JP 2002556369A JP WO2002056179 A1 JPWO2002056179 A1 JP WO2002056179A1
- Authority
- JP
- Japan
- Prior art keywords
- partition
- file
- new
- virtual drive
- physical
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0662—Virtualisation aspects
- G06F3/0664—Virtualisation aspects at device level, e.g. emulation of a storage device or system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/0644—Management of space entities, e.g. partitions, extents, pools
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0674—Disk device
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
- G06F9/5077—Logical partitioning of resources; Management or configuration of virtualized resources
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F2003/0697—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers device management, e.g. handlers, drivers, I/O schedulers
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
外部記憶装置における物理セクタに基づいたパーティションを単位として分割管理を行うオペレーティングシステムにおいて、前記パーティションを任意のサイズに変更する工程と、前記オペレーティングシステムに予め備えられた標準の手段により前記変更後のパーティションを新規のパーティションとして作成する工程と、前記新規のパーティションの作成情報に基づいて、前記パーティションの全てのデータの新たな物理的位置を決定する工程と、前記新たな物理的位置に基づいて置換すべき物理セクタの位置を得て、元の位置情報と新たな位置情報との差異情報を生成する工程と、の各工程によって新たな仮想ドライブ(パーティション)を生成する。
Description
技術分野
稼動中のコンピュータのディスク装置上に既に確保されているパーティションを変更するために、内容を維持したまま、新規パーティションとしてディスク上の新たな位置に形成された仮想ドライブを使用したパーティションの再生成方法及び装置に関する。
背景技術
一般に、データベース等の情報を蓄積するハードディスクの管理は、オペレーティングシステムで行われている。このハードディスクを使用したアプリケーションプログラムにおいて、特定のハードディスクへのアクセスが偏っている場合は、システムで期待する性能が十分発揮されない。この偏りを解消するためには、アプリケーションプログラムで使用するハードディスクのパーティション構成を変更しなければならない。ハードディスクのパーティション構成の変更は、使用するハードディスクのパーティション構成を変更した後データベースの再構築を行い、さらにシステム構成の登録を変更する必要がある。
このように、従来の手法では、通常オペレーションシステムが提供しない、パーティション内のファイルシステムの実装についての知識を得ることが不可欠である。すなわち本来オペレーティングシステムが管理している外部記憶装置に対して、オペレーティングシステムとは別個に、ファイルシステム毎に新規にファイルそのものを解析し、ファイルを直接操作するための技術開発を行う必要がある。
また、一般的なコンピュータとその上で動作する従来のソフトウエア動作概念では、パーティション内部情報を直接取得して、編集変更するというものである。本発明と類似している従来技術として特表平10−512379では、パーティションとファイルシステムの構造に着目し、その内部構造に沿って、空き領域を確保しパーティション情報を書き換えることで、サイズの変更その他の処理を行っている。すなわち検証、サイズ変更等は、実装の際に必然的に要請される設計上の問題であって、特定のファイルシステムに依存しており、またファイルシステム上でのデータの配置などに依存している。
発明の開示
これまで述べてきたように、ハードディスクのパーティション構成を変更するためには、次のような問題点がある。パーティションの構成変更のためには、他社の開発したオペレーティングシステムの内部に関連した情報を解析し、その結果判明した問題を解決するために、オペレーティングシステムを直接操作するための新規技術開発を行う必要がある。さらに、例え,同一のオペレーションシステムが提供するファイルシステムであっても、オペレーティングシステム更新時には、新たに別個のものとして新規技術開発を行う必要がある。
さらに、新規開発による機能そのものが、理論的にオペレーティングシステムの提供する機能とは実装が異なるため、重大な非互換性が生じる可能性がある。
このように、従来のシステムにおいては、与えられたファイルシステムの各々に対して、新規の開発が必要である。そして、これらの開発作業の重複は、互換性の問題のみならず資源とコストの面でも重大な問題を抱えている。
このことから、本発明においては、他社の開発したオペレーティングシステムの内部に関連した情報の解析に拠らず、標準のオペレーティングシステム機能に基づいて、既存のパーティションを内容を維持し、ディスク上の新たな位置に、新たなサイズと特性で作成し直すパーティション再生成方法を提供することを目的とする。
かかる目的を達成するために本発明は、外部記憶装置における物理セクタに基づいたパーティションを単位として分割管理を行うオペレーティングシステムにおいて、前記パーティションを任意のサイズに変更する工程と、前記オペレーティングシステムに予め備えられた標準の手順により、前記変更後のパーティションを新規のパーティションとして作成する工程と、前記新規のパーティションの作成情報に基づいて、前記パーティションの全てのデータの新たな物理的位置を決定する工程と、前記新たな物理的位置に基づいて置換すべき物理セクタの位置情報を得て、元の位置情報と新たな位置情報との差異情報を生成する工程とを有する。
さらに、前記生成された差異情報に基づき前記パーティションを再生成する工程と、前記再生成処理の進捗点を逐次記録及び更新する工程と、の各工程によって仮想ドライブを作成し、以って、ファイルシステムの内部構造に依存せずパーティションの内容を維持したままでパーティションの再生成を行うことである。
前記仮想ドライブは、ターゲット・ドライブとミラー・ドライブを含み構成されており、前記ターゲット・ドライブには、外部記憶装置の物理的なセクタの位置から前記変更後の位置とサイズが記録されている。そして、ミラー・ドライブには、前記再生成対象のパーティションの構造が記録されている。
前記変更は、前記パーティションのサイズを前記仮想ドライブに作成することにより自由に指定することが出来る。前記パーティションの物理的な位置を決定する工程は、ファイルアクセスの際のオペレーティングシステムによるディスクアクセスのデータを記録し、ファイルとその物理的な構成要素であるセクタとを直接結び付け、その物理的位置を確定する。その前記物理的位置の確定は、ファイルの最小単位である物理セクタの位置の情報をオペレーティングシステムの情報から得てファイルロケータにより行われる。
さらに、前記ファイルロケータは、オペレーティングシステムへの高水準と低水準の標準の割り込みによって、オペレーティングシステムが生成するアドレスを取得し、元のセクタのアドレスと比較して新しいセクタの位置を決定する。
そして、前記ファイルロケータは、仮想デバイスドライバを含み構成されており、前記仮想デバイスドライバは、前記ファイルロケータにより取得された低水準の書き込み情報を蓄積する機能を持つ。
前記仮想ドライブ手段は、対応する外部記憶装置と同じデータ構造をメモリ領域上に生成して保持され、読み出し、書き込み等の処理を選択して動作を変更できる仮想ドライブである。
そして、作成された前記仮想ドライブの消去は、ファイルシステムより独立した処理として、切り離して行うことが出来る。
前記仮想ドライブに生成した仮想パーティションは、対応する実データに影響を及ぼすこと無く初期化処理される。さらに、前記位置情報による差異情報の生成は、外部記憶装置上の置換すべき一連の物理セクタの位置情報と、元の位置と移動先の位置情報との対応関係から生成する。
前記対応関係の記録は、前記ファイルロケータにより前記ミラー・ドライブと前記ターゲット・ドライブに記録されている各々対応する全てのセクタに対して、元の位置と再生成後の位置情報の対応表である。そして、前記対応表を使用し、パーティションに記録されている全てのファイル及びセクタを仮想ドライブに記録されているままの状態で入替を行ないセクタの再配置をする。
さらに、前記処理の進捗点の逐次記録及び更新は、処理したインデックスのエントリを逐一、若しくは、一定周期でファイルに記録及び更新することが出来る。
コンピュータ・システムの外部記憶装置に記憶された情報に対するアクセス及び変更を制御する装置が設けられ、前記外部記憶装置における、物理セクタに基づいたパーティションを単位として分割管理を行うオペレーティングシステムを有するデータ処理装置において、仮想ドライブ手段により、ファイルシステムの内部構造に依存せず、前記パーティションの内容を維持したままで、前記パーティションの再生成を行う処理装置である。
そして、前記パーティションを任意のサイズに変更する手段と、前記オペレーティングシステムに予め備えられた標準の手順により、前記変更後のパーティションを新規のパーティションとして作成する手段と、前記新規のパーティションの作成情報に基づいて、前記パーティションの全てのデータの新たな物理的位置を決定する手段と、前記新たな物理的位置に基づいて置換すべき物理セクタの位置情報を得て、元の位置情報と新たな位置情報との差異情報を生成する手段と、前記生成された差異情報に基づき前記パーティションを再生成する手段と、前記再生成処理の進捗点を逐次記録及び更新する手段と、の各手段を含んでいる。
これを以って、パーティションの内容を維持し新たなパーティションによって生成された仮想ドライブ手段を有するように構成されたデータ処理装置である。
コンピュータ・システムの外部記憶装置に記憶された情報に対するアクセス及び変更を制御する装置であって、前記パーティションの物理的な位置を決定する手段は、ファイルアクセスの際のオペレーティングシステムによりディスクアクセスのデータを記録し、ファイルとその物理的な構成要素であるセクタとを直接結び付け、その物理的位置を確定することである。
前記仮想ドライブ手段は、対応する外部記憶装置と同じデータ構造をメモリ領域上に生成して保持され、読み出し、書き込み等の処理を選択して動作を変更できる仮想ドライブである。
さらに、コンピュータ・システムの外部記憶装置に記憶された情報に対するアクセス及び変更を制御する装置が設けられ、前記外部記憶装置における、物理セクタに基づいたパーティションを単位として分割管理を行うオペレーティングシステムを格納した記憶装置において、前記パーティションを任意のサイズに変更する手段と、前記オペレーティングシステムに予め備えられた標準の手順により、前記変更後のパーティションを新規のパーティションとして作成する手段とを有する。
さらに、前記新規のパーティションの作成情報に基づいて、前記パーティションの全てのデータの新たな物理的位置を決定する手段と、前記新たな物理的位置に基づいて置換すべき物理セクタの位置情報を得て、元の位置情報と新たな位置情報との差異情報を生成する手段と、前記生成された差異情報に基づき前記パーティションを再生成する手段と、前記再生成処理の進捗点を逐次記録及び更新する手段と、の各工程から構成され、以って、ファイルシステムの内部構造に依存せずパーティションの内容を維持したままで新たなパーティションの再生成を行う仮想ドライブを使用したパーティションの再生成手段を記憶したデータ記憶装置である。
そして、前記パーティションの物理的な位置を決定する手段は、ファイルアクセスの際のオペレーティングシステムによるディスクアクセスのデータを記録し、ファイルとその物理的な構成要素であるセクタとを直接結び付け、その物理的位置を確定することであり、前記装置であって、前記装置前記仮想ドライブ手段は、対応する外部記憶装置と同じデータ構造をメモリ領域上に生成して保持され、読み出し、書き込み等の処理を選択して動作を変更できる仮想ドライブである。
発明を実施するための最良の形態
次に、本発明の仮想ドライブ技術によるパーティションの生成とファイルの作成と削除の実施の形態について添付の図を参照して詳細に説明する。
本発明は、再生成後のパーティションに相当するパーティション情報をオペレーティングシステムの標準手続きにより作成する。その情報に基づき、パーティション上の全てのデータの「移動後」の位置を決定し、その結果通りに全ての情報を並べ直して、実際のパーティションサイズを変更するものである。
また、ファイルアクセスの際に、オペレーティングシステム(OS)によりディスクにアクセスされたデータを記録し、ファイルとその物理的な要素であるセクタを直接結びつけることで、ファイルシステムに依存せずに、そのディスク上での物理的配置を確定する技術も併用する。
上述した2つの主要技術は、オペレーティングシステムが標準的に提供する機能を使用するものであって、その標準のオペレーティングシステムが構成するパーティション構造そのものには関与しない。従って、本発明は、特定のファイルシステムに依拠せずに実施することが出来る。
ここで、本発明で使用されるコンピュータについて説明する。
現在ではコンピュータは広い分野で使用されており、その扱うデータ量も膨大なものとなっている。そのため記憶するデータの量も膨大になり効率的な運用が求められている。図1は、コンピュータを構成する基本要素を示す図である。
図1に示すようにコンピュータの基本構成は、プロセッサ部1、メモリ部2,3、入出力制御部6、入出力機器、及び入出力インタフェースである。本体内のプロセッサ部、メモリ部、入出力制御部等の各装置はバス5で接続され、メモリ2,3や各種入出力制御部の接続及び増設が容易に行える構成となっている。
プロセッサはマイクロプロセッサが使用されている。一般的なビジネス用には、処理速度の速い16ビットまたは32ビット以上のマイクロプロセッサが使用されている。
メモリは、読み出し専用メモリ2(以下ROMという。)と読み出し/書き込み用メモリ3(以下RAMという)の2種類が用意されている。ROM2には、コンピュータ全体の制御を行うモニタなどが格納される。RAM3には、補助記憶装置などから入力されたプログラム、データ及び実行中のプログラムの中間結果が格納される。一般的にメモリの記憶容量は64MB程度である。
入出力制御部6は、プロセッサからの指示に基づきメモリ部2,3と入出力機器又は入出力インタフェース間のデータ転送を制御する。そしてこれらの制御部はLSI化され、プロセッサの動作とは独立にデータ転送を行うダイレクトメモリアクセス方式(DMA)と、プロセッサ上のプログラム制御により1バイトまたは1ワードずつデータ転送を行うプログラム制御方式とがある。ハードディスク制御部、フレキシブルディスク制御部、ディスプレイ制御部では、高速データ転送が必要なためダイレクトメモリアクセス方式(DMA)が、またプリンタ制御部、キーボード制御部、RS─232C制御部等ではプログラム制御方式が採用されている。入出力機器としての補助記憶装置は、データ、プログラムを蓄積しておくためのもので、ハードディスク4、フレキシブルディスク、CD−ROM等、各種のものが用意されている。特にハードディスク4は記憶容量が大きく、アクセス時間が短いことから、ビジネス用のコンピュータでは一般的に使用されている。入力装置としてはキーボード並びに種々のポインティングディバイスが使用されている。その他ディスプレイ装置、プリンタが用意されている。さらに、入出力インタフェースとしては、通信インタフェース、ユーザ機器接続インタフェースが準備されている。
そして、このようにして構成されているコンピュータを機能させるために、オペレーティングシステムが開発され搭載されている。代表的なオペレーティングシステムとしてマイクロソフト社のMS−DOSがよく知られている。その機能は各種モニタ、ファイル管理、フレキシブルディスク管理、各種プログラム及びデータの交換等であり、さらにマルチタスク機能、マルチウインドウ機能なども提供されている。また、近年益々リアルタイム処理向けのオペレーティングシステムが通信機能を強化したシステムとして開発され提供されている。
汎用の独立したオペレーティングシステムとして各種のものが開発されて来ているが、これらのオペレーティングシステムはそれぞれに固有のインタフェースを持っているため利用者にとっても、オペレーティングシステム提供者にとってもソフトウエアの生産性や流通性などの点で問題がある。
オペレーティングシステムではファイルの用途に応じて、ファイル管理が扱う装置や記録媒体上のレコードの配列の方法すなわち編成を、いく種類か提供している。利用者は利用目的によってその中から選択して使用することが出来る。代表的なファイル編成は、順編成、直接編成、索引編成、区分編成及び仮想記憶編成である。本発明で取り扱う仮想記憶編成は、直接アクセス装置に対して利用者が直接記録媒体の属性を意識しないで処理できるように、コントロールインタバル(CI)という概念を取り入れたファイル編成をいう。仮想記憶編成にはレコードを書き出した順に格納するエントリ順データセット(ESDS)、レコードを相対番号でアクセスできるようにする相対レコードデータセット、およびキー順番にレコードを格納し、インデックスと合わせてキーでアクセスできるようにするキー順データセット(KSDS)の3種類がある。コントロールインタバル(以下CIという。)は、1つのファイルの中では固定の長さで制御情報はデータセットの種類によって、レコードの長さ、空きの管理などを行っている。そして、利用者はCIだけを意識すればよく、CIと記録媒体上との関係は全てファイル管理によって制御される。さらに、連続したCIは、コントロールエリア(以下CAという。)と呼ばれる単位で管理される。またCIが連続的につながっていると考え、各レコードの位置をファイルの先頭からの相対バイトアドレス(RBA)で表すことが出来る。エントリーデータセットでは、レコードの長さを可変とすることが出来るが、相対レコードデータセットでは、レコードの長さは一定でなければならず、空きのレコードが遭ってもよい構造となっている。キー順データセットは、データ用のコントロールインタバル(CI)だけで一つのCAを構成し、CA対応にシーケンスセットと呼ばれる一つのインデックス用のCIが対応している。そしてこれらのシーケンスセットを、さらに上位のインデックス用CIで管理する構成となっている。このためレコードの挿入によって、データ用CIにレコードが入らなくなった時、データ用CI中のレコードの半分を空きのCIへ移してから挿入処理を行なうようにしている。これをCIの分割と呼ぶ。またCIを分割しようとしたとき、CA内に空きのCIがない場合は、同様の分割を行う。
レコードをファイルと主記憶との間で転送する操作について、利用者が容易に行えるようにした方法には、順アクセス法、直接アクセス法、索引順アクセス法、区分アクセス法、及び仮想アクセス法がある。
各アクセス法は、上述したレコードの編成ファイルに略対応して処理できるように構成されている。その中にあって、本発明で取り扱う仮想記憶アクセス法(VSAM)は、仮想記憶編成のファイルに対するアクセス法で、エントリ順データセットに対しては、エントリ順及び相対バイトアドレス(RBA)指定によるアクセスができる。相対レコードデータセットに対しては、相対レコード番号指定および相対レコード番号順のアクセスが出来る。キー順データセットに対しては、キー指定、キー順の他、相対バイトアドレス(RBA)指定によるアクセスが出来る。
本発明で取り扱う外部記憶装置の代表的なものは、「ハードディスクドライブ」と呼ばれ、原理的には磁性を帯びた金属板(若しくはその代替品)に磁気ヘッドにより磁場の変化を生成し記録再生する装置がある。但し、次に述べる特徴を備える同等機能を提供するものは全て含むものである。
「ハードディスクドライブ」は、一連の記録識別可能な単位をまとめた「セクタ」と呼ばれる物理的単位に分割される。
また、「ハードディスク」を接続したコンピュータは、「オペレーティングシステム」(OS)と呼ばれるソフトウエア機構によって抽象化され、その物理的実在細部を隠蔽したまま、各内部、外部装置の制御が可能となっている。そのために、開発者(デベロッパ)や利用者(ユーザ)は、ソフトウエアを稼働させるに際しても、実際に稼働する各コンピュータ毎の物理的な構成の差異に依存する事無く、オペレーティングシステム上で統一した手順で処理を行わせることが可能である。
近代のオペレーティングシステムは、情報の管理単位を「ファイル」と言う抽象化された単位として、実際に外部記憶装置に記録管理されるセクタとの関連は、オペレーティングシステムが司る。また、ファイルを管理するための抽象化されたこの構造を「ファイルシステム」と総称する。
そこで、図2は本発明によるハードディスク上のドライブ構成の1例を示す。図2に示すように、ここまでで定義されたセクタは、基本的には情報の出し入れを行う最小単位であるため、ファイルシステムは非常に多くのセクタを含むハードディスクドライブに対して、さらに多数のセクタから構成されるパーティションと言う単位を導入し、効率的な管理が行えるようになっている。
次に、本発明における仮想ドライブを用いたパーティション操作について説明する。
以下の説明では、「パーティションのリザイズ」及び「リサイズ」という用語で、本発明により実現される仮想ドライブを用いたパーティションの再生成の過程を表すこととする。また、下記では、1つの実装例として、上述したオペレーティングシステムに基づいて説明することとする。
リサイズの対象となるパーティションを含むディスクに対して、リサイズ後のディスクを実現するターゲットと呼ぶ仮想ドライブを作成する。ここから以降、実際にはリサイズ対象のパーティションにしかアクセスが発生しない。そのため、実装上重要な要素として、対象パーティションへの操作を仮想化して仮想ドライブ「ミラー」を作成使用するが、本発明の以下の説明では、「ミラー」にリサイズ対象のパーティション構造がそのまま入っていると見なされるため、実装上の煩雑な細部を省きリサイズ対象分のみに限ることとするため、ミラーへの言及は行はない。
ここで、図3に基づき、マイクロソフト社のウインドウズ・オペレーティングシステムを例に取って説明する。
図1は仮想デバイスのドライバとの関係を示す図である。図に示す「マスタ・ブーツセクタ」10、「ユーザインタフェース11」、「機能的 動的リンク・ライブラリ」12等は、IBM−PC互換機の使用に従って設計製造されたコンピュータシステム上で動作する。そして、マイクロソフト社製のウインドウズ・オペレーティングシステムを例に取った際の動作を記述するための、マイクロソフト社の用語に基づくものであり、他のシステム構成/オペレーティングシステムでは等価な代替物と置き換えることが可能である。図中、(MS)とある部分はウインドウズの構成要素である。また、矢印は処理の流れを表す。最下段にある「実ディスクファイル」14は現実の外部記憶装置を表し、「仮想ディスクファイル」15は本発明のターゲット・ドライブ及びミラー・ドライブを含む仮想ドライブを構成ファイルを表す。
「インストーラブル・ファイルシステム・マネジャ」13が通常の高水準のファイルアクセスを処理し、「I/O スーパバイザ」16が低水準のファイルアクセス処理を行う。(実際には、ハードウエアに依存した「タイプスペシフィック・ドライバ」及び「ポート・ドライバ」に処理を依頼する。)
この情報/指示の入りと出を監視するために、高水準/低水準の2つのソフトウエアコンポーネント(「ファイルロケータ17,18」)で挟み、各々の情報(「入り」はファイルへのアクセス、「出」はセクタへのアクセス)を比較することで、「抽象化されたファイル」と「実際のデータ保管場所であるセクタ」を結び付け、前述したセクタ位置確定の機能を実現するが出来る。
ここで、本発明の詳細な説明をする。
図4は通常の処理の流れを示し、図5は仮想ドライブでの書き込み時の流れを示す。図6は仮想ドライブでの読み出し時の処理の流れを示す。(図中での同じソフトウエアは、図3、図4、図5、及び図6においても同じ符号とする。)
オペレーティングシステム、またはアプリケーションソフトウエアからファイルへのアクセスが発生すると、通常インストローラブル・ファイルシステム・マネジャ13へ引き渡される処理が一度ファイルロケータ・高水準17を経由する。その際、ファイルロケータ・高水準17は、実ドライブ14であるか、仮想ドライブ15であるか判別する。実ドライブであれば、図2に示す通りの通常処理を行う流れの処理を行ない、仮想ドライブであると判別され、読み出しの処理の場合は,図4に示す通り、読み出しは通常のドライブから行なう。書き込み処理の場合は、図3に示す通りの処理を行う。すなわち、書き込み時にアクセスするアドレスは、仮想ドライブへのアクセスを指示して得られたアドレスを取得後、ファイル属性の記録だけ主記憶上に保持し、ディスクドライブへの実際の書き込みは行わない。
図7は、書き込み、読み出しの状態を説明するファイルを示す図である。
図7において、D30ドライブを再生成する場合を想定して、D30はE31の直前まで領域を確保しているものとする。尚、斜線の部分は使用済領域を示し、線のない部分は、空き領域を示す。D30ドライブのコピーを行う場合、Fへのアクセスは、仮想デバイスドライバが読み出しをD30から読み出たし、書き込みを仮想ドライバ情報へのセクタ位置の更新で置き換え実際の書き込みは行わない。Fはセクタ位置の決定や、アクセス保護されたファイルへの間接的なアクセスを提供する純粋に技術的な手法である。新規に指定した位置に生成された仮想ドライブのG33にD30ドライブの全てのデータを仮想的にコピーする。
図8はドライブのコピーの状態を説明した図である。F32(実際にはD30)からG33に通常のコピーを実行することで高水準、低水準の両方のファイルアクセスが発生する。この両方のアクセスに割り込み、セクタ単位で位置を特定する。更に詳しく説明すると、仮想ドライブへのアクセスは、本発明の一部をなすファイルロケータ17,18と呼ぶ機能によって、全て、実際のドライブへのアクセスに置き換えられる。ファイルロケータ17,18は、オペレーティングシステムへの標準の割り込み処理によって実装され、オペレーティングシステムの提供するファイルへの高水準インターフェースと低水準インターフェースの両方に対して処理を割り込ませる。この機能は、読み出し時には、初めに全ての仮想ドライブ上のファイルへのアクセスを、対応する実際のドライブ上のファイルへのアクセスに置き換える。又同時に、仮想ドライブへの書き込み時には実際の書き込みは行わず、その低水準での書き込み情報を取得する処理に置き換える。その情報は仮想デバイスドライバが貯える。つまり、仮想ドライブからのデータの読み出しアクセスは、本発明に基づき実装される仮想デバイスドライバを経由し、実際のドライブ上のパーティションのデータの読取に置き換えられ、また、書き込みは仮想ドライブ上の位置決定だけで完了とする。
そして、その高水準と低水準の両方の割り込みによって、オペレーティングシステムが生成するアドレスを直接比較できるので、ファイル単位で指示されたディスクへのアクセスを「セクタ」単位で割り出せる。これにより、既存の、全ての先行技術とは異なりファイルシステムそのものの解析を必要とせず、オペレーティングシステムだけの機能を利用して、任意のファイルに属する全セクタの位置が決定できる。上述のように取得した各パーティション上の全ファイルを構成する全セクタの絶対位置を突き合わせ、そのセクタの移動先を決定し、主記憶上に確保した領域を対応表に格納する。
対象パーティション上の全ファイルの位置を決定するために、更には、Windowsオペレーティングシステムでのファイルのアクセス権の衝突をも防ぐため、前述の技術により、対象パーティションから「ミラー」ドライブを作成する。「ミラー」ドライブは、ウインドウズ・オペレーティングシステムのドライブマウントポイントに新規に対象パーティションと同じ属性値のエントリを作成することで容易に作成される。
但し、このままでは内容が存在しないばかりでなく、どんな意味でもアクセスできないので、仮想ドライブに対して、標準的なコマンドである「FDISK」コマンドと「FORMAT」コマンドでオペレーティングシステムにファイルシステムを生成させる。この際、前述のファイルロケータを適用することで、読取は対応する実ドライブからなされ、書き込みは、「実処理せずに」、その情報を仮想ドライブを構成するデバイスドライバが記録するだけで終了処理を行うことで、オペレーティングシステムの正規のディスクとして整備された外部記憶装置としてその動作が完備したものとなる。
次に「ターゲット」ドライブを、リサイズ後のサイズと位置を備えるように、対象の外部記憶装置上の、各セクタ位置により決定された仮想ドライブを生成し、ミラーと同様に、ファイルロケータを構成する仮想デバイスドライバにより「FDISKとFORMAT」を行い、オペレーティングシステムの機能でファイルシステムを生成する。
そして、対象パーティションのミラーから、ターゲットに全てのファイルのコピーを、ファイルロケータを構成する「仮想デバイスドライバを経由して」仮想的に行う。この際行われる処理を詳述すると、ミラーディスク上のファイルシステムを適切に順序付けた後(標準的なファイルシステムは循環しない単方向の階層グラフ構造であるため、必ず順序付けが可能である。)、先頭ファイルからその順序に従って順次ターゲットディスクに対して、仮想デバイス経由でファイルのコピーを行う。
さらに、コピーの際に、ミラー上のファイルは、その構成要素であるセクタに分解され、ファイルロケータに読取られ、ターゲットに書き込む際には、書き込まれるべき位置の情報をファイルロケータがターゲットディスク上の各セクタの位置の情報として蓄積する。
図9は位置情報の対応表の例を示す。全ての順序を尽くした後、ファイルロケータはミラーとターゲット上にある対応する全てのファイルを構成するセクタに対して、その新旧の位置情報の対応表を生成する。
この作業により、オペレーティングシステムが、ターゲットディスクに読み出しを実行すると、セクタ位置情報はファイルロケータが返し、ファイル内容は,ファイルロケータを構成する仮想デバイスドライバを経由して、ミラー上の当該セクタを探し出し、その内容を返すことが出来るようになる。その結果、操作対象となったパーティション上の全てのディレクトリに対してはディレクトリ構造がコピーされ、ファイルに対してはその属性とともに、その位置が(ミラーを介して)セクタ単位で決定し、ターゲット上での全セクタの位置と大きさを確保することが出来る。この作業が終わると、ターゲットは「見掛上」対象パーティションと全く同じファイルで満たされ、しかもパーティションとしては、指定の属性を備えたものとなっている。(但し、その全てが位置と大きさ、属性だけからなる仮想的なファイルだけであり、ファイルとしての実体は、ファイルロケータを介してミラー上のファイルを参照して、実際のパーティション上のファイルを指定するものである。)
以上の手順による対象パーティションに対する「読み出し」と「仮想的な書き込み」アクセスにより、現在のファイルのセクタごとの位置を決定でき、同様にファイルロケータを経由したターゲットに対するアクセスにより移動先のセクタの位置を確定できる。
そこで最終的なセクタの移動について説明する。
図10は、ファイルコピーの状態を説明する図である。図10での上段は、実際のパーティション1上に、ファイル(本実施の形態例では説明を簡略化するために、1ファイル1セクタと仮定する。)が配置されている状態を示し、下段は指定の位置に新規に作成した仮想ドライブ上に全ファイルを仮想的にコピーした状態を示している。このとき、パーティション1上の、ファイル、セクタを全て仮想ドライブ上の配置のままに再配置すると、パーティション1が、新規に作成された仮想ドライブと同じになり、パーティション1を再編成したことになる。この時の手法としては、主記憶装置上に作業領域を設け、パーティション1上のセクタを仮想ドライブ上の状態のままに順次入れ替えることで、その全体を目的の位置に移動再配置を行う。
図11は、パーティション上のセクタの入替を説明する図である。
この図の例で示すように、作業領域を経由して次のように入替を実行する。
この例では(A,B)により、A番目のセクタとB番目のセクタと入れ替える処理を示している。
最終手続きとして、ここまでに得られたセクタの位置に従って、全セクタを対応するターゲット上の位置に移動することでパーティションの再生成が完了する。
このセクタ単位での移動の際には、オペレーティングシステムの機能により、対象となっているパーティションが含まれるディスクをロックし、オペレーティングシステムに付随する副次的な処理を停止させる。その上で、対応表に従ってセクタの移動が迅速に行われるよう、キャッシュ機構を取り入れた実装上の開発がなされている。また、この部分は、当該オペレーティングシステム、ハードウエアに依存する部分が顕著であるため、種々のハードウエアプラットホームに合わせた調整が可能である。
尚、本発明においては、次のような複数の技術を併用することが可能であり、本発明においても重要である。
実装の際には、全セクタ位置をメモリ上で保持しセクタ移動の処理を行うことが可能である。この場合必要になるのは、ミラーとターゲットを比較して得られる、移動・交換すべきセクタを、各々記した表だけである。従って、この表の順にセクタを置き換えればよい。この対応表を作成する手順をターゲットへのコピー処理と同時に行うことで、手順の省略とメモリ領域の節約が可能である。
また、実装技術として特記すべきは、実装対象となるオペレーティングシステムによっては、ファイル実体を含むパーティションを操作する場合、そのオペレーティングシステムの実装の制限のため、「任意の位置には移動させられない」一群のファイルが存在する。これらの「例外的な」ファイル群に対しては、「優先されたファイル」としてコピーの順位を人為的に上げて、事前に移動することでその移動先を制御することが可能である。
また、この場合、現実の装置では、全セクタの位置を保持したために全体的にメモリが不足し、セクタを移動するために用い得る種々の既知の高速アルゴリズムを採用することが出来ない可能性がある。この問題を回避するために、ミラー,ターゲット共に、実パーティション上にその全セクタのインデックスファイルをコピーに先立って作成し、コピーの進捗に従ってインデックスを更新し(インデックス自体は処理の間は移動しない。)、ファイル単位の処理をインデックスを介した全体処理に置き換えて、処理全体の高速化を図ることが出来る。
さらに、処理したインデックスのエントリを一定周期(逐一記録することも可能)で記録更新することで、電源断絶等の外的な障害発生時に備えることが可能となる。
逐一記録更新した場合は、確実に再開すべき地点が判明するため、ハードウエア的な損失が発生していなければ、常に障害発生地点より処理を再開させることが可能になる。但し、その反面外部記憶装置への書き込みが常時発生しているため、若干の処理速度の低下が予測される。
それに対して、一定間隔で記録更新した場合は、速度低下は逐一の更新に比べて軽減されるものの、ある範囲のセクタが置換されたかどうかの判別が出来ない場合には、対応のファイルが失われる可能性がある。なお、ターゲットから見たインデックスは、ファイル毎に並べ替えられたものとなるため、損失をファイル毎に押えることが出来る。このことが出来ない場合、ファイルシステムとして不整合が発生し、全てが失われることもあり得る。この観点から見ても本発明は十分な安全対策がある。
パーティションの再生成において、オペレーティングシステムそのものによりファイルシステムを生成するため、新たなシステムを開発する事無く、互換性を維持しつつ高機能なパーティション管理機能を実現できる。
産業上の利用可能性
稼動中のコンピュータのディスク装置上に既に確保されているパーティションを変更が必要な時、その内容を維持したまま、仮想ドライブ技術により、ディスク上の新たな位置に新たなサイズと特性でパーティションの再生成が出来るパーティション管理機能をもったソフトウエアの提供。
【図面の簡単な説明】
図1は、本発明に係る、コンピュータを構成する基本要素を示す図である。
図2は、本発明に係る、ハードディスク上のドライブ構成の1例を示す。
図3は、本発明に係る、仮想デバイスのドライバとの関係を示す図である。
図4は、本発明に係る、仮想ドライブを使用しない通常の処理の流れを示す。
図5は、本発明に係る、仮想ドライブでの書き込み時の流れを示す。
図6は、本発明に係る、仮想ドライブでの読み出し時の処理の流れを示す。
図7は、本発明に係る、書き込み読み出しの状態を説明するファイルを示す図である。
図8は、本発明に係る、ドライブのコピーの状態を説明した図である。
図9は、本発明に係る、位置情報の対応表の例を示す。
図10は、本発明に係る、ファイルコピーの状態を説明する図である。
図11は、本発明に係る、パーティション上のセクタの入替を説明する図である。
稼動中のコンピュータのディスク装置上に既に確保されているパーティションを変更するために、内容を維持したまま、新規パーティションとしてディスク上の新たな位置に形成された仮想ドライブを使用したパーティションの再生成方法及び装置に関する。
背景技術
一般に、データベース等の情報を蓄積するハードディスクの管理は、オペレーティングシステムで行われている。このハードディスクを使用したアプリケーションプログラムにおいて、特定のハードディスクへのアクセスが偏っている場合は、システムで期待する性能が十分発揮されない。この偏りを解消するためには、アプリケーションプログラムで使用するハードディスクのパーティション構成を変更しなければならない。ハードディスクのパーティション構成の変更は、使用するハードディスクのパーティション構成を変更した後データベースの再構築を行い、さらにシステム構成の登録を変更する必要がある。
このように、従来の手法では、通常オペレーションシステムが提供しない、パーティション内のファイルシステムの実装についての知識を得ることが不可欠である。すなわち本来オペレーティングシステムが管理している外部記憶装置に対して、オペレーティングシステムとは別個に、ファイルシステム毎に新規にファイルそのものを解析し、ファイルを直接操作するための技術開発を行う必要がある。
また、一般的なコンピュータとその上で動作する従来のソフトウエア動作概念では、パーティション内部情報を直接取得して、編集変更するというものである。本発明と類似している従来技術として特表平10−512379では、パーティションとファイルシステムの構造に着目し、その内部構造に沿って、空き領域を確保しパーティション情報を書き換えることで、サイズの変更その他の処理を行っている。すなわち検証、サイズ変更等は、実装の際に必然的に要請される設計上の問題であって、特定のファイルシステムに依存しており、またファイルシステム上でのデータの配置などに依存している。
発明の開示
これまで述べてきたように、ハードディスクのパーティション構成を変更するためには、次のような問題点がある。パーティションの構成変更のためには、他社の開発したオペレーティングシステムの内部に関連した情報を解析し、その結果判明した問題を解決するために、オペレーティングシステムを直接操作するための新規技術開発を行う必要がある。さらに、例え,同一のオペレーションシステムが提供するファイルシステムであっても、オペレーティングシステム更新時には、新たに別個のものとして新規技術開発を行う必要がある。
さらに、新規開発による機能そのものが、理論的にオペレーティングシステムの提供する機能とは実装が異なるため、重大な非互換性が生じる可能性がある。
このように、従来のシステムにおいては、与えられたファイルシステムの各々に対して、新規の開発が必要である。そして、これらの開発作業の重複は、互換性の問題のみならず資源とコストの面でも重大な問題を抱えている。
このことから、本発明においては、他社の開発したオペレーティングシステムの内部に関連した情報の解析に拠らず、標準のオペレーティングシステム機能に基づいて、既存のパーティションを内容を維持し、ディスク上の新たな位置に、新たなサイズと特性で作成し直すパーティション再生成方法を提供することを目的とする。
かかる目的を達成するために本発明は、外部記憶装置における物理セクタに基づいたパーティションを単位として分割管理を行うオペレーティングシステムにおいて、前記パーティションを任意のサイズに変更する工程と、前記オペレーティングシステムに予め備えられた標準の手順により、前記変更後のパーティションを新規のパーティションとして作成する工程と、前記新規のパーティションの作成情報に基づいて、前記パーティションの全てのデータの新たな物理的位置を決定する工程と、前記新たな物理的位置に基づいて置換すべき物理セクタの位置情報を得て、元の位置情報と新たな位置情報との差異情報を生成する工程とを有する。
さらに、前記生成された差異情報に基づき前記パーティションを再生成する工程と、前記再生成処理の進捗点を逐次記録及び更新する工程と、の各工程によって仮想ドライブを作成し、以って、ファイルシステムの内部構造に依存せずパーティションの内容を維持したままでパーティションの再生成を行うことである。
前記仮想ドライブは、ターゲット・ドライブとミラー・ドライブを含み構成されており、前記ターゲット・ドライブには、外部記憶装置の物理的なセクタの位置から前記変更後の位置とサイズが記録されている。そして、ミラー・ドライブには、前記再生成対象のパーティションの構造が記録されている。
前記変更は、前記パーティションのサイズを前記仮想ドライブに作成することにより自由に指定することが出来る。前記パーティションの物理的な位置を決定する工程は、ファイルアクセスの際のオペレーティングシステムによるディスクアクセスのデータを記録し、ファイルとその物理的な構成要素であるセクタとを直接結び付け、その物理的位置を確定する。その前記物理的位置の確定は、ファイルの最小単位である物理セクタの位置の情報をオペレーティングシステムの情報から得てファイルロケータにより行われる。
さらに、前記ファイルロケータは、オペレーティングシステムへの高水準と低水準の標準の割り込みによって、オペレーティングシステムが生成するアドレスを取得し、元のセクタのアドレスと比較して新しいセクタの位置を決定する。
そして、前記ファイルロケータは、仮想デバイスドライバを含み構成されており、前記仮想デバイスドライバは、前記ファイルロケータにより取得された低水準の書き込み情報を蓄積する機能を持つ。
前記仮想ドライブ手段は、対応する外部記憶装置と同じデータ構造をメモリ領域上に生成して保持され、読み出し、書き込み等の処理を選択して動作を変更できる仮想ドライブである。
そして、作成された前記仮想ドライブの消去は、ファイルシステムより独立した処理として、切り離して行うことが出来る。
前記仮想ドライブに生成した仮想パーティションは、対応する実データに影響を及ぼすこと無く初期化処理される。さらに、前記位置情報による差異情報の生成は、外部記憶装置上の置換すべき一連の物理セクタの位置情報と、元の位置と移動先の位置情報との対応関係から生成する。
前記対応関係の記録は、前記ファイルロケータにより前記ミラー・ドライブと前記ターゲット・ドライブに記録されている各々対応する全てのセクタに対して、元の位置と再生成後の位置情報の対応表である。そして、前記対応表を使用し、パーティションに記録されている全てのファイル及びセクタを仮想ドライブに記録されているままの状態で入替を行ないセクタの再配置をする。
さらに、前記処理の進捗点の逐次記録及び更新は、処理したインデックスのエントリを逐一、若しくは、一定周期でファイルに記録及び更新することが出来る。
コンピュータ・システムの外部記憶装置に記憶された情報に対するアクセス及び変更を制御する装置が設けられ、前記外部記憶装置における、物理セクタに基づいたパーティションを単位として分割管理を行うオペレーティングシステムを有するデータ処理装置において、仮想ドライブ手段により、ファイルシステムの内部構造に依存せず、前記パーティションの内容を維持したままで、前記パーティションの再生成を行う処理装置である。
そして、前記パーティションを任意のサイズに変更する手段と、前記オペレーティングシステムに予め備えられた標準の手順により、前記変更後のパーティションを新規のパーティションとして作成する手段と、前記新規のパーティションの作成情報に基づいて、前記パーティションの全てのデータの新たな物理的位置を決定する手段と、前記新たな物理的位置に基づいて置換すべき物理セクタの位置情報を得て、元の位置情報と新たな位置情報との差異情報を生成する手段と、前記生成された差異情報に基づき前記パーティションを再生成する手段と、前記再生成処理の進捗点を逐次記録及び更新する手段と、の各手段を含んでいる。
これを以って、パーティションの内容を維持し新たなパーティションによって生成された仮想ドライブ手段を有するように構成されたデータ処理装置である。
コンピュータ・システムの外部記憶装置に記憶された情報に対するアクセス及び変更を制御する装置であって、前記パーティションの物理的な位置を決定する手段は、ファイルアクセスの際のオペレーティングシステムによりディスクアクセスのデータを記録し、ファイルとその物理的な構成要素であるセクタとを直接結び付け、その物理的位置を確定することである。
前記仮想ドライブ手段は、対応する外部記憶装置と同じデータ構造をメモリ領域上に生成して保持され、読み出し、書き込み等の処理を選択して動作を変更できる仮想ドライブである。
さらに、コンピュータ・システムの外部記憶装置に記憶された情報に対するアクセス及び変更を制御する装置が設けられ、前記外部記憶装置における、物理セクタに基づいたパーティションを単位として分割管理を行うオペレーティングシステムを格納した記憶装置において、前記パーティションを任意のサイズに変更する手段と、前記オペレーティングシステムに予め備えられた標準の手順により、前記変更後のパーティションを新規のパーティションとして作成する手段とを有する。
さらに、前記新規のパーティションの作成情報に基づいて、前記パーティションの全てのデータの新たな物理的位置を決定する手段と、前記新たな物理的位置に基づいて置換すべき物理セクタの位置情報を得て、元の位置情報と新たな位置情報との差異情報を生成する手段と、前記生成された差異情報に基づき前記パーティションを再生成する手段と、前記再生成処理の進捗点を逐次記録及び更新する手段と、の各工程から構成され、以って、ファイルシステムの内部構造に依存せずパーティションの内容を維持したままで新たなパーティションの再生成を行う仮想ドライブを使用したパーティションの再生成手段を記憶したデータ記憶装置である。
そして、前記パーティションの物理的な位置を決定する手段は、ファイルアクセスの際のオペレーティングシステムによるディスクアクセスのデータを記録し、ファイルとその物理的な構成要素であるセクタとを直接結び付け、その物理的位置を確定することであり、前記装置であって、前記装置前記仮想ドライブ手段は、対応する外部記憶装置と同じデータ構造をメモリ領域上に生成して保持され、読み出し、書き込み等の処理を選択して動作を変更できる仮想ドライブである。
発明を実施するための最良の形態
次に、本発明の仮想ドライブ技術によるパーティションの生成とファイルの作成と削除の実施の形態について添付の図を参照して詳細に説明する。
本発明は、再生成後のパーティションに相当するパーティション情報をオペレーティングシステムの標準手続きにより作成する。その情報に基づき、パーティション上の全てのデータの「移動後」の位置を決定し、その結果通りに全ての情報を並べ直して、実際のパーティションサイズを変更するものである。
また、ファイルアクセスの際に、オペレーティングシステム(OS)によりディスクにアクセスされたデータを記録し、ファイルとその物理的な要素であるセクタを直接結びつけることで、ファイルシステムに依存せずに、そのディスク上での物理的配置を確定する技術も併用する。
上述した2つの主要技術は、オペレーティングシステムが標準的に提供する機能を使用するものであって、その標準のオペレーティングシステムが構成するパーティション構造そのものには関与しない。従って、本発明は、特定のファイルシステムに依拠せずに実施することが出来る。
ここで、本発明で使用されるコンピュータについて説明する。
現在ではコンピュータは広い分野で使用されており、その扱うデータ量も膨大なものとなっている。そのため記憶するデータの量も膨大になり効率的な運用が求められている。図1は、コンピュータを構成する基本要素を示す図である。
図1に示すようにコンピュータの基本構成は、プロセッサ部1、メモリ部2,3、入出力制御部6、入出力機器、及び入出力インタフェースである。本体内のプロセッサ部、メモリ部、入出力制御部等の各装置はバス5で接続され、メモリ2,3や各種入出力制御部の接続及び増設が容易に行える構成となっている。
プロセッサはマイクロプロセッサが使用されている。一般的なビジネス用には、処理速度の速い16ビットまたは32ビット以上のマイクロプロセッサが使用されている。
メモリは、読み出し専用メモリ2(以下ROMという。)と読み出し/書き込み用メモリ3(以下RAMという)の2種類が用意されている。ROM2には、コンピュータ全体の制御を行うモニタなどが格納される。RAM3には、補助記憶装置などから入力されたプログラム、データ及び実行中のプログラムの中間結果が格納される。一般的にメモリの記憶容量は64MB程度である。
入出力制御部6は、プロセッサからの指示に基づきメモリ部2,3と入出力機器又は入出力インタフェース間のデータ転送を制御する。そしてこれらの制御部はLSI化され、プロセッサの動作とは独立にデータ転送を行うダイレクトメモリアクセス方式(DMA)と、プロセッサ上のプログラム制御により1バイトまたは1ワードずつデータ転送を行うプログラム制御方式とがある。ハードディスク制御部、フレキシブルディスク制御部、ディスプレイ制御部では、高速データ転送が必要なためダイレクトメモリアクセス方式(DMA)が、またプリンタ制御部、キーボード制御部、RS─232C制御部等ではプログラム制御方式が採用されている。入出力機器としての補助記憶装置は、データ、プログラムを蓄積しておくためのもので、ハードディスク4、フレキシブルディスク、CD−ROM等、各種のものが用意されている。特にハードディスク4は記憶容量が大きく、アクセス時間が短いことから、ビジネス用のコンピュータでは一般的に使用されている。入力装置としてはキーボード並びに種々のポインティングディバイスが使用されている。その他ディスプレイ装置、プリンタが用意されている。さらに、入出力インタフェースとしては、通信インタフェース、ユーザ機器接続インタフェースが準備されている。
そして、このようにして構成されているコンピュータを機能させるために、オペレーティングシステムが開発され搭載されている。代表的なオペレーティングシステムとしてマイクロソフト社のMS−DOSがよく知られている。その機能は各種モニタ、ファイル管理、フレキシブルディスク管理、各種プログラム及びデータの交換等であり、さらにマルチタスク機能、マルチウインドウ機能なども提供されている。また、近年益々リアルタイム処理向けのオペレーティングシステムが通信機能を強化したシステムとして開発され提供されている。
汎用の独立したオペレーティングシステムとして各種のものが開発されて来ているが、これらのオペレーティングシステムはそれぞれに固有のインタフェースを持っているため利用者にとっても、オペレーティングシステム提供者にとってもソフトウエアの生産性や流通性などの点で問題がある。
オペレーティングシステムではファイルの用途に応じて、ファイル管理が扱う装置や記録媒体上のレコードの配列の方法すなわち編成を、いく種類か提供している。利用者は利用目的によってその中から選択して使用することが出来る。代表的なファイル編成は、順編成、直接編成、索引編成、区分編成及び仮想記憶編成である。本発明で取り扱う仮想記憶編成は、直接アクセス装置に対して利用者が直接記録媒体の属性を意識しないで処理できるように、コントロールインタバル(CI)という概念を取り入れたファイル編成をいう。仮想記憶編成にはレコードを書き出した順に格納するエントリ順データセット(ESDS)、レコードを相対番号でアクセスできるようにする相対レコードデータセット、およびキー順番にレコードを格納し、インデックスと合わせてキーでアクセスできるようにするキー順データセット(KSDS)の3種類がある。コントロールインタバル(以下CIという。)は、1つのファイルの中では固定の長さで制御情報はデータセットの種類によって、レコードの長さ、空きの管理などを行っている。そして、利用者はCIだけを意識すればよく、CIと記録媒体上との関係は全てファイル管理によって制御される。さらに、連続したCIは、コントロールエリア(以下CAという。)と呼ばれる単位で管理される。またCIが連続的につながっていると考え、各レコードの位置をファイルの先頭からの相対バイトアドレス(RBA)で表すことが出来る。エントリーデータセットでは、レコードの長さを可変とすることが出来るが、相対レコードデータセットでは、レコードの長さは一定でなければならず、空きのレコードが遭ってもよい構造となっている。キー順データセットは、データ用のコントロールインタバル(CI)だけで一つのCAを構成し、CA対応にシーケンスセットと呼ばれる一つのインデックス用のCIが対応している。そしてこれらのシーケンスセットを、さらに上位のインデックス用CIで管理する構成となっている。このためレコードの挿入によって、データ用CIにレコードが入らなくなった時、データ用CI中のレコードの半分を空きのCIへ移してから挿入処理を行なうようにしている。これをCIの分割と呼ぶ。またCIを分割しようとしたとき、CA内に空きのCIがない場合は、同様の分割を行う。
レコードをファイルと主記憶との間で転送する操作について、利用者が容易に行えるようにした方法には、順アクセス法、直接アクセス法、索引順アクセス法、区分アクセス法、及び仮想アクセス法がある。
各アクセス法は、上述したレコードの編成ファイルに略対応して処理できるように構成されている。その中にあって、本発明で取り扱う仮想記憶アクセス法(VSAM)は、仮想記憶編成のファイルに対するアクセス法で、エントリ順データセットに対しては、エントリ順及び相対バイトアドレス(RBA)指定によるアクセスができる。相対レコードデータセットに対しては、相対レコード番号指定および相対レコード番号順のアクセスが出来る。キー順データセットに対しては、キー指定、キー順の他、相対バイトアドレス(RBA)指定によるアクセスが出来る。
本発明で取り扱う外部記憶装置の代表的なものは、「ハードディスクドライブ」と呼ばれ、原理的には磁性を帯びた金属板(若しくはその代替品)に磁気ヘッドにより磁場の変化を生成し記録再生する装置がある。但し、次に述べる特徴を備える同等機能を提供するものは全て含むものである。
「ハードディスクドライブ」は、一連の記録識別可能な単位をまとめた「セクタ」と呼ばれる物理的単位に分割される。
また、「ハードディスク」を接続したコンピュータは、「オペレーティングシステム」(OS)と呼ばれるソフトウエア機構によって抽象化され、その物理的実在細部を隠蔽したまま、各内部、外部装置の制御が可能となっている。そのために、開発者(デベロッパ)や利用者(ユーザ)は、ソフトウエアを稼働させるに際しても、実際に稼働する各コンピュータ毎の物理的な構成の差異に依存する事無く、オペレーティングシステム上で統一した手順で処理を行わせることが可能である。
近代のオペレーティングシステムは、情報の管理単位を「ファイル」と言う抽象化された単位として、実際に外部記憶装置に記録管理されるセクタとの関連は、オペレーティングシステムが司る。また、ファイルを管理するための抽象化されたこの構造を「ファイルシステム」と総称する。
そこで、図2は本発明によるハードディスク上のドライブ構成の1例を示す。図2に示すように、ここまでで定義されたセクタは、基本的には情報の出し入れを行う最小単位であるため、ファイルシステムは非常に多くのセクタを含むハードディスクドライブに対して、さらに多数のセクタから構成されるパーティションと言う単位を導入し、効率的な管理が行えるようになっている。
次に、本発明における仮想ドライブを用いたパーティション操作について説明する。
以下の説明では、「パーティションのリザイズ」及び「リサイズ」という用語で、本発明により実現される仮想ドライブを用いたパーティションの再生成の過程を表すこととする。また、下記では、1つの実装例として、上述したオペレーティングシステムに基づいて説明することとする。
リサイズの対象となるパーティションを含むディスクに対して、リサイズ後のディスクを実現するターゲットと呼ぶ仮想ドライブを作成する。ここから以降、実際にはリサイズ対象のパーティションにしかアクセスが発生しない。そのため、実装上重要な要素として、対象パーティションへの操作を仮想化して仮想ドライブ「ミラー」を作成使用するが、本発明の以下の説明では、「ミラー」にリサイズ対象のパーティション構造がそのまま入っていると見なされるため、実装上の煩雑な細部を省きリサイズ対象分のみに限ることとするため、ミラーへの言及は行はない。
ここで、図3に基づき、マイクロソフト社のウインドウズ・オペレーティングシステムを例に取って説明する。
図1は仮想デバイスのドライバとの関係を示す図である。図に示す「マスタ・ブーツセクタ」10、「ユーザインタフェース11」、「機能的 動的リンク・ライブラリ」12等は、IBM−PC互換機の使用に従って設計製造されたコンピュータシステム上で動作する。そして、マイクロソフト社製のウインドウズ・オペレーティングシステムを例に取った際の動作を記述するための、マイクロソフト社の用語に基づくものであり、他のシステム構成/オペレーティングシステムでは等価な代替物と置き換えることが可能である。図中、(MS)とある部分はウインドウズの構成要素である。また、矢印は処理の流れを表す。最下段にある「実ディスクファイル」14は現実の外部記憶装置を表し、「仮想ディスクファイル」15は本発明のターゲット・ドライブ及びミラー・ドライブを含む仮想ドライブを構成ファイルを表す。
「インストーラブル・ファイルシステム・マネジャ」13が通常の高水準のファイルアクセスを処理し、「I/O スーパバイザ」16が低水準のファイルアクセス処理を行う。(実際には、ハードウエアに依存した「タイプスペシフィック・ドライバ」及び「ポート・ドライバ」に処理を依頼する。)
この情報/指示の入りと出を監視するために、高水準/低水準の2つのソフトウエアコンポーネント(「ファイルロケータ17,18」)で挟み、各々の情報(「入り」はファイルへのアクセス、「出」はセクタへのアクセス)を比較することで、「抽象化されたファイル」と「実際のデータ保管場所であるセクタ」を結び付け、前述したセクタ位置確定の機能を実現するが出来る。
ここで、本発明の詳細な説明をする。
図4は通常の処理の流れを示し、図5は仮想ドライブでの書き込み時の流れを示す。図6は仮想ドライブでの読み出し時の処理の流れを示す。(図中での同じソフトウエアは、図3、図4、図5、及び図6においても同じ符号とする。)
オペレーティングシステム、またはアプリケーションソフトウエアからファイルへのアクセスが発生すると、通常インストローラブル・ファイルシステム・マネジャ13へ引き渡される処理が一度ファイルロケータ・高水準17を経由する。その際、ファイルロケータ・高水準17は、実ドライブ14であるか、仮想ドライブ15であるか判別する。実ドライブであれば、図2に示す通りの通常処理を行う流れの処理を行ない、仮想ドライブであると判別され、読み出しの処理の場合は,図4に示す通り、読み出しは通常のドライブから行なう。書き込み処理の場合は、図3に示す通りの処理を行う。すなわち、書き込み時にアクセスするアドレスは、仮想ドライブへのアクセスを指示して得られたアドレスを取得後、ファイル属性の記録だけ主記憶上に保持し、ディスクドライブへの実際の書き込みは行わない。
図7は、書き込み、読み出しの状態を説明するファイルを示す図である。
図7において、D30ドライブを再生成する場合を想定して、D30はE31の直前まで領域を確保しているものとする。尚、斜線の部分は使用済領域を示し、線のない部分は、空き領域を示す。D30ドライブのコピーを行う場合、Fへのアクセスは、仮想デバイスドライバが読み出しをD30から読み出たし、書き込みを仮想ドライバ情報へのセクタ位置の更新で置き換え実際の書き込みは行わない。Fはセクタ位置の決定や、アクセス保護されたファイルへの間接的なアクセスを提供する純粋に技術的な手法である。新規に指定した位置に生成された仮想ドライブのG33にD30ドライブの全てのデータを仮想的にコピーする。
図8はドライブのコピーの状態を説明した図である。F32(実際にはD30)からG33に通常のコピーを実行することで高水準、低水準の両方のファイルアクセスが発生する。この両方のアクセスに割り込み、セクタ単位で位置を特定する。更に詳しく説明すると、仮想ドライブへのアクセスは、本発明の一部をなすファイルロケータ17,18と呼ぶ機能によって、全て、実際のドライブへのアクセスに置き換えられる。ファイルロケータ17,18は、オペレーティングシステムへの標準の割り込み処理によって実装され、オペレーティングシステムの提供するファイルへの高水準インターフェースと低水準インターフェースの両方に対して処理を割り込ませる。この機能は、読み出し時には、初めに全ての仮想ドライブ上のファイルへのアクセスを、対応する実際のドライブ上のファイルへのアクセスに置き換える。又同時に、仮想ドライブへの書き込み時には実際の書き込みは行わず、その低水準での書き込み情報を取得する処理に置き換える。その情報は仮想デバイスドライバが貯える。つまり、仮想ドライブからのデータの読み出しアクセスは、本発明に基づき実装される仮想デバイスドライバを経由し、実際のドライブ上のパーティションのデータの読取に置き換えられ、また、書き込みは仮想ドライブ上の位置決定だけで完了とする。
そして、その高水準と低水準の両方の割り込みによって、オペレーティングシステムが生成するアドレスを直接比較できるので、ファイル単位で指示されたディスクへのアクセスを「セクタ」単位で割り出せる。これにより、既存の、全ての先行技術とは異なりファイルシステムそのものの解析を必要とせず、オペレーティングシステムだけの機能を利用して、任意のファイルに属する全セクタの位置が決定できる。上述のように取得した各パーティション上の全ファイルを構成する全セクタの絶対位置を突き合わせ、そのセクタの移動先を決定し、主記憶上に確保した領域を対応表に格納する。
対象パーティション上の全ファイルの位置を決定するために、更には、Windowsオペレーティングシステムでのファイルのアクセス権の衝突をも防ぐため、前述の技術により、対象パーティションから「ミラー」ドライブを作成する。「ミラー」ドライブは、ウインドウズ・オペレーティングシステムのドライブマウントポイントに新規に対象パーティションと同じ属性値のエントリを作成することで容易に作成される。
但し、このままでは内容が存在しないばかりでなく、どんな意味でもアクセスできないので、仮想ドライブに対して、標準的なコマンドである「FDISK」コマンドと「FORMAT」コマンドでオペレーティングシステムにファイルシステムを生成させる。この際、前述のファイルロケータを適用することで、読取は対応する実ドライブからなされ、書き込みは、「実処理せずに」、その情報を仮想ドライブを構成するデバイスドライバが記録するだけで終了処理を行うことで、オペレーティングシステムの正規のディスクとして整備された外部記憶装置としてその動作が完備したものとなる。
次に「ターゲット」ドライブを、リサイズ後のサイズと位置を備えるように、対象の外部記憶装置上の、各セクタ位置により決定された仮想ドライブを生成し、ミラーと同様に、ファイルロケータを構成する仮想デバイスドライバにより「FDISKとFORMAT」を行い、オペレーティングシステムの機能でファイルシステムを生成する。
そして、対象パーティションのミラーから、ターゲットに全てのファイルのコピーを、ファイルロケータを構成する「仮想デバイスドライバを経由して」仮想的に行う。この際行われる処理を詳述すると、ミラーディスク上のファイルシステムを適切に順序付けた後(標準的なファイルシステムは循環しない単方向の階層グラフ構造であるため、必ず順序付けが可能である。)、先頭ファイルからその順序に従って順次ターゲットディスクに対して、仮想デバイス経由でファイルのコピーを行う。
さらに、コピーの際に、ミラー上のファイルは、その構成要素であるセクタに分解され、ファイルロケータに読取られ、ターゲットに書き込む際には、書き込まれるべき位置の情報をファイルロケータがターゲットディスク上の各セクタの位置の情報として蓄積する。
図9は位置情報の対応表の例を示す。全ての順序を尽くした後、ファイルロケータはミラーとターゲット上にある対応する全てのファイルを構成するセクタに対して、その新旧の位置情報の対応表を生成する。
この作業により、オペレーティングシステムが、ターゲットディスクに読み出しを実行すると、セクタ位置情報はファイルロケータが返し、ファイル内容は,ファイルロケータを構成する仮想デバイスドライバを経由して、ミラー上の当該セクタを探し出し、その内容を返すことが出来るようになる。その結果、操作対象となったパーティション上の全てのディレクトリに対してはディレクトリ構造がコピーされ、ファイルに対してはその属性とともに、その位置が(ミラーを介して)セクタ単位で決定し、ターゲット上での全セクタの位置と大きさを確保することが出来る。この作業が終わると、ターゲットは「見掛上」対象パーティションと全く同じファイルで満たされ、しかもパーティションとしては、指定の属性を備えたものとなっている。(但し、その全てが位置と大きさ、属性だけからなる仮想的なファイルだけであり、ファイルとしての実体は、ファイルロケータを介してミラー上のファイルを参照して、実際のパーティション上のファイルを指定するものである。)
以上の手順による対象パーティションに対する「読み出し」と「仮想的な書き込み」アクセスにより、現在のファイルのセクタごとの位置を決定でき、同様にファイルロケータを経由したターゲットに対するアクセスにより移動先のセクタの位置を確定できる。
そこで最終的なセクタの移動について説明する。
図10は、ファイルコピーの状態を説明する図である。図10での上段は、実際のパーティション1上に、ファイル(本実施の形態例では説明を簡略化するために、1ファイル1セクタと仮定する。)が配置されている状態を示し、下段は指定の位置に新規に作成した仮想ドライブ上に全ファイルを仮想的にコピーした状態を示している。このとき、パーティション1上の、ファイル、セクタを全て仮想ドライブ上の配置のままに再配置すると、パーティション1が、新規に作成された仮想ドライブと同じになり、パーティション1を再編成したことになる。この時の手法としては、主記憶装置上に作業領域を設け、パーティション1上のセクタを仮想ドライブ上の状態のままに順次入れ替えることで、その全体を目的の位置に移動再配置を行う。
図11は、パーティション上のセクタの入替を説明する図である。
この図の例で示すように、作業領域を経由して次のように入替を実行する。
この例では(A,B)により、A番目のセクタとB番目のセクタと入れ替える処理を示している。
最終手続きとして、ここまでに得られたセクタの位置に従って、全セクタを対応するターゲット上の位置に移動することでパーティションの再生成が完了する。
このセクタ単位での移動の際には、オペレーティングシステムの機能により、対象となっているパーティションが含まれるディスクをロックし、オペレーティングシステムに付随する副次的な処理を停止させる。その上で、対応表に従ってセクタの移動が迅速に行われるよう、キャッシュ機構を取り入れた実装上の開発がなされている。また、この部分は、当該オペレーティングシステム、ハードウエアに依存する部分が顕著であるため、種々のハードウエアプラットホームに合わせた調整が可能である。
尚、本発明においては、次のような複数の技術を併用することが可能であり、本発明においても重要である。
実装の際には、全セクタ位置をメモリ上で保持しセクタ移動の処理を行うことが可能である。この場合必要になるのは、ミラーとターゲットを比較して得られる、移動・交換すべきセクタを、各々記した表だけである。従って、この表の順にセクタを置き換えればよい。この対応表を作成する手順をターゲットへのコピー処理と同時に行うことで、手順の省略とメモリ領域の節約が可能である。
また、実装技術として特記すべきは、実装対象となるオペレーティングシステムによっては、ファイル実体を含むパーティションを操作する場合、そのオペレーティングシステムの実装の制限のため、「任意の位置には移動させられない」一群のファイルが存在する。これらの「例外的な」ファイル群に対しては、「優先されたファイル」としてコピーの順位を人為的に上げて、事前に移動することでその移動先を制御することが可能である。
また、この場合、現実の装置では、全セクタの位置を保持したために全体的にメモリが不足し、セクタを移動するために用い得る種々の既知の高速アルゴリズムを採用することが出来ない可能性がある。この問題を回避するために、ミラー,ターゲット共に、実パーティション上にその全セクタのインデックスファイルをコピーに先立って作成し、コピーの進捗に従ってインデックスを更新し(インデックス自体は処理の間は移動しない。)、ファイル単位の処理をインデックスを介した全体処理に置き換えて、処理全体の高速化を図ることが出来る。
さらに、処理したインデックスのエントリを一定周期(逐一記録することも可能)で記録更新することで、電源断絶等の外的な障害発生時に備えることが可能となる。
逐一記録更新した場合は、確実に再開すべき地点が判明するため、ハードウエア的な損失が発生していなければ、常に障害発生地点より処理を再開させることが可能になる。但し、その反面外部記憶装置への書き込みが常時発生しているため、若干の処理速度の低下が予測される。
それに対して、一定間隔で記録更新した場合は、速度低下は逐一の更新に比べて軽減されるものの、ある範囲のセクタが置換されたかどうかの判別が出来ない場合には、対応のファイルが失われる可能性がある。なお、ターゲットから見たインデックスは、ファイル毎に並べ替えられたものとなるため、損失をファイル毎に押えることが出来る。このことが出来ない場合、ファイルシステムとして不整合が発生し、全てが失われることもあり得る。この観点から見ても本発明は十分な安全対策がある。
パーティションの再生成において、オペレーティングシステムそのものによりファイルシステムを生成するため、新たなシステムを開発する事無く、互換性を維持しつつ高機能なパーティション管理機能を実現できる。
産業上の利用可能性
稼動中のコンピュータのディスク装置上に既に確保されているパーティションを変更が必要な時、その内容を維持したまま、仮想ドライブ技術により、ディスク上の新たな位置に新たなサイズと特性でパーティションの再生成が出来るパーティション管理機能をもったソフトウエアの提供。
【図面の簡単な説明】
図1は、本発明に係る、コンピュータを構成する基本要素を示す図である。
図2は、本発明に係る、ハードディスク上のドライブ構成の1例を示す。
図3は、本発明に係る、仮想デバイスのドライバとの関係を示す図である。
図4は、本発明に係る、仮想ドライブを使用しない通常の処理の流れを示す。
図5は、本発明に係る、仮想ドライブでの書き込み時の流れを示す。
図6は、本発明に係る、仮想ドライブでの読み出し時の処理の流れを示す。
図7は、本発明に係る、書き込み読み出しの状態を説明するファイルを示す図である。
図8は、本発明に係る、ドライブのコピーの状態を説明した図である。
図9は、本発明に係る、位置情報の対応表の例を示す。
図10は、本発明に係る、ファイルコピーの状態を説明する図である。
図11は、本発明に係る、パーティション上のセクタの入替を説明する図である。
Claims (23)
- 外部記憶装置における物理セクタに基づいたパーティションを単位として分割管理を行うオペレーティングシステムにおいて、
前記パーティションを任意のサイズに変更する工程と、
前記オペレーティングシステムに予め備えられた標準の手順により、前記変更後のパーティションを新規のパーティションとして作成する工程と、
前記新規のパーティションの作成情報に基づいて、前記パーティションの全てのデータの新たな物理的位置を決定する工程と、
前記新たな物理的位置に基づいて置換すべき物理セクタの位置情報を得て、元の位置情報と新たな位置情報との差異情報を生成する工程と、
前記生成された差異情報に基づき前記パーティションを再生成する工程と、
前記再生成処理の進捗点を逐次記録及び更新する工程と、
の各工程によって仮想ドライブを作成し、以って、ファイルシステムの内部構造に依存せずパーティションの内容を維持したままでパーティションの再生成を行うことを特徴とする仮想ドライブを使用したパーティションの再生成方法。 - 前記仮想ドライブは、ターゲット・ドライブとミラー・ドライブを含み構成されていることを特徴とする請求項1に記載の仮想ドライブを使用したパーティションの再生成方法。
- 前記ターゲット・ドライブには、外部記憶装置の物理的なセクタの位置から前記変更後の位置とサイズが記録されていることを特徴とする請求項2に記載の仮想ドライブを使用したパーティションの再生成方法。
- 前記ミラー・ドライブには、前記再生成対象のパーティションの構造が記録されていることを特徴とする請求項2に記載の仮想ドライブを使用したパーティションの再生成方法。
- 前記変更は、前記パーティションのサイズと位置を前記仮想ドライブに作成することにより前記パーティションの内容にかかわらず自由に指定することが出来ることを特徴とする請求項1に記載の仮想ドライブを使用したパーティションの再生成方法。
- 前記パーティションの物理的な位置を決定する工程は、ファイルアクセスの際のオペレーティングシステムによるディスクアクセスのデータを記録し、ファイルとその物理的な構成要素であるセクタとを直接結び付け、その物理的位置を確定することを特徴とする請求項1に記載の仮想ドライブを使用したパーティションの再生成方法。
- 前記物理的位置の確定は、ファイルの最小単位である物理セクタの位置の情報をオペレーティングシステムの情報から得てファイルロケータにより行われることを特徴とする請求項6記載の仮想ドライブを使用したパーティションの再生成方法。
- 前記ファイルロケータは、オペレーティングシステムへの高水準と低水準の標準の割り込みによって、オペレーティングシステムが生成するアドレスを取得し、元のセクタのアドレスと比較して新しいセクタの位置を決定することを特徴とする請求項7記載の仮想ドライブを使用したパーティションの再生成方法。
- 前記ファイルロケータは、仮想デバイスドライバを含み構成されていることを特徴とする請求項7記載の仮想ドライブを使用したパーティションの再生成方法。
- 前記仮想デバイスドライバは、前記ファイルロケータにより取得された低水準の書き込み情報を蓄積することを特徴とする請求項9記載の仮想ドライブを使用したパーティションの再生成方法。
- 前記仮想ドライブ手段は、対応する外部記憶装置と同じデータ構造をメモリ領域上に生成して保持され、読み出し、書き込み等の処理を選択して動作を変更できる仮想ドライブであることを特徴とする請求項7に記載の仮想ドライブを使用したパーティションの再生成方法。
- 作成された前記仮想ドライブの消去は、ファイルシステムより独立した処理として、切り離して行うことを特徴とする請求項11に記載の仮想ドライブを使用したパーティションの再生成方法。
- 前記仮想ドライブに生成した仮想パーティションは、対応する実データに影響を及ぼすこと無く初期化処理されることを特徴とする請求項1に記載の仮想ドライブを使用したパーティションの再生成方法。
- 前記位置情報による差異情報の生成は、外部記憶装置上の置換すべき一連の物理セクタの位置情報と、元の位置と移動先の位置情報との対応関係から生成することを特徴とする請求項1に記載の仮想ドライブを使用したパーティションの再生成方法。
- 前期対応関係の記録は、前記ファイルロケータにより前記ミラー・ドライブと前記ターゲット・ドライブに記録されている各々対応する全てのセクタに対して、元の位置と再生成後の位置情報の対応表であることを特徴とする請求項14に記載の仮想ドライブを使用したパーティションの再生成方法。
- 前記対応表を使用し、パーティションに記録されている全てのファイル及びセクタを仮想ドライブに記録されているままの状態で入替を行ないセクタの再配置をすることを特徴とする請求項15に記載の仮想ドライブを使用したパーティションの再生成方法。
- 前記処理の進捗点の逐次記録及び更新は、処理したインデックスのエントリを逐一、若しくは、一定周期でファイルに記録及び更新することを特徴とする請求項1に記載の仮想ドライブを使用したパーティションの再生成方法。
- コンピュータ・システムの外部記憶装置に記憶された情報に対するアクセス及び変更を制御する装置が設けられ、前記外部記憶装置における、物理セクタに基づいたパーティションを単位として分割管理を行うオペレーティングシステムを有するデータ処理装置において、
仮想ドライブ手段により、ファイルシステムの内部構造に依存せず、前記パーティションの内容を維持したままで、前記パーティションの再生成を行う処理装置であって、
前記パーティションを任意のサイズに変更する手段と、
前記オペレーティングシステムに予め備えられた標準の手順により、前記変更後のパーティションを新規のパーティションとして作成する手段と、
前記新規のパーティションの作成情報に基づいて、前記パーティションの全てのデータの新たな物理的位置を決定する手段と、
前記新たな物理的位置に基づいて置換すべき物理セクタの位置情報を得て、元の位置情報と新たな位置情報との差異情報を生成する手段と、
前記生成された差異情報に基づき前記パーティションを再生成する手段と、
前記再生成処理の進捗点を逐次記録及び更新する手段と、
の各手段を含み、以って、パーティションの内容を維持し新たなパーティションによって生成された仮想ドライブ手段を有するように構成されたデータ処理装置。 - コンピュータ・システムの外部記憶装置に記憶された情報に対するアクセス及び変更を制御する装置であって、前記パーティションの物理的な位置を決定する手段は、ファイルアクセスの際のオペレーティングシステムによりディスクアクセスのデータを記録し、ファイルとその物理的な構成要素であるセクタとを直接結び付け、その物理的位置を確定することを特徴とする請求項18に記載のデータ処理装置。
- 前記仮想ドライブ手段は、対応する外部記憶装置と同じデータ構造をメモリ領域上に生成して保持され、読み出し、書き込み等の処理を選択して動作を変更できる仮想ドライブであることを特徴とする請求項18に記載のデータ処理装置。
- コンピュータ・システムの外部記憶装置に記憶された情報に対するアクセス及び変更を制御する装置が設けられ、前記外部記憶装置における、物理セクタに基づいたパーティションを単位として分割管理を行うオペレーティングシステムを格納した記憶装置において、
前記パーティションを任意のサイズに変更する手段と、
前記オペレーティングシステムに予め備えられた標準の手順により、前記変更後のパーティションを新規のパーティションとして作成する手段と、
前記新規のパーティションの作成情報に基づいて、前記パーティションの全てのデータの新たな物理的位置を決定する手段と、
前記新たな物理的位置に基づいて置換すべき物理セクタの位置情報を得て、元の位置情報と新たな位置情報との差異情報を生成する手段と、
前記生成された差異情報に基づき前記パーティションを再生成する手段と、
前記再生成処理の進捗点を逐次記録及び更新する手段と、
の各工程から構成され、以って、ファイルシステムの内部構造に依存せずパーティションの内容を維持したままで新たなパーティションの再生成を行う仮想ドライブを使用したパーティションの再生成手段を記憶したデータ記憶装置。 - コンピュータ・システムの外部記憶装置に記憶された情報に対するアクセス及び変更を制御する装置が設けられた装置であって、前記パーティションの物理的な位置を決定する手段は、ファイルアクセスの際のオペレーティングシステムによるディスクアクセスのデータを記録し、ファイルとその物理的な構成要素であるセクタとを直接結び付け、その物理的位置を確定する手段を記憶したことを特徴とする請求項21に記載のデータ記憶装置。
- 前記装置であって、前記装置前記仮想ドライブ手段は、対応する外部記憶装置と同じデータ構造をメモリ領域上に生成して保持され、読み出し、書き込み等の処理を選択して動作を変更できる仮想ドライブ手段を記憶したことを特徴とする請求項21に記載のデータ記憶装置。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2001/000023 WO2002056179A1 (fr) | 2001-01-05 | 2001-01-05 | Procede de regeneration de partition a l'aide d'un pilote virtuel, processeur de donnees et dispositif de stockage |
Publications (1)
Publication Number | Publication Date |
---|---|
JPWO2002056179A1 true JPWO2002056179A1 (ja) | 2004-05-20 |
Family
ID=11736880
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002556369A Pending JPWO2002056179A1 (ja) | 2001-01-05 | 2001-01-05 | 仮想ドライブを使用したパーティションの再生成方法、データ処理装置及びデータ記憶装置 |
Country Status (6)
Country | Link |
---|---|
US (1) | US20030014585A1 (ja) |
EP (1) | EP1349076A1 (ja) |
JP (1) | JPWO2002056179A1 (ja) |
KR (1) | KR20020080458A (ja) |
CN (1) | CN1404587A (ja) |
WO (1) | WO2002056179A1 (ja) |
Families Citing this family (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6832287B2 (en) * | 2001-10-01 | 2004-12-14 | International Business Machines Corporation | System for fast tape file positioning |
US7505980B2 (en) | 2002-11-08 | 2009-03-17 | Crossroads Systems, Inc. | System and method for controlling access to multiple physical media libraries |
US7000051B2 (en) | 2003-03-31 | 2006-02-14 | International Business Machines Corporation | Apparatus and method for virtualizing interrupts in a logically partitioned computer system |
US7454565B1 (en) | 2004-06-29 | 2008-11-18 | Crossroads Systems, Inc | System and method for distributed partitioned library mapping |
US7428613B1 (en) | 2004-06-29 | 2008-09-23 | Crossroads Systems, Inc. | System and method for centralized partitioned library mapping |
US7440936B2 (en) * | 2004-10-07 | 2008-10-21 | International Business Machines Corporation | Method for determining an access mode to a dataset |
GB2420640A (en) * | 2004-11-29 | 2006-05-31 | Hewlett Packard Development Co | Automatic monitoring and adjusting of the size of a partition of a logical unit |
US7370173B2 (en) | 2005-01-28 | 2008-05-06 | Crossroads Systems, Inc. | Method and system for presenting contiguous element addresses for a partitioned media library |
US7971006B2 (en) * | 2005-01-28 | 2011-06-28 | Crossroads Systems, Inc. | System and method for handling status commands directed to partitioned media library |
US7451291B2 (en) * | 2005-01-28 | 2008-11-11 | Crossroads Systems, Inc. | System and method for mode select handling for a partitioned media library |
US7519851B2 (en) * | 2005-02-08 | 2009-04-14 | Hitachi, Ltd. | Apparatus for replicating volumes between heterogenous storage systems |
US7788413B1 (en) | 2005-04-29 | 2010-08-31 | Crossroads Systems, Inc. | Method and system for handling commands requesting movement of a data storage medium between physical media libraries |
US7761867B2 (en) * | 2005-07-29 | 2010-07-20 | International Business Machines Corporation | Method and system for creation of operating system partition table |
JP4893130B2 (ja) * | 2005-08-05 | 2012-03-07 | セイコーエプソン株式会社 | 情報処理装置、データ処理方法およびプログラム |
KR20070111263A (ko) * | 2006-05-17 | 2007-11-21 | 삼성전자주식회사 | 재부팅 없이 영역 분할을 수행하는 장치 및 그 방법 |
US7853928B2 (en) * | 2007-04-19 | 2010-12-14 | International Business Machines Corporation | Creating a physical trace from a virtual trace |
WO2010005430A1 (en) * | 2008-07-08 | 2010-01-14 | Hewlett-Packard Development Company, L.P. | Adaptable external drive |
US8150801B2 (en) * | 2008-08-20 | 2012-04-03 | Microsoft Corporation | Recovery of a computer that includes virtual disks |
KR101174057B1 (ko) * | 2008-12-19 | 2012-08-16 | 한국전자통신연구원 | 인덱스 분석장치와 인덱스 검색장치 및 그 방법 |
US20110093848A1 (en) * | 2009-10-19 | 2011-04-21 | International Business Machines Corporation | System for improving a user-space environment |
US8250352B2 (en) * | 2009-11-18 | 2012-08-21 | International Business Machines Corporation | Isolating workload partition space |
US9558074B2 (en) * | 2010-06-11 | 2017-01-31 | Quantum Corporation | Data replica control |
US9183245B2 (en) * | 2011-11-07 | 2015-11-10 | Sap Se | Implicit group commit when writing database log entries |
CN103729255B (zh) * | 2014-01-20 | 2020-01-31 | 联想(北京)有限公司 | 信息处理方法、装置及电子设备 |
US9454590B2 (en) * | 2014-01-28 | 2016-09-27 | International Business Machines Corporation | Predicting validity of data replication prior to actual replication in a transaction processing system |
US11023601B2 (en) * | 2018-04-20 | 2021-06-01 | Rohde & Schwarz Gmbh & Co. Kg | System and method for secure data handling |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5930831A (en) * | 1995-02-23 | 1999-07-27 | Powerquest Corporation | Partition manipulation architecture supporting multiple file systems |
US5675769A (en) * | 1995-02-23 | 1997-10-07 | Powerquest Corporation | Method for manipulating disk partitions |
EP1025534B1 (en) * | 1997-08-20 | 2011-03-16 | Powerquest Corporation | Computer partition manipulation during imaging |
DE69904462T2 (de) * | 1998-05-01 | 2003-10-02 | Powerquest Corp | Manipulation von partitionen virtueller und realer rechnerspeichervorrichtungen |
US6185666B1 (en) * | 1999-09-11 | 2001-02-06 | Powerquest Corporation | Merging computer partitions |
US20030120858A1 (en) * | 2000-09-15 | 2003-06-26 | Matrix Semiconductor, Inc. | Memory devices and methods for use therewith |
-
2001
- 2001-01-05 US US10/203,521 patent/US20030014585A1/en not_active Abandoned
- 2001-01-05 WO PCT/JP2001/000023 patent/WO2002056179A1/ja not_active Application Discontinuation
- 2001-01-05 CN CN01805253A patent/CN1404587A/zh active Pending
- 2001-01-05 JP JP2002556369A patent/JPWO2002056179A1/ja active Pending
- 2001-01-05 EP EP01900626A patent/EP1349076A1/en not_active Withdrawn
- 2001-01-05 KR KR1020027011429A patent/KR20020080458A/ko not_active Application Discontinuation
Non-Patent Citations (2)
Title |
---|
JPN5002026122, Dinah McNutt, ""DAEMONS&DRAGONS 95 論理ボリューム・マネージャー"", UNIX MAGAZINE, 19980118, Vol. 13 No.1, P. 118−120, JP, 株式会社アスキー * |
JPN5002026123, 壁谷 勇佑, ""Partition Magic 4.0"", Linux magazine, 19991231, Vol. 1 No. 1, P. 74−79, JP, 株式会社アスキー * |
Also Published As
Publication number | Publication date |
---|---|
CN1404587A (zh) | 2003-03-19 |
KR20020080458A (ko) | 2002-10-23 |
WO2002056179A1 (fr) | 2002-07-18 |
EP1349076A1 (en) | 2003-10-01 |
US20030014585A1 (en) | 2003-01-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPWO2002056179A1 (ja) | 仮想ドライブを使用したパーティションの再生成方法、データ処理装置及びデータ記憶装置 | |
US5029125A (en) | Method of reading and writing files on nonerasable storage media | |
CA1303747C (en) | Method of rapidly opening disk files identified by path names | |
US7330947B2 (en) | Method and apparatus for backing up data in virtual storage medium | |
JP4402103B2 (ja) | データ記憶装置、そのデータ再配置方法、プログラム | |
JPH0820990B2 (ja) | 異なるファイル・システムにまたがる記憶管理システム | |
US20080270698A1 (en) | Data migration including operation environment information of a host computer | |
KR20000022716A (ko) | 로그 구조화 목표 저장장치를 사전에 구성하여 볼륨을 효율적으로 복사하는 방법 및 장치 | |
JP2804974B2 (ja) | 光磁気ディスクのデータ整合性を維持する方法および装置 | |
JPH0461372B2 (ja) | ||
US20070112722A1 (en) | File system and file information processing method | |
JP4159506B2 (ja) | 階層記憶装置、その復旧方法、及び復旧プログラム | |
US6449705B1 (en) | Method and apparatus for improving performance of drive linking through use of hash tables | |
JP2891877B2 (ja) | 記録媒体及び電子出版物利用システム及び処理方法 | |
US20060143423A1 (en) | Storage device, data processing method thereof, data processing program thereof, and data processing system | |
JP2005316624A (ja) | データベース再編成プログラム、データベース再編成方法、及びデータベース再編成装置 | |
JPH06187201A (ja) | ファイルシステム | |
JP3614886B2 (ja) | ファイルシステム | |
JPH01255028A (ja) | 外部記憶装置のアクセス方法 | |
JPH09293007A (ja) | プログラムインストール装置 | |
JP3925461B2 (ja) | 計算機システム | |
JPS61276040A (ja) | 論理フアイルアクセス方式 | |
JPH07152624A (ja) | 二重化ファイル書き込み方法 | |
JP2002132555A (ja) | データベースアクセス方式,方法,および記録媒体 | |
JPH1165900A (ja) | ソフトウェアのインストール方法およびその記録媒体 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A625 | Written request for application examination (by other person) |
Free format text: JAPANESE INTERMEDIATE CODE: A625 Effective date: 20071206 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100806 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20100813 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20110118 |