4 ms·
> specifically since modules don't share their wasm Memory. That means data will be constantly copied between them. We're working on that. We want to make it p
by JoshTriplett 7y ago
> specifically since modules don't share their wasm Memory. That means data will be constantly copied between them.
We're working on that. We want to make it possible for modules to share memory in a controlled way, without giving access to their entire address space.
- azakai 7y agoInteresting! Is that written up somewhere public?
- JoshTriplett 7y agoSome of it; see https://hacks.mozilla.org/2019/08/webassembly-interface-types/ https://hacks.mozilla.org/2019/08/webassembly-interface-type... for the starting point that this will be based on.
- azakai 7y agoOh, where? I don't think I see anything about controlled memory sharing there, but I guess I missed it. Which section is it in?
- JoshTriplett 7y agoIt isn't yet, that work is still in progress. WIT is just the starting point that this would be based on. (Sorry for the lack of more concrete information, documentation is still in progress.)
- azakai 7y agoI see, thanks. Curious to learn more when it is public.
- BubRoss 7y agoShared memory can certainly do this. Even separate processes can use shared memory to communicate lock free using atomics. Other than that, I wonder if nested page tables that are normally used for virtualization can be used to separate address spaces within a process.