Read-only, read-write or copy-on-write access can be specified for the
mapping object while it is mapped, at the time it is created, and an optional security
descriptor specified. When the mapping object is opened by another process, it specifies a
desired access mode, which is checked against the security descriptor for that object.
When a mapping object is mapped, a desired access mode is specified, and checked against
the granted access rights to the object, which results in granted access rights to the
shared memory pages (or an access denied error). File mapping provides committed pages.
The inheritance flag on opening a mapping object specifies whether this handle can be
inherited by related processes, and is checked against the security descriptor for the
object.
Note that if a NULL name is specified for the mapping object, it can still be shared
with other processes, by means of handle duplication and/or inheritance. This is more
complicated as it may mean passing the handle between processes using some