软件设计师——操作系统

 3564004ba7684821b9ee7777f1d34efb.jpeg

📔个人主页📚:秋邱-CSDN博客
☀️专属专栏✨:软考——软件设计师
🏅往期回顾🏆:C++: 类和对象(上)
🌟其他专栏🌟:C语言_秋邱 

 

一、操作系统总览(⭐)

1.1、考点1、操作系统的作用

按照计算机层次来分:计算机硬件(裸机)、

操作系统、语言处理、应用程序。

操作系统作用

  • 管理系统的硬件、软件、数据资源
  • 控制程序运作
  • 人机之间的接口
  • 应用软件和硬件之间的接口

操作系统工作范围进程、存储、文件、作业、设备管理

1.2、考点2、特殊的操作系统

分类

特点

批处理操作系统

单道批:一次一个作业入内存,作业由程序、数据、作业说明书组成

多道批:一次多个作业入内存,特点:多道、宏观上并行微观上串行

分时操作系统

采用时间片轮转的方式为多个用户提供服务,每个用户感觉独占系统

特点:多路性、独立性、交互性和及时性

实时操作系统

实时控制系统和实时信息系统

交互能力要求不高,可靠性要求高(规定时间内响应并处理

网络操作系统

方便有效共享网络资源,提供服务软件和有关协议的集合主要的网络操作系统有:Unix、Linux和WindowsServer系统

分布式操作系统

任意两台计算机可以通过通信交换信息

是网络操作系统的更高级形式,具有透明性、可靠性和高性能等特性

微机操作系统

Windows:Microsoft开发的图形用户界面、多任务、多线程操作系统Linux:免费使用和自由传播的类Unix操作系统,多用户、多任务、多线程和多CPU的操作系统

嵌入式操作系统

运行在智能芯片环境中

特点:微型化、可定制(针对硬件变化配置)、实时性、可靠性、易移植性(HAL和BSP支持)

二、进程管理(⭐⭐)

2.1、考点1、线程的概念

进程是程序在一个数据集合上运行的过程,它是系统进行资源分配和调度的一个独立单位。它由程序块、进程控制块(PCB)和数据块三部分组成。

PCB:PCB是进程存在的唯一标志。内容包含进程标识符、状态、位置信控制信息、队列指针(链接同一状态的进程)、优先级、现场保护区等。

2.1.1、进程与程序

进程与程序的区别:进程是程序的一次执行过程,没有程序就没有进程

程序是一个静态的概念,而进程是一个动态的概念,它由创建而产生,完成任务后因撤销而消亡;进程是系统进行资源分配和调度的独立单位,而程序不是。

2.1.2、线程

进程的2个基本属性:可拥有资源的独立单位;可独立调度和分配资源的基本单位。

2.2、考点2、进程的状态

运行:当一个进程在CPU上运行时。(单处理机处于运行态的进程只有一个)。

就绪:一个进程获得了除CPU外的一切所需资源,一旦得到处理机即可运行。

阻塞:阻塞也称等待或睡眠状态,一个进程正在等待某一事件发生(例如请求I/O等待I/0完成等)而暂时停止运行,此时即使把CPU分配给进程也无法运行,故称进程处于阳寒状态。

挂起原因:

(1)进程过多,主存资源不足,此时必须将某些进程挂起,放到磁盘对换区,暂时不参与调度,以平衡系统负载

(2)系统出现故障,或者是用户调试程序,也可能需要将进程挂起检查问题

2.3、进程调度(⭐️⭐️⭐️)

2.3.1、考点1、PV操作的概念

前面提到了三态的三种状态,进程三个状态之间的转换就是靠PV操作来控制的。PV操作主要就是P操作、V操作和信号量。其中信号量起到了至关重要的作用。

信号量:信号量是一种特殊的变量

信号量可以表示资源数量

信号量为负数时还可以表示排队进程数

P可以简单的理解为资源申请,V可以理解为资源释放。P操作是减法运算(S:=S-

1),当信号量S小于0时申请资源;V操作是加法运算(S:=+1),当信号量小于等于0

时释放资源。

2.3.2、考点2、信号量与PV操作

互斥模型:互斥模型就像“千军万马过独木桥”每一次只能一个人通过,要上桥的时候P(S)进行资源申请(锁死),过桥之后V(S)进行资源释放(解锁。

同步模型:有一个生产者进程和一个消费者进程,它们共享一个有固定大小的缓冲区。生产者不断生产产品并放入缓冲区P(S),消费者从缓冲区中取出产品进行消费V(S)。需要保证生产者不会在缓冲区满时继续生产,消费者不会在缓冲区空时继续消费。

2.3.3、考点3、前驱图与PV操作

若用PV操作控制进程 P1、P2、P3、P4和P5并发执行的过程,需要设置5个信号量S1、S2、S3、S4和S5,且信号的初始值为0。为了方便理解我们把进程用生活中的例子来讲述。

在这个前驱图中,容易位置开始结果都是一样的,假设从d开始搅拌,不能直接搅拌,需要先检查资源,用P来检查。需要先完成前三个进程,完成之后由V来进行通知 ,进程D就能执行, 对没一个前驱活动都要进行检查。

2.4、死锁问题(⭐⭐)

死锁:是指两个以上的进程互相都要求对方已经占有的资源导致无法继续运行下去的现象。

死锁四大条件:互斥、保持和等待、不剥夺、环路等待。

解决死锁的处理:

  1. 死锁预防:(打破四大条件)有序资源分配法、静态资源分配
  2. 死锁避免:银行家算法;
  3. 死锁的检测与解除;
  4. 鸵鸟策略(不予理睬)

进程管理是操作系统的核心,但如果设计不当,就会出现死锁的问题。如果进程在等待一件不可能发生的事,则进程就死锁了。而如果多个进程产生死锁就会造成系统死锁。

:系统有5个进程:A、B、C、D、E。这5个进程都需要4个系统资源。如果系统至少有多少个资源,则不可能发生死锁。

假设每个进程分配三个资源,就有十五个,还是会进程死锁,+1后则不回。

从而推出:系统不可能发生死锁的最小资源数(w-1)*m+1<=n

2.5、进程资源图(资源调度的一中方式)(⭐⭐)

可化简:整体能够执行下去。

非阻塞节点:指那些可以继续执行而不需要等待其他资源的进程节点。

阻塞节点:指那些由于等待其他资源而不能继续执行的进程。

三、存储管理

3.1、段页式存储

3.1.1、考点1:页式存储(⭐⭐⭐)

页式存储:将程序与内存均划分为同样大小的,以页为单位将程序调入内存。(由操作系统完成)

由逻辑地址来推出页帧号,

例如,页式存储系统中,每个页的大小为4B。逻辑地址:10 1100 1101 1110

讲解:总容量 = 存储个数 * 编址内容(默认1B),即存储个数是4K,转化为二进制2^12。因此,页内地址需要占据12位来表示。10 1100 1101 1110那么页号就是2,查表可得,页帧号为6,二进制表示110,页内地址不变最后物理地址110 1100 1101 1110。

注意:页内地址表示在一页内的偏移量,取决于页的大小。

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

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

抖动现象:简单理解就是频繁地将页面从内存中移出并从磁盘上的交换空间(或称虚拟内存)中重新载入页面

淘汰依据:访问位为0 > 多个修改位为0

页面置换算法:最优算法、随机算法、先进先出算法(可能产生抖动)、最近最少算法(LRU,不会抖动,LRU的理论依据是“局部性原理”)、

时间局部性:刚被访问的内容,立即又被访问。

空间局部性:刚被访问的内容,临近的空间很快被访问。

3.1.2、考点2:段式存储(⭐⭐)

段式存储:按用户作业中的自然段来划分逻辑空间,然后调入内存,段的长度可以不一样。

逻辑地址(断号,段内偏移量)

合法地址(0,25k),非法地址(0,35)。段内便宜量不得超过段长。

优点多道程序共享内存,各段程序修改互不影响

缺点内存利用率低,内存碎片浪费大

3.1.3、考点3:段页式存储

段页式存储:段式与页式的综合体。先分段,再分页。1个程序有若干个段,每个段中可以有若干页,每个页的大小相同,但每个段的大小不同。

页面大小固定为 2^13

页的个数最大 2^11

段的个数最大2^8

优点:空间浪费小、存储共享容易、存储保护容易、能动态连接

缺点:由于管理软件的增加,复杂性和开销也随之增加,需要的硬件以及占用的内容有所增加,使得执行速度大大下降

3.2、磁盘管理(⭐️⭐️⭐️)

存取时间=寻道时间+等待时间,寻道时间是指磁头移动到磁道所需的时间;等待时间为等待读写的扇区转到磁头下方所用的时间。


读取磁盘数据的时间应包括以下三个部分:

  1. 找磁道的时间。
  2. 找块(扇区)的时间,即旋转延迟时间。
  3. 传输时间。

磁道的寻找一般按照逻辑地址来寻找。

磁道的寻找有多种方式:

先来先服务(FCFS)算法、最短寻道时间优先(SSTF)算法、扫描算法(SCAN)、循环扫描(CSCAN)算法

在磁盘调度过程中,同一个进程只能运行一个(输入传送不能同时进行)

(2)可以看出,当读出记录凡并处理结束后,磁头刚好转至记录的开始处,立即就可以读出并处理,因此处理 10 个记录的总时间为 10x(2ms(读记录)+4ms(处理记录))=10X6ms-60ms 。

四、设备管理(⭐️⭐️⭐️)

4.1、I/O软件管理分层

硬件:完成具体的I/0操作。

中断处理程序:I/0完成后唤醒设备驱动程序

设备驱动程序:设置寄存器,检查设备状态

设备无关I/0层:设备名解析、阻塞进程、分配缓冲区

用户级I/O层:发出IO调用。

五、文件管理(⭐️⭐️⭐️)

5.1、考点1、文件相关概念

文件:具有符号名的、在逻辑上具有完整意义的一组相关信息项的集合。

逻辑结构:有结构的记录式文件、无结构的流式文件。

物理结构:连续结构、链接结构、索引结构、多个物理块的索引表。

文件目录:

目录结构

一级目录结构:线性结构,查找速度慢,不允许重名和实现文件共享等

二级目录结构:主文件目录(MFD)+用户目录(UFD)

三级目录结构:树型目录结构(多级目录结构)

5.2、考点2、树形目录结构(绝对路径,相对路径)

★绝对路径:是从盘符开始的路径。

★相对路径:是从当前目录开始的路径。

若当前目录为Program,要求访问f1.java,则:

绝对路径:\Program\Java-prog\f1.java

相对路径:Java-prog\f1.java

5.3、考点3、位示图(位表示比特位)

1)、4096 / 32 = 128,但因为是从0号开始的,所以4096是第129字的第一位

2)、有多内存需要管理:200GB / 1MB = 200 * 2^30 / *2^20 =200*2^10;

