Hi,

Il 24/05/26 14:49, Sergey Bugaev ha scritto:
For what it's worth, I did not like ramdisk's specifics, because it
copies out data to the kmalloc heap, which is limited in size, and
IIRC the data stays on there forever, even once the system no longer
needs it. My idea was a different way that Mach could expose this, VM
objects [1]. The userland would then use libstore's vmobj backend,
instead of its device backend, and the memory would be properly freed
once the port reference is deallocated.

[1]: https://lists.gnu.org/r/bug-hurd/2023-08/msg00097.html

I did some tests on top of Sergey's work, it's still unfinished as freeing the memory object still doesn't work (or I didn't test it in the right way). I don't know if it could be merged already, knowing the limitation?

If it can be useful you can find it here:

https://gitlab.com/luckyd/gnumach/-/commits/memobj-rebased

By the way, for a first step maybe the existing gnumach tests are enough, you should be able to test most of the syscalls in this way. And if you find some bugs or corner cases, it would be a good time to extend the existing tests.


Luca

Reply via email to