vja*_*n27 7 operating-system dos multiprocessing
DOS总是作为单任务操作系统的一个例子给出.但是,当通过命令行发出命令时,控制从shell切换到命令,然后在命令完成时切换回shell.因此,有两个进程同时执行.我的理解有什么不对吗?
不,他们没有同时执行.
COMMAND.COM 有一个居住的部分,一直在记忆中,一个短暂的部分可以随意抛出.
运行程序时,通常会加载它来代替瞬态部分然后运行.当程序退出时,它通过调用驻留部分中的代码来执行此操作,然后在必要时重新加载瞬态部分并继续.
一些代码仍然驻留的事实绝不意味着它"正在运行".以类似的方式,大量的MS-DOS(内核)在内存中持续存在,但它们并非"正在运行",除非由非内核程序明确调用.
现在还有人东西都可以说是同时运行,DOS空有TSR的(终止并驻留),将运行程序,勾成以某种方式,然后退出中断或DOS,但留下一些内存分配(它的代码是哪里).
然后,响应某些事件,将运行该代码.也许其中一个着名的是Borland Sidekick,这是一个个人信息管理员,可以通过按键立即弹出.