[Vm-dev] Immutability through hardware
andreas.raab at gmx.de
Mon May 9 14:20:34 UTC 2011
Yes, that idea has been discussed before. If you can assume an MMU there
are various useful things you can do, incl. a page-based write-barrier
that is effectively zero-cost (i.e., mprotect old space; trap the write
access, mark the page as root) which of course works well in combination
with read-only memory regions.
On 5/9/2011 14:16, Igor Stasenko wrote:
> Just a follow-up to recent thread.
> Suppose that we have new object format which supports multiple memory regions.
> eden space
> old space
> pinned space
> immutable space
> so, instead of adding a flag per object whether its immutable or not,
> and then check this flag every time there is a write attempt,
> we could simply let hardware handle this.
> And immutable space is a memory region with read-only access, So once
> placed& sealed , any attempt to write, we lead to a hardware
> which can be nicely handled :)
> So, we will have a single entry point for all write access , and don't
> need to spread an immutability logic all over the places.
> And of course hardware 'check if memory is writeable' is much faster
> than software one.
> What you think?
More information about the Vm-dev