操作系统重点总结

文章目录

  • 1. 操作系统重点总结
    • 1.1 操作系统简介
      • 1.1.1 操作系统的概念和功能
      • 1.1.2 操作系统的特征
        • 1.1.2.1 并发
        • 1.1.2.2 共享
        • 1.1.2.3 虚拟
        • 1.1.2.4 异步
      • 1.1.3 操作系统的发展与分类
      • 1.1.4 中断和异常
      • 1.1.5 系统调用
      • 1.1.6 操作系统的体系结构
      • 1.1.7 操作系统简介总结
    • 1.2 进程
      • 1.2.1 进程的概念,组成和特征
      • 1.2.2 进程的组织
      • 1.2.3 进程的状态与转换
      • 1.2.4 进程控制
      • 1.2.5 进程通信
    • 1.3 线程
    • 1.4 处理机调度
    • 1.5 进程调度
      • 1.5.1 进程调度的时机,切换与过程以及方式
      • 1.5.2 调度算法的评价指标
      • 1.5.3 调度算法
        • 1.5.3.1 先来先服务(FCFS)
        • 1.5.3.2 短作业优先(SJF)
        • 1.5.3.3 高响应比优先(HRRN)
        • 1.5.3.4 时间片轮转(RR)
        • 1.5.3.5 优先级调度算法
        • 1.5.3.6 多级反馈队列调度算法
    • 1.6 进程同步和互斥
      • 1.6.1 进程互斥的软件实现方法
      • 1.6.2 进程互斥的硬件实现方法
      • 1.6.3 信号量机制
      • 1.6.4 用信号量机制实现进程互斥、同步、前驱关系:
      • 1.6.5 经典的进程同步互斥问题:
    • 1.7 管程
    • 1.8 死锁
      • 1.8.1 哲学家进餐问题
      • 1.8.2 死锁的概念
      • 1.8.3 死锁的处理策略——预防死锁
      • 1.8.4 死锁的处理策略——避免死锁
        • 1.8.4.1 安全序列
        • 1.8.4.2 银行家算法
      • 1.8.5 死锁的处理策略——检测和解除
    • 1.9 内存
      • 1.9.1 内存的基础知识
      • 1.9.2 内存管理的概念
      • 1.9.3 覆盖技术与交换技术
      • 1.9.4 连续分配管理
      • 1.9.5 动态分区分配算法
      • 1.9.6 基本分页存储管理的基本概念
      • 1.9.7 基本地址变换机构
      • 1.9.8 具有快表(TLB)的地址变换机构
      • 1.9.9 两级页表
      • 1.9.10 基本分段存储管理
      • 1.9.11 段页式管理
      • 1.9.12 虚拟内存的基本概念
      • 1.9.13 请求分页管理方式
      • 1.9.14 页面置换算法
      • 1.9.15 页面分配策略
    • 1.10 文件
      • 1.10.1 初识文件管理
      • 1.10.2 文件的逻辑结构
      • 1.10.3 文件目录
      • 1.10.4 文件的物理结构
      • 1.10.5 文件存储空间管理
      • 1.10.6 文件的基本操作
      • 1.10.7 文件共享
      • 1.10.8 文件保护
      • 1.10.9 文件系统的层次结构
    • 1.11 磁盘
      • 1.11.1 磁盘的结构
      • 1.11.2 磁盘调度算法
      • 1.11.3 减少延迟时间的方法
      • 1.11.4 磁盘的管理
    • 1.12 IO设备
      • 1.12.1 IO设备的基本概念与分类
      • 1.12.2 IO控制器
      • 1.12.3 IO控制方式
      • 1.12.4 IO软件的层次
      • 1.12.5 假脱机技术
      • 1.12.6 设备的分配与回收
      • 1.12.7 缓冲区管理

1. 操作系统重点总结

1.1 操作系统简介

1.1.1 操作系统的概念和功能

在这里插入图片描述

在这里插入图片描述

1.1.2 操作系统的特征

1.1.2.1 并发

并发:指两个或多个事件在同一时间间隔内发生。这些事件宏观上是同时发生的,但微观上是交替发生的。

