Can any part of a file system or a file system filter driver be pageable?
Depending upon the type of file system, some, or all of the file system can be pageable. In addition, there are some special issues for physical media file systems that support paging files (these are special files used by the OS to store pageable data when it is not in use). First, it is worth noting the underling issue that motivates these rules about paging – specifically, about the ability of the Windows operating system to handle an arbitrary number of stacked page faults. The stack in the kernel is limited – typically 12KB – and any reentrant behavior, including page faults, can cause stack overflow conditions. Thus, in general the rule is that at most two page faults may be “stacked”. The second page fault will occur when attempting to resolve the first page fault. That second fault is actually subject to some pretty stringent rules. For any arbitrary code within a file system, or file system filter driver, that can be invoked while handling paging activity (that is any I/O oper