有多少位示图字:200 *2^10 / 32 = 6400;

5.4、考点4、索引文件

某文件系统采用索引节点管理,其磁盘索引块磁盘数据块大小均为1KB字节且每个文件索引节点有8个地址项iaddr[0]~iaddr![7],每个地址项大小为4字节,其中iaddr[0]~iaddr[4]采用直接地址索引,iaddr[5]和iaddr[6]采用一级间接地址索引,iaddr[7]采用二级间接地址索引。若用户要访问文件userA中逻辑块号为4和5的信息,则系统应分别采(1)该文件系统可表示的单个文件最大长度是(2)KB。

A. 直接地址访问和直接地址访问

B .直接地址访问和一级间接地址访问

C.一级问接地址访问和一级间接地址访问

D .一级间接地址访问和二级间接地址访问

A .517   B. 1029   C. 65797  .D. 66053

索引项 :1kb / 4 = 256个,

iaddr[0]-iaddr[4]采用直接索引 5个物理盘块,一个5KB

iaddr[5]-iaddr[6]采用一级索引 2*256 KB

iaddr[7]采用二级索引 256*256KB

5KB+2*256 KB+256*256KB=66053KB

六、作业管理

6.1、考点1、作业状态与管理

6.2、考点二、作业算法调度

  • 先来先服务。
  • 短作业优先
  • 时间片轮转法
  • 最高优先权优先法
  • 响应比高优先。响应比高的作业优先启动。 响应比 = (作业等待时间+作业执行时间)/作业执行时间

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

