ECP definiti dal sistema
[!NOTE]
Alcune informazioni riguardano un prodotto in versione preliminare che può essere modificato in modo sostanziale prima che venga rilasciato commercialmente. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Questa pagina elenca e descrive i parametri di creazione aggiuntivi definiti dal sistema . Il sistema operativo definisce questi ECP nel file di intestazione Ntifs.h .
Questi ECP definiti dal sistema collegano le informazioni aggiuntive specificate all'operazione di IRP_MJ_CREATE in un file. Gli elementi dello stack del file system possono eseguire query sugli ECP per ottenere informazioni aggiuntive.
In genere, un filtro che elabora l'operazione di IRP_MJ_CREATE su un file e quindi passa il file ai filtri sottostanti non deve allegare e spoofare uno degli ECP definiti dal sistema all'operazione di IRP_MJ_CREATE sul file.
Analogamente, un driver in modalità kernel che elabora e rilascia operazioni IRP_MJ_CREATE sui file non deve allegare e spoofare eventuali ECP definiti dal sistema alle operazioni IRP_MJ_CREATE sui file.
I driver di filtro devono considerare gli ECP definiti dal sistema come di sola lettura. È consigliabile usarli solo per recuperare informazioni.
Un'eccezione per limitare l'associazione di un driver di filtro a uno dei seguenti ECP definiti dal sistema è quando il driver di filtro implementa un file system a più livelli. A tale scopo, è proprietario di oggetti file e rilasciando le proprie operazioni di IRP_MJ_CREATE sui file al di sotto del relativo filtro, in risposta all'operazione di IRP_MJ_CREATE su un file che il driver di filtro servizi sui propri oggetti file. Un driver di filtro di questo tipo deve propagare qualsiasi elenco di strutture di contesto ECP_LIST dall'operazione di IRP_MJ_CREATE originale in un file alle operazioni di IRP_MJ_CREATE che il driver di filtro rilascia sotto di esso. Propagando questi elenchi ECP, il driver di filtro garantisce che tutti i filtri al di sotto del filtro che rilasciano le operazioni di IRP_MJ_CREATE siano consapevoli del contesto dell'operazione di IRP_MJ_CREATE originale.
ECP GUID | Struttura e significato del contesto ECP |
---|---|
ECP_TYPE_CLFS_CREATE_CONTAINER | GUID usato per identificare la struttura del contesto CREATE_REDIRECTION_ECP_CONTEXT ECP. Questo ECP può essere inviato a NTFS per inserire un nuovo contenitore CLFS (Common Log File System) durante il montaggio del volume. |
ECP_TYPE_IO_STOP_ON_SYMLINK_FILTER_GUID | GUID che identifica la struttura del contesto IO_STOP_ON_SYMLINK_FILTER_ECP_v0 ECP. Questo ECP limita il comportamento di IO_STOP_ON_SYMLINK ad agire solo sui tag di reparse specificati. |
ECP_TYPE_OPEN_REPARSE_GUID | GUID che identifica la struttura del contesto OPEN_REPARSE_LIST ECP. Questo ECP supporta i chiamanti che aprono punti di reparse specifici senza inibire il comportamento di reparse per tutte le classi di punti di reparse. |
GUID_ECP_ATOMIC_CREATE | GUID che identifica la struttura del contesto ATOMIC_CREATE_ECP_CONTEXT ECP. Questo ECP consente di eseguire determinate operazioni supplementari su un file in modo atomico durante la creazione. |
GUID_ECP_CLOUDFILES_ATTRIBUTION | GUID che identifica L'ECP per l'attribuzione dei file cloud. |
GUID_ECP_CREATE_REDIRECTION | GUID usato per identificare l'ECP che può essere inviato per eseguire una query sullo stato di reindirizzamento di un file per un'operazione di creazione specifica. |
GUID_ECP_CSV_DOWN_LEVEL_OPEN | GUID che identifica la struttura del contesto ECP CSV_DOWN_LEVEL_OPEN_ECP_CONTEXT. Il file system dei volumi condivisi cluster (CSVFS) invia questo ECP al nodo metadati (MDS) e contiene informazioni sul tipo di creazione. |
GUID_ECP_CSV_QUERY_FILE_REVISION | GUID che identifica la struttura di contesto CSV_QUERY_FILE_REVISION_ECP_CONTEXT ECP. Questo ECP può essere inviato a CSVFS per richiedere un numero di revisione del file. |
GUID_ECP_CSV_QUERY_FILE_REVISION_FILE_ID_128 | GUID che identifica la struttura del contesto CSV_QUERY_FILE_REVISION_ECP_CONTEXT_FILE_ID_128 ECP. Questo ECP può essere inviato a CSVFS per richiedere un numero di revisione del file. |
GUID_ECP_CSV_SET_HANDLE_PROPERTIES | GUID che identifica la struttura del contesto CSV_SET_HANDLE_PROPERTIES_ECP_CONTEXT ECP. Questo ECP può essere inviato a CSVFS per impostare le proprietà su come deve gestire l'I/O in arrivo in questo open. |
GUID_ECP_DUAL_OPLOCK_KEY | GUID che identifica la struttura del contesto DUAL OPLOCK_KEY_ECP_CONTEXT ECP. Analogamente alla struttura OPLOCK_KEY_ECP_CONTEXT, viene usato DUAL OPLOCK_KEY_ECP_CONTEXT per collegare una chiave oplock alla richiesta di file aperta. Con DUAL OPLOCK_KEY_ECP_CONTEXT, è anche possibile impostare una chiave padre per fornire un oplock per la directory di un file di destinazione. |
GUID_ECP_IO_DEVICE_HINT | GUID che identifica la struttura IO_DEVICE_HINT_ECP_CONTEXT. Gli hint per il dispositivo vengono usati per aiutare i driver minifiltri del provider di nomi a tenere traccia di una destinazione di controllo al nuovo dispositivo. |
GUID_ECP_NETWORK_APP_INSTANCE | GUID che identifica la struttura di contesto NETWORK_APP_INSTANCE_ECP_CONTEXT ECP. Un'applicazione client in un cluster di failover potrebbe avere un set di file aperti in un nodo del cluster. Gli oggetti file vengono contrassegnati da un'applicazione da un identificatore di istanza nella struttura NETWORK_APP_INSTANCE_ECP_CONTEXT . In caso di failover, un nodo secondario può convalidare l'accesso di un'applicazione client ai file aperti con l'identificatore dell'istanza dell'applicazione memorizzata nella cache precedente. |
GUID_ECP_NETWORK_APP_INSTANCE_VERSION | GUID che identifica la struttura NETWORK_APP_INSTANCE_VERSION_ECP_CONTEXT , che è un contesto ECP per un'applicazione per fornire il relativo ID istanza. Questo ECP deve accompagnare un NETWORK_APP_INSTANCE_ECP_CONTEXT (GUID_ECP_NETWORK_APP_INSTANCE) per essere valido. |
GUID_ECP_NETWORK_OPEN_CONTEXT | GUID che identifica la struttura di contesto NETWORK_OPEN_ECP_CONTEXT ECP e viene usato per collegare informazioni aggiuntive per i reindirizzamenti di rete. Questo GUID identifica anche la struttura NETWORK_OPEN_ECP_CONTEXT_V0 per i driver eseguiti in Windows 7 e versioni successive di Windows e che devono interpretare i contesti ECP di rete nei file che risiedono in Windows Vista. |
GUID_ECP_NFS_OPEN | GUID che identifica la struttura NFS_OPEN_ECP_CONTEXT. Il server NFS (Network File System) collega la struttura NFS_OPEN_ECP_CONTEXT a una richiesta di file aperta. Il server NFS usa questo GUID in qualsiasi richiesta di file aperta inviata dal server NFS per soddisfare una richiesta client. Lo stack del file system può quindi determinare se NFS_OPEN_ECP_CONTEXT è collegato alla richiesta di file aperto. In base alle informazioni contenute in NFS_OPEN_ECP_CONTEXT lo stack del file system può determinare il client che ha richiesto l'apertura del file e il motivo. |
GUID_ECP_OPEN_PARAMETERS | GUID che identifica la struttura del contesto ECP ECP_OPEN_PARAMETERS. Questo ECP consente a un chiamante di specificare lo scopo dell'apertura del file senza interferire con gli handle esistenti e/o blocchi opportunistici (oplock) nel file. |
GUID_ECP_OPLOCK_KEY | GUID che identifica la struttura di contesto OPLOCK_KEY_ECP_CONTEXT ECP e viene usato per collegare una chiave oplock alla richiesta di file aperto. La chiave oplock consente a un'applicazione di aprire più handle allo stesso flusso senza interrompere il proprio oplock dell'applicazione. Per altre informazioni sugli oplock e sulle chiavi oplock, vedere Panoramica della semantica oplock. |
GUID_ECP_PREFETCH_OPEN | GUID che identifica la struttura di contesto PREFETCH_OPEN_ECP_CONTEXT ECP. Il prefetcher è un componente del sistema operativo strettamente integrato con gestione cache e gestione memoria per rendere più efficiente l'accesso al disco e quindi migliorare le prestazioni. Se altri componenti interferiscono con il prelettura, le prestazioni del sistema diminuiscono e potrebbero causare un deadlock. Pertanto, il prefetcher allega la struttura PREFETCH_OPEN_ECP_CONTEXT a un file per comunicare che il prefetcher esegue una richiesta aperta nel file. Questa richiesta aperta viene specificata dal membro Context di PREFETCH_OPEN_ECP_CONTEXT. Altri componenti, ad esempio i driver di filtro del file system, possono determinare se PREFETCH_OPEN_ECP_CONTEXT è collegato al file e quindi intervenire in modo appropriato. |
GUID_ECP_QUERY_ON_CREATE | GUID che identifica L'ECP per le informazioni sui file di query da creare. |
GUID_ECP_RKF_BYPASS | GUID che identifica la struttura del contesto RKF_BYPASS_ECP_CONTEXT ECP. |
GUID_ECP_SRV_OPEN | GUID che identifica la struttura del contesto ECP SRV_OPEN_ECP_CONTEXT. Un server collega la struttura SRV_OPEN_ECP_CONTEXT a una richiesta di file aperta. Il server usa questo GUID in qualsiasi richiesta di file aperta inviata dal server per soddisfare una richiesta client condizionale. Lo stack del file system può quindi determinare se SRV_OPEN_ECP_CONTEXT è collegato alla richiesta di file aperto. In base alle informazioni contenute in SRV_OPEN_ECP_CONTEXT lo stack del file system può determinare il client che ha richiesto l'apertura del file e il motivo. Non tutti i file creati dai server contengono questo ECP. |
GUID_ECP_TYPE_VETO_BINDING | Identifica la struttura del contesto ECP VETO_BINDING_ECP_CONTEXT. Questo ECP può essere usato per veto un collegamento di associazione nella partizione di avvio del sistema. Disponibile a partire da Windows 11 versione 24H2. |