操作系统原理之存储问题

1. 某个OS采用可变分区分配方法管理,用户主存512KB,自由区由可用空区表管 理。若分配时采用分配自由区的低地址部分的方案,假设初始时全为空。对于 下列申请顺序: 申请(300KB), 申请(100KB), 释放(300KB), 申请(150KB),申请 (30KB),申请(40KB),申请(60KB),释放(30KB)。 回答下列问题: ( 1) 采用首次适应( FF),自由空区中有哪些空块(给出地址和大小)? ( 2) 若采用最佳适应( BF),回答( 1)中的问题。 ( 3) 如果再申请100KB,针对( 1)和( 2)各有什么结果?

Normal
0

false
false
false

EN-US
ZH-CN
X-NONE

/* Style Definitions */
table.MsoNormalTable
{mso-style-name:普通表格;
mso-tstyle-rowband-size:0;
mso-tstyle-colband-size:0;
mso-style-noshow:yes;
mso-style-priority:99;
mso-style-parent:"";
mso-padding-alt:0cm 5.4pt 0cm 5.4pt;
mso-para-margin:0cm;
mso-para-margin-bottom:.0001pt;
mso-pagination:widow-orphan;
font-size:10.5pt;
mso-bidi-font-size:11.0pt;
font-family:等线;
mso-ascii-font-family:等线;
mso-ascii-theme-font:minor-latin;
mso-fareast-font-family:等线;
mso-fareast-theme-font:minor-fareast;
mso-hansi-font-family:等线;
mso-hansi-theme-font:minor-latin;
mso-font-kerning:1.0pt;}
table.MsoTableGrid
{mso-style-name:网格型;
mso-tstyle-rowband-size:0;
mso-tstyle-colband-size:0;
mso-style-priority:39;
mso-style-unhide:no;
border:solid windowtext 1.0pt;
mso-border-alt:solid windowtext .5pt;
mso-padding-alt:0cm 5.4pt 0cm 5.4pt;
mso-border-insideh:.5pt solid windowtext;
mso-border-insidev:.5pt solid windowtext;
mso-para-margin:0cm;
mso-para-margin-bottom:.0001pt;
mso-pagination:widow-orphan;
font-size:10.5pt;
mso-bidi-font-size:11.0pt;
font-family:等线;
mso-ascii-font-family:等线;
mso-ascii-theme-font:minor-latin;
mso-fareast-font-family:等线;
mso-fareast-theme-font:minor-fareast;
mso-hansi-font-family:等线;
mso-hansi-theme-font:minor-latin;
mso-font-kerning:1.0pt;}

1)如图

  

空闲区: 起始地址: 150K     280K     400K

大小:  30K      20K     112K

(2)如图

                      

空闲区: 起始地址: 210K     400K     470K

大小:  90K      30K      42K

(3)        针对(1) 可分配在400K位置

针对(2) 无法分配

2. 考虑下面的页访问串: 1,2,3,4,2,1,5,6,2,1,2,3,7,6,3,2,1,2,3,6 假定有4,5,6个页块, 应用下面的页面替换算法,计算各会出现多少次缺页中断。注意,所给定的页 块初始均为空,因此,首次访问一页时就会发生缺页中断。

( 1) LRU ( 2) FIFO ( 3) Optimal

(1) LRU

4个页块:


页面


1


2


3


4


2


1


5


6


2


1


2


3


7


6


3


2


1


2


3


6


内存块


1


2


3


4


2


1


5


6


2


1


2


3


7


6


3


2


1


2


3


6


1


2


3


4


2


1


5


6


2


1


2


3


7


6


3


2


1


2


3


1


2


3


4


2


1


5


6


6


1


2


3


7


6


3


3


1


2


1


1


3


4


2


1


5


5


6


1


2


2


7


6


6


6


1


缺页


y


y


y


y


y


y


y


y


y


y

可得共出现缺页中断10次

步骤同上图可得5个页块共出现缺页中断8次,6个页块共出现缺页中断7次

(2) FIFO

4个页块:


页面


1


2


3


4


2


1


5


6


2


1


2


3


7


6


3


2


1


2


3


6


内存块


1


2


3


4


4


4


5


6


2


1


1


3


7


6


6


2


1


1


3


3


1


