On Mon Feb 19 11:53:42 2024 +0000, Rémi Bernon wrote:
Would you mind detailing why? Using a single mapping for everything we'd simply have to reimplement what is implicit ourselves, handle various struct allocations, refernce counts, and deallocation, mitigate the induced fragmentation somehow, growing the desktop mapping when needed, convert pointers into offsets for the clients, etc... I think it'd be much more effort and complexity, with increased fragility, and I don't understand the point.
Mostly it's a waste of resources. Each mapping takes up handles and file descriptors, 64Kb of address space on the client side, and increases the server footprint as well. Mapping/unmapping is also a fairly expensive operation. It doesn't seem to be justified given the small amount of information that each mapping contains.