Boost logo

Boost Users :

From: Richard_Morrey_at_[hidden]
Date: 2007-05-31 08:18:23


A query about the above. I wish to use it to enable us to share memory
amongst processes. Whilst it obviously should be possible to do this
using CreateFileMapping on Windows and mmap on linux, which the class
uses, the documentation is not clear as to whether it is designed be
used in this way.

Looking at the source code:

(a) It does not provide a kernel name to the CreateFileMapping call on
Windows. According to the MSDN docs this is the only way to share one
mapping amongst multuiple processes, and therefore it is possible that a
different mapping, albeit of the same file, is being created for each
process. I don't want that as the point is to keep memory usage down.

(b) On linux it only uses MEM_SHARED flag if the file is read only. If
this flag isnt used, is there the possiblity that more than one copy of
each page of the file will be loaded into physical memory too?

Clarification on any of these points is most welcome

Thanks

Richard Morrey.


Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net