操作系统基础知识

一、操作系统考点

1、进程管理:进程三态图、前趋图、同步与互斥、PV操作、死锁、线程
2、存储管理:分页存储管理、分段存储管理
3、设备管理:I/o软件层次
4、文件管理:索引文件结构、文件目录、位视图

二、操作系统概述

1、操作系统的两个重要的作用:第一,通过资源管理提高计算机系统的效率;第二改善人机界面2、向用户提供友好的工作环境。
3、操作系统的四个特性:并发性、共享性、虚拟性和不确定性(异步性)。
操作系统的五大功能:
(1)进程管理:实质上是对CPU的执行时间进行管理,将CPU的时间合理的分配给每一个任务,包括进程控制、进程同步、进程通信和进程调度
(2)文件管理:对文件的存储空间、目录、文件的读写管理和存取控制
(3)存储管理:存储管理是对主存的空间管理
(4)设备管理:对硬件设备的分配、启动、完成和回收
(5)作业管理:包括任务、界面管理、人机交互、图形界面、语音控制和虚拟现实等。
4、操作系统的分类
批处理操作系统、分时操作系统、实时操作系统、网络操作系统、分布式操作系统、微型计算机操作系统。

三、进程管理

1、进程三态图

进程由进程控制块PCB(唯一标志)、程序(描述进程要做什么)、数据(存放进程执行所需的数据)。
在这里插入图片描述

2、前趋图

用来表哪些任务可以并行执行,哪些任务之间有顺序关系:具体如下:
在这里插入图片描述
其中,ABC都执行完了,才能执行D,之后执行E,也就是确定了任务间的并行、和任务间的先后顺序。

3、进程资源图

用来表示进程和资源之间的分配和请求关系。
阻塞节点,某进程所请求的资源已经全部分配完毕,无法获取所需资源。
非阻塞节点,某进程所请求的资源还有剩余,可以分配给该进程继续运行。
当一个进程资源图中所有进程都是阻塞节点,即陷入死锁状态。

4、进程同步与互斥

临界资源:各进程间以互斥方式对其进行访问的资源
临界区:指进程中对临界资源实施操作的那段程序,本质上是一段代码
互斥:某资源在 同一时间只能由一个任务单独使用,使用时需要加锁,使用完进行解锁才能被其他任务所使用。
同步:多个任务可以并发执行,只不过由速度上的差异

互斥信号量:对临界资源采用互斥访问,使用互斥信号量后其他进程无法访问,初值是1.
同步信号量:对共享资源的访问控制,初值一般是共享资源的数量。

P操作:申请资源,s=s-1.若S>=0,则执行p操作的进程继续执行,若s<0,则置该进程为阻塞状态(因为无可用资源)并将其插入阻塞队列。
V操作:释放资源,S=S+1,若S>0,则执行v操作的进程继续执行,若S<=0,则从阻塞状态唤醒一个进程,并将其插入就绪队列(此时因为缺少资源被p操作阻塞的进程可以继续执行),然后执行v操作的进程继续。

经典问题:生产者和消费者的问题
三个信号量:互斥信号量S0(仓库独立使用权),同步信号量S1(仓库空闲个数),同步信号量S2(仓库商品个数)

生产者流程:

生产一个商品s
P(S0)
P(S1)
将商品放入仓库中
V(S2)
V(S0)

消费者流程:

P(S0)
P(S2)
取出商品
V(S1)
V(S0)

5、进程调度

进程调高方式是指当有更高优先级的进程到来时如何分配CPU.分为可剥夺和不可剥夺两种,可剥夺指当有更高优先级进程到来时,强行将正在运行进程的CPU分配给高优先级进程;不可剥夺是指高优先级进程必须等待当前进程自动释放CPU.

在某些操作系统中,1个作业从提交到完成需要经历高、中、低三级调度
(1)高级调度。高级调度又称”长调度"”作业调度" 或"接纳调度",它决定处于输入池中的哪个后备作业可以调入主系统做好运行的准备,成为一个或一组就绪进程。 在系统中一个作业只需经过一次高级调度。

(2)中级调度。中级调度又称“中程调度”或“对换调度”,它决定处于交换区中的哪个就绪进程可以调入内存,以便直接参与对CPU的竞争。

(3) 低级调度。低级调度又称"短程调度"或“进程调度”,它决定处于内存中的哪个就绪进程可以占用CPU。低级调度是操作系统中最活跃、最重要的调度程序,对系统的影响很大。

调度算法
(1)先来先服务
(2)时间片轮转:分配给每个进程CPU时间片,轮流使用CPU(分时系统)
(3)优先级调度:
(4)多级反馈调用:设置多个队列,不同队列通过优先级分配,队列里面是使用时间片调度

6、死锁

当一个进程在等待永远不可能发生的事件时,就会产生死锁,若系统中有多个进程外于死锁状态,就会造成系统死锁。

死锁产生的四个必要条件: 资源互斥、每个进程占有资源并等待其他资源、系统不能剥夺进程资源、进程资源图是一个环路

死锁产生后,解决措施是打破四大条件,有下列方法:
(1)死锁预防:采用某种策略限制并发进程对于资源的请求,比如定时器。
(2)死锁避免: 采用银行家算法来避免,银行家算法,就是提前计算出一条不会死锁的资源分配方法,才分配资源,否则不分配资源,相当于借贷,考虑对方还得起才借钱,提前考虑好以后,就可以避免死锁。
(3)死锁检测:允许死锁产生,但系统定时运行一个检测死锁的程序,若检测到系统中发生死锁,则设法加以解除。
(4)死锁解除:即死锁发生后的解除方法,如强制剥夺资源,撤销进程等。

死锁资源计算系统内有n个进程,每个进程都需要R个资源,那么其发生死锁的最大资源数为n*(R-1)。其不发生死锁的最小资源数为n*(R-1)+1。

  • 8
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值