操作系统(烟草备考笔记)

1 进程

  • 进程是程序的一次执行过程
  • 进程是系统进行资源分配和调度的基本单位 <注:线程是任务调度和执行的基本单位>
  • 进程之间不能直接交换数据,可以通过管道(共享文件)、信息传递、共享存储等方式通信

1.1 进程的状态转换

  • 运行状态:进程占用CPU;
  • 就绪状态:进程获得了CPU外的一切所需资源,等待CPU资源;
  • 阻塞状态:进程因为等待某一事件发生而暂停运行,即使得到CPU控制权,也无法运行;
  • 创建状态:进程正在被创建;
  • 结束状态:进程正在从系统中消失;
    在这里插入图片描述
    状态转换
状态转换触发条件
就绪态–>运行态进程被调度,获得CPU资源(分派CPU时间片)
运行态–>就绪态1. 时间片用完后,不得不让出处理机;
2. 可剥夺的OS中,当有更高优先级的进程就绪时,调度程序将正在执行的进程转换为就绪态
运行态–>阻塞态1. 进程请求某一资源(如外设) 的使用和分配时;
2. 等待某一事件的发送时(如I/O操作的完成);
阻塞态–>就绪态1. I/O操作结束或中断结束时;
2. 发送了阻塞队列等待的事件,如发送了V操作,信号量+1,然后阻塞队列被唤醒到就绪队列中;

1.2 进程的通信

  • 管道(共享文件):在内存中开辟一个大小固定的内存缓冲区,本质就是一个循环队列,要求先进先出;
  • 信息传递:进程间的数据交换以格式化的信息为单位,进程通过操作系统提供的“发送信息和接收信息”两个原语进行数据交换;
  • 共享存储:通过共享存储区来进行通信,数据的形式和存放位置都由通信进程控制,而不是操作系统;
    在这里插入图片描述

1.3 补充

1.3.1 进程和程序的区别与联系

在这里插入图片描述

PCB(进程控制块):进程的唯一标识

1.3.2 死锁与饥饿

在这里插入图片描述

1.3.3 同步与互斥的区别和联系

在这里插入图片描述

2 线程

  • 线程是进程当中的一条执行流程;
  • 线程是CPU调度的基本单位,可以独立执行程序;
  • 线程没有自己独立的地址空间,每个线程只拥有自己独立的栈空间;
  • 线程之间可以共享进程的资源,不能共享虚拟地址空间、不能共享栈指针;
  • 同一个进程或不同进程内的线程可以并发执行;<注:进程之间可以并发,但不能并行>

2.1 进程和线程的区别

在这里插入图片描述

3 调度算法

调度算法操作
先来先服务调度(FCFS)按照进程到达的顺序处理进程。
短作业优先调度(SJF)优先选择执行时间最短的进程。
优先级调度(HPF)优先级最高的进程首先获得CPU。
高响应比优先调度(HRRN)结合了FCFS和SJF的特点。它根据响应比(等待时间+执行时间)来选择下一个执行的进程。
时间片轮转RR若时间片过大,退化为FCFS;若时间片过小,则切换频繁,处理机开销增大

在这里插入图片描述

4 死锁

  • 死锁是多个进程因为竞争资源而造成的一种互相等待;
  • 死锁的充分条件:资源分配图中每种资源只有一个,又出现了环路;

为什么会出现死锁
在这里插入图片描述
产生死锁的必要条件
四个条件都要满足才会出现死锁

条件解释
互斥条件多个线程不能同时使用同一个资源;
不剥夺条件进程A已经拥有资源1,在使用完之前不能被其他进程获取;
请求并保持条件进程A已经有资源1,想申请资源2,但是资源2被进程B持有,进程A处于等待状态,并且A不释放资源1;
循环等待条件两个线程获取资源的顺序构成了环路;

如何解决死锁

  1. 死锁预防:破坏四个必要条件之一
  2. 死锁避免:安全性算法、银行家算法;
  3. 死锁检测和解除:资源剥夺法;撤销进程法;进程回退法;

5 内存管理方法

分段分页段页式
地址映射表每个进程一张段表每个进程一张页表,页表驻留在内存每个进程一个段表,每个段一个页表
地址结构段号 + 段内偏移页号 + 页内偏移段号 + 段内页号 + 页内偏移
以什么单位划分以段位单位分配;
每段是一个连续存储区、不一定等长;
段与段之间可连续,也可不连续;
逻辑地址分配 - 按页分配;
物理地址分配 - 按内存块分配
分段方法来分配管理用户地址空间;
分页方法来管理物理存储空间
长度是否固定段长不固定页长固定段长不固定,页长固定
访问主存次数2次2次3次
碎片情况产生外部碎片产生内部碎片产生内部碎片

5.1 分段

段表:逻辑空间与内存空间映射的表
在这里插入图片描述
物理地址 = 段基址 + 偏移量

5.2 分页

  • 把整个虚拟和物理内存空间切成一段段固定尺寸的大小,在linux中,每一页的大小为4kB;
  • 页表就是记录页面在内存中对应的物理块号;

5.3 段页

步骤1 - 将程序划分为多个有逻辑意义的段【分段】
步骤2 - 对分段划分出来的连续空间,再划分固定大小的页【分页】
在这里插入图片描述

6 页面置换算法(虚拟内存)

最佳置换算法OPT先进先出置换算法FIFO最近最久未使用置换算法LRU时钟置换算法CLOCK
置换流程---在这里插入图片描述--------
思想(个人理解)向后找最晚出现的页面置换出来;先进来的页面先置换出去;向前找最晚出现的页面置换出来;FIFO和LRU的结合
  • 9
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值