W^X Transition (4 of 6): Page Permission Purity GOT and PLT get their own pages and become non-writeable (and we teach ld.so how to cope) dtors/ctors move in with the GOT, thus become non-writeable Now the data segment has no objects with X permission! We made a few things non-writeable (for free) This is enough for any cpu that supports a per-page X bit sparc sparc64 alpha sparc64 m88k hppa amd64 (ia64) No page has both W and X bits!