栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

0003操作系统01

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

0003操作系统01

01操作系统原理(一般5-7分)

操作系统是用来管理整个系统的软硬件资源,必须安装操作系统才能控制软硬件。

02进程状态转换图

进程状态,操作系统管理的时候为进程分配的几种状态,以便于它分配相应的资源。

三态模型

运行状态:进程所需要的所有资源都已经配了,并且有CPU资源。

就绪状态:其他所有资源都配了,缺CPU资源

等待状态:没有CPU资源,还缺其他资源,比如外设的交互,用户指令

状态之间的转换关系

五态模型

时间片

当任务发生的时候,从运行态到就绪态等待CPU调用资源,由于不可能调用CPU所有资源,因此采用时间片轮转算法来分配cpu资源,从就绪到运行只能运行一个时间片,如果时间片用完,任务未完成,任务会退回到就绪态等待下一个时间片调度。

03前趋图(经常考)

约束关系

通过图看出哪些任务可以同时运行,哪些有前后关系。

04进程的同步与互斥

同步与互斥是进行PV操作的前提。

互斥:同一时刻只允许某一个进程使用一个资源。 同一资源服务同一进程。

同步:同一时刻多个进程,速度有差异,当差距大的时候,速度快的在一定情况下等待。

同步和互斥不是相反的概念。

同步和异步是相反,互斥和共享是相反。

PV操作中的经典问题

05 PV操作(操作系统中最难的)

利用同步互斥理念解决实际问题。

pv操作解决的问题实际是并发关系之间出现的一些问题。

S是信号量。

PV操作表示两种操作。P(S)操作和V(S)操作

如果没有pv操作,系统两个进程生产者和消费者。生产者会一直生产产品,则缓冲区容易满。

消费者则会缓冲区没产品不能消费。

06 PV操作练习题

主要是分析进程之间的一些约束关系,在哪些位置要阻塞起来,等待另外一个进程进行操作。

V操作不具备阻塞功能,但能唤醒P操作,P操作有阻塞功能。

解题关键点在于找出约束关系,假设一个进程,另一个进程如何。

假设没有PV操作会如何,有PV操作会如何。

07 PV操作与前趋图

从左往右,从上往下,标注信号量

尖头起点位置V操作,箭头结尾部分P操作。

08 09死锁问题

题型:

(1)给定一定数量的进程,给定资源,判断什么情况下不可能发生死锁。

(2)死锁的预防和避免的问题,涉及银行家算法。

死锁:系统当中有一些资源,和需要用到资源的进程,系统给他们分配资源,进程才能运行,如果系统在某一时刻发现所有可用资源都已经分配出去了,所有进程都没有办法完成本身职责,就会产生死锁。

不发生死锁的最少的资源数=K*(N-1)+1

k进程数,n 资源数

10银行家算法

死锁的预防与避免

产生死锁:四大条件,缺一不可

互斥是千军万马过独木桥,,如果不是互斥,则不好会产生死锁。

保持和等待指 进程会保持自己的资源等待系统分配更多的资源给自己

不剥夺指系统不会把分配给某个进程的资源剥夺

环路等待是 a等b给他释放资源,b等c给自己释放资源,c等a释放资源。

死锁的预防是指打破四大条件

银行家算法:以银行放贷的形式的形式释放资源,考虑资源是否能收回来。如果不能收回来,就不分配资源。

系统状态安全=没有发生死锁

假设p1先执行,则执行p1后,剩余资源不足以完成p1,则会产生死锁,因为p1此时不能把占用的资源释放出来

假设执行p2

考试时候验证序列是都走通。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/781896.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号