2MUCH

软考-中级软件设计师-02 操作系统

2022-05-14


02 操作系统

概述

操作系统的角色:

管理分类:

特征:

进程状态

基本概念:进程是程序的一次执行。通常由程序、数据、进程控制块组成。是资源分配和独立运行的基本单位。

进程两个基本属性:

三态模型

image-20220412221041687

五态模型

image-20220412221053250

前趋图

image-20220412221251142

同步与互斥

概念:同步指的是一些需要相互合作的进程,之间的相互联系;互斥指的是争用临界资源而互斥执行

【注意】:两者不为相反的概念,互斥<->共享,同步<->异步

在生产者消费者问题,理解互斥和同步:如一个商场只能存放一件物品,若目前已有一件时,生产者无法将新的一件放入(互斥);生产者是否可以放入也取决于消费者是否消费了这个物品,只有等消费者消费了,生产者才能新生产(同步)

PV操作(信号量机制)

概念

临界资源:进程间需要互斥访问的资源(如打印机,磁带机)

临界区:每个进程中访问临界资源的那段代码

信号量:一种特殊的变量,如P(s)中的s

P分配(减),V释放(加)

image-20220412222459869

例子(单缓冲区):

image-20220412223033356

习题:

image-20220412223518456

答案:A和C

PV操作和前趋图

【重要!经常考!】

例题(答案:CAA):

image-20220413075716258

解题思路:信号量的赋值可根据从上到下、从左到右的原则赋值,出箭头设为V(s),入箭头设为P(s)。如P1出箭头那里是V(S1),P2出箭头那里是V(S2),P3入箭头那里是P(S1)和P(S2)。

进程调度

进程调度:

线程

概念:线程作为调度和分配的基本单位,进程作为独立分配资源的单位。线程基本不拥有资源,只拥有一点运行中必不可少的资源(如程序计数器、一组寄存器和栈)。

线程可以创建另一个线程,同一个进程中的多个线程可以并发执行

分为:

死锁

最小需要多少个资源不发生死锁

公式:k*(n-1)+1;k:进程数,n,每个进程需要的资源数

死锁四大条件

解决死锁

银行家算法

例题:

image-20220413081111136

image-20220413081139531

存储管理

概念:地址重定位,将外存中的程序装载到内存,需要将程序中指令和数据的逻辑地址转换为对应的物理地址

分区存储

页式存储

把用户程序等分为固定大小的页,这样不需要一次性将全部程序导入内存才能运行

常考:逻辑和物理地址的转换

页表中记录了【页号】和对应的【块号】

image-20220413082234561

image-20220413082643145

【可参考上面的例题】逻辑转为物理地址的思路:逻辑地址由页号和块内地址组成:

1、找到页号和块内地址分别是几位表示:根据页面大小为4K,说明块内地址是用12位表示,也就是A29H,那么页号就是5;

2、根据页号5,找到对应的页帧号(也就是块号)为6,所以选D

找到淘汰页号的思路:

1、从状态位为1的(在内存中)中找

2、从访问位为0的(最近没访问)中找

所以选页号为1的页面

段式存储

组成:段号+段内地址

段的长度也不同,依据代码结构

优点:多道程序共享内存,各段程序修改互不影响

缺点:内存利用率低,内存碎片浪费大

image-20220430191644863

段页式存储

image-20220430191747252

结合段式和页式,先分段再分页

涉及:

请求分页(页面置换)

当访问的页面不存在主存时,产生缺页中断

页面置换算法:

快表

小容量的相联存储器,放在cache,速度快。从硬件保证按内存并行查找。

页面置换算法

页面淘汰算法分类

例题:

image-20220430192652910

答案:B和C

没有使用快表:意味着访问一页,需要访问两次内存(第一次为查询页表)

考试有个潜在规则:读取指令时是算作一次,也就是说虽然横跨0和1页,但是缺页中断次数为1;但是读取操作数时,比如读取A,横跨2和3页,所以缺页中断次数为2

文件管理

索引文件结构

image-20220430200655631

目的:扩充容量

例题:

image-20220501110926768

答案:C和D

文件和树型目录结构

绝对路径/相对路径

空闲存储空间管理

方法分类

位示图法

例题:

image-20220501111702177

(4195+1)/32=131.125

注意:位置是从0开始算

答案:D和B

数据传输控制方式

方式

虚设备与SPOOLING技术

image-20220501112453111

微内核操作系统

image-20220501112758988

作业管理

作业调度算法:

设备管理

image.png

相关技术

磁盘调度算法

分为移臂调度和旋转调度,使得平均寻道时间最少

读取磁盘数据的时间=存道时间+旋转延迟+数据传输时间

移臂调度

旋转调度