2


3


3


3


4


5


6


2


2


1


3


7


7


6


2


2


1


1


1


2


2


2


3


4


5


6


6


2


1


3


3


7


6


6


2


2


1


1


1


2


3


4


5


5


6


2


1


1


3


7


7


6


6


缺页


y


y


y


y


y


y


y


y


y


y


y


y


y


y

可得共出现缺页中断14次

步骤同上图可得5个页块共出现缺页中断10次,6个页块共出现缺页中断10次

(3) Optimal

4个页块:


页面


1


2


3


4


2


1


5


6


2


1


2


3


7


6


3


2


1


2


3


6


内存块


1


2


3


4


4


4


5


6


6


6


6


6


7


7


7


7


1


1


1


1


1


2


3


3


3


3


3


3


3


3


3


6


6


6


6


6


6


6


6


1


2


2


2


2


2


2


2


2


2


3


3


3


3


3


3


3


3


1


1


1


1


1


1


1


1


1


2


2


2


2


2


2


2


2


缺页


y


y


y


y


y


y


y


y

可得共出现缺页中断8次

步骤同上图可得5个页块共出现缺页中断8次,6个页块共出现缺页中断7次

3. 一台计算机有4个页块,装入时间、上次引用时间、它们的R(读)与M(修改) 位如下表所示(时间:滴答),请问NRU、 FIFO、 LRU和第二次机会算法将替 换那一页?

NRU算法将替换0类编号页页0;

FIFO算法将替换最早装入页页2

LRU算法将替换最近未被使用页页1

第二次机会算法将替换载入时间早且R位为零的页页0。

4. 有一页式系统,其页表存放在主存中。

( 1)如果对主存的一次存取需要1.5微秒,试问实现一次页面访问时的存取时间是 多少?

( 2)如果系统加有快表且平均命中率为85%,而页表项在快表中的查找时间忽略为 0,试问此时的存取时间为多少?

(1)需要两次访问内存:

第一次是访问页表,从而找到线性地址对应的物理地址;

第二次是利用找到的物理地址来访问实际的内存页面。

所以共需要3微秒。

(2)在快表中得到物理地址到主存找的概率是85%,需要1.5微秒;页表不在快表中在主存的概率是15%,需要3微秒,所以存取时间为1.5*0.85+3*0.15=1.725微秒。

5. 已知某系统页面长4KB,页表项4B,采用多层分页策略映射64位虚拟地址空间。 若限定最高层页表占1页,问它可以采用几层分页策略。

页面大小为4KB,总共有212位信息,其中只有210位信息是所需要的信息,而另外4字节的内容是管理这张页表的信息。64位地址空间,事实上每页只能存放10位的容量,去掉作为页内地址的12位空间,将有252页表,将这些页表按每页存放10位容量计算,则需要[52/10]=6层,故必须采取6层分页策略。

6. 在一个段式存储管理系统中,其段表如表1所示。试求表2所示中的逻辑地址所 对应的物理地址。

(1)由于第0段的内存始址为210,段长为500,故逻辑地址[0,430]是合法地址。逻辑地址[0,430] 对应的物理地址为210+430=640。

(2)由于第1段的内存始址为2350,段长为20,故逻辑地址[1,10]是合法地址。逻辑地址[1,10]对应 的物理地址为2350+10=2360。

(3)由于第段起始地址为100,段长为90,所给逻辑地址[2,500]非法。

(4)由于第3段的内存始址为1350,段长为590,故逻辑地址[3,400]是合法地址。逻辑地址[3,400] 对应的物理地址为1350+400=1750 。

(5)由于第4段的内存始址为1938,段长为95,所给逻辑地址[4,112]非法。

(6)由于系统中不存在第5段,所给逻辑地址[5,32]非法。

7. 请求分页管理系统中,假设某进程的页表内容如下表所示:

页面大小为 4KB,一次内存的访问时间是 100ns,一次快表(TLB)的访问时间是10ns, 处理一次缺页的平均时间 10^8 ns(已含更新 TLB 和页表的时间),进程的驻留集大小固定为 2,采用最近最少使用置换算法(LRU)和局部淘汰策略。

