操作系统的特征
并发
并发是指两个或多个事件在同一时间间隔内发生,宏观上可以说是同时发生的,但微观上是交替发生的。
并行。指两个或多个事件在同一时刻同时发生。
注:
单核CPU同一时刻只能执行一个程序,各个程序只能并发地执行。
多核CPU同一时刻可以同时执行多个程序,多个程序可以并行地执行。
比如Intel第八代i3处理器就是4核CPU,意味着可以并行地执行4个程序。
并发性是操作系统一个最基本的特性。
共享
共享即资源共享,是指系统中的资源可供内存中多个并发执行的进程共同使用。
共享又可分为以下两种方式:
- 互斥共享方式。系统中的某些资源一个时间段内只允许一个进程访问该资源。
- 同时共享方式。允许一个事件段内由多个进程“同时”对它们进行访问。
虚拟
虚拟是把一个物理上的实体变为若干个逻辑上的对应物。物理实体(前者)是实际存在的,而逻辑上对应物(后者)是用户感受到的。
异步
异步是指,在多道程序环境下,允许多个程序并发执行,但由于资源有限,进程的执行不是一贯到底的,以不可预知的速度向前推进,就是进程的异步性。
操作系统运行环境
操作系统会根据CPU的程序状态字寄存器(PSW)来判断当前操作系统的状态,一般操作系统会有两种状态:
- 内核态。处于内核态时,说明此时正在运行内核程序,此时可以执行特权指令(特权指令就是指只有处于内核态才能执行的指令)。
- 用户态。处于用户态时,说明此时正在运行的是应用程序,此时只能执行非特权指令。
而当CPU处于用户态时若对CPU发出特权指令会使CPU引发一个中断信号,并强制进入内核态来处理当前中断信号的内核程序。
若内核态转用户态:只有执行一条特权指令——修改PSW的标志为“用户态”才会转变。
若用户态转内核态:则由一个中断信号引发。
操作系统的结构
操作系统一般都会进行分层,而根据内核所覆盖的范围则引申出“大内核”和“微内核”。
大内核
大内核也称宏内核或单内核,其是将操作系统的主要功能模块都作为系统内核,运行在核心态。
有高性能的优点。
缺点是内核代码庞大,结构混乱,难以维护。
微内核
微内核构架是只把最基本的功能保留在内核。
优点是内核功能少,结构清晰,方便维护。
缺点是需要频繁的在核心态和用户态之间切换,性能低。
各操作系统结构的优缺点
虚拟机
虚拟机就是使用虚拟化计数,将一台物理机器虚拟化为多台虚拟机器VM,每个虚拟机器都可以独立运行一个操作系统。