常考易混概念——并行:指两个或多个事件在同一时刻同时发生。

注意(重要考点):

单核CPU同一时刻只能执行一个程序,各个程序只能并发地执行

多核CPU同一时刻可以同时执行多个程序,多个程序可以并行地执行

两者区别

  1. 概念不同
    并发:并发是指两个或多个事件在同一时间间隔发生
    并行:并行是指两个或者多个事件在同一时刻发生。
  2. 侧重点不同
    并发侧重于在同一实体上
    并行:并行侧重于在不同实体上
  3. 处理不同
    并发:并发在一台处理器上“同时”处理多个任务。
    并行:并行在多台处理器上同时处理多个任务
1.1.2.2 共享

在这里插入图片描述

并发和共享的关系
并发性是指系统中同时存在着多个运行的程序
共享性是指系统在的资源可供内存中多个并发执行的进程使用

如果失去了并发性,则系统在一个时间内只能运行一个程序,则共享性失去了存在的意义
如果失去了共享性,则QQ和微信不能同时访问硬盘资源,也就无法同时发送文件,导致无法实现并发

1.1.2.3 虚拟

在这里插入图片描述

背景知识:一个程序需要放入内存并给它分配CPU才能执行

问题:既然一个程序需要被分配CPU才能正常执行,那么为什么单核CPU

的电脑中能同时运行这么多个程序呢?

答:这是虚拟处理器技术。实际上只有一个单核CPU,在用户看来似乎有

6个CPU在同时为自己服务

1.1.2.4 异步

概念:异步是指在多道程序环境下,允许多个程序并发执行,但由于资源有限,资源给了其中的一道程序,由于有限无法再给其他的程序,进程的执行不是一贯到底的,而是走走停停,以不可预知的速度向前推进,这就是进程的异步性。
如果失去了并发性,系统只能串行地处理各个进程,每个进程的执行会一贯到底。只有系统拥有并发性,才可能导致异步性。
在这里插入图片描述

1.1.3 操作系统的发展与分类

在这里插入图片描述

1.1.4 中断和异常

在这里插入图片描述

1.1.5 系统调用

在这里插入图片描述

1.1.6 操作系统的体系结构

在这里插入图片描述

1.1.7 操作系统简介总结

在这里插入图片描述

1.2 进程

1.2.1 进程的概念,组成和特征

在这里插入图片描述

1.2.2 进程的组织

在这里插入图片描述

1.2.3 进程的状态与转换

在这里插入图片描述

1.2.4 进程控制

在这里插入图片描述

1.2.5 进程通信

在这里插入图片描述

1.3 线程

在这里插入图片描述

1.4 处理机调度

在这里插入图片描述

1.5 进程调度

1.5.1 进程调度的时机,切换与过程以及方式

在这里插入图片描述

1.5.2 调度算法的评价指标

在这里插入图片描述

1.5.3 调度算法

1.5.3.1 先来先服务(FCFS)

在这里插入图片描述

1.5.3.2 短作业优先(SJF)

在这里插入图片描述

1.5.3.3 高响应比优先(HRRN)

在这里插入图片描述

1.5.3.4 时间片轮转(RR)

在这里插入图片描述

在这里插入图片描述

1.5.3.5 优先级调度算法

在这里插入图片描述

在这里插入图片描述

1.5.3.6 多级反馈队列调度算法

在这里插入图片描述

1.6 进程同步和互斥

在这里插入图片描述

1.6.1 进程互斥的软件实现方法

在这里插入图片描述

1.6.2 进程互斥的硬件实现方法

在这里插入图片描述

1.6.3 信号量机制

在这里插入图片描述

1.6.4 用信号量机制实现进程互斥、同步、前驱关系:

在这里插入图片描述

1.6.5 经典的进程同步互斥问题:

  1. 生产者–消费者问题
  2. 生产者–多消费者问题
  3. 吸烟者问题
  4. 读者–写者问题
  5. 哲学家进餐问题

1.7 管程

在这里插入图片描述

1.8 死锁

1.8.1 哲学家进餐问题

