操作系统复习总结

来源:互联网 发布:下或官方手机淘宝 编辑:程序博客网 时间:2024/06/05 20:22

1.操作系统的基本特征

1、并发
两个或多个事件在同一时间间隔内发生。
注:注意区9分并发与并行,并行是两个或多个事件在同一时刻发生。
2、共享
系统中的资源可供内存中多个并发执行的进程(线程)共同使用。
3、虚拟
通过时分复用或空分复用将一条物理信道变为若干条逻辑信道,
时分复用:利用某设备为一用户服务的空心时间又转去为其他用户服务。
空分复用:利用存储器的空闲空间分区域存放和运行其它的程序。
4、异步
系统中的进程是以一种走走停停的方式执行的,且以一种不可预知的方式推进。

2.操作系统的主要功能

1、处理机管理功能
处理机的分配和运行都是以进程为基本单位的,因而对处理机的管理可归结为对进程的管理,处理机管理的主要功能有:创建和撤销进程、对诸进程的运行进行协调、实现进程之间的信息交换、以及按照一定的算法把处理机分配给进程。
2、存储器管理功能
存储器管理的主要任务,是为多道程序的运行提供良好的环境,提高存储器的利用率,方便用户使用,并能从逻辑上扩充内存。存储器管理具有内存分配和回收、内存保护、地址映射、内存扩充等功能。
3、设备管理功能
主要任务如下:
1) 完成用户进程提出的I/O请求,为用户进程分配所需的I/O设备,并完成指定的I/O操作。
2) 提高CPU和I/O设备的利用率,提高 I/O速度,方便用户使用I/O设备。
4、文件管理功能
对用户文件和系统文件进行管理以方便用户使用,并保证文件的安全性。
5、操作系统与用户之间的接口
操作系统向用户提供了“操作系统与用户的接口”。

3.进程与线程

1、进程的定义
进程是具有独立功能的程序在一个数据集合上运行的过程,是系统进行资源分配和调度的一个独立单位。
2、进程的三种基本状态
1) 就绪状态:指进程已处于准备好运行的状态。只要再获得CPU,便可立即执行。
2) 执行状态:指进程已获得CPU,其程序正在执行的状态。
3) 阻塞状态:指正在执行的进程由于发生某事件(如I/O请求)暂时无法继续执行时的状态,亦即进程的执行受到阻塞。
3、进程的三种基本状态间的转换
就绪–>执行:进程调度
执行–>就绪:时间片用完
执行–>阻塞:I/O请求
阻塞–>就绪:I/O完成
4、进程通信的类型
1) 共享内存
相互通信的进程共享某些数据结构或共享存储区,进程之间能够通过这些空间进行通信。
2) 管道及有名管道
管道:用于连接一个读进程和一个写进程,以实现它们之间通信的一个共享文件。
3) 套接字
不仅适用于同一台计算机内部的进程通信,也适用于网络环境中不同计算机间的进程通信。
4) 消息队列
是一系列保存在内核中消息的列表,用户进程可以向消息队列中添加消息,也可以从消息队列中读取消息。
5) 信号
是Linux系统中用于进程之间通信或操作的一种机制。信号可以在任何时候发送给某一进程,而无须知道该进程的状态。
5、线程的定义
作为调度和分配的基本单位,是能独立运行的基本单位。线程本身并不拥有系统资源,仅有一点必不可少的、能保证独立运行的资源。

4.进程/作业调度算法

1、先来先服务(FCFS)调度算法
系统将按照作业到达的先后次序来进行调度,既可作为作业调度算法也可作为进程调度算法。
2、短作业优先(SJF)调度算法
以作业长短来计算优先级,作业越短,其优先级越,是作业调度算法。
3、优先级(PSA)调度算法
基于作业的紧迫程度,由外部赋予作业相应的优先级,调度算法是根据该优先级进行调度的,以保证紧迫性作业优先运行。其既可作为作业调度算法也可作为进程调度算法。
4、高响应比优先(HRRN)调度算法
是既考虑作业等待时间又考虑作业运行时间的调度算法。
优先权=(等待时间+要求服务时间)/要求服务时间
5、多级反馈队列调度算法
设置多个就绪队列并为每个队列设置不同的优先级,第一个队列优先级最高,其余依次递减。优先级越高的队列分配的时间片越短,进程到达之后按FCFS放入第一个队列,如果调度执行后没有完成,那么放到第二个队列尾部等待调度,如果第二次调度仍然没有完成,放入第三队列尾部,…,以此类推。

5.死锁

1、定义
如果一组进程中的每一个进程都在等待仅由该组进程中的其它进程才能引发的事件,那么该组进程是死锁的。
2、产生死锁的必要条件
必须具备以下四个条件,只要其中任一个条件不成立,死锁就不会发生:
1) 互斥条件
进程对所分配到的资源进行排它性使用,即在一段时间内,某资源只能被一个进程占用。
2) 请求和保持条件
进程已经保持了至少一个资源,但又提出了新的资源请求,而该资源已被其它进程占有,此事请求进程被阻塞,但对自己已获得的资源保持不放。
3) 不可抢占条件
进程已获得的资源在未使用完之前不能被抢占。
4) 循环等待条件
在发生死锁时,必然存在一个进程-资源的循环链,即进程集合{p0,p1,p2,…,pn}中的p0正在等待一个p1占用的资源,p1正在等待p2占用的资源,……,pn正在等待一个p0占用的资源。
3、处理死锁的方法
1) 预防死锁
通过限制某些限制条件,去破坏产生死锁的四个必要条件中的一个或几个来预防产生死锁。
2) 避免死锁
在资源的动态分配过程中,用某种方法防止系统进入不安全状态,从而可以避免发生死锁。
3) 检测死锁
通过检测机构及时地检测出死锁的发生,然后采取适当的措施,把进程从死锁中解脱出来。
4) 解除死锁
当检测到系统中已发生死锁时,就采取相应措施,将进程从死锁状态中解脱出来。

6.内存管理方式

1、分页存储管理方式
将进程的逻辑地址空间分为若干个页,并为各页加以编号,从0开始;将物理地址空间分成若干个块,同样为它们加以编号。其基本单位是页。
2、分段存储管理方式
把用户程序的地址空间分为若干个大小不同的段,每段可定义一组相对完整的信息。其基本单位是段。
3、段页式存储管理方式
将分页和分段两种存储管理方式相结合的产物。其基本单位是段,段内分页。