MmFlushImageSection 함수(ntifs.h)
MmFlushImageSection 루틴은 파일의 이미지 섹션을 플러시합니다.
구문
BOOLEAN MmFlushImageSection(
PSECTION_OBJECT_POINTERS SectionObjectPointer,
[in] MMFLUSH_TYPE FlushType
);
매개 변수
SectionObjectPointer
파일 개체의 섹션 개체 포인터가 포함된 구조체에 대한 포인터입니다.
[in] FlushType
플러시 작업의 이유를 지정합니다. 다음 표에 나열된 값 중 하나일 수 있습니다.
FlushType 값 | 의미 |
---|---|
MmFlushForDelete | 파일이 삭제되고 있습니다. |
MmFlushForWrite | 쓰기 액세스를 위해 파일이 열립니다. |
반환 값
MmFlushImageSection 은 플러시 작업이 성공하거나 파일에 대한 이미지 섹션이 없으면 TRUE 를 반환합니다. 그렇지 않으면 MmFlushImageSection 이 FALSE를 반환합니다.
설명
파일 시스템은 파일을 삭제하거나 쓰기 액세스를 위해 파일을 열기 전에 MmFlushImageSection 루틴을 호출해야 합니다.
파일을 삭제하기 전에 파일 시스템은 해당 IRP_MJ_SET_INFORMATION 또는 IRP_MJ_CLEANUP 디스패치 루틴에서 MmFlushImageSection을 호출하여 FlushType 매개 변수에 대해 MmFlushForDelete를 전달해야 합니다.
쓰기 액세스를 위해 파일을 열 때 파일 시스템은 IRP_MJ_CREATE 디스패치 루틴에서 MmFlushImageSection을 호출하고 FlushType 매개 변수에 대해 MmFlushForWrite를 전달해야 합니다.
이미지 섹션의 매핑된 보기가 없는 경우 MmFlushImageSection 은 이미지 섹션을 삭제하고 사용된 모든 페이지를 무료 목록으로 반환합니다.
MmFlushImageSection을 사용하기 전에 파일 시스템 작성기는 FASTFAT 샘플에서 이 루틴이 사용되는 방식을 연구하는 것이 좋습니다.
요구 사항
요구 사항 | 값 |
---|---|
대상 플랫폼 | 유니버설 |
헤더 | ntifs.h(Ntifs.h 포함) |
라이브러리 | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | < DISPATCH_LEVEL |