Reference 1

compiler enforced stack bounds.
auxiliary argument array:
altered C run-time to take a pointer to the ELF auxiliary argument array and extended it to contain pointers to the argument and environment arrays(argv and environ)
If you could revise
the fundmental principles of
computer system design
to improve security...
... what would you change?