中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-06-29 11:20
中国DOS联盟论坛 » DOS疑难解答 & 问题讨论 (解答室) » 什么叫DOS外壳 查看 1,203 回复 4
楼 主 什么叫DOS外壳 发表于 2005-11-28 16:37 ·  中国 河北 唐山 联通
初级用户
积分 36
发帖 8
注册 2005-11-27 11:39
20年会员
UID 46029
性别 男
状态 离线
什么叫DOS外壳
2 发表于 2005-11-29 08:02 ·  加拿大 Bell
系统支持
★★★★★★
“新DOS时代”站长
积分 27,736
发帖 10,521
注册 2002-10-09 12:00
23年会员
UID 9
状态 离线
通常可以当作DOS命令处理器,如COMMAND、4DOS等。
Wengier - 新DOS时代

欢迎大家来到我的“新DOS时代”网站,里面有各类DOS软件和资料,地址:
http://wendos.mycool.net/

E-Mail & MSN: wengierwu AT hotmail.com (最近比较忙,有事请联系DOSroot和雨露,谢谢!)

3 我想知道怎么做DOS外壳 能不能告诉我 发表于 2005-11-29 13:56 ·  中国 河北 唐山 联通
初级用户
积分 36
发帖 8
注册 2005-11-27 11:39
20年会员
UID 46029
性别 男
状态 离线
我想知道怎么做DOS外壳 能不能告诉我 急需 谢谢
4 发表于 2005-11-29 15:40 ·  中国 山西 大同 中移铁通
元老会员
★★★★
Batchinger
积分 4,432
发帖 1,512
注册 2002-10-18 00:00
23年会员
UID 19
性别 男
状态 离线
Re zhanglei200:

请不要就同一问题重复发新主题,必要时可以在原主题后回复,将主题顶起,促使大家注意你的问题,但是回复频率也不要超过一天一次。你的重复主题已被我删除,恕不另行通知。另外,你的问题本论坛已有人答复,但是在你的回复中未见到对此答复的回应,这是不礼貌的。

DOS外壳是一个抽象意义的名词,在不同层面有不同的指向。比如在DOS引导层,它即是指 Wengier 总版主所提到的 command.com / 4dos / ndos 这些被DOS内核加载并支持的命令解释器。而如果在DOS应用层,它可能是指由DOS支持的一些高级应用程序,比如 MSDOS 自带的 DOSShell 。

其实,推究壳与核的本意,无非一外一内而已,但是因为计算机的软件构架有许多层次,比如 BIOS 层、操作系统层、应用程序层,而这些层次中又有许多子层,而壳核之分最终取决于分界线的选择。我们可以说 DOSShell是DOS的外壳,也可以说 COMMAND 是 DOS 的外壳,但是实际上,这里所提到的 DOS 具有不同层面的含义。

最后,以一个小小的提问做结,DOS的内核是什么?是 IO.SYS ,是 BIOS ?这就是所谓“仁者见仁,智者见者”了。
※ Batchinger 致 Bat Fans:请访问 批处理编程的异类 ,欢迎交流与共享批处理编程心得!
5 发表于 2005-11-29 16:54 ·  中国 上海 黄浦区 电信
金牌会员
★★★★
积分 4,639
发帖 2,239
注册 2005-01-30 00:00
21年会员
UID 35785
性别 男
状态 离线
我不太同意笑天的陈述。实际上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无关的。
论坛跳转: