一、概述
操作系统是管理系统的硬件、软件、数据资源,控制程序运行,人机交互之间的接口,应用软件与硬件之间的接口。
进程管理:进程的状态、前趋图、PV操作、死锁问题
存储管理:段页式存储、页面置换算法
文件管理:索引文件、位示图
作业管理
设备管理
微内核操作系统:虚设备与SPOOLING技术
1、进程管理
(1)进程状态:操作系统中,系统进行管理时为进程指定了几种状态,以便于给进程分配相应的资源。
运行:指该进程需要的所有资源均已分配完成,并且给了它对应的CPU资源。
就绪:指其他所有的资源都已经配足,只缺所需要的CPU资源。
等待:除了没有CPU资源,还缺其他资源。
(2)状态之间转换:
(3)前趋图:要完成的一系列活动的先后关系。
(4)进程的同步与互斥
同步:在同一时间可同时使用某一资源。(速度有差异,在一定情况下停止等待)
互斥:在同一时刻,只允许某一个进程使用资源,即同一个资源不能同时服务于多个进程。
(千军万马过独木桥)
生产者与消费者问题。
(5)PV操作
临界资源:诸进程间需要互斥方式对其进行共享的资源,如打印机、磁带机等
临界区:每个进程中访问临界资源的那段代码称为临界区
信号量:是一种特殊的变量。P(S) 、V(S)中的S
(6)死锁问题
死锁是指系统中有一系列资源,有一些需要资源的进程,如果系统在某一时刻发现所有的资源都已经分配,而所有的进程为了完成一些指责和任务而不得不释放所占有的资源,而得不到其他进程所占有的资源,导致进程不能正常执行,则会发生死锁。
不发生死锁的最少资源数:K*(n - 1) + 1。其中,k为进程数,n为所需要的资源数。
银行家算法:分配资源的原则
- 当一个进程对资源的最大需求量不超过系统中资源数时可以接纳该进程。
- 进程可以分期请求资源,但请求的总数不能超过最大需求量。
- 当进程现有的资源不能满足进程尚需资源数时,对进程的请求可以推迟分配,但总能使进程在有限的时间里得到资源。
2、存储管理
(1)分区存储组织
首次适应算法:顺次找到符合需求的空间,找到就分配
最佳适应算法:将空闲区块按大小连成一个链,在分配时会从空闲区中比较,依次取出足够使用的空 间大小,将新剩余空间组成新链。但这种情况下产生的碎片较多。
最差适应算法:需要分配空间时先分配空闲区最大的一块,再依次递推。
循环首次适应法: 把空闲的区域连成环状,再顺次分配。
(2)页式存储组织