假设( 1) TLB 初始 为空;( 2) 地址转换时先访问 TLB,若 TLB 未命中,再访问页表(忽略访问页表之后 的 TLB 更新时间);( 3) 有效位为 0 表示页面不在内存,产生缺页中断,缺页中断处理后,返回到产生缺页中断的指令处重新执行。设有虚地址访问序列2362H、 1565H、 25A5H,

请问: (1)依次访问上述三个虚地址,各需多少时间?给出计算过程。

(2)基于上述访问序列,虚地址 1565H 的物理地址是多少?请说明理由。

(1)根据页式管理工作原理,应先考虑页面大小,以便将页号和页内位移分解出来。页面大小为4KB,即212,则得到页内位移占虚地址12位,页号占剩余高位。可得三个虚地址的页号P如下:

2362H: P=2,访问快表10ns,因初始为空,访问页表100ns得到页框号,合成物理地址后访问主存100ns,共计10ns+100ns+100ns=210ns。

1565H:P=1,访问快表10ns,落空,访问页表100ns,落空,进行缺页中断处理108ns,合成物理地址后访问主存100ns,共计10ns+100ns+108ns+100ns≈108ns。

25A5H:P=2,访问快表,因第一次访问已将该页号放入块表,因此花费10ns便可合成物理地址,访主存100ns,共计10ns+100ns=110ns。

(2)当访问虚地址1565H时,产生缺页中断,合法驻留集为2,必须从页表中淘汰一个页面,根据题目的置换算法,应淘汰0号页面,因此1565H的对应页框号为101H。由此可得1565H物理地址为101565H。

8. 设某计算机的逻辑地址空间和物理地址空间均为 64KB,按字节编址。若某进程 最多需要 6 页(Page)数据存储空间,页的大小为 1KB,操作系统采用固定分配 局部置换策略为此进程分配 4 个页框(Page Frame)。在时刻 260 前的该进程 访问情况如下表所示(访问位即使用位)。

当该进程执行到时刻 260 时,要访问逻辑地址为 17CAH 的数据。请回答下列问题:

(1) 该逻辑地址对应的页号是多少?

(2) 若采用先进先出(FIFO)置换算法,该逻辑地址对应的物理地址是多少?要求给出计算过程。

(3) 若采用时钟(CLOCK)置换算法,该逻辑地址对应的物理地址是多少?要求给出计算过程 (设搜索下一页的指针沿顺时针方向移动,且当前指向2号页框,示意图如下) 。

(1)17CAH=(0001 0111 1100 1010)2。页大小为1K,所以页内偏移地址为10位,于是前6位是页号,所以得到页号为:5。

(2)若采用FIFO算法,则被置换的页面所在页框为7,所以对应的物理地址为(0001 1111 1100 1010)2=1FCAH。

(3)若采用时钟算法,第一次循环时访问位都置为0,又当前指针指向2号页框,故第二次循环将置换2号页框对应的页,所以对应的物理地址为(0000 1011 1100 1010)2=0BCAH。

时间: 2024-07-30 19:48:48

操作系统原理之存储问题的相关文章

操作系统原理2——OS结构

操作系统原理2——OS结构 计算机系统是由硬件系统和软件系统两部分组成, 操作系统是软件系统的一个组成部分,它是直接在硬件系统的基础上工作的,所以在研究操作系统之前,先必须对计算机系统的结构有一个基本的了解,本章就是讲述计算机系统结构的基本知识. 本章的考核 知识点 是: 1.计算机系统的层次结构 2.硬件环境 3.操作系统结构 学习本章要求:了解计算机系统的结构,有关硬件的I/O中断和存储结构,硬件的保护措施:有关操作系统的结构,操作系统提供的使用接口. 重点 是:硬件环境和操作系统的结构 一

操作系统原理(转)

操作系统原理   我们每天都同操作系统打交道,了解一些操作系统原理上的知识是绝对有必要的,它可以让你了解操作系统内部是怎么工作的,为什么会出现这样那样的问题,为我们解决这些问题提供思路. 本文完全是为普通电脑用户写的,省略了所有难以理解的算法.原理,没有太多细节上的东西,只是针对普通电脑用户可能感兴趣的问题给出了实现思想.写这些东 西只是我的一相情愿,就怕我还是写得深了些,初学者读不懂.如果这10K文字能让你对操作系统有更深的了解,那也就不枉了这几个汗流浃背的夏日午后了. Q:什么是中断?A:中

