我正在研究CPU,我知道它如何从内存中读取程序并执行其指令。我还了解到,操作系统将进程中的程序分开,然后在各个程序之间如此快速地切换,以至于您认为它们在同一时间运行,但实际上每个程序都在CPU中单独运行。但是,如果OS也是在CPU中运行的一堆代码,那么它如何管理进程?
我一直在思考,我唯一能想到的解释是:当操作系统将程序从外部存储器加载到RAM时,它会在原始程序指令的中间添加自己的指令,然后执行该程序,可以调用操作系统并执行某些操作。我相信操作系统会添加一条指令到程序中,这将允许CPU在一段时间后返回到操作系统代码。而且,我相信操作系统加载程序时,它会检查是否存在一些禁止的指令(该指令会跳转到内存中的禁止访问地址)并消除该指令。
我在想严厉吗?我不是CS学生,但实际上不是数学学生。如果可能的话,我会想要一本好书,因为如果操作系统也是一堆在CPU中运行的代码,并且无法同时运行,那么我找不到能解释操作系统如何管理进程的人。节目时间。这些书仅说明操作系统可以管理事物,但现在可以管理事物。