このページの本文へ

前へ 1 2 次へ

Windows Info 第391回

WindowsのNTFS/ReFSに搭載されている「再解析ポイント」とは何か?

2023年08月06日 10時00分更新

文● 塩田紳二 編集● ASCII

  • この記事をはてなブックマークに追加
  • 本文印刷

再解析ポイントの仕組み

 再解析ポイントの処理は、ファイルシステム・ドライバーの一部であるファイルシステム・フィルタードライバー、ファイルシステム・ミニフィルタードライバー(この2つは実装方法の違いである。以下、両者を合わせてフィルタードライバーとする)で処理される。

 フィルタードライバーを使うのは、処理を高速化するためだ。フィルタードライバはカーネルモードで動作するコンポーネントで、ファイルシステムを実現しているIOデバイス・ドライバーとファイルシステム・ドライバーの間に入って処理する。

 ファイルシステムにパスが渡されたとき、ファイルシステムドライバーがこれを処理し、最終的には、ドライブなどのハードウェアをアクセスする。このとき、パスの中に再解析ポイントを持つファイルやディレクトリがあると、そのタグに対応するフィルタードライバーが処理する。

 再解析ポイントを属性に持つファイルやディレクトリを作成する場合も、フィルタードライバがこれをする。実際には、cmd.exeのmklinkコマンドなどが、フィルタードライバーに対して指示を出している。一般的に再解析ポイントを使った機能を使うには、そのためのプログラムが必要である。

 再解析ポイントを使ってなんらかの機能を実装する場合、再解析タグの割り当てと再解析データの定義、フィルタードライバの開発の必要がある。サードパーティーやユーザーレベルでも、再解析ポイントを使って、ファイルシステムに機能を追加することは可能だ。

 しかし、フィルタードライバーの開発にはカーネルのプログラミングやドライバー自体に電子署名が必要であることなどから、安易に選択できる方法ではない。なお、Microsoftはサードパーティー向けに再解析タグが衝突しないように割り当てをしうる手続きを定めている。

 再解析ポイントは、WindowsでNTFS(およびReFS)上で、リンクなどさまざまな機能を実現するために使われている。最大の特徴は、ファイルシステムドライバーにあるフィルタードライバーで処理されるため、高速かつ、アプリケーションに対して、処理が透過的である点だ。ただし、アプリケーションはファイルやディレクトリに再解析ポイントが設定されているかどうかを調べることは可能だ。

前へ 1 2 次へ

カテゴリートップへ

この連載の記事

注目ニュース

ASCII倶楽部

プレミアムPC試用レポート

ピックアップ

ASCII.jp RSS2.0 配信中

ASCII.jpメール デジタルMac/iPodマガジン