في معمارية x86-64، كيف يمكن لنظام التشغيل يحدد اي صفحات ما تقدر تحتوى على كود قابل للتنفيذ؟
Context:بت No-Execute او بت NX (بت 63 من مدخل جدول الصفحات) يسمح لنظام التشغيل بتحديد الصفحات من مساحة العناوين الافتراضية التي يمكن ان تحتوي على كود قابل للتنفيذ والتي لا يمكن. محاولة لتنفيذ كود من صفحة مُعَلَّمة بـ "لا تنفيذ" سَتُسَبِّب في خرق للوصول للذاكرة، مثل محاولة للكتابة لصفحة للقراءة فقط. هذا يجعله اكثر صعوبة على الكود الخبيث ليسيطر على النظام عن طريق هجمات "تجاوز المخزن المؤقت" او هجمات "الخزن المؤقت غير المحدد". ميزة مماثلة كانت متوفرة على معالجات x86 منذ 80286 كسمة من وصفات القطاع؛ لكن هذا يعمل فقط على قطاع كامل في كل مرة.
نظام التشغيل يقدر يسمي صفحة من مساحة العناوين الافتراضية ب بيت No-Execute او NX، وهو بيت 63 من مدخل جدول الصفحة.