3 ms·
Read-Write-eXecute TLB memory region can be found in JavaScript, Java, Dalvik (Android), and Python.
by egberts1 2y ago
Read-Write-eXecute TLB memory region can be found in JavaScript, Java, Dalvik (Android), and Python.
- Retr0id 2y agoModern javascript engines (namely V8) avoid RWX, although last time I checked there's been a backslide as part of WASM implementation. CPython also no longer appears to create RWX mappings even for ctypes, although you can of course still mmap them manually.
- egberts1 2y agoWow. So V8 actually back to optimizing the entire bytecode region in one fell swoop? I had thought that such V8 optimization were still occuring (as of Chrome Blink81/SparkPlug) during JavaScript execution of untouched bytecode as a form of overhead reduction of its startup. https://egbert.net/blog/articles/javascript-jit-engines-timeline.html https://egbert.net/blog/articles/javascript-jit-engines-time...
- Retr0id 2y agoI don't know what V8 actually does, but one possible strategy is to have a pair of RW and RX mappings to the same physical pages (or just keep flipping permissions between the two)