标题: 什么叫DOS外壳
[打印本页]
作者: zhanglei200
时间: 2005-11-28 16:37
标题: 什么叫DOS外壳
什么叫DOS外壳
作者: Wengier
时间: 2005-11-29 08:02
通常可以当作DOS命令处理器,如COMMAND、4DOS等。
作者: zhanglei200
时间: 2005-11-29 13:56
标题: 我想知道怎么做DOS外壳 能不能告诉我
我想知道怎么做DOS外壳 能不能告诉我 急需 谢谢

作者: willsort
时间: 2005-11-29 15:40
Re zhanglei200:
请不要就同一问题重复发新主题,必要时可以在原主题后回复,将主题顶起,促使大家注意你的问题,但是回复频率也不要超过一天一次。你的重复主题已被我删除,恕不另行通知。另外,你的问题本论坛已有人答复,但是在你的回复中未见到对此答复的回应,这是不礼貌的。
DOS外壳是一个抽象意义的名词,在不同层面有不同的指向。比如在DOS引导层,它即是指 Wengier 总版主所提到的 command.com / 4dos / ndos 这些被DOS内核加载并支持的命令解释器。而如果在DOS应用层,它可能是指由DOS支持的一些高级应用程序,比如 MSDOS 自带的 DOSShell 。
其实,推究壳与核的本意,无非一外一内而已,但是因为计算机的软件构架有许多层次,比如 BIOS 层、操作系统层、应用程序层,而这些层次中又有许多子层,而壳核之分最终取决于分界线的选择。我们可以说 DOSShell是DOS的外壳,也可以说 COMMAND 是 DOS 的外壳,但是实际上,这里所提到的 DOS 具有不同层面的含义。
最后,以一个小小的提问做结,DOS的内核是什么?是 IO.SYS ,是 BIOS ?这就是所谓“仁者见仁,智者见者”了。
作者: DOSforever
时间: 2005-11-29 16:54
我不太同意笑天的陈述。实际上SHELL在OS中有明确的定义,说简单点就是OS和用户的接口,就是普通用户(指非程序员)如何和OS打交道的接口。对DOS来说自带的SHELL就是command.com。正因为SHELL是独立于CORE的,所以可以使用任何第三方的软件来替代发行者自带的SHELL。实际上这个替代的范围是可以扩大的,并不仅限于4DOS这样的第三方命令处理程序,其实你可以使用任何一个程序,甚至不具备交互功能的程序来做SHELL,只是这个程序执行完了后机器就“死”了,不会再接受用户输入了。也就失去了SHELL的意义了。比如,你可以SHELL=C:\MSDOS\CHKDSK.EXE。这里,告诉大家一件事情,我早在Windows 3.x时代就已经实现了“独立”的Windows了,呵呵。其实就是用SHELL=C:\WINDOWS\WIN.COM。当然,退出Windows后机器就“死”了。实际上,如果可以退出第一层的command.com机器也会“死”的,但为什么执行exit后没“死”呢?那是因为系统不允许你退出第一层的command.com。DOS启动时加载第一层的command.com等同于用户后面手工加载带/P参数的command.com。
至于MS-DOS下的DOSShell虽说是个应用程序,但我认为它是个和Windows 3.x类似级别的应用程序,也就是某些部分达到了系统级。
DOS的内核是什么?我认为这个很明确的问题。就那MS-DOS来说,它最基本的由三部分组成:IO.SYS、MSDOS.SYS和COMMAND.COM。COMMAND.COM前面已经说过了,IO.SYS是DOS和BIOS打交道的接口,而MSDOS.SYS就是DOS的核心,所有的DOS中断调用和OS的基本功能的实现都在它里面。至于BIOS那是和OS无关的。