| ▲ | uecker 4 days ago |
| How granular the memory protection mechanism is is part of the implementation. |
|
| ▲ | zozbot234 4 days ago | parent [-] |
| It's part of the broader system, not the language implementation. And in practice, systems that achieve this are not in common use. |
| |
| ▲ | uecker 4 days ago | parent [-] | | You are using a narrower definition than me. The language implementation builds on the functionality of the a larger system. An implementation can utilize the functionality of the overall system and close the loopholes. For example, using sanitizer you can turn out-of-bounds accesses to arrays into traps. This is not a segmentation fault but SIGILL, but it also builds on the trapping mechanism to achieve bounds safety (if you limit yourself to arrays). |
|