中国DOS联盟论坛

China DOS Union

-- Unite DOS · Advance DOS · Grow DOS --
Union site: www.cn-dos.net Forum site: www.cn-dos.net/forum
Guest | Log in | Register | Members | Search | China DOS Union
中国DOS联盟论坛
The time now is 2026-08-17 16:11
47,814 topics / 349,907 posts / today 4 new / 48,259 members
DOS疑难解答 & 问题讨论 (解答室) » What Is a DOS Shell
Printable Version  1,273 / 4
Floor1 zhanglei200 Posted 2005-11-28 16:37
初级用户 Posts 8 Credits 36
What is a DOS shell
Floor2 Wengier Posted 2005-11-29 08:02
系统支持 Posts 10,521 Credits 27,736
Usually it can be treated as a DOS command interpreter, such as COMMAND, 4DOS, etc.
Floor3 zhanglei200 Posted 2005-11-29 13:56
初级用户 Posts 8 Credits 36
I want to know how to make a DOS shell. Can you tell me? I urgently need it, thanks
Floor4 willsort Posted 2005-11-29 15:40
元老会员 Posts 1,512 Credits 4,432
Re zhanglei200:

Please do not repeatedly post new topics for the same question. When necessary, you can reply under the original topic and bump the thread to draw everyone's attention to your question, but the reply frequency should also not exceed once per day. Your duplicate topics have already been deleted by me, and I apologize for not notifying you separately. In addition, your question has already been answered by someone on this forum, but no response to that answer was seen in your replies; this is impolite.

DOS shell is an abstract term, and at different levels it points to different things. For example, at the DOS boot level, it refers to command interpreters such as command.com / 4dos / ndos mentioned by moderator Wengier, which are loaded and supported by the DOS kernel. But at the DOS application level, it may refer to some advanced programs supported by DOS, such as DOSShell that comes with MSDOS.

Actually, if we look into the original meaning of shell and kernel, it is nothing more than one outside and one inside. But because computer software architecture has many layers, such as the BIOS layer, operating system layer, and application layer, and these layers also contain many sublayers, the distinction between shell and kernel ultimately depends on the choice of boundary. We can say DOSShell is the shell of DOS, and we can also say COMMAND is the shell of DOS, but in fact, DOS here has meanings at different levels.

Finally, let me end with a small question: what is the kernel of DOS? Is it IO.SYS, or is it BIOS? This is what is called “the benevolent see benevolence, the wise see wisdom.”
Floor5 DOSforever Posted 2005-11-29 16:54
金牌会员 Posts 2,239 Credits 4,639
I don't quite agree with Xiaotian's statement. Actually, SHELL has a clear definition in OS. Simply put, it is the interface between the OS and the user, that is, the interface through which ordinary users (meaning non-programmers) deal with the OS. For DOS, the SHELL it comes with is command.com. Precisely because the SHELL is independent of the CORE, any third-party software can be used to replace the SHELL that comes with the distribution. In fact, the scope of this replacement can be expanded, and is not limited to third-party command processors like 4DOS. Actually, you can use any program, even one without interactive functions, as a SHELL. It's just that after this program finishes running, the machine will “die” and will no longer accept user input. That would also make it lose the meaning of a SHELL. For example, you can use SHELL=C:\MSDOS\CHKDSK.EXE. Here, let me tell everyone something: I had already achieved “independent” Windows back in the Windows 3.x era, hehe. Actually, it was just using SHELL=C:\WINDOWS\WIN.COM. Of course, after exiting Windows the machine would “die.” In fact, if it were possible to exit the first-level command.com, the machine would also “die,” but why doesn't it “die” after executing exit? That is because the system does not allow you to exit the first-level command.com. When DOS starts, loading the first-level command.com is equivalent to manually loading command.com with the /P parameter later on.

As for DOSShell under MS-DOS, although it is an application program, I think it is an application program on a level similar to Windows 3.x, that is, some parts of it reach the system level.

What is the kernel of DOS? I think this is a very clear question. Taking MS-DOS as an example, it basically consists of three parts: IO.SYS, MSDOS.SYS, and COMMAND.COM. COMMAND.COM has already been discussed above. IO.SYS is the interface through which DOS deals with BIOS, while MSDOS.SYS is the core of DOS; all DOS interrupt calls and the implementation of the OS's basic functions are inside it. As for BIOS, that is unrelated to the OS.
[ Contact the Union admin team - 中国DOS联盟 - Standard version ]
Sponsored by ifanr Inc | © 2001–2023