最新最简操作系统期末复习(考前速过)

news2024/11/24 23:04:17

操作系统复习

  • 第一章(操作系统引论)
  • 计算机操作系统包括:
  • 操作系统的目标:
  • 操作系统的作用:
  • 未配置操作系统的计算机系统:
  • 单道批处理系统:
    • 缺点:
  • 多道批处理系统:
    • 优点:
    • 缺点:
  • 分时系统:
    • 目的:
    • 特点:
  • 实时系统:
    • 目的:
    • 特点:
  • 操作系统的基本特性:
  • 操作系统的主要功能:
  • 前趋图:
    • 程序顺序执行时的特征:
    • 程序并发执行时的特征:
  • 第二章(进程的描述与控制)
  • 进程:
    • 什么是进程:
    • 引入进程的目的:
    • PCB(进程控制块)的作用:
    • 进程的特性:
    • 进程的五种状态:
  • 引起进程创建的事件:
  • 引起进程终止的事件:
  • 进程的挂起与激活:
    • 挂起:
    • 挂起的原因:
    • 激活:
    • 激活的原因:
  • 进程通信的类型:
  • linux 进程通信:
  • 什么是线程:
    • 目的:
  • 作业、进程、线程之间的关系:
  • 第三章(处理机调度与死锁)
  • 处理机调度的层次:
    • 高级调度(作业调度):
    • 低级调度(进程调度):
    • 中级调度(内存调度):
  • 作业和作业调度:
    • 作业:
    • 作业控制块:
    • 作业调度的主要任务:
    • 进程调度方式:
  • 处理机调度算法的目标:
    • 处理机调度算法的共同目标:
    • 批处理系统中处理机调度算法的目标:
    • 分时系统中处理机调度算法的目标:
    • 实时系统中处理机调度算法的目标:
  • 调度算法:
    • 1.先来先服务(FCFI)
    • 2.短作业优先调度(SJF)
    • 3.优先级调度
    • 4.轮转调度
    • 5.多级队列调度
    • 6.多级反馈队列调度
    • 7.基于公平原则的调度算法
  • 死锁进程:
  • 死锁概述:
  • 资源问题:
    • 可重用资源和可消耗资源:
    • 可抢占资源和不可抢占资源
  • 计算机系统中的死锁:
  • 产生死锁的必要条件:
  • 死锁的处理方法:
  • 死锁预防:
  • 死锁避免:
  • 第四章(进程同步)
  • 什么是进程同步:
  • 实现进程同步的机制有:
  • 两种形式的制约关系:
  • 临界资源:
  • 临界区:
    • 解决临界区问题的四条准则:
  • 信号量机制:
  • PV 操作是低级进程通信原语
  • 信号量的应用:
  • 经典的进程同步问题:
    • 生产者-消费者问题
    • 哲学家进餐问题
    • 读者-写者问题
  • linux 进程同步机制:
  • 第五章(存储器管理)
  • 主存储器和寄存器:
    • 主存储器:
    • 寄存器:
  • 高速缓存和磁盘缓存:
    • 高速缓存:
    • 磁盘缓存:
  • 程序的装入:
  • 分页存储管理方式:
    • 1.分页存储管理方式:
    • 2.分段存储管理方式:
    • 3.段页式存储管理方式:
    • 分页存储管理的基本方法:
    • 地址结构:
    • 页表:
    • 分段存储管理的基本原理:
    • 分页和分段的主要区别和相同点:
  • 第六章(虚拟存储器)
  • 页面置换算法:
    • 1.最佳页面置换算法(OPT)
    • 2.先进先出页面置换算法(FIFO)
    • 3.最近最久未使用页面置换算法(LRU)
    • 4.最少使用页面置换算法(LFU)

第一章(操作系统引论)

计算机操作系统包括:

处理器、存储器、外围设备

操作系统的目标:

为了实现:方便性、有效性、可扩充性、开放性

操作系统的作用:

(1)用户与计算机硬件系统间的接口
(2)是计算机资源的管理者
(3)实现了对计算机资源的抽象

未配置操作系统的计算机系统:

(1)人工操作方式
(2)脱机 I/O 方式(减少了 CPU 空闲时间,提高了 I/O)

单道批处理系统:

一个接一个地被连续处理(注重顺序性)

缺点:

系统中的资源得不到充分的利用,因为仅有一道程序

多道批处理系统:

注重资源利用率和吞吐率,即运行效率

优点:

(1)资源利用率高
(2)吞吐量大

缺点:

(1)平均周转时间长
(2)无交互能力

分时系统:

目的:

(1)人机交互
(2)共享主机

