2016-09-23 5 views
0

私はここに来て、tar 'ファイルシステム'(mount tar)のコンセプトfsドライバを開発しようとしています。私の質問は、どのようにパーティションがTARファイルシステムを持っていることをOSが検出し、ドライバを自動的にロードするかということです。FS開発 - KMDF Windowsドライバ

答えて

0

最初にロードされたFSは、IoRegisterFileSystemと呼ばれます。このルーチンは、システム内のファイルシステムのリストにデバイスオブジェクトを挿入します。あなたはWRKを持っていなければなりません。 VPBIopCheckVpbMountedでファイルを開いたと言うとIopMountVolumeと呼びます - これはマウントのための要点です。このルーチンは最初に登録されたFSでリストを辿り、いくつかのFSが成功コードを返すまでIRP_MN_MOUNT_VOLUMEをすべてに送ります。また、リストの最後のエントリ - 特別なファイルシステム認識プログラム - 彼はボリュームの特定のフォーマットを試します。はいの場合 - STATUS_FS_DRIVER_REQUIREDを返します - このボリュームに新しいFSをロードする必要があることを示します。この場合のシステムはIopLoadFileSystemDriverです。このルーチンは、ミニファイルシステム認識ドライバがボリュームを特定のファイルシステムであると認識したが、そのファイルシステムのドライバがまだロードされていないときに呼び出される。現時点FS_Rec.sysサポート次のFSで:他のサポートのための

cdfs 
ReFS 
ReFSv1 // begin from win 10 
ExFat 
FastFat 
Udfs 
Ntfs 

- あなたが必要とするか、またはあなたのFSを認識し、IRP_MJ_FILE_SYSTEM_CONTROL.IRP_MN_MOUNT_VOLUMESTATUS_FS_DRIVER_REQUIREDを返す自動負荷自己FSドライバまたは自己認識(ミニドライバー)とあなたのFSをロード(ZwLoadDriverコールで)IRP_MJ_FILE_SYSTEM_CONTROL.IRP_MN_LOAD_FILE_SYSTEM

関連する問題