VGG16模型实现新冠肺炎图片多分类

1. 项目简介 本项目的目标是通过深度学习模型VGG16&#xff0c;实现对新冠肺炎图像的多分类任务&#xff0c;以帮助医疗人员对患者的影像进行快速、准确的诊断。新冠肺炎自爆发以来&#xff0c;利用医学影像如X光和CT扫描进行疾病诊断已成为重要手段之一。随着数据量的增加&am…

华为---以太网静态路由配置使用下一跳通信正常,而使用出接口无法通信

目录 1. 实验环境 2. 结果测试 3. 分析验证 3.1 以太网静态路由配置使用下一跳跨网段通信抓包分析 3.2 以太网静态路由配置使用出接口跨网段通信抓包分析 3.3 以太网静态路由配置使用出接口无法跨网段通信问题解决办法 1. 实验环境 以太网静态路由配置使用下一跳跨网段通…

网络丢包定位记录(二)

网卡驱动丢包 查看&#xff1a;ifconfig eth1/eth0 等接口 1.RX errors: 表示总的收包的错误数量&#xff0c;还包括too-long-frames错误&#xff0c;Ring Buffer 溢出错误&#xff0c;crc 校验错误&#xff0c;帧同步错误&#xff0c;fifo overruns 以及 missed pkg 等等。 …