特点:

(1)多路性
(2)独立性
(3)及时性
(4)交互性

实时系统:

目的:

能及时响应外部事件的请求,在规定时间内完成对该事件的处理

特点:

实时性、可靠性

操作系统的基本特性:

1.并发 2.共享 3.异步 4.虚拟

操作系统的主要功能:

1.处理机管理功能
(1)进程控制
(2)进程同步
(3)进程通信
(4)调度 2.储存器管理功能
内存分配和回收、内存保护、地址映射、内存扩充 3.设备管理功能:
缓冲管理、设备分配、设备处理 4.文件管理功能:
文件储存空间管理、目录管理、文件的读写 5.接口管理功能:
用户接口、程序接口 6.现代操作系统新功能

前趋图:

用于描述程序之间执行的先后顺序

程序顺序执行时的特征:

1.顺序性 2.封闭性 3.可再现性

程序并发执行时的特征:

(因为共享资源导致的) 1.间断性 2.失去封闭性 3.不可再现性

第二章(进程的描述与控制)

进程:

什么是进程:

系统进行资源分配和调度的基本单位

引入进程的目的:

实现操作系统的并发性和共享性

PCB(进程控制块)的作用:

1.保留进程运行期间相关的数据,是进程存在的唯一标志

2.使一个在多道程序环境下不能独立运行的程序成为一个能独立运行的基本单位

进程的特性:

动态性、并发性、独立性、异步性

进程的五种状态:

创建态、就绪态、执行态、阻塞态、终止态
在这里插入图片描述

引起进程创建的事件:

1.用户登录
2.作业调度
3.提供服务
4.应用请求

引起进程终止的事件:

1.正常结束
2.异常结束
3.外界干预

进程的挂起与激活:

挂起:

当一个进程被挂起时,它的执行被暂停,进程的状态从运行状态到暂停状态(挂起的进程会占用一定的系统资源)

挂起的原因:

等待外部事件、资源竞争、调度策略

激活:

当一个被挂起的进程被激活时,它从暂停状态到运行状态(激活常是通过操作系统特定条件或调度策略决定的,即操作系统的干预)

激活的原因:

条件满足、资源可用、调度策略

进程通信的类型:

1.共享存储器系统 2.管道通信系统 3.消息传递系统 4.客户机-服务器系统

linux 进程通信:

1.管道 2.信号 3.消息队列 4.共享内存 5.信号量 6.套接字

什么是线程:

是程序执行的最小单位

目的:

为了减少程序在并发执行时所付出的时间和空间,提高资源利用率和系统吞吐量

作业、进程、线程之间的关系:

一个作业(Job)可以由一个或多个进程(Process)组成。
一个进程(Process)可以包含一个或多个线程(Thread)。
线程(Thread)是进程(Process)内的执行单元,多个线程可以并发执行,共享进程的资源

第三章(处理机调度与死锁)

处理机调度的层次:

高级调度(作业调度):

调度对象:作业
功能:根据算法,将外存中的哪几个作业调入内存中

低级调度(进程调度):

调度对象:进程
功能:根据算法,决定就绪队列的哪个进程获得处理机

中级调度(内存调度):

调度对象:进程
功能:决定把外存上的那些已具备运行条件的就绪进程重新调入内存,提高内存的利用率

作业和作业调度:

作业:

它不仅包含了通常的程序和数据,还配有一份作业说明书,系统根据该说明书对程序的运行进行控制

作业控制块:

每个作业都有一个作业控制块(JCB),JCB 中包含:作业标志、用户名称、用户账号、作业类型、作业状态、调度信息、资源需求情况、资源使用情况等

作业调度的主要任务:

1.接纳多少个作业 2.接纳哪些作业

进程调度方式:

1.非抢占式 2.抢占式:(1)优先级原则(2)短进程优先原则(3)时间片原则

处理机调度算法的目标:

处理机调度算法的共同目标:

(1)资源利用率(2)公平性(3)平衡性(4)策略强制执行

批处理系统中处理机调度算法的目标:

(1)平均周转时间短
(2)系统吞吐量高
(3)处理机利用率高

分时系统中处理机调度算法的目标:

(1)保证响应时间快
(2)保证均衡性

实时系统中处理机调度算法的目标:

(1)保证满足截至时间的要求
(2)保证可预测性

调度算法:

1.先来先服务(FCFI)

2.短作业优先调度(SJF)

3.优先级调度

4.轮转调度

5.多级队列调度

6.多级反馈队列调度

7.基于公平原则的调度算法

死锁进程:

如果一组进程中的每个进程都在等待该进程中的其他进程才能引发的事件发生,那么该进程是死锁的

