자리 표시자 처리

자리 표시자를 구현하는 미니 필터에 대한 지침

자리 표시자를 사용하는 모든 가상화 구현은 이러한 자리 표시자에 FILE_ATTRIBUTE_RECALL_ON_DATA_ACCESS 파일 특성을 설정해야 합니다. 이 특성은 다음을 나타냅니다.

  • 소유 미니필터 아래에서 이러한 파일을 읽으면 0이 반환될 수 있으며
  • 소유 미니필터 위에서 이러한 파일을 읽으면 데이터를 제공하는 추가 비용이 수반됩니다.

미니 필터는 전체 데이터를 로컬로 사용할 수 있게 되면 자리 표시자에서 이 특성을 제거할 수 있습니다.

자리 표시자를 구현하는 모든 미니 필터는 HSM 로드 순서 그룹에 있어야 합니다.

모든 미니필터에 대한 지침

필터는 특성이 설정된 파일에 대해 HSM 로드 순서 그룹 아래의 필터 인스턴스에서 대상 읽기/쓰기를 실행해서는 안 FILE_ATTRIBUTE_RECALL_ON_DATA_ACCESS. 이 경우 파일 데이터 손상이 발생할 수 있습니다. 미니필터 개발자는 스택의 맨 위에 IO 요청을 실행하여 이 상황을 우회하려고 시도할 수 있지만 이러한 요청으로 인해 교착 상태가 발생할 수 있습니다.

또한 필터는 HSM 로드 순서 그룹 위에서 설정된 FILE_ATTRIBUTE_RECALL_ON_DATA_ACCESS 특성이 있는 자리 표시자 파일에서 읽기 및 쓰기를 실행해서는 안 됩니다. 이러한 읽기 또는 쓰기는 사용자 애플리케이션이 파일 데이터를 요청하지 않은 경우 불필요한 하이드레이션을 발생합니다.

미니필터는 특성 전용 열기 가로채기 시 읽기/쓰기를 실행해서는 안 됩니다. 이러한 읽기/쓰기는 특정 구현에서 특성 전용 열기가 데이터 액세스 작업으로 변환될 것으로 예상하지 않기 때문에 교착 상태를 일으킬 수 있습니다. 또한 이러한 읽기/쓰기는 앞서 언급한 두 가지 상황을 피할 수 있도록 FILE_ATTRIBUTE_RECALL_ON_DATA_ACCESS 검사하는 미니필터의 목적을 무용지물로 만듭니다.

따라서 모든 미니필터는 FILE_ATTRIBUTE_RECALL_ON_DATA_ACCESS 설정된 파일에 대해 읽기/쓰기를 실행해서는 안 됩니다.