在这里插入图片描述

1.8.2 死锁的概念

在这里插入图片描述

死锁的处理策略:

在这里插入图片描述

1.8.3 死锁的处理策略——预防死锁

在这里插入图片描述

1.8.4 死锁的处理策略——避免死锁

1.8.4.1 安全序列
  1. 所谓安全序列,就是指如果系统按照这种序列分配资源,则每个进程都能顺利完成。只要能找出一个安全序列,系统就是安全状态。当然,安全序列可能有多个

  2. 如果分配了资源之后,系统中找不出任何一个安全序列,系统就进入了不安全状态。这就意味着之后 可能所有进程都无法顺利的执行下去。当然,如果有进程ᨀ 前归还了一些资源,那系统也有可能重新回到安全状态,不过我们在分配资源之前总是要考虑到最坏的情况。

  3. 如果系统处于安全状态,就一定不会发生死锁。如果系统进入不安全状态,就可能发生死锁(系统处于不安全状态未必死锁,但死锁时一定处于不安全状态。系统处于安全状态一定不会死锁)

  4. 因此可以在资源分配之前预先判断这次分配是否会导致系统进入不安全状态,以此决定是否答应资源分配请求。这也是“银行家算法”的核心思想。

1.8.4.2 银行家算法

在这里插入图片描述

数据结构:

长度为 m 的一维数组 Available 表示还有多少可用资源

n*m 矩阵 Max 表示各进程对资源的最大需求数

n*m 矩阵 Allocation 表示已经给各进程分配了多少资源

Max – Allocation = Need 矩阵表示各进程最多还需要多少资源

用长度为 m 的一位数组 Request 表示进程此次申请的各种资源数

银行家算法步骤:

①检查此次申请是否超过了之前声明的最大需求数

②检查此时系统剩余的可用资源是否还能满足这次请求

③试探着分配,更改各数据结构

④用安全性算法检查此次分配是否会导致系统进入不安全状态

安全性算法步骤:

检查当前的剩余可用资源是否能满足某个进程的最大需求,如果可以,就把该进程加入安全序列,并把该进程持有的资源全部回收。

不断重复上述过程,看最终是否能让所有进程都加入安全序列。

1.8.5 死锁的处理策略——检测和解除

在这里插入图片描述

1.9 内存

1.9.1 内存的基础知识

在这里插入图片描述

1.9.2 内存管理的概念

在这里插入图片描述

1.9.3 覆盖技术与交换技术

在这里插入图片描述

1.9.4 连续分配管理

在这里插入图片描述

1.9.5 动态分区分配算法

在这里插入图片描述

1.9.6 基本分页存储管理的基本概念

在这里插入图片描述

1.9.7 基本地址变换机构

在这里插入图片描述

1.9.8 具有快表(TLB)的地址变换机构

什么是快表(TLB)?

快表,又称联想寄存器TLB, translation lookaside buffer ),是一种访问速度比内存快很多的高速缓存TLB不是内存!),用来存放最近访问的页表项的副本,可以加速地址变换的速度。与此对应,内存中的页表常称为慢表

时间局部性:如果执行了程序中的某条指令,那么不久后这条指令很有可能再次执行;如果某个数据被访问过,不久之后该数据很可能再 次被访问。(因为程序中存在大量的循环)

空间局部性:一旦程序访问了某个存储单元,在不久之后,其附近的存储单元也很有可能被访问。(因为很多数据在内存中都是连续存放 的)

上小节介绍的基本地址变换机构中,每次要访问一个逻辑地址,都需 要查询内存中的页表。由于局部性原理,可能连续很多次查到的都是同一个页表项

在这里插入图片描述

1.9.9 两级页表

在这里插入图片描述

1.9.10 基本分段存储管理

在这里插入图片描述

1.9.11 段页式管理

在这里插入图片描述

1.9.12 虚拟内存的基本概念

在这里插入图片描述

1.9.13 请求分页管理方式

在这里插入图片描述

1.9.14 页面置换算法

在这里插入图片描述

1.9.15 页面分配策略

在这里插入图片描述