死锁概述:

双方都希望对方能释放出自己所需要的资源,但他们会因为不能获得自己所需的资源去继续运行而无法释放自己当下占有的资源,一直处于这样僵持状态而形成死锁

资源问题:

可重用资源和可消耗资源:

1.可重用资源:
每个可重用资源中的单元只能分配给一个进程使用,不允许多个进程共享,但可以申请使用 2.可消耗资源:
每类可消耗资源的单元数目在进程运行期间是可以不断变化的

可抢占资源和不可抢占资源

1.可抢占资源:
可被系统抢占 2.不可抢占资源
一旦把该资源分配给了某进程后,就不能将它强行收回

计算机系统中的死锁:

1.竞争不可抢占资源引起的死锁 2.竞争可消耗资源引起死锁 3.进程推进不当引起死锁

产生死锁的必要条件:

1.互斥条件
进程对所分配的资源进行排他性使用,在一段时间内资源只能被一个进程占用 2.请求和保持条件
进程已占用至少一个资源,发出资源请求,但该资源被其他进程占用,此时请求阻塞,但对自己占有的资源又保持不放 3.不可抢占条件
进程对已获得的资源在未使用之前不能被抢占 4.循环等待条件
“进程-资源”形成一条循环链,即{p0,p1,p2,p3,p4}中 p0 在等 p1 占用的资源,p1 在等 p2 占用的资源

死锁的处理方法:

1.预防死锁 2.避免死锁 3.检测死锁 4.解除死锁

死锁预防:

1.破坏“请求和保持”条件:
在请求资源时不能持有不可抢占的资源 2.破坏“不可抢占”条件:
释放不可抢占资源 3.破坏“循环等待条件”:
对资源类型进行线性排序,规定每个进程必须按序号递增请求资源

死锁避免:

银行家算法

第四章(进程同步)

什么是进程同步:

异步环境下的一组进程因直接制约而互相发消息、合作、等待,使得各进程按一定的速度执行的进程,成为同步进程

实现进程同步的机制有:

1.信号量机制 2.管程机制 3.硬件同步机制

两种形式的制约关系:

1.间接相互制约关系(互斥关系):
例:如果 A 在用打印机,则 B 就不可以用打印机 2.直接相互制约关系(同步关系):
例:有一个输入和一个计算的进程,只能先执行输入进程,然后才能执行计算进程

临界资源:

进程在使用他们的时候都需要采用互斥方式
例如:打印机、磁带机

临界区:

每个进程中访问临界资源的那段代码称为临界区

解决临界区问题的四条准则:

1.空闲让进:
空闲的时候允许进入临界区 2.忙则等待:
不空闲就等待 3.有限等待:
保证等待的请求在有限时间内能进入 4.让权等待:
当等待的进程不能进入时,应该释放处理机

信号量机制:

起着进程规范的作用

PV 操作是低级进程通信原语

信号量的应用:

1.利用信号量实现进程互斥 2.利用信号量实现进程同步

经典的进程同步问题:

生产者-消费者问题

哲学家进餐问题

读者-写者问题

建议在 B 站观看视频更佳清晰

linux 进程同步机制:

1.中断处理 2.内核态抢占 3.多处理机并发

第五章(存储器管理)

主存储器和寄存器:

主存储器:

简称主存或内存,也称为可执行存储器
作用:用于保存进程运行时的程序和数据

寄存器:

CPU 内部的一些小型存储区域
作用:用于暂时存放参与运算的指令、数据、运算结果等内容

高速缓存和磁盘缓存:

高速缓存:

介于寄存器和主存储器(内存)之间的存储器
作用:用于备份内存中较常用的数据

磁盘缓存:

由于目前磁盘的 I/O 速度远低于对内存的访问速度,为了缓和两者在速度上的不匹配,特定设置了磁盘缓存
作用:用于暂时存放频繁使用的一部分磁盘数据,以减少访问磁盘的次数
注意:但磁盘缓存和高速缓存不同,磁盘缓存其实不是一种实际存在的存储器,而是利用内存中的部分存储空间,暂时存放从磁盘的信息

程序的装入:

1.绝对装入方式:
当计算机系统很小,且仅能运行单道程序时,完全可以知道程序驻留在内存什么位置,然后装入

2.可重定位装入方式:

根据逻辑地址计算出物理地址,根据内存的具体情况,将装入模块装入内存适当位置

3.动态运行时装入方式

分页存储管理方式:

1.分页存储管理方式:

将用户程序的地址空间分为若干个固定大小的区域,称之为“页”

