In year 2000, OpenBSD started a development initiative to intentionally make the memory environment of a process <em>less predictable</em> and <em>less robust</em>, without impacting the well-behaved programs. Concepts like the random stack gap, W^X, ASLR and PIE are explained in the talk. Some of them, like the <a href="http://www.openbsd.org/papers/ru13-deraadt/mgp00009.html">random stack gap</a>, are implemented with a <a href="http://bxr.su/OpenBSD/search?q=stackgap*&path=kern_exec">3-line change to the kernel</a>, yet it appears that <a href="http://www.openbsd.org/papers/ru13-deraadt/mgp00034.html">some other</a> vendors are still shipping without it.
http://www.openbsd.org/papers/ru13-deraadt/