1.10 文件

1.10.1 初识文件管理

在这里插入图片描述

1.10.2 文件的逻辑结构

在这里插入图片描述

1.10.3 文件目录

在这里插入图片描述

1.10.4 文件的物理结构

在这里插入图片描述

1.10.5 文件存储空间管理

在这里插入图片描述

1.10.6 文件的基本操作

在这里插入图片描述

1.10.7 文件共享

在这里插入图片描述

1.10.8 文件保护

在这里插入图片描述

1.10.9 文件系统的层次结构

在这里插入图片描述

在这里插入图片描述

1.11 磁盘

1.11.1 磁盘的结构

在这里插入图片描述

1.11.2 磁盘调度算法

在这里插入图片描述

1.11.3 减少延迟时间的方法

在这里插入图片描述

1.11.4 磁盘的管理

在这里插入图片描述

1.12 IO设备

1.12.1 IO设备的基本概念与分类

在这里插入图片描述

1.12.2 IO控制器

在这里插入图片描述

1.12.3 IO控制方式

在这里插入图片描述

1.12.4 IO软件的层次

在这里插入图片描述

1.12.5 假脱机技术

在这里插入图片描述

1.12.6 设备的分配与回收

在这里插入图片描述

1.12.7 缓冲区管理

在这里插入图片描述

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

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

相关文章

使用YApi平台来管理接口

快速上手 进入YApi官网,进行注册登录https://yapi.pro/添加项目 3. 添加分类 4. 添加接口 5. 添加参数 添加返回数据 可以添加期望 验证 YAPI(Yet Another Practice Interface)是一个现代化的接口管理平台,由淘宝团队…

企业邮箱如何进行邮件监控

企业邮箱监控保障资产安全、合规性,防范网络攻击,提升员工行为。核心要素包括内容扫描、行为分析、合规性检查等。实施策略涉及技术选择、政策制定、员工培训。企业邮箱如何进行邮件监控呢?Zoho邮箱的eDiscovery功能可实现长期邮件保存和监控…

基于百度paddle检索系统的召回

所谓召回,无非就是用一段不规则文本模拟用户query查询,而要召回的是标准的titlekey,这些是要构建索引库的,所有相似文本对的第二个文本必须要在索引库里存在,不然就没法评估,因为标记都是0,还有召回1,召回5等,并不是什…

在Ubuntu 22 VPS服务器上更改phpMyadmin端口的方法

更改 Ubuntu 22 VPS服务器上的 phpMyAdmin 端口可以增强安全性和可管理性。但是具体应该怎么操作呢?接下来将带您了解在Ubuntu 22 VPS 服务器上更改phpMyadmin的端口全过程,一起来看看吧。 准备你的环境 在开始之前,让我们先确保你已做好一…

【前端逆向】最佳JS反编译利器,原来就是chrome!

有时候需要反编译别人的 min.js。 比如简单改库、看看别人的 min,js 干了什么,有没有重复加载?此时就需要去反编译Javascript。 Vscode 里面有一些反编译插件,某某Beautify等等。但这些插件看人品,运气不好搞的话,反…

实验2-3-8 计算火车运行时间

//实验2-3-8 计算火车运行时间 /* 输入格式:输入在一行中给出2个4位正整数,其间以空格分隔,分别表示火车的出发时间和到达时间。 每个时间的格式为2位小时数(00-23)和2位分钟数(00-59)&#xff…

dockerfile部署镜像 ->push仓库 ->虚拟机安装建木 ->自动部署化 (详细步骤)

目录 创建私服仓库 vi /etc/docker/daemon.json vim deploy.sh判断脚本内容 创建 建木 后端部署 命名空间 设置密码用户名 创建git仓库 gitignore文件内容 图形项目操作 git maven docker镜像 点击流程日志 vim /etc/docker/daemon.json 执行部署脚本 ip 开发…

RuntimeError: No CUDA GPUs are available

RuntimeError: No CUDA GPUs are available 目录 RuntimeError: No CUDA GPUs are available 【常见模块错误】 【解决方案】 解决步骤如下: 欢迎来到英杰社区https://bbs.csdn.net/topics/617804998 欢迎来到我的主页,我是博主英杰,211科…

