标题: 想问问不同版本command与cmd的区别
[打印本页]
作者: findfullmoon
时间: 2008-8-22 13:29
标题: 想问问不同版本command与cmd的区别
如题
现在看来,command 与 cmd 应该有这几种版本
win3.2中的ms-dos
win98/me 中的 command
winnt nt/2k/xp/2k3 中的 command 与 cmd
vista x32 中cmd(我没有用过,猜想应该也是有 command)
vista x64中的cmd
我想问问这几种不同版本的 command cmd的区别
我现在只知道
win3.2中运行msdos的时候 系统会回到 msdos 状态,也就是回到了所谓的 纯dos 状态 [16]
这时运行的程序也就是 16位实地址程序
winnt nt/2k/xp/2k3 vista x32 这些系统中自带程序的形式好像都差不多 都自带着 command cmd 两个程序 [32]
看起来 是一个command(16位) cmd(32位)
cmd是用来解释和运行windows下命令行的脚本与程序
command 似乎对应着一个 ntvdm 用来运行dos程序
xp x64/ 2k3 x64 / vista x64下已经不支持 16位程序了 带的就只有 cmd(64位) 与 cmd(32位,SysWOW64)
用来支持脚本与批处理程序,并分别支持32位与64位的命令行应用程序。
1.不知道以上的部分我说的对不对,说的有问题的部分还请指出。
然后下面的问题我就不知道了。
2.win 95/98/me 下是不是只有一个 16位的command (因为我好像记得9x是16位和32位混合的操作系统)
3.winnt nt/2k/xp/2k3 vista x32 下的 command 是利用ntvdm 运行程序的话,程序是运行在什么模式下? 虚拟8086模式?
4.win 95/98/me 下的command 似乎不是利用 ntvdm 来运行dos程序的吧?程序是运行在什么模式下?实地址模式?
作者: fujianabc
时间: 2008-8-22 15:55
win 3.x的msdos模式虽然是16位程序,但并不是纯dos状态,只能看成是win 3.x的一个子程序而已。
win9x的msdos模式与win 3.x类似,不同之处在于是16/32混合的程序。
winnt x86的cmd是纯32位命令行,而command是基于wow32的ntvdm来模拟16位的dos(模拟的是ms-dos 5.0)
winnt x64在system32中的cmd.exe是64位命令行,syswow64中的cmd是基于wow64的32位命令行,winnt x64中没有16位模拟层,所以没有command.com