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

この連載の記事
-
第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」 -
第530回
PC
Windows 11でタスクバーの位置の移動機能が復活するのは結局どうなった? プレビュー版の現状を見る -
第529回
PC
Windowsの標準スクリプト言語であるPowerShellの現状をあらためて紹介する -
第528回
PC
Windows 11の標準機能でメモリに問題がないかを診断する -
第527回
PC
Windowsがクラッシュする原因を究明する方法 AIを活用すると結構早い -
第526回
PC
今年6月にPCが起動しなくなる心配はないが、セキュアブートが機能しないとWindowsのセキュリティ機能は一部使えなくなる - この連載の一覧へ











