软考备考(5)
前言
到目前为止我们已经学过的内容有:
下面开始新的内容吧!!!
本章学习笔记
1、什么是操作系统?
就是一个集成平台,如果没有操作系统,那么我们只能通过命令框去执行数据。没有操作系统的电脑叫裸机。
2、高级语言分为哪两类?
1、编译程序:就是C/C++,把代码写完后,点击编译,汇编(生成目标文件),最后链接到各个头文件,最后成功执行
2、翻译程序:就是Python,写一句代码,程序就执行一句。不用链接,没有形成目标文件。
3、什么是进程?
就是计算机中正在运行的程序。一个程序运行会产生多个进程。
4、什么是死锁?
就是一个进程在等待一个不可能发生的事,比如程序执行函数while(1)
while(1){}
这个进程一直循环,导致后面的进程无法被执行,就死锁了。
5、避免死锁的方法?
拥有足够多的资源。
比如系统又若干互斥资源R,3(m)个并发进程中每一个都要2(n)个资源R,那么使系统不发生死锁的资源R的最少数目是多少个?
公式:m*(n-1)+1个
即3*1+1=4个。至少需要4个资源R。
6、如何解决死锁?
使用银行家算法,银行家算法的本质是量力而行。
首先要学会看表:
题目会给已知:R1、R2、R3的可用资源数分别是9、8、5。然后P1、P2、P3、P4、P5分别代表进程。
而表中的最大需求量就是这个进程要想被顺利执行需要的条件。
比如P1要想被顺利执行那么就要6份R1资源,5份R2资源,以及2份R3资源。
已分配资源数是到目前为止分配给这个进程的资源数。
比如目前分配给P1的资源有1份R1,2份R2,1份R3。
开始求解:
因为求解R1目前剩余2个资源,R2目前剩余1个资源,而R3只剩余0个资源。
所以目前只有2,1,1个资源。这时候只要求出各个进程还剩的资源,然后拿目前资源一对比,看目前资源可以满足哪个进程的需求即可。
每解决一个资源,R1,R2,R3都会回收资源。
7、什么是进程的同步?
就是这俩个进程必须同时完成才算是完成,一个完成,另一个没完成都不算是完成。
8、什么是进程的互斥?
就是两个进程,一个进程在执行的时候,另一个进程必定没有执行。
9、什么是PV操作?
P操作是申请资源,V操作是释放资源。
PV是来解决互斥和同步问题的。
一个进程获取和释放资源的流程逻辑如下:
P(申请资源)
执行代码
V(释放资源)
执行之后代码。
一般把初始资源设为1,如果1个进程已经申请了资源,那么之后的进程就申请不到资源了。
10、什么是互斥模型和同步模型?
这个知识点考的概率极小。如果想要了解可以直接看下面网址:
8.A8.操作系统(存储管理)02_哔哩哔哩_bilibili
操作系统(存储管理)02- 11:53处
互斥模型是打印机模型,同步模型是生产消费者模型。
11、什么是页式存储?
页式存储分为页号和页内地址。
页号的位数就是代表了这个有多少位
比如:
页号是用31-12+1=20位,就说明分了2的20次方页。即为1M.
页内地址是11-0+1=12位,就说明一页页的大小是2的12次方。即为4K
逻辑地址=页号+页内地址。
假如题目给了页面大小为4K,那么页内地址占12位2进制位。所以将逻辑地址转换成2进制后,从右往左的12位全不动,这个时候如果还有其余二进制位不在这12位之中,那么其余位数就是页号,可以根据题目给的“页号-物理块号转换图”来看看这个页号对应的物理地址是哪个。
例题:
12、页面置换算法
很抱歉大家,因为工作需求,这个软考证书可能暂时考不了了,之后的文章我会发布新的学习内容供大家参考,页面置换算法的视频地址是:
8.A8.操作系统(存储管理)02_哔哩哔哩_bilibili第27:49秒处