Maven的详细解读和配置

目录 一、Maven 1.1 引言 1.2 介绍 1.3 下载安装 1.3.1 解压 1.3.2 配置环境变量 1.3.3 测试 1.4 仓库[了解] 1.5 Maven配置 1.5.1 修改仓库位置 1.5.2 设置镜像 二、IDEA - MAVEN 2.1 idea关联maven 2.2 为新项目设置 2.2 创建java项目[重点] 2.3 java项目结构…

Go-知识-定时器

Go-知识-定时器 1. 介绍2. Timer使用场景2.1 设定超时时间2.2 延迟执行某个方法 3. Timer 对外接口3.1 创建定时器3.2 停止定时器3.3 重置定时器3.4 After3.5 AfterFunc 4. Timer 的实现原理4.1 Timer数据结构4.1.1 Timer4.1.2 runtimeTimer 4.2 Timer 实现原理4.2.1 创建Timer…

特征工程与交叉验证在机器学习中的应用

数据入口&#xff1a;学生考试表现影响因素数据集 - Heywhale.com 本数据集提供了关于影响学生考试成绩的多种因素的全面概述。数据集包含了有关学习习惯、出勤率、家长参与、资源获取等方面的信息。 数据说明 字段名说明Hours_Studied每周学习的小时数Attendance出勤率&…

(笔记自用)位运算总结+LeetCode例题:颠倒二进制位+位1的个数

一.位运算总结: 在解题之前理解一下为什么需要位运算&#xff1f;它的本质是什么&#xff1f; 力扣上不少位运算相关的题&#xff0c;并且很多题也会用到位运算的技巧。这又是为什么&#xff1f; 位运算的由来 在计算机里面&#xff0c;任何数据最终都是用数字来表示的&…

[Linux]:信号(下)

✨✨ 欢迎大家来到贝蒂大讲堂✨✨ &#x1f388;&#x1f388;养成好习惯&#xff0c;先赞后看哦~&#x1f388;&#x1f388; 所属专栏&#xff1a;Linux学习 贝蒂的主页&#xff1a;Betty’s blog 1. 信号的阻塞 1.1 基本概念 信号被操作系统发送给进程之后&#xff0c;进程…

【Linux学习】基本指令其一

命令行界面 命令行终端是一个用户界面&#xff0c;允许用户通过输入文本命令与计算机系统进行交互。 比如Windows下&#xff0c; 键入winR&#xff0c;然后输入cmd&#xff0c;就可以输入文本指令与操作系统交互了。 Windows有另一个命令行界面Powershell,它的功能比cmd更强大…

电商ISV 电商SaaS 是什么

Independent Software Vendors的英文缩写&#xff0c;意为“独立软件开发商” 软件即服务(SaaS) 指一种基于云技术的软件交付模式 订阅收费 这些公司叫做ISV软件供应商&#xff0c;通过SaaS服务交付收费 为什么会有电商ISV 从商家角度划分&#xff1a;有独立品牌商家、大商…

微信支付的委托代扣功能服务如何申请开通?

