操作系统-页面淘汰算法(下)-软件设计(二十六)
创始人
2024-06-03 01:02:46
0

操作系统-PV操作(上)-软件设计(二十五)icon-default.png?t=N176https://blog.csdn.net/ke1ying/article/details/129476031

存储管理-分区存储组织

问:计算机系统内存大小为128k,当前系统分配情况如图,那么作业4再次申请内存9k,用不同存储分配算法,会产生什么结果呢

 

由图可知,分配前作业一33k,作业二22k,作业三10k,那么中间为啥空了25k。

原来对应的位子有33k程序,然后有个25k,然后22k,但后来中间那个25k的程序作业被释放,所以空闲在那里。

首次适用法则分配在第一个空闲位子。

最佳则会选择能分配成功且最小的空闲区。

最差则直接选择最大的空闲区。

循环首次适应法则是把空闲区循环连接在一起,然后依次分配。

页式存储组织

高级程序语言使用逻辑地址,运行状态,内存中使用物理地址。

重点是、逻辑地址与物理地址之间的转换。

优点是 内存利用率高,碎片小,分配及管理简单。

缺点是 增加了系统开销,可能产生抖动现象。

页面置换算法(淘汰算法)

最优算法(opt算法):理论存在的算法,知道访问序列什么样子,然后在什么时间点淘汰什么页面,来达到最高性能。

随机算法(RAND算法):性能不稳定。

先进先出算法(FIFO):有可能产生抖动,淘汰页面的时候,就看谁最先进入,就先淘汰谁。

最少使用算法(LRU):不会抖动。(意味着给他分配的性能越多,表现越好)

 

产生抖动:意思是给你分配更多的资源,不但没有正面效果,反而效率降低。

如图很好展示了为何FIFO为何产生抖动,因为给三个内存空间是9次缺页,而给四个内存空间是10次缺页,所以并不会因为资源越多,而效果越好。(缺页是内存里没数据,需要去外存取出数据,并且把内存里的数据淘汰出去)

 

因为题中说没有使用块表,所以每次需要从外存加载,这时候就是6*2=12次内存。

其中指令 虽然在0和1 中间,但是他值表示 1次缺页中断。(指令无论在几个块都只能算1次

A在2和3中间,有2次缺页中断。

B在4和5中间,也有2次缺页中断。

所以一共5次缺页中断。

索引文件结构

 

一般索引结构有13个节点,0到12。

0~9直接访问物理盘快。

假设一个物理盘块是4k大小,假设13块都是直接索引,这时候就是4*13 = 52k。

所以 间接索引为了扩展索引大小而诞生。

所以前10个就是4k*10等于40k大小。

从第10个节点,指向地址,假设每个地址占4个字节,而一个物理盘快是4k

所以4k除以4=1024。

所以10号索引存1024个物理盘快地址。

所以一级间接索引可以存 4k*1024

二级间接索引 可以存 4k*1024*1024

位示图

 

因为物理块从0开始计算,所以4195号则是4196块

4196除以32 = 131.125 所以位示图中第 132个字中描述。

首先1代表占用,所以2问题的A和C是0排除。

131 * 32 = 4192

4192从0位置开始

4193就是1位置

4194就是2位置

4195就是3位置

注意上面的解析物理块的号 和 位置都是从0开始计算

设备管理 的 数据的传输控制

主要指内存 和 外设之间数据传输控制问题。

有 程序控制方式、程序中断方式、DMA方式、通道、输入输出处理机。

程序控制方式:又叫程序查询方式,最低级,需要CPU介入,导致外设非常被动,不会主动反馈信息。

程序中断方式:与程序控制方式相同,但是主动性更强,外设完成了会主动反馈,发出中断信号。

DMA方式:直接存取控制方式,专门的DMA控制器,外设内存的交换,直接在DMA控制器来完成。CPU只需要在开头和结尾介入

SPOOLING技术应该非常广泛,打印机都有SPOOLING技术:

打印的时候会把需要打印的内容放到磁盘缓冲区,然后放入一个输出井队列,打印机会把队列里的数据依次打印出来,这样就不会打印在其他人用的时候提示 打印机被占用,而是放在磁盘缓冲区。(使用过程变得非常友好)

微内核操作系统

分为 用户态 和 核心态。

用户态:客户进程、进程服务器、终端服务器...文件服务器、存储服务器。

核心态:就在进程服务器到文件服务器中间都是 核心态。(不包含文件系统)

这样好处就是 核心的出故障重启就好,这样文件系统出故障不影响核心态。

缺点就是用户态 和 核心态转换,从而导致系统效率不如单体内核。

优点系统可靠性稳定性提高,可用于分布式系统。

单体内核的优缺点则与之相反。

相关内容

热门资讯

122.(leaflet篇)l... 听老人家说:多看美女会长寿 地图之家总目录(订阅之前建议先查看该博客) 文章末尾处提供保证可运行...
育碧GDC2018程序化大世界... 1.传统手动绘制森林的问题 采用手动绘制的方法的话,每次迭代地形都要手动再绘制森林。这...
育碧GDC2018程序化大世界... 1.传统手动绘制森林的问题 采用手动绘制的方法的话,每次迭代地形都要手动再绘制森林。这...
Vue使用pdf-lib为文件... 之前也写过两篇预览pdf的,但是没有加水印,这是链接:Vu...
PyQt5数据库开发1 4.1... 文章目录 前言 步骤/方法 1 使用windows身份登录 2 启用混合登录模式 3 允许远程连接服...
Android studio ... 解决 Android studio 出现“The emulator process for AVD ...
Linux基础命令大全(上) ♥️作者:小刘在C站 ♥️个人主页:小刘主页 ♥️每天分享云计算网络运维...
再谈解决“因为文件包含病毒或潜... 前面出了一篇博文专门来解决“因为文件包含病毒或潜在的垃圾软件”的问题,其中第二种方法有...
南京邮电大学通达学院2023c... 题目展示 一.问题描述 实验题目1 定义一个学生类,其中包括如下内容: (1)私有数据成员 ①年龄 ...
PageObject 六大原则 PageObject六大原则: 1.封装服务的方法 2.不要暴露页面的细节 3.通过r...
【Linux网络编程】01:S... Socket多进程 OVERVIEWSocket多进程1.Server2.Client3.bug&...
数据结构刷题(二十五):122... 1.122. 买卖股票的最佳时机 II思路:贪心。把利润分解为每天为单位的维度,然后收...
浏览器事件循环 事件循环 浏览器的进程模型 何为进程? 程序运行需要有它自己专属的内存空间࿰...
8个免费图片/照片压缩工具帮您... 继续查看一些最好的图像压缩工具,以提升用户体验和存储空间以及网站使用支持。 无数图像压...
计算机二级Python备考(2... 目录  一、选择题 1.在Python语言中: 2.知识点 二、基本操作题 1. j...
端电压 相电压 线电压 记得刚接触矢量控制的时候,拿到板子,就赶紧去测各种波形,结...
如何使用Python检测和识别... 车牌检测与识别技术用途广泛,可以用于道路系统、无票停车场、车辆门禁等。这项技术结合了计...
带环链表详解 目录 一、什么是环形链表 二、判断是否为环形链表 2.1 具体题目 2.2 具体思路 2.3 思路的...
【C语言进阶:刨根究底字符串函... 本节重点内容: 深入理解strcpy函数的使用学会strcpy函数的模拟实现⚡strc...
Django web开发(一)... 文章目录前端开发1.快速开发网站2.标签2.1 编码2.2 title2.3 标题2.4 div和s...