私のシステムでは、特定のサイズになるように作成されたメモリ マップ ファイルは、デフォルトで常に完全にゼロになることが経験的にわかりました。たとえば、呼び出しを使用して
HANDLE hMM =
CreateFileMapping (h,
NULL,
PAGE_READWRITE,
0,
0x01400000,//20MB
NULL);
..そしてそのファイルのマップされたビューに書き込むと、ゼロ以外のデータを書き込んだ場合を除いて、常に完全にゼロになった20MBのファイルになります。
ファイルの初期化されていない部分をゼロと見なすことができるかどうか疑問に思っています。一般に、この動作は Windows で保証されていますか?