Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Can you say what hardware could do better? I.e. which kind of primitives do you miss, or would make it easier to develop safer software?




Bounds checking of pointers, C Machine kind of.

Solaris and Linux SPARC since 2015, for example.

https://docs.oracle.com/en/operating-systems/solaris/oracle-...

https://docs.kernel.org/arch/sparc/adi.html

ARM MTE, as another one,

https://learn.arm.com/learning-paths/mobile-graphics-and-gam...


These approaches can only detect linear overflows deterministically. Use-after-frees (temporal safety violations) are only detected with some probability. It's mostly a debugging tool. And MTE requires special firmware, which is usually not available in the cloud because the tag memory reservation is a boot-time decision.

Still better than status quo on most systems.

It is kind of interesting how all attempts to improve security are akin to arguing about usefulness of seatbelts when people still die wearing them.


CHERI, but that's just one example.



Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: