Holy shit, that's awesome! I had the same basic idea for running a high performance emulator, safely, as a Linux user process. Basically run code inside a manually created KVM instance that can trap out into actual user mode for system calls, but get's the benefit of playing around manually with the page tables. Right now I'm porting the same ideas to Rust.
If it will be maintained and language VMs integrate it as optional dependency for the speedup/security features then maybe it will deliver what azul's sortof-failed Managed Runtime Initiative[0] promised.
Yeah, me as well. I'm not sure the benefits will outweigh the performance costs with this approach though.
All I'd really like to do is just map some nice really huge chunks of contiguous address space to memory in an efficient way. 1GB huge pages mostly work, but they're a little painful to code with. They must be statically allocated at boot time, balanced correctly between numa nodes, and mounted to a hugetlbfs filesystem in order to use MAP_SHARED.
https://github.com/monocasa/remu-playground