संशोधन इतिहास (पहला संस्करण, 29 Jul 2026 को प्रकाशित)
- पहला प्रकाशन
इस लेख का हवाला दें(DOI (पंजीकृत संग्रह): 10.5281/zenodo.22175394)
नीचे दिए गए DOI पहले से संग्रहीत संस्करणों के हैं और वर्तमान पाठ से भिन्न हो सकते हैं। वर्तमान पाठ का संदर्भ देने के लिए इस पृष्ठ का URL उपयोग करें।
Go Komura (2026). Windows I/O की गहराई (भाग 6, अंतिम) — Filter drivers और minifilters: Procmon और virus scan I/O में क्यों बीच में आ सकते हैं. KomuraSoft LLC. https://comcomponent.com/hi/blog/windows-minifilter-filter-drivers/
- DOI (पंजीकृत संग्रह)
- 10.5281/zenodo.22175394
- DOI (अंतिम पंजीकृत संस्करण)
- 10.5281/zenodo.22175395
Series «Windows I/O की गहराई» का अंतिम भाग।
भाग 1 के device stack चित्र में «file system filter (antivirus, encryption, Procmon आदि)» box खींचने के बाद इस series में intercept करने वाले बार-बार आए। Procmon हर I/O record क्यों कर सकता है (भाग 1)। «केवल उस वातावरण पर file पहुँच धीमी» (भाग 2)। खोलते ही OneDrive download शुरू करने वाला reparse point (भाग 5)। इस बार अंततः उस intercept के तंत्र स्वयं — file system filter drivers और minifilters — को सामने रखते हैं, series की बाकी कड़ियाँ समेटते हैं।
1. निष्कर्ष पहले
- «I/O में intercept» OS-मान्य extension point है। File system filter file system को request देख, बदल, अस्वीकृत, स्थान पर process कर सकता है (अध्याय 2)।1
- वर्तमान standard minifilter है। Device stack में सीधे intercept करने वाले legacy तरीके की समस्याएँ (क्रम अनिश्चित, unload न हो पाना) हल करने को Windows के साथ आए Filter Manager (FltMgr) पर callbacks register करने के तरीके पर generation बदली (अध्याय 2)।23
- चाल pre/post callbacks है। प्रत्येक operation के पहले और बाद registration क्रम = altitude क्रम से बुलाए जाते हैं। Pass-through, complete करना, अस्वीकृत, बदलना — भाग 1 के «driver के विकल्प» ज्यों के त्यों (अध्याय 3)।2
- Altitude क्रम तय करता है। Use-दर groups को संख्या band दी गई (Activity Monitor 360000–389999, Anti-Virus 320000–329999 आदि), volume से जुड़े instance-दर अद्वितीय संख्या (अध्याय 4)।45
- आपके PC के installed filters
fltmcसे दिखते हैं। Procmon (चलते समय ही), antivirus, OneDrive का cloud filter — सब यहाँ पंक्ति में (अध्याय 5)। - Antivirus exclusion setting «उस product स्वयं का scan छोड़ना» है, अन्य minifilters पर प्रभाव नहीं। Exclusion security कमज़ोर करने का समझौता है, development volume पर Dev Drive (async scan) अधिक सुरक्षित विकल्प है (अध्याय 6)।67
- «केवल उस वातावरण पर धीमा» जाँच Procmon Duration स्तंभ और
fltmcconfig तुलना से (अध्याय 7)।
Diagram में solid line हमेशा लागू रहने वाला relation दिखाती है और dashed line conditional relation दिखाती है (शर्तें detail page पर हर relation के explanation में दी गई हैं)। Relations की पूरी list (कुल 34, evidence और certainty सहित) तथा मुख्य concepts की definitions knowledge map की detail page पर संकलित हैं (जापानी में)। Data: JSON-LD / Turtle
2. Intercept करने वालों का इतिहास — legacy filter से FltMgr तक
File system filter driver file system (या उसके नीचे volume) की ओर request intercept कर सकने वाला driver है। Request record, monitor, content बदलना, आगे अस्वीकृत या स्थानापन्न processing तक — antivirus, encryption, backup, hierarchical storage software का आधार।1
पुराना implementation (legacy filter) भाग 1 के device stack पर अपना device object सीधे attach करने वाला था। तंत्र सीधा, पर व्यवहार में समस्याएँ भरी थीं — attach का क्रम load order पर निर्भर guarantee मुश्किल, एक बार attach करने पर safely निकलना नहीं (unload नहीं), filters के बीच compatibility bugs का घर।
इसलिए Windows ने Filter Manager (FltMgr) लाया। FltMgr स्वयं OS-साथ filter के रूप में stack पर खड़ा, व्यक्तिगत filter कार्य minifilter के रूप में FltMgr पर callbacks register करते हैं।2
flowchart TB
subgraph OLD["Legacy तरीका"]
L1["Legacy filter A"]
L2["Legacy filter B"]
LFS1["File system"]
L1 --> L2
L2 --> LFS1
NOTE1["क्रम load order पर छोड़<br/>Safely unload नहीं"]
end
subgraph NEW["Minifilter तरीका (वर्तमान standard)"]
FM["Filter Manager (FltMgr)<br/>OS के साथ। Stack पर खड़ा यही एक"]
M1["Minifilter A (altitude ऊँचा)"]
M2["Minifilter B (altitude नीचा)"]
LFS2["File system"]
FM -. "Callback registration" .- M1
FM -. "Callback registration" .- M2
FM --> LFS2
NOTE2["क्रम altitude से निर्णायक<br/>किसी भी समय load संभव<br/>(समर्थित filter unload भी)"]
end
चित्र 1: Generation बदलाव। Stack पर «attach» नहीं, FltMgr पर «register»
Minifilter तरीके के लाभ आधिकारिक सूचीबद्ध हैं — कभी भी load, क्रम controlled, unload callback लागू filter चलते unload भी (लागू न हो या मना करे तो नहीं उतार सकते)।3 Legacy filter साथ चलाने को FltMgr कई «frames» के रूप में stack के कई स्थानों पर खड़ा हो सकता है, minifilter unload बाद पुनः load पर भी उसी स्थान (उसी altitude) पर लौटता guarantee है।2 आधुनिक antivirus, monitoring, sync software लगभग सब यही minifilters हैं।
3. Minifilter की चाल — pre/post callbacks
Minifilter «किन operations में रुचि» FltMgr को घोषित करता है। उदाहरण IRP_MJ_CREATE (खोलना) और IRP_MJ_WRITE (लिखना) में ही रुचि। तब वह operation बहे हर बार operation के पहले (pre callback) और operation के बाद (post callback) बुलाए जाते हैं।
sequenceDiagram
participant IOM as I/O Manager
participant FM as FltMgr
participant A as Minifilter A<br/>(altitude ऊँचा)
participant B as Minifilter B<br/>(altitude नीचा)
participant FS as NTFS
IOM->>FM: Request (IRP_MJ_CREATE आदि। भाग 1 की दुनिया)
FM->>A: pre callback
FM->>B: pre callback
FM->>FS: File system को
FS-->>FM: Processing result
FM-->>B: post callback
FM-->>A: post callback
FM-->>IOM: Complete (भाग 1 के complete होने के प्रवाह की ओर)
चित्र 2: pre/post callbacks। जाते altitude ऊँचे से, लौटते उलटा क्रम
प्रत्येक callback पर क्या कर सकते हैं। भाग 1 अध्याय 4.3 के «driver के तीन विकल्प» वही ढाँचा अधिक सुरक्षित API से मिलता है।
flowchart TB
PRE["pre callback बुलाया गया"]
Q{"इस operation से क्या करें"}
PASS["Pass-through<br/>(post भी न चाहिए तो वह भी घोषित)"]
DENY["अस्वीकृत<br/>Access denied आदि तुरंत return<br/>उदा.: virus पकड़ा, लिखना मना"]
DONE["स्वयं complete करें<br/>उदा.: cloud filter<br/>पदार्थ लाकर सौंपे"]
MOD["Parameters या content बदलकर बहने दें<br/>उदा.: encryption filter"]
PRE --> Q
Q --> PASS
Q --> DENY
Q --> DONE
Q --> MOD
चित्र 3: pre callback के विकल्प। «देखना, रोकना, स्थान लेना, बदलना» सब official संभव
और भाग 4 का homework यहाँ समेटता है — minifilter fast I/O (IRP न बनाने वाला shortcut) पर भी उपस्थित रह सकता है। FltMgr fast I/O path पर भी callback तंत्र चलाता है, legacy युग जैसा «shortcut लिया तो नहीं दिखता» नहीं। Procmon log में FASTIO_ पंक्तियाँ भी इसलिए, इसी स्थान के कारण।
4. Altitude — «ऊँचाई» क्रम तय करती है
कई filters एक ही operation में रुचि रखें तो कौन पहले देखे गंभीर प्रश्न है। Encryption से पहले antivirus न देखे तो ciphertext scan करना पड़ता है, monitoring tool सब से ऊपर न हो तो पूरा नहीं देख सकता।
यह क्रम तय करता altitude है। Filter प्रकार-दर load-order groups और संख्या band परिभाषित। सटीक: altitude driver पूरे पर नहीं, volume से जुड़े minifilter «instance» पर लगता है। संख्या अद्वितीय, बड़ी संख्या stack के ऊपर (app की ओर)।4 एक driver कई instance परिभाषाएँ रख अलग ऊँचाई पर दिख सकता है, fltmc instances list instance इकाई इसीलिए।
flowchart TB
APP["App की ओर (संख्या बड़ी)"]
G1["FSFilter Activity Monitor: 360000–389999<br/>I/O monitoring · record (Procmon यहाँ)"]
G2["FSFilter Undelete: 340000–349999<br/>हटाई file restore"]
G3["FSFilter Anti-Virus: 320000–329999<br/>Virus पकड़ना · हटाना"]
G4["FSFilter Replication: 300000–309999<br/>Remote पर copy"]
G5["FSFilter Continuous Backup: 280000–289999<br/>Continuous backup"]
G6["और नीचे: Content Screener /<br/>Quota Management / System Recovery /<br/>Encryption · compression आदि bands जारी"]
FS["File system की ओर (संख्या छोटी)"]
APP --> G1 --> G2 --> G3 --> G4 --> G5 --> G6 --> FS
चित्र 4: Altitude band (उद्धरण)। Use-दर «खड़े होने की ऊँचाई» तय
महत्त्वपूर्ण: यह संख्या Microsoft allocated-managed है।5 Vendor स्वयं न घोषित करें, आवेदन कर लें — इसलिए हर PC पर «monitoring antivirus से ऊपर, antivirus encryption से ऊपर» व्यवस्था बनी रहती है। Legacy युग के «load-order जुआ» का यही उत्तर था।
अपनी company का minifilter बनाते आवेदन स्थान। Developer के लिए अगला एक कदम। Altitude Request a Filter Altitude Identifier प्रक्रिया के अनुसार विषय «Filter altitude request» रखकर fsfcomm@microsoft.com को अंग्रेज़ी ईमेल भेजकर आवेदन करें। Company नाम, contact (व्यक्ति नहीं, लंबे use company alias), product नाम, product URL, filter विवरण, driver file नाम, filter प्रकार, start प्रकार, इच्छित load-order group और इच्छित altitude सब भरना आवश्यक। Processing 30 business days मानें, आपात खिड़की नहीं, allocated संख्या इच्छा से भिन्न हो सकती है — यह भी लिखा है।8 उसी load-order group में पहले से पूर्णांक altitude रखने वाली company उस संख्या पर decimal जोड़ मान (उदा. 325000.3) स्वयं तय कर सकती है, तब बाद ईमेल सूचना काफी।8
5. Installed filters परिचय — fltmc से अपना PC देखें
सिद्धांत यहीं तक, वास्तविक देखें। Admin command prompt से:
:: Registered minifilters (with altitudes)
fltmc
:: Which filter is attached to which volume
fltmc instances
:: From the volume side
fltmc volumes
Command-line arguments के बिना fltmc fltmc filters जैसी list देता है। Output 4 स्तंभ, Microsoft documentation में भी वही रूप का उदाहरण है।9
C:\Windows\system32>fltmc
Filter Name Num Instances Altitude Frame
------------------------------ ------------- ------------ -----
bindflt 1 409800 0
cldflt 1 409500 0
WdFilter 4 328010 0
luafv 1 135000 0
FileInfo 4 45000 0
ऊपर स्पष्टीकरण के लिए उद्धरण है। चेहरे और instance संख्या वातावरण-दर अलग, पर altitude संख्या Microsoft allocated स्थिर मान है, अध्याय 4 की प्रकाशित list से मिला सकते हैं।
स्तंभ का अर्थ:
| स्तंभ | अर्थ |
|---|---|
| Filter Name | Filter (driver) का नाम |
| Num Instances | कितने volumes से जुड़ा (अध्याय 4 के instances की संख्या) |
| Altitude | Altitude। बड़ा तो app की ओर |
| Frame | FltMgr frame संख्या। यहाँ <Legacy> हो तो FltMgr न use करने वाला legacy filter जीवित होने का चिह्न।9 |
इन पाँच पंक्तियों से भी bindflt और cldflt सबसे ऊपर FSFilter Top band (400000–409999), WdFilter Anti-Virus band (320000–329999), FileInfo सबसे नीचे FSFilter Bottom band (40000–49999) पर हैं पढ़ा जा सकता है। अध्याय 4 का «use-दर खड़े होने की ऊँचाई तय» ढाँचा संख्या से पुष्ट होता है। और Procmon चलाकर फिर fltmc चलाएँ तो Activity Monitor band (360000–389999) में PROCMON से शुरू पंक्ति एक बढ़ती है।
वातावरण से चेहरे बदलते हैं, पर प्रतिनिधि installed filters इस series के नियमित हैं।
WdFilter— Microsoft Defender का minifilter। Anti-Virus band पर। अधिकतर PCs पर सब file I/O अवश्य गुज़रने वाला नाका।cldflt— Cloud Files filter। OneDrive Files On-Demand की कार्य टुकड़ी, भाग 5 के reparse point (placeholder) खुलते पदार्थ तैयार करता है।10PROCMON24(आदि) — Process Monitor चलाते समय ही दिखने वाला Activity Monitor band का temporary minifilter। Procmon हर I/O क्यों देख सकता है, यही रहस्योद्घाटन है।11 चलाने पहले-बादfltmcचलाकर तुलना करें।- अन्य: backup software, encryption (data leak रोक) products, EDR, virtualized storage — business PCs जितना installed filters बढ़ते हैं।
भाग 1 से चला Procmon tool अंतिम भाग में toolbox के बाहर से देखें तो «inspector भी inspection लक्ष्य जैसे तंत्र का निवासी था» सुंदर चक्र बनता है।
6. Antivirus समय कहाँ खर्च करता है
Filter का सबसे बड़ा practical प्रभाव antivirus scan लागत है। समय कहाँ उत्पन्न होता है, चित्र में (product से विवरण भिन्न। नीचे प्रतिनिधि रूप)।
sequenceDiagram
participant App as App
participant AV as AV minifilter
participant FS as NTFS
App->>AV: File खोलना
Note over AV: pre-create: path या policy की पूर्व जाँच
AV->>FS: जाने दें (खोलना execute)
FS-->>AV: खोलना सफल (post-create)
Note over AV: न scan की file हो तो<br/>यहाँ content scan कर<br/>समस्या हो तो खोलना रद्द<br/>── खोलना धीमा होने का मुख्य कारण
AV-->>App: समस्या न हो तो handle return होता है
App->>AV: लिखना · बंद करना
Note over AV: बदली file<br/>बंद करते आदि पुनः scan लक्ष्य
Note over App,FS: बड़ी संख्या छोटी files (build मध्य उत्पाद आदि) पर<br/>यह आना-जाना file संख्या जितना जमा होता है
चित्र 5: Scan लागत का उत्पत्ति स्थान। प्रति file थोड़ा, दसियों हज़ार files हों तो प्रबल
इसे मानकर दो practical विषय सटीक समझे जाते हैं।
Exclusion setting का technical अर्थ। Exclusion list से मेल path के I/O पर filter का scan छूटता है। Filter stack से गायब नहीं, «जाँच न करें» decision जल्दी — यही यथार्थ। और एक महत्त्वपूर्ण सीमा — exclusion उसी setting वाले product स्वयं के filter पर ही लगता है। Microsoft Defender exclusion WdFilter का scan बदलता है, साथ बैठे अन्य minifilters (अन्य company antivirus, EDR, backup, encryption) के व्यवहार पर कुछ प्रभाव नहीं। «Exclusion लगाया फिर भी धीमा» हो तो दूसरा installed filter समय खर्च रहा संदेह करें (अध्याय 7 की fltmc तुलना)। प्रभाव बड़ा, दूसरी ओर exclusion उस स्थान की security निश्चित कमज़ोर करता है। Microsoft documentation भी exclusion रक्षा घटाता है इसलिए risk assessment पर न्यूनतम, बार-बार चेतावनी देता है।6 False positive और performance प्रभाव का व्यवहार «स्व-विकसित Windows app virus माना जाए तो» में है।
Dev Drive नामक नया उत्तर। Development workload (बड़ी संख्या छोटी files) के लिए design dedicated volume, Microsoft Defender performance mode (async scan) चलता है। Folder exclusion का अधिक सुरक्षित विकल्प माना गया; default extra filters नहीं जुड़ते, दूसरी ओर filters सब उतारकर चलाने पर कड़ी चेतावनी भी लिखी है।7 «Build तेज़ चाहिए पर exclusion डर लगता है» का वर्तमान Microsoft recommended उत्तर।
7. «केवल उस वातावरण पर धीमा» जाँच प्रक्रिया
Series में जमा tools अंत में एक प्रक्रिया में बाँधें।
flowchart TB
S["लक्षण: वही app, विशिष्ट वातावरण पर ही<br/>File पहुँच धीमी"]
P1["Procmon Duration स्तंभ देखें<br/>कौन सा operation (IRP_MJ_CREATE? WRITE?)<br/>समय खा रहा है"]
Q1{"विशिष्ट operation एकसमान धीमा?"}
F1["fltmc instances तेज़ वातावरण से तुलना<br/>Filter config का अंतर देखें"]
Q2{"अंतर वाला filter कारण?"}
A1["Exclusion (risk assessment सहित) या<br/>Dev Drive विचार · vendor से परामर्श"]
A2["Filter के अलावा संदेह:<br/>Cache (भाग 4) · fragmentation या MFT (भाग 5) ·<br/>Network गंतव्य (UNC) · device स्वयं"]
S --> P1 --> Q1
Q1 -->|"हाँ"| F1 --> Q2
Q2 -->|"हाँ"| A1
Q2 -->|"नहीं"| A2
Q1 -->|"नहीं (छिटपुट)"| A2
चित्र 6: Filter-कारण धीमेपन का विभाजन। कुंजी «operation-दर समय» और «वातावरणों के बीच filter config अंतर»
दो बिंदु। पहला, Procmon operation-दर समय (Duration) रखता है। «धीमा» को «कौन सा operation धीमा» में तोड़ सकें तो अपराधी खोज आधी खत्म। दूसरा, वातावरण अंतर प्रायः filter config अंतर। Development machine और production, अपनी PC और customer PC — fltmc output साथ रखें तो संदेह के उम्मीदवार दिखते हैं।
Procmon कभी न छुआ हो तो पहले तीन कदम। Duration स्तंभ default दिखता नहीं, इसलिए यहाँ न रुकें, operation लिखते हैं।
- Admin के रूप में
Procmon.exeचलाएँ। - Options मेनू > Select Columns… खोलें, स्तंभ list से Duration जाँचें।
- Filter मेनू > Filter… (Ctrl+L) में
Process Name/is/ लक्ष्य exe नाम /Includeडालें, Add बटन दबाकर OK (Add न दबाएँ तो शर्त नहीं लगती)।
फिर Duration स्तंभ क्लिक कर sort करें तो समय खाने वाले operations ऊपर आते हैं। Process-दर, file-दर सारांश Tools मेनू > File Summary भी चलता है। ProcMon operation सामान्य «Process Monitor (ProcMon) practical guide» में है।
8. Series का समापन — 6 भागों का मानचित्र
अब भाग 1 में खींचे मानचित्र के सब boxes खुले। पूरा एक चित्र में।
flowchart TB
APP["Application<br/>ReadFile / WriteFile / async-await"]
API["भाग 2: Sync · async I/O<br/>Handle mode और OVERLAPPED"]
IOCP["भाग 3: IOCP और .NET thread pool<br/>Complete होना लेना और जारी रखना"]
IOM["भाग 1: I/O Manager और IRP<br/>Name resolution · तीन objects · device stack"]
FLT["भाग 6: Filters और minifilters<br/>FltMgr · altitude · pre/post"]
CACHE["भाग 4: Cache Manager<br/>256KB view · lazy writer · fast I/O<br/>(NTFS से सहयोग कर चलता है)"]
NTFS["भाग 5: NTFS<br/>MFT · streams · links · दो journals"]
HW["Storage stack और device"]
APP --> API
API --> IOM
IOCP -. "Complete होना यहाँ लौटता है" .-> APP
IOM --> FLT
FLT --> NTFS
NTFS -. "Cache-enabled I/O सहयोग<br/>(File system cache सुविधा बुलाता है)" .- CACHE
NTFS --> HW
HW -. "Interrupt → complete (भाग 1)" .-> IOCP
चित्र 7: Series का पूरा मानचित्र। Cache Manager «गुज़रने वाली परत» नहीं file system का सहयोगी साथी है, cache miss पर NTFS से storage को request निकलता है
- भाग 1: पूरा चित्र — सब read-write IRP बनता है
- भाग 2: Sync / async — OVERLAPPED का असली अर्थ
- भाग 3: IOCP — async/await का तहखाना
- भाग 4: Cache — आपका WriteFile disk तक कब पहुँचता है
- भाग 5: NTFS — MFT से समझा file system
- भाग 6: Filters और minifilters (यह article) — Procmon और virus scan I/O में क्यों बीच में आ सकते हैं
9. सारांश — series के अंत पर
अंतिम भाग का सारांश।
- I/O में intercept OS-मान्य extension point है, वर्तमान standard FltMgr पर callback registration (minifilter)। क्रम altitude से निर्णायक, Microsoft संख्या allocated-managed करता है।245
- चाल pre/post callbacks। Pass-through, अस्वीकृत, स्थान लेना, बदलना, fast I/O पर भी उपस्थित। Procmon, Defender, OneDrive सब इसी तंत्र के निवासी।11110
- Exclusion setting = scan छोड़ना, security से समझौता। Development volume पर Dev Drive (async scan) अधिक सुरक्षित विकल्प।67
- «केवल उस वातावरण पर धीमा» Procmon Duration और
fltmcconfig अंतर से काटें — series के tools ज्यों के त्यों जाँच प्रक्रिया बनते हैं।
और series पूरे का निष्कर्ष एक पंक्ति में — Windows I/O namespace से गंतव्य तय कर request packet (IRP) बना परतें बहाता है, प्रत्येक परत «देखना, रखना, स्थान लेना» चुन सके, ऐसा consistent design है। File.ReadAllText की एक पंक्ति के नीचे ये छह भाग की structure हर बार चलती है। API व्यवहार रटने के स्थान पर इस मानचित्र से «ऐसा ही होना चाहिए» निकाल सकना — यही series से चाहिए थी शक्ति। लंबी यात्रा साथ देने के लिए धन्यवाद।
संबंधित articles
- Windows I/O की गहराई (भाग 1) — सब read-write IRP बनता है: I/O system का पूरा चित्र
- Windows I/O की गहराई (भाग 4) — Cache Manager: आपका WriteFile disk तक कब पहुँचता है
- Windows I/O की गहराई (भाग 5) — NTFS internals: MFT से समझा file system
- Process Monitor (ProcMon) practical guide — «setting नहीं पढ़ी», «ACCESS DENIED» दस मिनट में पकड़ना
- स्व-विकसित Windows app virus माना जाए तो — Microsoft Defender false positive और performance प्रभाव
- Process Explorer / Handle / VMMap practical — hang, leak, «file उपयोग में» इसी क्षण की अवस्था से पीछा
- Windows app development की security न्यूनतम checklist
संबंधित consulting क्षेत्र
KomuraSoft LLC «विशिष्ट वातावरण पर ही धीमा», «security software और अपना app टकराते हैं» जैसे filter drivers जुड़े Windows business apps performance समस्या और troubleshooting सँभालता है।
- Windows app development
- Bugs की जाँच और root-cause analysis
- Technical consulting और design review
- संपर्क करें
संदर्भ लिंक
-
Microsoft Learn, About file system filter drivers. File system filter driver file system या अन्य filter drivers की ओर request intercept कर सकने वाला optional driver है; request intercept करके मूल गंतव्य तक पहुँचने से पहले सुविधा विस्तार-स्थानापन्न, record, monitor, data बदलना, व्यवहार रोकना संभव; antivirus utilities, encryption programs, hierarchical storage management systems filter drivers के उदाहरण। ↩ ↩2 ↩3
-
Microsoft Learn, Filter Manager Concepts. Filter Manager (FltMgr) Windows के साथ kernel-mode driver है, minifilter driver development सरल करने वाली सुविधाएँ प्रकाशित करता है; minifilter I/O operations के पहले-बाद (pre/post callbacks) processing register कर सकता है; legacy filter साथ चलाने को FltMgr frames के रूप में I/O stack के कई स्थानों पर attach हो सकता है; minifilter unload-पुनः load पर भी उसी frame के उसी altitude पर लौटता है। ↩ ↩2 ↩3 ↩4 ↩5
-
Microsoft Learn, Advantages of the Filter Manager Model. Minifilter model legacy filter model की तुलना में filter load order बेहतर control, legacy के विपरीत किसी भी समय load, unload संभव, DAX volume से जुड़ना आदि लाभ। ↩ ↩2
-
Microsoft Learn, Load order groups and altitudes for minifilter drivers. File system filters के लिए use-दर load-order groups परिभाषित, प्रत्येक group को altitude दायरा; सब filter drivers अद्वितीय altitude identifier रखते हैं जो I/O stack में अन्य filters के सापेक्ष स्थान तय करता है; group उदाहरण FSFilter Activity Monitor (360000–389999, I/O monitoring और report), FSFilter Undelete (340000–349999), FSFilter Anti-Virus (320000–329999, file I/O में virus पकड़ना-हटाना), FSFilter Replication (300000–309999), FSFilter Continuous Backup (280000–289999)। ↩ ↩2 ↩3
-
Microsoft Learn, Allocated altitudes. Minifilter altitude Microsoft allocated-managed, प्रकाशित allocated altitudes list रखी जाती है; उस list में WdFilter.sys FSFilter Anti-Virus group 328010, cldflt.sys FSFilter Top group 409500। ↩ ↩2 ↩3
-
Microsoft Learn, Configure and validate exclusions for Microsoft Defender Antivirus. Microsoft Defender exclusion setting से excluded file, folder, process scan लक्ष्य से बाहर; exclusion security स्तर घटाता है इसलिए आवश्यकता evaluation कर सावधानी से परिभाषित करें, बार-बार चेतावनी। ↩ ↩2 ↩3
-
Microsoft Learn, Set up a Dev Drive on Windows 11. Dev Drive development workload के लिए design volume, Microsoft Defender performance mode (async scan) चलता है; गति और performance सोचते folder exclusion का सुरक्षित विकल्प (secure alternative to folder exclusions); extra filters default Dev Drive से नहीं जुड़ते; antivirus filters उतारकर चलाना गंभीर security risk, चेतावनी। ↩ ↩2 ↩3
-
Microsoft Learn, Request a Filter Altitude Identifier. नया filter altitude आवेदन विषय «Filter altitude request» ASCII पाठ ईमेल fsfcomm@microsoft.com को भेजने से; company नाम, contact ईमेल (व्यक्ति नहीं लंबे company alias), product नाम, product URL, filter विवरण, filter file नाम, filter प्रकार, start प्रकार, इच्छित load-order group, इच्छित altitude सब भरना आवश्यक; processing 30 business days मानें, इस प्रक्रिया के अलावा आवेदन खिड़की नहीं; Microsoft इच्छा से भिन्न altitude allocate कर सकता है; पहले से पूर्णांक altitude हो तो उसी load-order group में decimal जोड़ स्वयं altitude बना बाद सूचना काफी। ↩ ↩2
-
Microsoft Learn, Blocking legacy file system filter drivers. Admin command prompt से
fltmc filtersचलाएँ तो «Filter Name / Num Instances / Altitude / Frame» चार स्तंभ में filter list; Frame स्तंभ<Legacy>वाले FltMgr बिना legacy file system filter drivers, minifilters पर Frame में संख्या (0 आदि)। ↩ ↩2 -
Microsoft Learn, Cloud Files API. Cloud Files API (cloud filter) cloud पर files placeholder के रूप में local दिखा पहुँच पर पदार्थ लाने वाले sync engines (OneDrive Files On-Demand आदि) का आधार। ↩ ↩2
-
Microsoft Learn, Process Monitor - Sysinternals. Process Monitor file system, registry, process/thread activity real-time दिखाने वाला उन्नत monitoring tool (article के अनुसार चलते fltmc list में minifilter के रूप में दिखता देखा जा सकता है)। ↩ ↩2
संबंधित लेख
निकटवर्ती विषयों में गहराई से जाने के लिए समान टैग वाले नवीनतम लेख।
Windows I/O की गहराई (भाग 5) — NTFS internals: MFT से समझा file system
NTFS internals चित्रों से समझाने वाली series का भाग 5। MFT और file record, कई data streams (Zone.Identifier), hard links और 8.3 names, re...
Windows I/O की गहराई (भाग 4) — Cache Manager: आपका WriteFile disk तक कब पहुँचता है
Windows Cache Manager चित्रों से समझाने वाली series का भाग 4। File mapping के रूप में लागू cache, read-ahead और lazy writing, FlushFileBu...
Windows Virtualization Internals (भाग 2) — वो मेमोरी जिसे कर्नेल भी नहीं देख सकता: VBS, HVCI और Credential Guard कैसे काम करते हैं
Compatible hardware पर clean install में VBS default से enable होता है और hypervisor तथा SLAT से kernel से मज़बूत isolation बनाता है। यह ...
Windows Certificate Store practical guide — user या computer, कहाँ रखें
Client certificate user store में रखें या computer में? certmgr.msc और certlm.msc का अंतर, private key access rights, PowerShell से expir...
Windows Firewall और business apps — inbound rules installer से register करें
«Development machine पर चलता है, ग्राहक पर संचार नहीं» का तयशुदा कारण Windows Firewall है। Inbound default block और profiles, notificatio...
संबंधित विषय
ये पृष्ठ विषय को सेवाओं और निर्णयों के व्यापक संदर्भ में रखते हैं।
Windows के तकनीकी विषय
Windows विकास, बग जाँच और मौजूदा संपत्तियों के उपयोग का प्रवेश-द्वार।
इस विषय से जुड़ी सेवाएँ
यह लेख निम्नलिखित सेवाओं से सीधे जुड़ा है।
Windows ऐप विकास
व्यावसायिक ऐप, डिवाइस एकीकरण और संचार उपकरण, आवश्यकताओं से विकास तक।
अक्सर पूछे जाने वाले प्रश्न
इस लेख के विषय पर परामर्श में अक्सर पूछे जाने वाले प्रश्न।
- File system filter driver और minifilter में क्या अंतर है?
- दोनों «file system को I/O request में intercept करने वाले drivers» हैं, पर intercept की generation अलग है। पुराना legacy filter file system के device stack पर अपना device object सीधे attach करता था; load order से स्थान तय होता था इसलिए क्रम guarantee मुश्किल, एक बार load करने पर safely unload न हो पाने जैसी समस्याएँ थीं। वर्तमान standard minifilter Windows के साथ आए Filter Manager (FltMgr) पर «इस operation के पहले-बाद बुलाएँ» callbacks register करता है। स्थान altitude नामक संख्या से निर्णायक तय, किसी भी समय load, unload callback लागू filter चलते हुए उतारा भी जा सकता है। Antivirus, encryption, monitoring tools, cloud sync — आधुनिक filters लगभग सब minifilter के रूप में लागू हैं।
- Antivirus software हर file पहुँच जाँच क्यों सकता है?
- OS आधिकारिक रूप से उसी के लिए extension point देता है। Minifilter file खोलने, पढ़ने, लिखने जैसे operations के पहले (pre callback) और बाद (post callback) बुलाए जाने वाला code Filter Manager पर register कर सकता है। Antivirus filter antivirus altitude band (320000–329999) पर बैठता है, उदाहरण file खोलना सफल होते ही (post-create) content scan कर समस्या हो तो वह खोलना रद्द कर पहुँच fail कर सकता है। Series भाग 1 के अनुसार सब file I/O device stack बहता है, इसलिए उस रास्ते के तय स्थान पर खड़े हों तो सब पहुँच जाँच सकते हैं। Hack नहीं, OS design में बना तंत्र है।
- Antivirus की exclusion setting (folder exclusion) technically क्या करती है?
- Exclusion list से मेल path के I/O पर उस product के filter का scan छोड़वाती है। Filter स्वयं stack से गायब नहीं होता; «इस path की जाँच न करें» decision जल्दी हो जाता है — यही यथार्थ के निकट समझ है। महत्त्वपूर्ण सीमा: exclusion उसी setting वाले product स्वयं पर ही लगता है। उदाहरण Microsoft Defender exclusion Defender के filter (WdFilter) का scan बदलता है, साथ बैठे अन्य company antivirus, EDR, backup जैसे अन्य minifilters के व्यवहार पर प्रभाव नहीं। Product-दर अलग exclusion चाहिए; «exclusion लगाया फिर भी धीमा» हो तो दूसरा filter कारण हो सकता है। Microsoft documentation बार-बार चेतावनी देता है: exclusion उस स्थान की security कमज़ोर करता है, risk assessment के साथ न्यूनतम रखें। Development use पर folder exclusion के सुरक्षित विकल्प के रूप में design Dev Drive (performance mode = async scan) विचार योग्य है।
- Process Monitor हर I/O कैसे record करता है?
- Procmon स्वयं startup पर Activity Monitor altitude band के minifilter के रूप में Filter Manager पर स्वयं register करता है। Procmon चलाते admin command prompt से fltmc चलाएँ तो PROCMON से शुरू नाम का filter list में दिखता है। Minifilter के रूप में सब volumes के I/O operations के pre/post पर उपस्थित रहकर कौन सी process किस file पर क्या operation किया, बिना चूक record कर सकता है। Series में देखे IRP और fast I/O शब्द Procmon display में ज्यों के त्यों आते हैं क्योंकि वह I/O के रास्ते पर ही खड़ा देख रहा है।
- Development machine का build धीमा हो तो filter driver संदेह करें?
- संदेह का मूल्य बहुत है। Build बड़ी संख्या छोटी files के बनाना-पढ़ना-लिखना-हटाना का ढेर है, प्रत्येक filter group (खास कर antivirus scan) की जाँच का लक्ष्य बनता है, इसलिए filter लागत सबसे अधिक उभरने वाला workload है। जाँच Procmon Duration स्तंभ से समय किस operation में जा रहा है देखें, fltmc instances से वातावरण-दर filter config अंतर तुलना मूल प्रक्रिया है। उपाय risk assessment के बाद exclusion के अलावा development volume के लिए design Dev Drive use है। Dev Drive पर antivirus performance mode (async scan) चलता है, Microsoft इसे exclusion से अधिक सुरक्षित विकल्प मानता है।