再解析ポイントの仕組み
再解析ポイントの処理は、ファイルシステム・ドライバーの一部であるファイルシステム・フィルタードライバー、ファイルシステム・ミニフィルタードライバー(この2つは実装方法の違いである。以下、両者を合わせてフィルタードライバーとする)で処理される。
フィルタードライバーを使うのは、処理を高速化するためだ。フィルタードライバはカーネルモードで動作するコンポーネントで、ファイルシステムを実現しているIOデバイス・ドライバーとファイルシステム・ドライバーの間に入って処理する。
ファイルシステムにパスが渡されたとき、ファイルシステムドライバーがこれを処理し、最終的には、ドライブなどのハードウェアをアクセスする。このとき、パスの中に再解析ポイントを持つファイルやディレクトリがあると、そのタグに対応するフィルタードライバーが処理する。
再解析ポイントを属性に持つファイルやディレクトリを作成する場合も、フィルタードライバがこれをする。実際には、cmd.exeのmklinkコマンドなどが、フィルタードライバーに対して指示を出している。一般的に再解析ポイントを使った機能を使うには、そのためのプログラムが必要である。
再解析ポイントを使ってなんらかの機能を実装する場合、再解析タグの割り当てと再解析データの定義、フィルタードライバの開発の必要がある。サードパーティーやユーザーレベルでも、再解析ポイントを使って、ファイルシステムに機能を追加することは可能だ。
しかし、フィルタードライバーの開発にはカーネルのプログラミングやドライバー自体に電子署名が必要であることなどから、安易に選択できる方法ではない。なお、Microsoftはサードパーティー向けに再解析タグが衝突しないように割り当てをしうる手続きを定めている。
再解析ポイントは、WindowsでNTFS(およびReFS)上で、リンクなどさまざまな機能を実現するために使われている。最大の特徴は、ファイルシステムドライバーにあるフィルタードライバーで処理されるため、高速かつ、アプリケーションに対して、処理が透過的である点だ。ただし、アプリケーションはファイルやディレクトリに再解析ポイントが設定されているかどうかを調べることは可能だ。
本記事はアフィリエイトプログラムによる収益を得ている場合があります

この連載の記事
-
第541回
PC
AIを組み込んだWindowsターミナル「Intelligent Terminal」をインストールして試してみる -
第540回
PC
Windows 11に付属の新しいOutlookでアカウント設定をする -
第539回
PC
Microsoft製の新しいWindows用日本語入力「Copilot Keyboard」を使う -
第538回
PC
PowerShellをシェルとして使うためのポイント【情報表示のやり方】 -
第537回
PC
PowerShellをシェルとして使うためのポイントを解説 -
第536回
PC
Microsoft製のコンソールエディタMS-Editが2.0になり、文法ハイライト機能が搭載 -
第535回
PC
WSLコンテナーのプレビューを試す 今年はWSLに動きがありそうだ -
第534回
PC
Windows 11におけるアプリインストーラーとwinget -
第533回
PC
PCの世界ではすっかり存在感が薄くなった光学メディアをあらためて整理 -
第532回
PC
モニターの情報が含まれる「VESA EDID」をWindowsで調べる方法 -
第531回
PC
Windowsのコンソール上でUnix/Linuxの標準的なコマンドを動かす「Windows CoreUtils」 - この連載の一覧へ











