In MAP_FILE_FOR_READ_WRITE@ the variable SIZE can be input as zero, in which
case it will be returned as the original size of the file. Otherwise, the
mapped memory region will be set to SIZE bytes and the file will be extended if
necessary. If the file does not exist it will be created. In this routine the
contents of the file can be changed.