Freigeben über


Behandeln von Platzhaltern

Leitfaden für Minifilter, die Platzhalter implementieren

Alle Virtualisierungsimplementierungen, die Platzhalter verwenden, müssen das FILE_ATTRIBUTE_RECALL_ON_DATA_ACCESS-Dateiattribute für diese Platzhalter festlegen. Dieses Attribut gibt Folgendes an:

  • Das Lesen solcher Dateien von unterhalb des besitzenden Minifilters kann 0s zurückgeben, und
  • Das Lesen solcher Dateien über dem besitzenden Minifilter verursacht zusätzliche Kosten für die Bereitstellung der Daten.

Ein Minifilter kann dieses Attribut aus dem Platzhalter entfernen, sobald die gesamten Daten lokal verfügbar sind.

Alle Minifilter, die Platzhalter implementieren, müssen sich in der HSM-Lastenreihenfolgegruppe befinden.

Leitfaden für alle Minifilter

Filter dürfen keine gezielten Lese-/Schreibvorgänge aus Filterinstanzen unterhalb der HSM-Lastenreihenfolgegruppe für Dateien ausgeben, für die das Attribut FILE_ATTRIBUTE_RECALL_ON_DATA_ACCESS festgelegt ist. Diese Situation kann zu Dateidatenbeschädigungen führen. Ein Minifilterentwickler könnte versuchen, diese Situation zu umgehen, indem er oben im Stapel eine E/A-Anforderung ausgibt, aber eine solche Anforderung könnte zu Deadlocks führen.

Filter sollten auch keine Lese- und Schreibvorgänge für Platzhalterdateien ausgeben, für die das Attribut FILE_ATTRIBUTE_RECALL_ON_DATA_ACCESS über der HSM-Lastenreihenfolgegruppe festgelegt ist. Ein solcher Lese- oder Schreibvorgang verursacht unnötige Flüssigkeitszufuhr, wenn keine Benutzeranwendung die Dateidaten angefordert hat.

Ein Minifilter sollte keine Lese-/Schreibvorgänge beim Abfangen von Attribut-only-Öffnen ausstellen. Solche Lese-/Schreibvorgänge können Deadlocks verursachen, da bestimmte Implementierungen nicht erwarten, dass nur Attributöffnungen in Datenzugriffsvorgänge konvertiert werden. Darüber hinaus verfehlen solche Lese-/Schreibvorgänge den Zweck einer Minifilterüberprüfung auf FILE_ATTRIBUTE_RECALL_ON_DATA_ACCESS so dass die beiden oben genannten Situationen vermieden werden können.

Daher wird empfohlen, dass alle Minifilter keine Lese-/Schreibvorgänge für Dateien ausgeben, die FILE_ATTRIBUTE_RECALL_ON_DATA_ACCESS festgelegt haben.