In case of faults like "illegal instruction" or "privilege violation", the trap handlers in Windows examine the return address on the stack to try and locate the offending instruction. If that address points into the address space of a program, you'll see the first dialog that simply asks you to close the offending program, assuming nothing else has been compromised in Windows (this assumption is not always true, as you might have found. Actually, Windows can't really 100% know whether the offending program has not destroyed any important system data structures when it went bust).
The second dialog is shown when the return address cannot be associated with a specific program in menory, but rather points into a Windows DLL or other OS routines or, as in your specific example, points into something that was about to be paged in but can't. Here, Windows cannot easily find out what program has called this DLL or initiated the system call, so cannot point to a specific application and, more importantly, cannot assess the damage that might have been done. So it rather recommends to restart the system.
c0000006H
is STATUS_IN_PAGE_ERROR. See this 2008 blog post by Raymond Chen for more. It's on the more serious side as exception codes go, but I don't know whether that affects the message that's generated.