2.分段存储管理方式:

为了满足用户要求而形成的一种离散分配方式,把用户程序分为若干大小不同的段,每段定义一组相对完整的信息

3.段页式存储管理方式:

分页和分段两种的结合产物,同时具有两者优点,目前应用最广泛的一种存储管理方式

分页存储管理的基本方法:

1.页面和物理块:
(1)页面:
把地址空间分成若干页,从 0 开始,第 0 页、1 页
(2)页面大小:
若选择过小页面,虽能有利于内存利用率提高,但是造成每个进程占用较多页面,导致进程页表过长,占用大量内存

地址结构:

由页号 P 和偏移量 W 构成

页表:

进程各个页离散地存储在内存的任一物理块中,为每个进程建立一张表,简称页表,记录相应页在内存中的位置

分段存储管理的基本原理:

1.分段:
作业的地址空间被划分为若干段 2.段表:
存放每个段的逻辑地址和物理地址的映射关系

分页和分段的主要区别和相同点:

相同点:
都是采用离散分配方式,都是通过地址映射机构实现地址变换
区别:
(1)页是信息的物理单位,段是信息的逻辑单位,分页只是系统管理上的需要,完全是系统行为,对用户不可见,分段的目的是能更好地满足用户的需求
(2)页的大小是由系统决定的,段的长度不固定,取决于用户所编写的程序,页管理是直接由硬件实现的,所以每个系统中只有一种大小的页面,段管理是由编译程序进行编译时根据信息的性质来划分的
(3)分页的用户程序地址是一维的,是系统行为,分段的用户程序地址是二维的,是用户行为,程序员在标注一个地址时必须给出段名和段内地址

第六章(虚拟存储器)

页面置换算法:

1.最佳页面置换算法(OPT)

简介:假设是三个页面装入内存,往后看,如果后面两个有使用,则不替换,若未使用,则从上到下按顺序替换

2.先进先出页面置换算法(FIFO)

3.最近最久未使用页面置换算法(LRU)

4.最少使用页面置换算法(LFU)

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

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

相关文章

力扣——C语言:合并两个有序数组

