概述
- 操作系统提供了人机操作的接口,应用软件与硬件之间的接口。简称OS(Operating System),管理系统的硬件、软件、数据资源,控制程序运行。
- 结构层次 硬件->操作系统->语言处理程序->应用程序
进程管理
进程状态(*)
- 三态模型
运行、就绪、阻塞三个状态
调度过程
优先考虑非CPU资源的使用,在准备完成后,再分配CPU资源,就绪态在分配的CPU资源后,进行运行态,等待某事件时进入阻塞态,等待的事件发生了,就进入就绪态;在运行态如果CPU分配的时间片到了,也进入就绪态。阻塞态不可进入运行态。就绪态不可进入阻塞态。
前趋图(****)
- 是让进程以节点的一种表示,表达进程与进程之间的活动的逻辑关系,即执行顺序,先完成的程序为前趋,后面的进程后继
- 以箭线表示->={(A,D)(B,D),…,(C,D)(D,E)}
进程的同步与互斥
互斥
由于资源有限,某资源只允许一个进程访问,在多个进程之间存在互斥关系,资源共享
间接制约关系同步
在速度上有差异,在一定情况下停止等待
直接制约关系信号量(*)
临界资源:诸进程间需要互斥方式对其进行共享的资源,如打印机、磁带机等
临界区:每个进程中访问临界资源的那段代码称为临界区
信号量:是一种特殊的变量
缓冲区:单缓冲区,多缓冲区PV操作(*)
P:荷兰语的 Passeren
V:荷兰语的 Verhoog
S:Singal,
S 0表示可用资源数
S < 0表示等的进程数
P:S=S-1 锁定资源,S<0进入阻塞队列,检查资源是否可用
V:S=S+1 S>0,释放资源,唤醒一个阻塞队列中的一个进程,释放资源一个可用的资源- 生产者与消费者
- 未使用PV操作
生产者生产一个产品,送产品到缓冲区
消费者从缓冲区取产品,消费产品
会产生爆仓或无中生有 - 使用了PV操作
生产者:生产一个产品;P(S1)送产品到缓冲区;V(S2)
消费者:P(S2)从缓冲区取产品;V(S1)消费产品
S1初始值为1,代表存储空间,
S2初始值为0,代表产品数量
- 未使用PV操作
- 在前驱图中,一个箭线一个信号量,一般在后继起始处会有一P操作,前驱的完成处有一个V操作。
- 生产者与消费者
死锁及银行家算法
前置:进程死锁
进程管理是操作系统的核心,但如果设计不当,就会出现死锁的问题。如果一个进程在等待一个不可能的事件,则进程就死锁了。而如果一个或多个进程产生死锁,就会造成系统死锁。k个进程,每个进程执行至少需要w个资源,则形成无锁的最大值为 K(W-1),当资源数为 k(w-1)+1时,则肯定不会死锁
无锁的条件:互斥(独占)、保持和等待、不剥夺、环路等待
无锁的预防->打破四大条件
死锁的避免:
有序资源分配法(一个一个进程的执行)
银行家算法银行家算法:分配资源的原则
1、当一下进程对资源的最大需求量不超过系统中的资源数时,可以接纳该进程
进程可以分期请求资源,但请求的总数不能超过最大需求量
2、当系统现有的资源不能满足进程尚需资源数时,
3、对进程的请求可以推迟分配,但总能使进程在有限的时间里得到资源
存储管理
页式存储
优点:利用率高,碎片小,分配及管理简单
缺点:增加了系统开销;可能产生抖动现象(频繁产生缺页中断)
将内存按页表进行划分,每页对应一个内存块
将程序与内存均划分为同样大小的块,以页为单位将程序调入内存。
物理块号又称为页帧号
页内偏移又称为页内地址高级程序语言使用逻辑地址:运行态,内存中使用物理地址。逻辑地址=页号+页内地址。物理地址=页帧号+页内地址
页式存储系统中,每个页的大小为4KB。
逻辑地址: 10 1100 1101 1110
物理地址:110 1100 1101 1110
4K需要使用12位的二进制位进行表示当查找的内容不在内存中时,会产生缺页中断
页面淘汰
优先淘汰方位为0的内存页
其次考虑修改位为0的页面
页面交换表的结构:
状态位:1表示在内存中,0表示不在内存中。
访问位:1最近被访问,0最近未被访问。
修改位:1内容被修改过,0内容未被修改。
页侦号:代表的物理块号
页号:逻辑地址
页面被替换后,原页面则不在内存中
段式存储
概念
按用户作业中的自然段来划分逻辑空间,然后调入内存,段的长度可以不一样
优点
多道程序共享内存,各段程序修改互不影响
缺点
内存复用率低,内存碎片浪费大
段表结构
段号、段长、基址
逻辑地址用(段号,段内偏移)表示
段页式存储
概念
段式与页式的综合体。先分段,再分布。一个程序有若干个段,每个段中有若干个页,每个页的大小相同,但每个段的大小不同
优点
空间浪费小、存储共享容易、存储保护容易、能动态连接
缺点
由于管理软件的增加,复杂性和开销也随之增加,需要的硬件以及占用的内容也有所增加,使执行速度大大降低
段表结构
段号、状态、页表大小、页表地址
快表
快表:将页表存于Cache上;
快表是一块小容量的相联存储器(Associative Memory),由高速缓存器组成,速度快,并且可以从硬件上保证按内容并行查找,一般用来存放当前访问最频繁的少数活动页面的页号
慢表:将页表存于内存上
文件管理
作业管理
设备管理
微内核操作系统
嵌入式操作系统
最后编辑:admin 更新时间:2022-11-02 13:24