扣款服务&#xff08;原委托代扣服务&#xff0c;以下均用委托代扣&#xff09;是微信支付旗下的重要产品 1、委托代扣是指商户取得用户的扣款授权后&#xff0c;向微信支付发起从用户账户扣款至商户账户的扣款指令&#xff0c;微信支付无需验证用户的支付密码&#xff0c;即可…

记录一下,Vcenter清理/storage/archive空间

一、根因 vpostgres&#xff1a;这个目录可能包含与 vCenter Server 使用的 PostgreSQL 数据库相关的归档文件过多&#xff0c;导致空间被占用。 二、处理过程 1、SSH登陆到Vcenter. 2、df -Th **图中可以看到 /storage/archive 使用占比很高。 /storage/archive 目录通常用…

fiddler抓包06_抓取https请求(chrome)

课程大纲 首次安装Fiddler&#xff0c;抓https请求&#xff0c;除打开抓包功能&#xff08;F12&#xff09;还需要&#xff1a; ① Fiddler开启https抓包 ② Fiddler导出证书&#xff1b; ③ 浏览器导入证书。 否则&#xff0c;无法访问https网站&#xff08;如下图&#xff0…

Qt优秀开源项目之二十三:QSimpleUpdater

QSimpleUpdater是开源的自动升级模块&#xff0c;用于检测、下载和安装更新。 github地址&#xff1a;https://github.com/alex-spataru/QSimpleUpdater QSimpleUpdater目前Star不多&#xff08;911个&#xff09;&#xff0c;但已在很多开源项目看到其身影&#xff0c;比如Not…

web网站的任意文件上传下载漏洞解析

免责申明 本文仅是用于学习检测自己搭建的任意文件上传下载漏洞相关原理,请勿用在非法途径上,若将其用于非法目的,所造成的一切后果由您自行承担,产生的一切风险和后果与笔者无关;本文开始前请认真详细学习《‌中华人民共和国网络安全法》‌及其所在国家地区相关法规内容【…

【D3.js in Action 3 精译_023】3.3 使用 D3 将数据绑定到 DOM 元素

当前内容所在位置&#xff1a; 第一部分 D3.js 基础知识 第一章 D3.js 简介&#xff08;已完结&#xff09; 1.1 何为 D3.js&#xff1f;1.2 D3 生态系统——入门须知1.3 数据可视化最佳实践&#xff08;上&#xff09;1.3 数据可视化最佳实践&#xff08;下&#xff09;1.4 本…

Three.js 3D人物漫游项目(中)

本文目录 前言最终效果展示1、人物添加阴影1.1 添加地板1.1.1 效果 1.2 模型castShadow1.2.1 效果 1.3 轨道控制器1.3.1 效果 2、创建建筑物2.1 代码2.2 效果 前言 在数字技术的浪潮中&#xff0c;三维图形渲染技术以其独特的魅力&#xff0c;正逐步渗透到我们生活的方方面面&a…

手机、平板电脑编程———未来之窗行业应用跨平台架构

一、平板编程优点 1. 便携性强 - 可以随时随地携带平板进行编程&#xff0c;不受地点限制&#xff0c;方便在旅行、出差或休息时间进行学习和开发。 2. 直观的触摸操作 - 利用触摸屏幕进行代码编辑、缩放、拖动等操作&#xff0c;提供了一种直观和自然的交互方式。 …

联想(lenovo) 小新Pro13锐龙版(新机整理、查看硬件配置和系统版本、无线网络问题、windows可选功能)

新机整理 小新pro13win10新机整理 查看硬件配置和系统版本 设置-》系统-》系统信息 无线网络问题 部分热点可以&#xff0c;部分不可以 问题&#xff1a;是因为自己修改了WLAN的IP分配方式为手动分配&#xff0c;导致只能在连接家里无线网的时候可以&#xff0c;连接其他…

Unity 高亮插件HighlightPlus介绍

主要是对官方文档进行了翻译(我做了一些补充和一些小的调整) 但是如果你只是想快速入门: Unity 高亮插件Highlight Plus快速入门-CSDN博客 注意:官方文档本身就落后实际,但对入门仍很有帮助,核心并没有较大改变,有的功能有差异,以实际为准.(目前我已校正了大部分差异,后续我…