基本概念
- 计算机系统中最基本的系统软件,控制和管理计算机系统的硬件和软件资源。
- 特征:并发、共享、虚拟、异步
- 发展:手工操作阶段、批处理阶段、分时操作系统、实时操作系统、网络操作系统、分布式操作系统、个人计算机操作系统。
进程管理
- 状态转换:创建态→就绪态→运行态→终止态,(就绪态→运行态→阻塞态→就绪态)
- 阻塞态→就绪态 是一种被动行为(非进程自身控制)
- 运行态→阻塞态(进程自身做出的行为)
- 不能由就绪态→运行态,也不能由就绪态→阻塞态
- 进程具有 异步性。并发执行的进程以各自独立的、不可预知的速度向前推进。(解释)读进程和写进程并发执行,由于并发必然导致异步性,因此俩操作执行是无先后顺序的,但是实际工作中又必须按照(写→读)的顺序执行,因此“进程同步机制”讨论该问题。
- 进程互斥机制:临界资源(一个时间段只允许一个进程使用的资源),访问临界资源必须互斥进行。 临界区是进程中访问临界资源的代码段;进入区和退出区负责实现互斥的的代码段。四个原则:空闲让进、忙则等待、有限等待、让权等待(进程无法进入临界区时,立即释放处理机,防止进程忙等待)。
- 信号量机制: 信号量、原语(特殊的程序段,执行不可中断) 一个信号量对应的一种资源信号量的值=这种资源的剩余数量(信号量<0,有进程在等待这种资源)
- PV操作实现前驱操作:例如,P1进程执行完释放V(S1),在下一个进程之前保证锁定P(S1)。
- 死锁:相互等待资源。 条件:1.互斥 2.不剥夺 3.请求和保持 4.循环等待
- 银行家算法:如果系统在安全状态,那么一定不会发生死锁;系统处于不安全状态,不一定发生死锁,但发生死锁一定是在不安全状态。