操作系统的两个特殊的事实:
- 操作系统 与普通的计算机软件以同样的方式运行,也就是说,它也 是由处理器执行的一个程序。
- 操作系统经常释放控制权,并且依赖于处理器恢复控制权 。
操作系统与进程的运行关系分为以下 2种 方式:
- 无进程的内核 (一般为老式操作系统)
此种情况下,操作系统在所有的进程之外执行,即此时的操作系统为一个单独的内核。通过 这种方法 ,当前 正在执行的进程被中断或者产生一个系统调用时 , 该进程的模式的上下文环境“就会”被保存起来 , 控制权转交给内核 !操作系统有自己的内存和系统栈,用于控制过程调用和返回。 操作系统可以执行任何预期的功能,并“恢复”被中断进程的上下文 ,这将导致被中断的用户进程重新继续执行。或者,操作系统可以完成保存进程环境的功能,并且继续调度和分派另一个进程,是否这样做取决于中断的原因和当前情况。
此种情况下,其关键点在于“进程的概念”只适用于用户程序,操作系统代码作为一个在特权模式下工作的独立实体被执行!
2.在用户进程中执行
此种情况下又可以分为两种类型:
(1)在用户进程的上下文中执行几乎所有的操作系统软件(一般为较小的机器(PC、工作站)的操作系统中)。其本质为:操作系统是用户调用的一组例程,在用户进程中执行,实现各种功能!。此时在任何时刻,操作系统管理着