《操作系统》课程复习资料(下)

本文是对我的大学课程——《操作系统》的课程知识整理,分上下两个部分,本文为下半部分,上半部分详见《操作系统》课程复习资料(上)

目录

虚拟存储器

输入输出系统


虚拟存储器

虚拟存储器是指具有请求调入置换功能,从逻辑上对内存容量加以扩充的一种存储器系统。容量取决于计算机的地址结构、可用的物理内存和外存的容量之和。

特征:多次性:一个作业允许多次调入对换性:作业可换入、换出;虚拟性

分配策略

固定分配:在进程生命周期中,保持固定数目的物理块 。可变分配:保持可变数目的物理块.

置换策略

局部替换:发生缺页时,仅从该进程的物理块中淘汰页面

全局替换:发生缺页时,从系统中任一进程的物理块中淘汰页面

可组合出以下三种内存分配策略

1) 固定分配局部置换 (Fixed Allocation , Local Replacement)

2) 可变分配局部置换 (Variable Allocation , Local Replacement

3) 可变分配全局置换 (Variable Allocation , Global Replacement

常用的页面置换算法:最佳置换算法(OPT算法)、先进先出页面淘汰算法(FIFO 算法)、最近最久未使用页面淘汰算法(LRU 算法)、Clock 置换算法

OPT: 淘汰以后不再需要或最长时间不再访问的页面(看以后)

FIFO:淘汰在内存中驻留时间最长的(Belady现象对于一些特定的访问序列,存在分配的页面数增多,但缺页率反而提高的异常现象)

LRU:淘汰最近最久未使用的页面,

Clock:置1置0

产生 “ 抖动 ” 的原因:1.进程数量多,每个进程分配的物理块少。

2.系统中运行的进程太多,由此分配给每一个进程的物理块太少,不能满足进程正常运行的基本要求,致使每个进程在运行时,频繁地出现缺页,必须请求系统将所缺之页调入内存。

预防方法:

1. 采取局部置换策略2. 把工作集算法融入到处理机调度中。调入作业前,先检查每个进程在内存的驻留页面是否足够多3. 利用“ L=S” 准则调节缺页率

“ L=S” 来调节多道程序度。L是缺页之间的平均时间,S是平均缺页服务时间,即用于置换一个页面所需的时间。L>>S ,说明很少发生缺页,磁盘未充分利用L<<S ,说明频繁发生缺页,缺页的速度过高。只有当L与S接近时,磁盘和处理机都可达到最大利用率4. 选择暂停的进程。减少多道程序的数目。


输入输出系统

I/O设备

按信息交换的单位分 分块设备和字符设备

按使用特性 存储设备 I/O设备

按信息传输速率 低俗 中速 高速

I/O 设备由两部分:I/O 操作的机械部件机械部件即设备本身

执行控制 IO 的电子部件:电子部件称为设备控制器(或适配器)

四种 IO 控制方式

使用轮询的程序控制方式,传送单位: 字

中断 I/O 控制方式传送单位字

直接 DMA 控制, 传送单位:数据块

通道控制方式

早期计算机系统中,无中断机构,CPU 对 I/O 设备的控制采取程序直接控制方式,又称轮询方式

进程需要数据时,通过 CPU 发出指令,启动外围设备准备数据。进程进入阻塞状态,等待输入完成,进程调度。

DMA方式-直接存储器访问方式:CPU 要从磁盘读入一数据块时,便向磁盘控制器发送一条读命令。该命令被送入命令寄存器 CR 中。同时,需要将本次要读入数据在内存的起始目标地址 送入寄存器 MAR 中

I/O 通道设备的引入:当主机所配置的外设很多时, CPU 的负担仍然很重。故CPU 和设备控制器之间又增设了 I/O 通道。IO 通道是一种特殊的处理机 ,通道可以识别和执行一系列通道指令, 并通过执行 IO 程序来控制 IO 操作。其目的是使一些由 CPU 处理的 IO任务转通道承担

IO系统目标:(1)提高设备的利用率(2)为用户提供方便、统一的界面

(3)提高处理机和 I/O设备的利用率(4)对 I/O 设备进行控制

(5)确保对设备的正确共享(6)错误处理

设备独立性(设备无关性): 应用程序中所用的设备,不局限于某个具体的物理设备,通过设备逻辑名来使用设备,必须在设备驱动程序上再设置一层软件,对设备进行管理。

设备驱动程序功能1接收上层发来的命令和参数。2检查用户 I/O 请求的合法性。3发出 I/O 命令。4及时响应由设备控制器发来的中断请求,并根据其中断类型,调用相应的中断处理程序进行处理。

设备分配的原则和策略1充分发挥设备的使用效率,尽可能地让设备忙起来2避免由于不合理的分配而造成死锁的发生3将用户程序和具体物理设备相隔离

设备分配方式1静态分配: 用户进程开始执行之前,操作系统就将该进程所

需要的全部设备、设备控制器和通道一次性地分配给它2动态分配: 指进程在运行过程中需要 I/O 时,再由操作系统为其分配设备

系统调用:将 CPU 状态由用户态转换到内核态 ;转向 OS 中相应过程,由该过程完成所需的 I/O 操作。 执行完后, CPU 状态由内核态转换到用户态。

假脱机(Spooling)系统

假脱机技术通过假脱机技术,将一台物理 I/O 设备虚拟为多台逻辑 I/O 设备,允许多个用户共享一台物理 I/O 设备。是在联机情况下实现脱机 I/O功能

虚拟设备:用一个物理设备模拟出的多个逻辑设备,通过缓冲等方式,将独占设备改造为共享设备。允许多个用户共享一台物理 I/O 设备。

输入井和输出井 :在磁盘上开辟两个存储空间;输入井用于暂存 I/O 设备输入的数据;输出井用于暂存用户程序的输出数据, 以文件形式管理

SPOOLing 的设计与实现输入进程:输入进程将用户要求的数据从输入设备传送到输入缓冲区,再存放到输入井 。

输出进程:将用户要求输出的数据,先从内存送到输出井,待输出设备空闲时 , 再将输出井中的数据送到输出设备上 。

缓冲区是一个存储区域,可由专门的硬件寄存器组成,也可利用内存作为缓冲区

假脱机打印系统主要包括三部分:

①磁盘缓冲区(输出井) :在磁盘上开辟的存储空间,暂存要打

印的数据。

②打印缓冲区 :在内存中,暂存从磁盘缓冲区送来的数据。

③假脱机管理进程和假脱机打印进程

SPOOLing实现原理:当用户进程请求打印输出时,Spooling 同意为它打印输出 , 但并不立即把打印机分配给它,假脱机管理进程做两件事:① 在输出井中为它申请一个空闲磁盘块区,将要打印的数据送入其中暂存。② 为用户进程申请一张空白的用户请求打印表,将用户的打印要求填入其中,再将该表挂到 请求打印队列上

缓冲区是一个存储区域,可由专门的硬件寄存器组成,也可利用内存作为缓冲区

缓冲区的作用1缓和 CPU 与 I/O 设备间速度不匹配的矛盾。2减少对 CPU 的中断频率,放宽对 CPU 中断响应时间的限制。3解决数据粒度不匹配的问题, 如生产者和消费者之间交换的数据粒度不匹配4提高 CPU 和 I/O 设备之间的并行性

扫描 (SCAN) 算法- 电梯调度算法 在方向一致的下优先调度与当前磁头最近的请求。单向到最大后返回至较大循环扫描 (CSCAN) 单向到最大后返回至较小

以柱面、磁头、扇区表示的为绝对扇区,又称物理磁盘地址,即CHS

公式:存储容量=磁头数*磁道(柱面)*每道扇区数*每扇区字节数

文件系统基本目标:实现按名存取

文件系统是操作系统中负责管理和存取文件的程序集合。由文件控制块、存储分配表等数据结构、相应的管理软件和被管理的文件组成。

文件结构分为 逻辑结构 和 物理结构

逻辑结构 : 用户所看到的文件组织形式,是用户可以直接处理的数据及其结构,它独立于文件的物理特性,称为文件组织  。根据用户需求和文件内容决定。

物理结构 :又称为文件的存储结构,是指文件在外存上的存储组织形式。这不仅与存储介质的存储性能有关,而且与所采用的外存分配方式有关。

逻辑结构按文件是否有结构分类(1)无结构文件(流式文件)由字符序列组成的文件,其内部不再划分结构,字符是该文件的基本信息单位。例如:文本文件、源程序、可执行文件等。对流式文件的访问,采用读/ 写指针来指示下一个要访问的字节 。(2) 有结构文件(记录式文件)

按文件的组织方式分类,有结构文件分为三类:(1)  顺序文件 (2) 索引文件 (3) 索引顺序文件


关注我,持续分享有趣有用的知识!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/602250.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Spring Security Oauth2 JWT 添加额外信息

目录 一、问题描述 二、实现步骤 1、自定义TokenEnhancer 2、配置授权服务器 3、自定义UserDetails的User类 三、参考文档 一、问题描述 Oauth2里默认生成的JWT信息并没有用户信息&#xff0c;在认证授权后一般会返回这一部分信息&#xff0c;我对此进行了改造。 Oauth…

大数据集成平台建设方案-word原件资料

基础支撑平台主要承担系统总体架构与各个应用子系统的交互&#xff0c;第三方系统与总体架构的交互。需要满足内部业务在该平台的基础上&#xff0c;实现平台对于子系统的可扩展性。基于以上分析对基础支撑平台&#xff0c;提出了以下要求&#xff1a; (1) 基于平台的基础架构&…

短视频矩阵系统源码/saas--总后台端、商户端、代理端、源头开发

短视频矩阵系统源码/saas--总后台端、商户端、代理端、源头开发 搭建短视频矩阵系统源码的交付步骤可以概括为以下几个关键环节&#xff1a; 1. **系统需求分析**&#xff1a;明确系统需要支持的功能&#xff0c;如短视频的上传、存储、播放、分享、评论、点赞等。 2. **技术选…

MySQL —— 数据类型

一、数值类型 以上表格整理了用来表示数值类型的数据类型&#xff0c;其中&#xff0c;接下来将介绍和展示其中几个类型的使用和各种细节 1.tinyint 越界测试&#xff1a;建立一个包含tinyint类型的表格&#xff0c;插入各中数据去查看结果&#xff0c;并且尝试插入边界数据和…

数字人捕捉、建模与合成

在感知系统中&#xff0c;我们与外部合作者一起创建逼真的 3D 人类&#xff0c;其行为可以像虚拟世界中的真实人类一样。这项工作在今天有许多实际应用&#xff0c;并且对于元宇宙的未来至关重要。但是&#xff0c;在感知系统中&#xff0c;我们的目标是科学的——通过重现人类…

PS五官与服装PSD文件大全,男女证件照制作必备素材

一、素材描述 男女证件照服装和五官等PSD文件大全&#xff0c;制作证件照的必备素材合集&#xff0c;轻松制作高端大气的证件照。什么是DR5&#xff1f;DR5是Delicious Retouch 5的简称&#xff0c;这是一款非常优秀的PS人像磨皮美容插件&#xff0c;DR5的主要功能就是针对人像…

AI换脸原理(4)——人脸对齐(关键点检测)参考文献2DFAN:代码解析

注意,本文属于人脸关键点检测步骤的论文,虽然也在人脸对齐的范畴下。 1、介绍 在本文中,重点介绍了以下几项创新性的成果,旨在为人脸关键点检测领域带来新的突破。 首先,成功构建了一个卓越的2D人脸关键点检测基线模型。这一模型不仅集成了目前最优的关键点检测网络结构,…

领导想提拔你,看的从来不只是努力

谁不曾做过努力工作&#xff0c;一路升职加薪的职业规划&#xff0c;现实却给很多人泼了一盆冷水。 在大家的普遍认知里&#xff0c;北上广普遍高薪&#xff0c;月入过万就是标配。 然而在逃离北上广的热门帖子下&#xff0c;有网友发出了声音&#xff1a; “我都35了&#xff…

XSS、CSRF、SSRF漏洞原理以及防御方式_xss csrf ssrf

这里写目录标题 XSS XSS攻击原理&#xff1a;XSS的防范措施主要有三个&#xff1a;编码、过滤、校正 CSRF CSRF攻击攻击原理及过程如下&#xff1a;CSRF攻击的防范措施&#xff1a; SSRF SSRF漏洞攻击原理以及方式SSRF漏洞攻击的防范措施 XMLXSS、CSRF、SSRF的区别 XSS、CSRF的…

落地护眼灯十大品牌哪款性价比高?品牌排行榜前十名全面揭晓!

落地护眼灯十大品牌哪款性价比高&#xff1f;落地护眼灯已经逐渐成为孩子日常使用率较高的电器之一&#xff0c;它的优点非常突出&#xff0c;对于学习、工作、绘画等环境都能够提供良好的健康环境&#xff0c;同时还携带多种智能调节功能&#xff0c;例如&#xff1a;入座感应…

Android 启动提示Android 正在升级...提示源码分析

正常情况下烧录的新机会有这个提示&#xff0c;因为系统启动时候要对系统APP做DexOpt优化&#xff0c;流程如下&#xff1a; 进入performBootDexOpt函数&#xff1a; 提示框代码如下&#xff1a; 而提示框的Tile和Msg如下&#xff1a; 打印Log&#xff1a; 觉得本文对…

小项目“谈笑风生”测试报告

文章目录 一、项目介绍1.1项目背景1.2功能介绍 二、测试环境三、测试执行过程3.1功能测试3.1.1登录页面测试3.1.2注册页面测试3.1.3主页面测试 3.2界面自动化测试3.2.1登录模块测试3.2.2注册模块测试3.2.3展示各种信息模块测试3.2.34聊天消息传送模块测试 四、测试结论与建议 一…

Ubuntu软件中心不显示

装完Ubuntu后没有Software -- 更新apt sudo apt update -- 升级apt sudo apt upgrade -- 重启 sudo systemctl reboot-- 安装snap sudo apt-get install snap -- 安装软件商店 sudo snap install snap-store -- 更新软件商店 sudo snap refresh snap-store安装成功&#xff01…

C语言,实现数字谱到简谱的转换(二)

C语言&#xff0c;实现数字谱到简谱的转换&#xff08;二&#xff09; 前言&#xff1a;本文初编辑于2024年5月8日 CSDN&#xff1a;https://blog.csdn.net/rvdgdsva 博客园&#xff1a;https://www.cnblogs.com/hassle 前言 结合前文使用 之前的程序默认C调4/4拍&#xff…

论文润色就用意得辑:让你的学术之作更上一层楼

在学术的海洋里&#xff0c;每一篇论文都是一艘承载智慧与探索的小船。然而&#xff0c;好的内容也需要好的包装&#xff0c;才能更好地展现其价值。在这个追求精益求精的时代&#xff0c;意得辑以其专业的论文润色服务&#xff0c;成为了众多学者们的得力助手。 意得辑&#…

matlab 基于拉依达检验法(3σ准则) 实现多类别多参数的批量异常样本检验 V2.0

简介 拉依达检验法&#xff08;3σ准则&#xff09;是一种统计学方法&#xff0c;用于检测数据中的异常值。这种方法基于正态分布的特性来确定数据点是否可能是异常值。以下是关于拉依达检验法&#xff08;3σ准则&#xff09;的详细介绍&#xff1a; 基本原理&#xff1a; 拉…

移除链表元素题目讲解

一&#xff1a;题目 二&#xff1a;思路讲解 方法一&#xff1a; 1&#xff1a;创建两个指针prev和cur&#xff0c;初识位置cur为head&#xff0c;prev为NULL&#xff0c;然后两个指针往后移动开始去寻找与val值吻合的节点&#xff0c;最后找到节点的时候&#xff0c;cur指向…

Linux基础之yum和vim

目录 一、软件包管理器yum 1.1 软件包的概念 1.2 软件包的查看 1.3 软件包的安装和删除 二、Linux编辑器之vim 2.1 vim的基本概念 2.2 正常模式&#xff08;命令模式&#xff09; 2.3 底行模式 2.4 输入模式 2.5 替换模式 2.6 视图模式 2.7 总结 一、软件包管理器yu…

SSL证书0元购完整教程

为了确保在线交互的安全性与可信度&#xff0c;越来越多的网站选择启用SSL&#xff08;Secure Sockets Layer&#xff09;证书&#xff0c;为数据传输加上一层坚实的保护罩。尤为值得一提的是&#xff0c;随着技术的发展与行业推动&#xff0c;免费SSL证书逐渐成为众多网站所有…

秒翻-网页翻译最佳选择

使用方法&#xff1a; 安装“沉浸式翻译” 在扩展设置页面勾选“Beta”特性。 输入 DeepLX 现成的 API-https://api.deeplx.org/translate。
最新文章