Subject: Re: [Boost-bugs] [Boost C++ Libraries] #4827: Windows vs POSIX interface distinction seems unnecessary
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2011-04-02 17:28:25
#4827: Windows vs POSIX interface distinction seems unnecessary
-------------------------------+--------------------------------------------
Reporter: psiha | Owner: igaztanaga
Type: Tasks | Status: reopened
Milestone: To Be Determined | Component: interprocess
Version: Boost 1.44.0 | Severity: Problem
Resolution: | Keywords:
-------------------------------+--------------------------------------------
Comment (by psiha):
Replying to [comment:8 igaztanaga]:
> Sorry, but IMO your reply is too quick. Several users have reported bugs
regarding non-administrative user permission issues, so shared memory is
definitely needed for non-administrative users.
Shared memory as such yes, but creation of global, kernel lifetime shared
memory..is this also really required for non-admin users?
> Maybe we should offer windows-centric new feature for permanent shared
memory, but that's another story. Interprocess shared_memory_object is
about portability. windows_shared_memory might be another issue.
No, no...the point of the ticket was that there already exists an
unnecessary Windows vs POSIX distinction in the interface...adding more
windows-centric features would only make the problem worse...and, as you
say, ...it is about portability...
As explained in the boost.devel thread, this Win vs POSIX interface
complication exists only because 'Boost.Interprocess' insists on the POSIX
model that shared memory objects _must_ have kernel lifetime semantics on
all platforms...If you give up on that premise, and provide two 'layers'
or RAII wrappers for shared memory objects, one with scoped (or implicitly
reference counted through the OS handle) life time semantics (like for
normal C++ objects) and another with persistent/kernel life time this
complication would (probably) vanish...Then you could implement the
'plain'/scoped shm on Windows using the native shared memory mechanisms
(as there would no longer be any need for the file-system-persistency
emulation) which would in turn remove the need for the separate
windows_shared_memory...
-- Ticket URL: <https://svn.boost.org/trac/boost/ticket/4827#comment:9> Boost C++ Libraries <http://www.boost.org/> Boost provides free peer-reviewed portable C++ source libraries.
This archive was generated by hypermail 2.1.7 : 2017-02-16 18:50:06 UTC