马哥学习笔记三十二——计算机及操作系统原理

缓存方式: 直接映射 N路关联 缓存策略: write through:通写 write back:回写 进程类别: 交互式进程(IO密集型) 批处理进程(CPU密集型) 实时进程(Real-time) CPU: 时间片长,优先级低IO:时间片短,优先级高 Linux优先级:priority 实时优先级: 1-99,数字越小,优先级越低 静态优先级:100-139,数据越小,优先级越高 实时优先级比静态优先级高 nice值:调整静态优先级   -20,19:100,139   0:120 ps

漫谈怎样学习操作系统原理

本人学习计算机技术至今,对于怎样学习操作系统原理有一点自己的看法,如今写出来,希望对大家能有所助! 操作系统怎么学.首先要想操作系统是怎么来的,在没有操作系统的年代里,人们是怎么编程的. 这是首要的问 题.不知道有没有人看过INTEL官方的CPU文档,总是分为应用级编程.系统级编程.指令集这三块.当中系统级编 程这一块最复杂,我不说内容,就单从文件的大小来看,IA-64编程手冊的应用级编程卷是2MB,系统卷却有6MB.就 连IA-32编程手冊上的系统卷部分也远比应用卷的要多.当然这些内容我还没有

第五十二课 linux操作系统原理、虚拟机基础原理

linux操作系统原理 linux操作系统原理 虚拟机技术基础原理 虚拟机技术基础原理

SQL Server索引 (原理、存储)聚集索引、非聚集索引、堆 <第一篇>

一.存储结构 在SQL Server中,有许多不同的可用排列规则选项. 二进制:按字符的数字表示形式排序(ASCII码中,用数字32表示空格,用68表示字母"D").因为所有内容都表示为数字,所以处理起来速度最快,遗憾的是,它并不总是如人们所想象,在WHERE子句中进行比较时,使用该选项会造成严重的混乱. 字典顺序:这种排序方式与在字典中看到的排序方式一样,但是少有不同,可以设置大量不同的额外选项来决定是否区分大小写.音调和字符集. 1.平衡树(B-树) 平衡树或B-树仅是提供了一种以

漫谈如何学习操作系统原理

本人学习计算机技术至今,对于如何学习操作系统原理有一点自己的看法,现在写出来,希望对大家能有所助! 操作系统怎么学,首先要想操作系统是怎么来的,在没有操作系统的年代里,人们是怎么编程的.这是首要的问 题.不知道有没有人看过INTEL官方的CPU文档,总是分为应用级编程.系统级编程.指令集这三块.其中系统级编 程这一块最复杂,我不说内容,就单从文件的大小来看,IA-64编程手册的应用级编程卷是2MB,系统卷却有6MB.就 连IA-32编程手册上的系统卷部分也远比应用卷的要多.当然这些内容我还没有看

操作系统原理(二),进程、线程

Technorati 标签: 操作系统,原理 现代操作系统比如,Linux,Windows等,都是支持"多任务"的操作系统.所谓多任务,指的就是操作系统可以同时运行多个任务.也就是在同一台电脑上,可以同时上网.听歌.使用Word,在过去单核的CPU上都已经可以支持多任务,实现的方式是操作系统让各个任务轮流交替执行.,比如任务1执行0.01秒,切换到任务2,任务2执行0.01秒,再切换到任务3,执行0.01秒,因为CPU执行速度非常块,我们感觉到所有任务都是并发处理. 到了多核CPU时代

操作系统原理4——存储管理

本章考核知识点: 1.重定位 2.固定分区存储管理 3.可变分区存储管理 4.页式存储管理 5.段式存储管理 6.虚拟存储器 自学要求 : 明确存储管理的职能是对主存储器中的用户区域进行管理: 理解在不同的管理方式下如何实现存储保护.地址转换.以及主存空间的分配和回收: 比较各种管理方式的特点: 掌握虚拟存储器的实现原理和方法. 重点是: 各种管理方式的特点: 可变分区方式的主存分配算法以及移动技术: 分页式虚拟存储管理的实现以及页面调度算法: 分段式虚拟存储管理的实现. 操作系统的存储管理如同