(57)【要約】【課題】ファイルシステムを、ユーザが所望する状態にロールバックすることができる。【解決手段】ロールバックポイント検索部は、ロールバック制御部の制御のもと、ロールバックポイントを検索し、検索結果や検索処理の進捗情報を、ロールバック制御部に返す。マウント処理部は、ドライブに装着されるリムーバブル記録媒体に対して、読み出し専用マウント処理および追記可能マウント処理を実行する。マウント処理部は、マウント結果やマウント処理の進捗情報を、ロールバック制御部に返す。本開示は、例えば、情報処理装置に適用することができる。【選択図】図２
2014067112.tif 000002
【特許請求の範囲】
【請求項１】
ファイルシステムの複数のロールバックポイントを検索する検索部と、
前記検索部により検索された複数のロールバックポイントから、ユーザの操作に応じたロールバックポイントを選択する選択部と、
前記選択部により選択されたロールバックポイントにおけるファイルシステムの状態を、読み出し専用状態にマウントしてから、ユーザの操作に応じて、読み書き可能な状態にマウントするマウント処理部と
を備える情報処理装置。
【請求項２】
前記マウント処理部は、前記選択部により選択されたロールバックポイントにおけるファイルシステムの状態を、読み出し専用状態にマウントしてから、前記選択部によりユーザの操作に応じた他のロールバックポイントが選択された場合、前記選択部により選択された他のロールバックポイントにおけるファイルシステムの状態を、読み出し専用状態にマウントする
請求項１に記載の情報処理装置。
【請求項３】
前記マウント処理部は、前記選択部により選択されたロールバックポイントにおけるファイルの管理情報を用いることで、前記選択部により選択されたロールバックポイントにおけるファイルシステムの状態を読み出し専用状態にマウントする
請求項２に記載の情報処理装置。
【請求項４】
前記マウント処理部は、前記選択部により選択されたロールバックポイントにおけるファイルの管理情報に基づき、現在参照中のファイルの管理情報を再構築することで、前記選択部により選択されたロールバックポイントにおけるファイルシステムの状態を読み書き可能な状態にマウントする
請求項３に記載の情報処理装置。
【請求項５】
前記検索部は、現在参照中のファイルの管理情報から順に、前記ファイルの管理情報に埋め込まれた１つ前のファイルの管理情報の位置を示す情報に基づいて、前記ロールバックポイントを検索する
請求項１に記載の情報処理装置。
【請求項６】
前記ファイルシステムは、ＵＤＦ(Universal Disk Format)である
請求項１に記載の情報処理装置。
【請求項７】
情報処理装置が、
ファイルシステムの複数のロールバックポイントを検索し、
検索された複数のロールバックポイントから、ユーザの操作に応じたロールバックポイントを選択し、
選択されたロールバックポイントにおけるファイルシステムの状態を、読み出し専用状態にマウントしてから、ユーザの操作に応じて、読み書き可能な状態にマウントする
情報処理方法。
【請求項８】
コンピュータを、
ファイルシステムの複数のロールバックポイントを検索する検索部と、
前記検索部により検索された複数のロールバックポイントから、ユーザの操作に応じたロールバックポイントを選択する選択部と、
前記選択部により選択されたロールバックポイントにおけるファイルシステムの状態を、読み出し専用状態にマウントしてから、ユーザの操作に応じて、読み書き可能な状態にマウントするマウント処理部と
して機能させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、情報処理装置および方法、並びにプログラムに関し、特に、ファイルシステムを、ユーザが所望する状態にロールバックすることができるようにした情報処理装置および方法、並びにプログラムに関する。
【背景技術】
【０００２】
特許文献１には、ファイルシステムが安全に保たれることを保証するシステムが記載されている。特に更新時などにファイルシステムに障害が発生し、更新処理が途中で中断されると、ファイルシステムの整合性を保つことができなくなり、ファイルシステムを利用することが困難になる。特許文献１においては、このような障害時でも更新前のファイルシステムにロールバックすることが保障されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００４−１０２６６０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、上述した特許文献１に記載の提案では、ロールバックポイントをファイルシステムのある状態毎に定義できなかった。すなわち、ロールバックポイントを複数保持することができなかった。
【０００５】
本開示は、このような状況に鑑みてなされたものであり、ファイルシステムを、ユーザが所望する状態にロールバックすることができるものである。
【課題を解決するための手段】
【０００６】
本開示の一側面の情報処理装置は、ファイルシステムの複数のロールバックポイントを検索する検索部と、前記検索部により検索された複数のロールバックポイントから、ユーザの操作に応じたロールバックポイントを選択する選択部と、前記選択部により選択されたロールバックポイントにおけるファイルシステムの状態を、読み出し専用状態にマウントしてから、ユーザの操作に応じて、読み書き可能な状態にマウントするマウント処理部とを備える。
【０００７】
前記マウント処理部は、前記選択部により選択されたロールバックポイントにおけるファイルシステムの状態を、読み出し専用状態にマウントしてから、前記選択部によりユーザの操作に応じた他のロールバックポイントが選択された場合、前記選択部により選択された他のロールバックポイントにおけるファイルシステムの状態を、読み出し専用状態にマウントすることができる。
【０００８】
前記マウント処理部は、前記選択部により選択されたロールバックポイントにおけるファイルの管理情報に基づき、現在参照中のファイルの管理情報を再構築することで、前記選択部により選択されたロールバックポイントにおけるファイルシステムの状態を読み書き可能な状態にマウントすることができる。
【０００９】
前記検索部は、現在参照中のファイルの管理情報から順に、前記ファイルの管理情報に埋め込まれた１つ前のファイルの管理情報の位置を示す情報に基づいて、前記ロールバックポイントを検索することができる。
【００１０】
前記ファイルシステムは、ＵＤＦ(Universal Disk Format)である。
【００１１】
本開示の一側面の情報処理方法は、情報処理装置が、ファイルシステムの複数のロールバックポイントを検索し、検索された複数のロールバックポイントから、ユーザの操作に応じたロールバックポイントを選択し、選択されたロールバックポイントにおけるファイルシステムの状態を、読み出し専用状態にマウントしてから、ユーザの操作に応じて、読み書き可能な状態にマウントする。
【００１２】
本開示の一側面のプログラムは、コンピュータを、ファイルシステムの複数のロールバックポイントを検索する検索部と、前記検索部により検索された複数のロールバックポイントから、ユーザの操作に応じたロールバックポイントを選択する選択部と、前記選択部により選択されたロールバックポイントにおけるファイルシステムの状態を、読み出し専用状態にマウントしてから、ユーザの操作に応じて、読み書き可能な状態にマウントするマウント処理部として機能させる。
【００１３】
本開示の一側面においては、ファイルシステムの複数のロールバックポイントが検索され、検索された複数のロールバックポイントから、ユーザの操作に応じたロールバックポイントが選択される。そして、選択されたロールバックポイントにおけるファイルシステムの状態が、読み出し専用状態にマウントされてから、ユーザの操作に応じて、読み書き可能な状態にマウントされる。
【発明の効果】
【００１４】
本開示によれば、ファイルシステムを、ユーザが所望する状態にロールバックすることができる。
【図面の簡単な説明】
【００１５】
【図１】本技術を適用した情報処理装置の構成例を示す図である。
【図２】情報処理装置の機能ブロックの構成例を示すブロック図である。
【図３】情報処理装置のロールバック処理を説明するフローチャートである。
【図４】画面例を示す図である。
【図５】ロールバックポイントの詳細を説明する図である。
【図６】リムーバブル記録媒体上のデータの記録の初期状態を説明する図である。
【図７】リムーバブル記録媒体上のデータにおけるFile-1追記後の記録状態を示す図である。
【図８】リムーバブル記録媒体上のデータにおけるFile-2追記後の記録状態を示す図である。
【図９】リムーバブル記録媒体上のデータにおけるFile-1削除後の記録状態を示す図である。
【図１０】読み出し専用のロールバック行った後の状態を示す図である。
【図１１】追記可能ロールバック（マウント）処理を行った状態を示す図である。
【図１２】従来のロールバックポイントの検索方法を示すである。
【図１３】本技術のロールバックポイントの検索方法を示すである。
【図１４】Previous Location情報の埋め込み方法を説明する図である。
【発明を実施するための形態】
【００１６】
以下、本開示を実施するための形態（以下実施の形態とする）について説明する。
【００１７】
[本技術の情報処理装置の構成]
図１は、本技術を適用した情報処理装置の構成例を示す図である。
【００１８】
情報処理装置１１において、CPU（Central Processing Unit）２１、ROM（Read Only Memory）２２、RAM（Random Access Memory）２３は、バス２４により相互に接続されている。
【００１９】
バス２４には、さらに、入出力インタフェース２５が接続されている。入出力インタフェース２５には、入力部２６、出力部２７、記憶部２８、通信部２９、及びドライブ３０が接続されている。
【００２０】
入力部２６は、キーボード、マウス、マイクロホンなどよりなる。出力部２７は、ディスプレイ、スピーカなどよりなる。記憶部２８は、ハードディスクや不揮発性のメモリなどよりなる。通信部２９は、ネットワークインタフェースなどよりなる。
【００２１】
ドライブ３０は、磁気ディスク、光ディスク、光磁気ディスク、又は半導体メモリなどのリムーバブル記録媒体３１を駆動し、データを記録したり、リムーバブル記録媒体３１に記録されているデータを削除する。リムーバブル記録媒体３１は、例えば、１２の光ディスクで１つのカートリッジとなるように構成することもできる。
【００２２】
以上のように構成される情報処理装置１１では、CPU２１が、例えば、記憶部２８に記憶されているプログラムを、入出力インタフェース２５及びバス２４を介して、RAM２３にロードして実行する。これにより、例えば、図２の機能ブロックが構成され、所定の処理が行われる。
【００２３】
なお、情報処理装置１１のハードウエア構成は、図１の例に限定されず、後述する図２の機能的構成が実現される構成を少なくとも有していればよい。
【００２４】
［情報処理装置の機能構成例］
図２は、情報処理装置の機能構成例を示すブロック図である。
【００２５】
図２の例において、情報処理装置１１は、ユーティリティ部５１およびファイル管理アプリケーション５２を含むように構成されている。
【００２６】
ユーティリティ(Utility)部５１は、ドライブ３０に装着されるリムーバブル記録媒体３１に記録されているデータを管理するファイルシステムの状態をロールバックするためのユーティリティアプリケーションである。ユーティリティ部５１は、ＧＵＩ（Graphical User Interface）部７１、メディアビューワ部７２、およびドライブマネージャ部７３を含むように構成されている。
【００２７】
メディアビューワ部７２は、リムーバブル記録媒体３１の状態を確認するための機能であり、ロールバック機能部８１および進捗確認部８２を含むように構成されている。ドライブマネージャ部７３は、リムーバブル記録媒体３１上のファイルシステムのロールバック処理を実行する機能であり、ロールバック制御部９１、ロールバックポイント検索部９２、およびマウント処理部９３により構成されている。
【００２８】
ＧＵＩ部７１は、入力部２６を構成するキーボードやマウスなど（以下、単に入力部２６と称する）を介して入力されるユーザの操作に対応する操作信号を、メディアビューワ部７２に供給する。また、ＧＵＩ部７１は、メディアビューワ部７２からの情報に基づいて、ロールバックポイントのリストやダイアログなどの画面を生成し、生成した画面を、出力部２７を構成するディスプレイ（以下、単に出力部２７と称する）に表示させる。
【００２９】
ロールバック機能部８１は、ロールバック機能において、ＧＵＩ部７１とドライブマネージャ部７３との間の処理の橋渡しを行う。すなわち、ロールバック機能部８１は、ＧＵＩ部７１を介して供給されるユーザからの指示をドライブマネージャ部７３に供給し、ドライブマネージャ部７３からの情報をＧＵＩ部７１に供給する。
【００３０】
進捗確認部８２は、ロールバックポイント検索部９２によるロールバックポイントの検索の進捗を示す情報や、マウント処理部９３によるマウント処理の進捗を示す情報を、ＧＵＩ部７１に供給し、ＧＵＩ部７１を介して、ユーザに提供する。
【００３１】
ロールバック制御部９１は、ロールバック機能部８１からの指示に対応して、ロールバックポイント検索部９２およびマウント処理部９３を制御し、ドライブ３０側のロールバック機能を実行し、その結果や状況を、メディアビューワ部７２に供給する。
【００３２】
ロールバックポイント検索部９２は、ロールバック制御部９１の制御のもと、複数のロールバックポイントを検索し、検索結果や検索処理の進捗情報を、ロールバック制御部９１に返す。
【００３３】
マウント処理部９３は、ドライブ３０に装着されるリムーバブル記録媒体３１に対して、読み出し専用マウント処理（仮マウント処理）および追記可能（読み書き可能）マウント処理を実行する。マウント処理部９３は、マウント結果やマウント処理の進捗情報を、ロールバック制御部９１に返す。
【００３４】
ファイル管理アプリケーション５２は、記憶部２８やリムーバブル記録媒体３１などに記録されているデータ（すなわち、ファイルシステム）の状態をユーザに提示させる外部アプリケーションである。ファイル管理アプリケーション５２は、入力部２６を介して入力されるユーザの操作に対応する操作信号に対応し、リムーバブル記録媒体３１に対して、仮マウント処理および追記可能マウント処理を行った後のファイルシステムの状態を、出力部２７に表示する。
【００３５】
［情報処理装置のロールバック処理］
次に、図３のフローチャートを参照して、情報処理装置１１のロールバック処理について説明する。なお、このロールバック処理においてユーザに提示されるリストやダイアログについては、適宜、図４を参照して説明する。
【００３６】
ユーザは、入力部２６を操作することで、情報処理装置１１に対して、リムーバブル記録媒体３１のファイルシステムのロールバック処理の開始を指示する。このユーザの操作に対応する操作信号は、ＧＵＩ部７１およびロールバック機能部８１を介して、ロールバック制御部９１に供給される。ロールバックポイント検索部９２は、ステップＳ１１において、ロールバック制御部９１の制御のもと、ロールバックポイントを検索する。なお、このロールバックポイントの検索については、図１３を参照して詳しく後述される。
【００３７】
その検索結果は、ロールバック制御部９１およびロールバック機能部８１を介して、ＧＵＩ部７１に供給される。ＧＵＩ部７１は、ステップＳ１２において、ロールバックポイントのリストを生成し、生成したロールバックポイントのリストを、出力部２７に表示する。
【００３８】
ＧＵＩ部７１は、ステップＳ１３において、表示されたリストから、ロールバックポイントが選択されたか否かを判定する。入力部２６からのユーザの操作信号が供給されない場合、ステップＳ１３において、ロールバックポイントが選択されていないと判定し、処理は、ステップＳ１４に進む。
【００３９】
ステップＳ１４において、ロールバック制御部９１は、ロールバックポイント検索部９２による検索が終了したか否かを判定する。ステップＳ１４において、まだ検索が終了していないと判定された場合、処理は、ステップＳ１１に戻り、それ以降の処理を繰り返す。
【００４０】
ステップＳ１４において、検索が終了したと判定された場合、処理は、ステップＳ１３に戻り、それ以降の処理を繰り返す。すなわち、ＧＵＩ部７１は、ステップＳ１３において、ロールバックポイントが選択されたと判定されるまで待機する。なお、実際には、リストの画面に、キャンセルボタンなども表示され、キャンセルボタンが選択された場合には、ロールバック処理を終了することもできる。
【００４１】
例えば、ステップＳ１２におけるリストの表示においては、出力部２７には、図４に示されるように、ロールバックポイントのリストが表示されるロールバックポイント選択画面１１１が表示される。
【００４２】
このとき、ロールバックポイント検索の進捗状況が、ロールバック制御部９１および進捗確認部８２を介して、ＧＵＩ部７１に供給されるため、ロールバックポイント選択画面１１１の上部には、ロールバックポイント検索の進捗状況が表示されている。
【００４３】
また、進捗状況の下には、ロールバックポイントのリストとして、インデックス＃Ａ乃至＃Ｃのロールバックポイントが選択可能に表示されており、図４の例においては、そのうち、ハッチングが付されたインデックス＃Ｂが選択されている。
【００４４】
このロールバックポイントのリストにおいては、上から順に、インデックス＃Ｃ乃至＃Ａのロールバックポイントが検索されている。
【００４５】
インデックス＃Ｃのロールバックポイントは、日時情報が2011/12/02 12:00:00のロールバックポイントである。インデックス＃Ｂのロールバックポイントは、日時情報が2011/12/01 12:00:00のロールバックポイントである。インデックス＃Ａのロールバックポイントは、日時情報が2011/11/30 12:00:00のロールバックポイントである。
【００４６】
このように、ロールバックポイントのリスト表示において、ロールバックポイントの日時情報が表示されることで、ユーザは所望のファイルシステムの状態を類推することができる。
【００４７】
ここで、図５を参照して、インデックス＃Ａ乃至＃Ｃのロールバックポイントについてさらに説明する。図５の例において、インデックス＃Ａのロールバックポイントにおいて、ファイルシステムは、フォルダＡには、ファイル１およびファイル２が含まれており、フォルダＢには、ファイル３が含まれている状態である。
【００４８】
インデックス＃Ｂのロールバックポイントにおいて、ファイルシステムは、フォルダＡには、ファイル１およびファイル２が含まれており、フォルダＢには、ファイル３が含まれている状態である。なお、ハッチングされているファイル２は、インデックス＃Ａのロールバックポイントの状態から更新されていることを示している。
【００４９】
インデックス＃Ｃのロールバックポイントにおいて、ファイルシステムは、フォルダＡには、ファイル１が含まれており、フォルダＢには、ファイル３が含まれている。すなわち、インデックス＃Ｃのロールバックポイントの状態においては、インデックス＃Ｂのロールバックポイントの状態から、ファイル２が消されてしまっていることがわかる。
【００５０】
例えば、ユーザは、インデックス＃Ｃのロールバックポイントの日時において、ファイル２を誤って消してしまい、ファイルシステムの状態を、インデックス＃Ｂのロールバックポイントの状態に戻したいと考える。そこで、ユーザは、入力部２６を操作することで、ロールバックポイント選択画面１１１におけるロールバックポイントのリストから、インデックス＃Ｂのロールバックポイントを選択する。
【００５１】
ユーザの入力部２６の操作に対応する操作信号は、ＧＵＩ部７１に入力される。この操作信号に対応して、ＧＵＩ部７１は、ステップＳ１３において、ロールバックポイントが選択されたと判定し、選択されたロールバックポイントの情報を、ロールバック機能部８１を介して、ロールバック制御部９１に供給し、処理は、ステップＳ１５に進む。
【００５２】
ステップＳ１５において、マウント処理部９３は、ロールバック制御部９１の制御のもと、リムーバブル記録媒体３１に対して、選択されたロールバックポイントで読み出し専用マウント処理を行う。その際、出力部２７には、図４のマウント進捗ダイアログ１１２が表示される。
【００５３】
すなわち、マウント処理部９３がマウント処理を行っている間、マウント処理の進捗情報は、ロールバック制御部９１および進捗確認部８２を介して、ＧＵＩ部７１に供給される。それに対応して、ＧＵＩ部７１は、例えば、図４の例に示されるように、「選択されたロールバックポイントに読み出し専用マウントしています。」とユーザに伝えるマウント進捗ダイアログ１１２を出力部２７に表示する。
【００５４】
また、マウント処理部９３により読み出し専用マウント処理が終了すると、その処理結果は、ロールバック制御部９１および進捗確認部８２を介して、ＧＵＩ部７１に供給される。それに対応して、ＧＵＩ部７１は、ステップＳ１６において、図４の例に示される処理選択ダイアログ１１３を表示する。
【００５５】
図４の例において、処理選択ダイアログ１１３には、「ロールバックポイントへの読み出し専用マウントに成功しました。どちらかを選択してください。」という処理結果の通知と、処理選択を促すメッセージとが表示される。そのメッセージの下部には、別のロールバックポイントを再選択するか、あるいは、マウント処理が終了したこのロールバックポイントを追記可能に適用するかをユーザに選択させるためのラジオボタンが表示されている。
【００５６】
なお、読み出し専用マウント処理については、図１０を参照して詳しく後述されるが、マウント処理部９３による読み出し専用マウント処理が完了すると、選択されたロールバックポイントでのファイルシステムの状態の読み出しが可能になる。すなわち、ファイル管理アプリケーション５２を用いることにより、読み出し専用マウント処理後のファイルシステムの状態を確認することができる。
【００５７】
ユーザは、入力部２６を操作することで、ファイル管理アプリケーション５２により、読み出し専用マウント処理後のファイルシステムの状態を確認する。このとき、ファイル管理アプリケーション５２により図５のロールバックポイント＃Ｂのファイルシステムの状態が読み出される。
【００５８】
出力部２７に表示されるファイルの状態を見ることで、ユーザは、ロールバックポイント＃Ｂのファイルシステムの状態を確認し、このロールバックポイント＃Ｂの状態ではなく、ロールバックポイント＃Ａの状態まで戻したいと考える。これに対応して、ユーザは、入力部２６を操作することで、ロールバックポイント選択画面１１１におけるロールバックポイントのリストから、インデックス＃Ａのロールバックポイントを選択する。
【００５９】
ユーザの入力部２６の操作に対応する操作信号は、ＧＵＩ部７１に入力される。この操作信号に対応して、ＧＵＩ部７１は、ステップＳ１７において、別のロールバックポイントが選択されたか否かを判定する。ユーザによりロールバックポイント＃Ａが選択された場合、ステップＳ１７において、別のロールバックポイントが選択されたと判定され、処理は、ステップＳ１２に戻り、それ以降の処理が繰り返される。
【００６０】
一方、読み出し専用マウント処理後のファイルシステムの状態でよい場合、ユーザにより、入力部２６が操作されて、読み出し専用のマウント処理が終了したこのロールバックポイントを、追記可能に適用することが選択される。これに対応して、ＧＵＩ部７１は、ステップＳ１７において、別のロールバックポイントが選択されなかったと判定し、追記可能マウント処理開始を示す信号を、ロールバック機能部８１を介して、ロールバック制御部９１に供給し、処理は、ステップＳ１８に進む。
【００６１】
ステップＳ１８において、マウント処理部９３は、ロールバック制御部９１の制御のもと、リムーバブル記録媒体３１に対して、読み出し専用マウントが完了しているロールバックポイント＃Ｂにおける追記可能マウント処理を行う。なお、追記可能マウント処理については、図１１を参照して詳しく後述される。
【００６２】
マウント処理部９３による追記可能マウント処理が完了すると、その処理結果は、ロールバック制御部９１およびロールバック機能部８１を介して、ＧＵＩ部７１に供給される。これに対応して、ＧＵＩ部７１は、ステップＳ１９において、図４に示されるような、ロールバック処理の完了を通知する完了通知ダイアログ１１４を出力部２７に表示する。ステップＳ１９の後、情報処理装置１１によるロールバック処理は終了される。
【００６３】
以上のように、複数のロールバックポイントを検索し、日時情報とともにリスト表示するようにしたので、ユーザは、ロールバックポイントの日時から自分が求めているファイルシステムの状態を類推することができる。
【００６４】
また、ユーザの操作に応じたロールバックポイントで読み出し専用状態に仮マウント処理して、ロールバック結果を一旦確認できるようにした。
【００６５】
これにより、ユーザは、ロールバックポイントの日時から、自分が求めているファイルシステムの状態がわからなくても、仮のファイルシステムの状態を確認することができるので、所望のファイルシステムの状態を把握することができる。
【００６６】
さらに、仮のファイルシステムの状態の確認後、もし異なっている場合には、再度選択して、異なるロールバックポイントでの仮のファイルシステムの状態を確認することができる。
【００６７】
すなわち、ユーザは、所望のロールバックポイントでファイルシステムをロールバックさせることができる。
【００６８】
[ＵＤＦの場合のロールバック処理]
次に、図６乃至図１１を参照して、ＵＤＦ(Universal Disk Format)フォーマットされたリムーバブル記録媒体３１上でのロールバック処理について説明する。
【００６９】
図６の例においては、ＵＤＦフォーマットされたリムーバブル記録媒体３１上のデータの初期状態（初期記録状態）が示されている。
【００７０】
リムーバブル記録媒体３１の内周側（図中左側）には、ボリューム管理情報であるMVDS(Main Volume Descriptor Sequence)が配置されている。MVDSには、MFE,MMFEがどこにあるかを指し示す情報も含まれている。
【００７１】
リムーバブル記録媒体３１の外周側（図中右側）には、冗長性のため、MVDSと同じ情報が、RVDS(Reserve Volume Descriptor Sequence)として配置されている。
【００７２】
MVDSから所定の空間を空けて次には、ディレクトリ構造が格納されるファイルシステム情報であるMF(Metadata File)が配置されている。
【００７３】
MFの直後には、メタデータファイルの管理情報であるMFE(Metadata File Entry)が配置されている。さらに、MFEの直後には、冗長性のため、MFEと同じ情報が、MMFE(Metadata Mirror File Entry)として配置されている。
【００７４】
なお、図６乃至図１１の例においては、ハッチングされているMF,MFE,およびMMFEがMDVSから現在参照されている有効なMF,MFE,およびMMFEであることを示している。逆に、ハッチングされていないMF,MFE,およびMMFEは、現在有効ではない（無効の）MF,MFE,およびMMFEであることを示している。また、図６乃至図１１の例において、矢印はそれぞれ参照関係を示している。
【００７５】
図７は、File-1追記後の記録状態を示す図である。
【００７６】
図７の例において、図６の初期状態（タイムポイント１）のMF,MFE,およびMMFEの直後に、File-1が追記されている。そして、File-1追記後のMF,MFE,およびMMFEが生成されて、生成されたMF,MFE,およびMMFE が、File-1の直後に、タイムポイント２のMF,MFE,およびMMFEとして配置されている。
【００７７】
このとき、File-1の追記により、MVDSは、タイムポイント２のMF,MFE,およびMMFEを指すことになる。したがって、タイムポイント１のMF,MFE,およびMMFE は無効となり、タイムポイント２のMF,MFE,およびMMFEが有効となる。
【００７８】
図８は、File-2追記後の記録状態を示す図である。
【００７９】
図８の例において、図７のタイムポイント２のMF,MFE,およびMMFEの直後に、File-2が追記されている。そして、File-2追記後のMF,MFE,およびMMFEが生成されて、生成されたMF,MFE,およびMMFE が、File-2の直後に、タイムポイント３のMF,MFE,およびMMFEとして配置されている。
【００８０】
このとき、File-2追記により、タイムポイント３のMF,MFE,およびMMFEを指すことになる。したがって、タイムポイント２のMF,MFE,およびMMFE は無効となり、タイムポイント３のMF,MFE,およびMMFEが有効となる。
【００８１】
図９は、File-1削除後の記録状態を示す図である。
【００８２】
図９の例において、File-1が削除されたことを示すMF,MFE,およびMMFEが生成されて、生成されたMF,MFE,およびMMFE が、図８のタイムポイント３のMF,MFE,およびMMFEの直後に、タイムポイント４のMF,MFE,およびMMFEとして配置されている。
【００８３】
このとき、File-1削除により、MVDSは、タイムポイント４のMF,MFE,およびMMFEを指すことになる。したがって、タイムポイント３のMF,MFE,およびMMFE は無効となり、タイムポイント４のMF,MFE,およびMMFEが有効となる。
【００８４】
図１０は、タイムポイント２の状態に読み出し専用のロールバック（マウント）処理を行った状態を示す図である。
【００８５】
図１０の例において、タイムポイント２の状態への読み出し専用マウント処理により、タイムポイント４のMF,MFE,およびMMFEは仮に無効となり、タイムポイント２のMF,MFE,およびMMFEが仮に有効となる。すなわち、MVDSは、まだ、タイムポイント４のMF,MFE,およびMMFEを指しているが、読み出し専用マウント処理により、マウント処理部９３は、タイムポイント２のMF,MFE,およびMMFEを指す。したがって、実際にデータを読み出す際には、タイムポイント２のMF,MFE,およびMMFEのファイルシステムデータが読み出されて用いられる。
【００８６】
図１１は、タイムポイント２の状態に追記可能ロールバック（マウント）処理を行った状態を示す図である。
【００８７】
図１１の例においては、図１０の状態から追記可能マウント処理が行われることにより、タイムポイント５のMF,MFE,およびMMFEが、タイムポイント４のMF,MFE,およびMMFEの後に配置されている。このタイムポイント５のMF,MFE,およびMMFEは、タイムポイント２のMF,MFE,およびMMFEがコピーされて生成されたものである。
【００８８】
すなわち、タイムポイント５の情報は、タイムポイント２の情報を基に再構築されて、タイムポイント４の情報の後に配置されている。
【００８９】
このとき、追記可能ロールバックにより、MVDSは、タイムポイント５のMF,MFE,およびMMFEを指すことになる。したがって、タイムポイント４のMF,MFE,およびMMFE は無効となり、タイムポイント５のMF,MFE,およびMMFEが有効となる。
【００９０】
以上のように、情報処理装置１１においては、ＵＤＦの場合、上述したようにして読み出し専用マウント処理が行われて、その後、追記可能マウント処理可能なロールバックが実現される。
【００９１】
このようにすることで、選択したロールバックポイントでのファイルが確認可能であるので、ユーザが満足するロールバック処理を行うことができる。
【００９２】
[ロールバックポイントの検索方法]
図１２は、従来のロールバックポイントの検索方法を示す図である。図１３は、本技術のロールバックポイントの検索方法を示す図である。
【００９３】
図１２の例においては、上述した図９のファイルシステムの状態が示されている。従来においては、リムーバブル記録媒体３１の内周側（図中左側）から、順にスキャンを行うことで、MFEおよびMMFEを探索していた。このため、ロールバックポイントを探すのに、時間がかかっていた。
【００９４】
これに対して、情報処理装置１１においては、図１３に示されるように、MFE,MMFE記録時に、MFE,MMFE情報の中に、１つ前のMFE,MMFEの位置（番地）を示す情報（図中、Previous Location情報）が記録される。
【００９５】
そして、ロールバックポイントの検索時、すなわち、MFE,MMFEを検索する際に、MFE,MMFE情報内に埋め込まれたPrevious Location情報が用いられる。例えば、まず、MVDS(RVDS)が指す（すなわち、現在有効な）MFE,MMFEから順に、MFE,MMFE情報内に埋め込まれたPrevious Location情報を基に、１つ前のMFE,MMFEをたどるようにロールバックポイントが検索される。
【００９６】
このようにすることで、ロールバックポイントを探すための時間を短縮することができる。すなわち、ロールバック検索を高速化することができる。
【００９７】
次に、図１４を参照して、Previous Location情報の埋め込み方法について説明する。図１４においては、ＵＤＦで規格されたMFE,MMFEの構造が示されている。なお、左側の数字は、説明の便宜上付されたものであり、内容には関係がない。
【００９８】
第２５行目に示されるExtended Attribuesのフィールドには、オプションで拡張情報を埋め込むことができる。そこで、このフィールドに、１つ前のMFE,MMFEの番地を示す情報、すなわち、Previous Location情報を埋め込む（書き込む）。
【００９９】
なお、埋め込んだExtended Attribuesのバイト数は、第２３行目に示されるLength of Extended Attributesで指定することができる。
【０１００】
以上のように、ロールバックポイントを複数検索して、ファイルシステムを、一旦、ユーザにより選択されたロールバックポイントでの仮の状態（読み出し専用の状態）としてから、ユーザの操作に応じて、実際に書き込み可能な状態にするようにした。
【０１０１】
これにより、ユーザは所望のポイントでのロールバックを実現させることができる。
【０１０２】
また、例えば、ロールバックを行って、ファイルシステムの状態を変更するときに、ユーザが誤って意図しないロールバックポイントにマウントすると、元のファイルシステムに戻れない場合があり、データを失う恐れや、メディアの容量を損してしまう恐れがある。
【０１０３】
WO(Write Once)のメディアの場合、追記可能マウントを行うと、メディアの容量を消費して、ユーザが選択したファイルシステムの状態に移行する。したがって、もし誤って操作してしまった場合、メディアの容量を無駄にしてしまう。
【０１０４】
RE(Rewritable)メディアの場合、容量を回復させてロールバックを行うことができる。このロールバックは、戻った分のメディア容量を回復して、ユーザが選択したファイルシステムの状態に移行することを行う。すなわち、回復した部分にあったファイルシステムの状態には、二度と戻ることができない。
【０１０５】
上記のような取り返しのつかない操作を行う際に、本技術によれば、確実にユーザが意図したファイルシステムの状態に戻すことを支援することができる。
【０１０６】
さらに、本技術によれば、ロールバック検索を高速化することができる。
【０１０７】
なお、上記説明においては、実施例の１つとして、ＵＤＦの場合について説明したが、ＵＤＦに限定されない。本技術は、他のファイルシステムにも適用することができる。
【０１０８】
上述した一連の処理は、ハードウエアにより実行することもできるし、ソフトウエアにより実行することもできる。一連の処理をソフトウエアにより実行する場合には、そのソフトウエアを構成するプログラムが、コンピュータにインストールされる。ここで、コンピュータには、専用のハードウエアに組み込まれているコンピュータや、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどが含まれる。
【０１０９】
この場合、図１のコンピュータ（CPU２１）が実行するプログラムは、例えば、パッケージメディア等としてのリムーバブル記録媒体３１に記録して提供することができる。また、プログラムは、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の伝送媒体を介して提供することができる。
【０１１０】
コンピュータでは、プログラムは、リムーバブル記録媒体３１をドライブ３０に装着することにより、入出力インタフェース２５を介して、記憶部２８にインストールすることができる。また、プログラムは、有線または無線の伝送媒体を介して、通信部２９で受信し、記憶部２８にインストールすることができる。その他、プログラムは、ROM２２や記憶部２８に、あらかじめインストールしておくことができる。
【０１１１】
なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。
【０１１２】
なお、本明細書において、上述した一連の処理を記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【０１１３】
また、本開示における実施の形態は、上述した実施の形態に限定されるものではなく、本開示の要旨を逸脱しない範囲において種々の変更が可能である。
【０１１４】
例えば、本技術は、１つの機能を、ネットワークを介して複数の装置で分担、共同して処理するクラウドコンピューティングの構成をとることができる。
【０１１５】
また、上述のフローチャートで説明した各ステップは、１つの装置で実行する他、複数の装置で分担して実行することができる。
【０１１６】
さらに、１つのステップに複数の処理が含まれる場合には、その１つのステップに含まれる複数の処理は、１つの装置で実行する他、複数の装置で分担して実行することができる。
【０１１７】
また、以上において、１つの装置（または処理部）として説明した構成を分割し、複数の装置（または処理部）として構成するようにしてもよい。逆に、以上において複数の装置（または処理部）として説明した構成をまとめて１つの装置（または処理部）として構成されるようにしてもよい。また、各装置（または各処理部）の構成に上述した以外の構成を付加するようにしてももちろんよい。さらに、システム全体としての構成や動作が実質的に同じであれば、ある装置（または処理部）の構成の一部を他の装置（または他の処理部）の構成に含めるようにしてもよい。つまり、本技術は、上述した実施の形態に限定されるものではなく、本技術の要旨を逸脱しない範囲において種々の変更が可能である。
【０１１８】
以上、添付図面を参照しながら本開示の好適な実施形態について詳細に説明したが、開示はかかる例に限定されない。本開示の属する技術の分野における通常の知識を有するであれば、特許請求の範囲に記載された技術的思想の範疇内において、各種の変更例また修正例に想到し得ることは明らかであり、これらについても、当然に本開示の技術的範囲に属するものと了解される。
【０１１９】
なお、本技術は以下のような構成も取ることができる。
（１）  ファイルシステムの複数のロールバックポイントを検索する検索部と、
前記検索部により検索された複数のロールバックポイントから、ユーザの操作に応じたロールバックポイントを選択する選択部と、
前記選択部により選択されたロールバックポイントにおけるファイルシステムの状態を、読み出し専用状態にマウントしてから、ユーザの操作に応じて、読み書き可能な状態にマウントするマウント処理部と
を備える情報処理装置。
（２）  前記マウント処理部は、前記選択部により選択されたロールバックポイントにおけるファイルシステムの状態を、読み出し専用状態にマウントしてから、前記選択部によりユーザの操作に応じた他のロールバックポイントが選択された場合、前記選択部により選択された他のロールバックポイントにおけるファイルシステムの状態を、読み出し専用状態にマウントする
前記（１）に記載の情報処理装置。
（３）  前記マウント処理部は、前記選択部により選択されたロールバックポイントにおけるファイルの管理情報を用いることで、前記選択部により選択されたロールバックポイントにおけるファイルシステムの状態を読み出し専用状態にマウントする
前記（１）または（２）に記載の情報処理装置。
（４）  前記マウント処理部は、前記選択部により選択されたロールバックポイントにおけるファイルの管理情報に基づき、現在参照中のファイルの管理情報を再構築することで、前記選択部により選択されたロールバックポイントにおけるファイルシステムの状態を読み書き可能な状態にマウントする
前記（１）乃至（３）のいずれかに記載の情報処理装置。
（５）  前記検索部は、現在参照中のファイルの管理情報から順に、前記ファイルの管理情報に埋め込まれた１つ前のファイルの管理情報の位置を示す情報に基づいて、前記ロールバックポイントを検索する
前記（１）乃至（４）のいずれかに記載の情報処理装置。
（６）  前記ファイルシステムは、ＵＤＦ(Universal Disk Format)である
前記（１）乃至（５）のいずれかに記載の情報処理装置。
（７）  情報処理装置が、
ファイルシステムの複数のロールバックポイントを検索し、
検索された複数のロールバックポイントから、ユーザの操作に応じたロールバックポイントを選択し、
選択されたロールバックポイントにおけるファイルシステムの状態を、読み出し専用状態にマウントしてから、ユーザの操作に応じて、読み書き可能な状態にマウントする
情報処理方法。
（８）  コンピュータを、
ファイルシステムの複数のロールバックポイントを検索する検索部と、
前記検索部により検索された複数のロールバックポイントから、ユーザの操作に応じたロールバックポイントを選択する選択部と、
前記選択部により選択されたロールバックポイントにおけるファイルシステムの状態を、読み出し専用状態にマウントしてから、ユーザの操作に応じて、読み書き可能な状態にマウントするマウント処理部と
して機能させるプログラム。
【符号の説明】
【０１２０】
１１  情報処理装置，  ２６  入力部，  ２７  出力部，  ３０  ドライブ，  ３１  リムーバブル記録媒体，  ５１  ユーティリティ部，  ５２  ファイル管理アプリケーション，  ７１  ＧＵＩ部，  ７２  メディアビューワ部，  ７３  ドライブマネージャ部，  ８１  ロールバック機能部，  ８２  進捗確認部，  ９１  ロールバック制御部，  ９２  ロールバックポイント検索部，  ９３  マウント処理部
【図１】
2014067112.tif 000003
【図２】
2014067112.tif 000004
【図３】
2014067112.tif 000005
【図４】
2014067112.tif 000006
【図５】
2014067112.tif 000007
【図６】
2014067112.tif 000008
【図７】
2014067112.tif 000009
【図８】
2014067112.tif 000010
【図９】
2014067112.tif 000011
【図１０】
2014067112.tif 000012
【図１１】
2014067112.tif 000013
【図１２】
2014067112.tif 000014
【図１３】
2014067112.tif 000015
【図１４】
2014067112.tif 000016