88. 合并两个有序数组 - 力扣(LeetCode) 这道题有多种方法可以解决 一、暴力求解 这种方法最简单,我们只需要把两个数组合在一起然后在冒泡排序就可以了 代码如下: void merge(int* nums1, int nums1Size, int m, int* nums2…

word技巧

word这个东西有的时候令人又爱又恨,很多用上的时候都是因为自己贫瘠的技巧而令人抓狂,比如设置一个页脚和页眉,首页如何不同?目录页如何设置罗马数字?页眉前面几页不要横线,后面几页要横线,谨以…

Python+requests搭建接口自动化测试框架

一、接口自动化的意义(为什么做这个框架) 新版本上线时之前版本的功能需要进行回归测试,导致大量的重复性手工测试。引入自动化测试可以使用自动化技术代替部分手工的回归性测试,解放更多人力做其它更有必要的事情。但目前项目UI变…

antv/x6_2.0学习使用(五、路由)

X6 默认提供了以下几种路由: 路由名称说明normal默认路由,原样返回路径点orth正交路由,由水平或垂直的正交线段组成oneSide受限正交路由,由受限的三段水平或垂直的正交线段组成manhattan智能正交路由,由水平或垂直的正交线段组成…

机器学习-线性回归实践

目标:使用Sklearn、numpy模块实现展现数据预处理、线性拟合、得到拟合模型,展现预测值与目标值,展现梯度下降; 一、导入模块 import numpy as np np.set_printoptions(precision2) from sklearn.linear_model import LinearRegr…

使用Pipeline和ColumnTransformer提升机器学习代码质量

机器学习项目中最冗长的步骤通常是数据清洗和预处理,Scikit-learn库中的Pipeline和 and ColumnTransformer通过一次封装替代逐步运行transformation步骤,从而减少冗余代码量。 1. Pipeline vs. ColumnTransformer 训练模型前,需要将数据集分…

windows系统如何查看扇区?

windows系统如何查看扇区? 首先,我们按WindowsR 弹出"运行"对话框,打开文本框输入"MSINFO32.EXE"命令 展开左侧"组件"节点 接下来,我们选择"组件|存储|磁盘"文件夹 在其里面即可查看硬盘…

PostGIS学习教程二十:3-D

PostGIS学习教程二十:3-D 注意:本文介绍许多PostGIS2.0及更高版本才支持的功能。 文章目录 PostGIS学习教程二十:3-D一、3-D几何图形二、3-D函数三、N-D索引 一、3-D几何图形 到目前为止,我们一直在处理2-D几何图形(…

【Redis】非关系型数据库之Redis的主从复制、哨兵和集群高可用

目录 一、主从复制、哨兵、集群的区别 二、主从复制 2.1主从复制的作用 2.2主从复制的原理 2.3主从复制的实操 步骤一:环境准备 步骤二:安装Redis以及配置文件修改 Redis的主从配置文件都一样 步骤四:验证主从复制 三、哨兵 3.1哨兵…

盘点:最适合布偶猫的三款主食冻干,K9、sc、希喂,你选对了吗?

喂养布偶猫的秘诀:如何满足其食肉天性同时呵护其肠胃?主食冻干来解答!它不仅符合猫咪天然的饮食结构,还采用新鲜生肉为原料。搭配其他营养元素,既美味又营养,还能增强抵抗力。我们将为您测评市场上热门的k9…

【Docker】Docker基础

文章目录 安装使用帮助启动命令镜像命令容器命令 安装 # 卸载旧版本 sudo yum remove docker \docker-client \docker-client-latest \docker-common \docker-latest \docker-latest-logrotate \docker-logrotate \docker-engine # 设置存储库 sudo yum install -y yum-utils …

浅析内存一致性:内存屏障

文章目录 概述内存乱序访问Store Buffer和Invalidate QueueStore BufferStore ForwardingStore Buffer与内存屏障 Invalidate QueueInvalidate Queue与内存屏障 内存屏障分类编译器屏障CPU内存屏障 相关参考 概述 内存屏障,是一类同步屏障指令,是CPU或编…

《数据结构、算法与应用C++语言描述》-红黑树的C++实现-百万级数据量测试通过

红黑树 完整可编译运行代码见仓库:GitHub - Jasmine-up/Data-Structures-Algorithms-and-Applications/_3matrix。 如有问题请在评论区指出。另外,Github仓库会根据我的学习情况持续更新,欢迎大家点star,谢谢。 基本概念 红-黑…

【mars3d】new mars3d.layer.GeoJsonLayer(实现环状面应该怎么传data

问题:【mars3d】new mars3d.layer.GeoJsonLayer(实现环状面应该怎么传data 解决方案: 1.在示例中修改showDraw()方法的data数据,实现以下环状面效果 2.示例链接: 功能示例(Vue版) | Mars3D三维可视化平台 | 火星科技 export f…

Avalonia学习(二十一)-自定义界面演示

今天开始继续Avalonia练习。 本节&#xff1a;自定义界面 在网上看见一个博客&#xff0c;根据需要演示一下。 前台代码 <Window xmlns"https://github.com/avaloniaui"xmlns:x"http://schemas.microsoft.com/winfx/2006/xaml"xmlns:vm"using:…

python画房子

前言 今天&#xff0c;我们来用Python画房子。 一、第一种 第一种比较简单。 代码&#xff1a; import turtle as t import timedef go(x, y):t.penup()t.goto(x, y)t.pendown() def rangle(h,w):t.left(180)t.forward(h)t.right(90)t.forward(w)t.left(-90)t.forward(h) de…

解决Qt Creator中文乱码的问题

方法1 使用QStringLiteral()包裹中文字符串 QString str1"中文测试&#xff01;"; QString str2QStringLiteral("中文测试&#xff01;");方法2 #if _MSC_VER > 1600//MSVC2015>1899,MSVC_VER14.0 #pragma execution_character_set("utf-8&qu…

Java里的实用类

1.枚举 语法&#xff1a; public enum 变量名{ 值一&#xff0c;值二} 某个变量的取值范围只能是有限个数的值时&#xff0c;就可以把这个变量定义成枚举类型。 2…装箱&#xff08;boxing&#xff09; 和拆箱&#xff08;unboxing&#xff09; 装箱&#xff08;boxing&…

npm安装vue,添加淘宝镜像

如果是第一次使用命令栏可能会遇到权限问题。 解决vscode无法运行npm和node.js命令的问题-CSDN博客 安装 在vscode上面的导航栏选择terminal打开新的命令栏 另外可能会遇到网络或者其他的问题&#xff0c;可以添加淘宝镜像 npm install -g cnpm --registryhttps://registry.…

Java经典框架之Dubbo

Dubbo Java 是第一大编程语言和开发平台。它有助于企业降低成本、缩短开发周期、推动创新以及改善应用服务。如今全球有数百万开发人员运行着超过 51 亿个 Java 虚拟机&#xff0c;Java 仍是企业和开发人员的首选开发平台。 课程内容的介绍 1. Dubbo概述 2. Dubbo基本应用 3…