NTVDM cpu遇到无效指令
CPU作为电脑的核心组成部份,它的好坏直接影响到电脑的性能。下面是小编带来的关于NTVDM cpu遇到无效指令的内容,欢迎阅读!
NTVDM cpu遇到无效指令:
1,NTVDM 是从 WINDOWS NT 架构开始引入的一个子系统进程,目的是虚拟一个DOS环境来运行以前的DOS 16bit 程序。
2,只有当启动16位DOS程序时,才会启用 NTVDM 这个进程。
3,正常的16位DOS程序是会正常运于这个虚拟机的,不会报告任何异常。
4,通常情况下,一个32bit或64bit程序在下载时,复制时破坏了文件可执行程序本身的数据,就会被WIN认为是一个16bit DOS程序来执行,
5,由于并不是真正的16bit DOS 程序,故 NTVDM 会报告CPU的寄存器读写出错。
6,建议先检查可执行程序文件数据的正确性,可以从原处重新下载或复制。
相关阅读推荐:
众所皆知,微软新的桌面操作系统是向下兼容为旧系统开发的应用程序的(比如你可以在xp下玩仙剑奇侠传98柔情版),其中包括运行于DOS内核操作系统以及16位windowsPE 格式可执行文件,以及为DOS开发的只包含16位指令、运行于处理器实模式的可执行程序/命令(排除那些试图直接操作硬件的,因为这逾越了NT内核操作系统给应用程序的权限,或者说它们试图运行于处理器的0环,与操作系统内核运行于同一级别,为了内核的安全性,这显然是不能被允许的)。
微软采用了WOW(Windows On Windows)技术使得在xp等NT内核操作系统上可以运行那些为旧版操作系统开发的应用程序,这样我们便可以正常的运行 Windows 98 的甚至是Windows 3.2的计算器程序等。让我们在Windows XP下打开Windows 3.2的应用程序,如记事本,你就会发现 NTVDM 这个程序幽灵般的出现了,还带上了一个子进程 WOWEXEC.exe,这就是 WOW 的一个体现了。
而针对那些为 DOS 也就是 CPU 运行于实模式的情况下开发的16位程序,微软则使用了DOS虚拟机(VM)的方法。NTVDM 虚拟了一台运行DOS的计算机,使得16位程序能够在其中正常运行。让我们在XP下打开HD-copy,看看吧:ntvdm.exe又冒出来了。