操作系统

57 阅读2分钟

开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第7天,点击查看活动详情

操作系统

安全性算法

为进行安全性检查,定义了两个一维数组

Work:系统可提供给进程继续运行所需 的各类资源数目

Work[j]=k:系统可提供R类资源k个

Finish:系统是否有足够的资源分配给进 程(true/false)

Finish[il=true:表示进程Pi可拥有足够资 源完成运行

安全性算法的描述

(1)置初始值:Work=Available; Finish[i]=false;

(2)寻找满足条件的i:

a、Finish[i]=false;

b、Need[i,j] <=Work[j];

如果存在则执行(3);如果不存在,则转(4)

(3)P获得资源.则执行

Work[i]=Work[i]+Allocation[i,j];

Finish[i]=true; 转(2)

存储器

理想中的存储器:

速度更快、容量更大、价格更便宜、非易失性

实际中的存储器:

微信图片_20221127235236.png

在操作系统中,负责管理这个存储器层次结构的部分,称为存储管理器。

其任务是:

1.记录存储器的使用情况;

2.分配和回收存储空间;

如果内存太小,容不下所有的进程,则需要把进程在内存和外存之间换进换出,这个交换的过程由存储管理器来管理。

由此可以把存储管理系统分为两类:

1)需要换进换出的;

2)不需要换进换出的。

逻辑地址、物理地址和地址映射

逻辑地址(相对地址):用户的程序经过编译或汇编后形成目标代码,目标代码通常采用相对地址的形式。其首地址为0,其余指令中的地址都相对于首地址来编址。不能用逻辑地址在内存中读取信息。

物理地址(绝对地址):内存中存储单元的地址。物理地址可直接寻址。

地址映射:将用户程序中的逻辑地址转换为运行时由机器直接寻址的物理地址。

当程序装入内存时,操作系统要为该程序分配一个合适的内存空间,由于程序的逻辑地址与分配到内存物理地址不一致,而CPU执行指令时,是按物理地址进行的,所以要进行地址转换。

未完待续......