We have already taken into account the problem of pointers and also
endian ordering.
When doing a hex dump of the files produced under unix and one
produced under android, using the same data content, we have noticed
that there are byte differences.
So, other than doing a "memory dump", is it possible to get Boost to
serialise the data out to disk ?
On 23/01/2019 01:46, Gavin Lambert via
Boost-users wrote:
On
21/01/2019 22:41, Simon Giddings wrote:
We are developing a system which heavily
uses memory mapped files.
These files are initially created under a unix system, but will
then be used in portable systems such as Android and iOS.
We are having some problems loading memory mapped files created
under Unix into Android.
In what context? Using some Boost library or in general?
Is this scenario even possible ?
Are the memory mapped files compatible between systems ?
They can be, but are not guaranteed to be, depending on what
you're storing in the memory.
Binary layout of class types is usually not guaranteed
cross-platform (or cross-compiler, for that matter).
Anything involving pointers usually won't work at all, even
cross-process or cross-session, let alone cross-platform.
You can also have issues with padding or value endian ordering,
depending on the specific platforms involved.
_______________________________________________
Boost-users mailing list
Boost-users@lists.boost.org
https://lists.boost.org/mailman/listinfo.cgi/boost-users