Debugging Tools for Windows |
/execute 参数禁用数据执行保护(DEP)和物理地址扩展(PAE)
注意 DEP是很有效的安全特性。如果不是必须,不要禁用DEP。
注意 /execute 参数在Windows Server 2003 SP1中支持用来禁用DEP和PAE。要在Windows XP Service Pack 2和Windows Vista中禁用,使用/noexecute=alwaysoff 。更多信息,查看/noexecute。
更多关于使用/execute 参数和其他参数来设置DEP的信息,查看用于配置DEP和PAE的引导参数。
DEP由硬件和软件方法组成。只作用于用户模式进程的软件DEP必须由操作系统支持。硬件DEP在页表入口设置了一位用于避免只应该包含数据的虚拟内存页面被当作代码执行。硬件DEP必须由操作系统和处理器一起提供支持。如果操作系统支持DEP,但是处理器不支持,只有软件DEP会被启用。
在Windows Server 2003 SP1,Windows XP SP2,Windows Vista和之后版本的Windows 都支持DEP。/execute 选项只在Windows Server 2003 SP1和Windows XP SP2支持。在Windows Vista和之后的Windows中,需要使用ECDEdit的NX成员。
/execute 参数只在32位进程上起效。在64位进程中,DEP默认启用,并且不能被禁用。在这些进程上,/execute 参数被忽略。在64位系统中,/execute 参数只对系统中运行的32位进程起效。
在Windows Server 2003 SP1和Windows XP SP2上启用、禁用和配置DEP,使用/noexecute /noexecute引导选项。
在32位系统上,硬件DEP要求PAE支持。因此当支持硬件DEP的机器上启用DEP时,32位版本的Windows自动启用PAE。 (查看 /pae)。
/execute参数同时禁用DEP和PAE
在Windows XP,Windows Vista和更迟版本Windows上,禁用DEP同时也会禁用PAE。在Windows XP上,/execute 参数和/noexecute=alwaysoff 和 noexecute=alwaysoff /nopae 具有相同作用;他们都禁用DEP 和 PAE。
但是,在Windows Server 2003 SP1上,/noexecute=alwaysoff 禁用掉DEP,但不会禁用PAE,并且系统跳过/nopae。在Windows Server 2003上同时禁用DEP和PAE,必须使用/execute。