Spring 高级解析 07

文章目录 1. Spring 概述(基本情况)1.1 Spring 的优势1.2 Spring 的核⼼结构 2. 核⼼思想 IoC 和 AOP2.1 什么是IoC?2.2 什么是AOP2.3 AOP在解决什么问题 3. Spring IoC ⾼级应⽤3.1 BeanFactory与ApplicationContext区别3.1.1 BeanFactory3.…

Android虚假定位的实现与防护

Android中常用的定位方式 一,GPS定位 定义:全球卫星定位系统,直接和卫星交互,获取设备经纬度 优点: 走卫星通信通道,无需打开Wifi或流量就能获得位置信息 精确度最高,几米到几十米 缺点&a…

Java面试八股之Spring AOP 和 AspectJ AOP 的区别

Spring AOP 和 AspectJ AOP 的区别 Spring AOP 和 AspectJ AOP 是两种不同的面向切面编程(Aspect-Oriented Programming, AOP)实现。它们各有特点,适用于不同的场景。下面是一些主要的区别: 1. 实现机制 Spring AOP: 基于代理…

为Mac配置Alfred

参考资料: Alfred神器使用手册 | louis blogMacOS神器之Alfred workflow概览GitHub - arpir/Alfred-Workflows-Collection: 一些好用的 Alfred Workflow 一、修改快捷键 Spotlight的默认快捷键是Command Space Alfred的默认快捷键是Option Space 可以将Alfred和…

Alternating Sum

Problem - 963A - Codeforces 处理式子 显然中间式子是等比数列 // Problem: A. Alternating Sum // Contest: Codeforces - Tinkoff Internship Warmup Round 2018 and Codeforces Round 475 (Div. 1) // URL: https://codeforces.com/problemset/problem/963/A // Memory Lim…

awk用法

文章目录 一、awk工具awk工作原理AWK程序的结构awk内置变量 二、案例1.基础案列2.BEGIN END 运算3.数值与字符串的比较4.awk高级用法5. awk if语句6.BEGIN END 流程7.AWK 数组8.awk 循环 一、awk工具 awk工作原理 当读到第一行时,匹配条件,然后执行指定…

【C++11】C++11新纪元:深入探索右值引用与移动语义

📝个人主页🌹:Eternity._ ⏩收录专栏⏪:C “ 登神长阶 ” 🤡往期回顾🤡:位图与布隆过滤器 🌹🌹期待您的关注 🌹🌹 ❀C11 📒1. C11简介…

【Qt】修改窗口的标题和图标

以下操作仅对顶层 widget(独⽴窗口),有效。 修改窗口的标题 一.windowTitle属性 1.概念 是一种在用户界面中显示窗口的标题的属性。它可以用来设置窗口的标题栏文本。 2.API API说明windowTitle()获取到控件的窗⼝标题.setWindowTitle(const QString& title)设置控件的…

10 BERT

目录 1 综述 1.1 BERT的核心思想 1.2 BERT的关键技术:预训练阶段 1.3 微调阶段 2 BERT的架构 2.1 输入处理 3. 特征选择/学习模块 BERT 的自注意力过程 4. 预训练任务:同时进行 4.1 Next Sentence Prediction (NSP) 4.2 Masked Language Model…

基于微信小程序+SpringBoot+Vue的网络安全科普系统(带1w+文档)

基于微信小程序SpringBootVue的网络安全科普系统(带1w文档) 基于微信小程序SpringBootVue的网络安全科普系统(带1w文档) 优质的网络安全科普系统不仅可以单纯的满足工作人员管理的日常工作需求,还可以满足用户的需求。可以降低工作人员的工作压力,提高效…

2024.7.29 作业

1> 写一个日志文件&#xff0c;将程序启动后&#xff0c;每一秒的时间写入到文件中 #include <myhead.h> int main(int argc,const char *argv[]) {FILE *fp NULL;if((fpfopen("./log.txt","r"))NULL) {perror("open error1");return…