1. A system comprising: a memory; a plurality of pages held in the memory; an instruction translation look aside buffer (ITLB); a first data translation look aside buffer (DTLB); a translation look aside (TLB) miss handler; and an executable/non-executable (x) indicator associated with each page in memory wherein the TLB miss handler sets the x-indicator for a particular page to indicate “non-executable” when that page is accessed in a mode that allows writing to that page, and wherein the ITLB refuses to allow instructions from a page with an associated x-indicator of “non-executable” to be loaded.