操作系统错误点

news/2024/12/21 22:43:25/文章来源:https://www.cnblogs.com/JUANFENHUI/p/18451420

一:操作系统概述

1. 用户界面是指

  1. 用户接口

    命令接口

    程序接口

  2. 操作环境

2. 从用户观点看

操作系统就是用户与计算机硬件之间的接口

3. 从资源管理观点看

操作系统是计算机资源的管理者

4. 图形用户接口采用图形化操作界面

用于查看和操作应用程序或文档的是对话框

5. 用户程序请求操作系统服务

通过访管指令实现

6. 操作系统供给应用程序的接口是

系统调用

7. 操作系统主要功能

进程和处理机管理。存储器管理,设备管理,文件管理及接口管理

8. 操作系统提供的用户接口

  1. 脱机用户接口

    将作业说明书和作业一起交给系统,让其按说明要求运行作业

  2. 联机命令接口

    通过命令行终端键入dir/is查看当前目录

  3. 系统调用接口

    使用open()打开一个文件

9. 分时系统的响应时间主要根据

用户所能接受的等待时间确定的

10. 多道程序的特征

间断性,共享性,制约性

11. 访管指令

将用户态转变为核心态 ,因此在用户态执行

12. 系统调用

本质上就是一个存放内核封装好的函数指针;广义指令就是系统调用

系统调用发生在用户态,执行在核心态

系统调用专门供应应用程序使用的界面

13. 用户使用计算机

通过命令方式和系统调用方式

14. 按命令控制方式分为

联机用户接口,脱机用户接口

15. 系统中的缓存

对用用户是透明的,不可见;由系统管理

16. 发生和执行

外部中断:可以发生在用户态,但执行在核心态

进程切换:一定发生在核心态,执行在核心态

17. 库函数

许多库函数会使用系统调用实现功能,但有的完全不使用

库函数能运行在用户空间

18. 只能在核心态执行的指令

涉及计算机根本运行的:屏蔽所有中断,设置时钟日期,停机

涉及系统级资源的修改

19. 分层式架构

结构清晰,便于调试,有利于功能增加修改或替换

20. 大内核

高新能,内核代码大,结构混乱,难以维护

21. 微内核

内核功能少,结构清晰,方便管理,更加稳定,性能低

几乎不做任何工作,仅提供:

  1. 进程间通信机制
  2. 中断和陷入处理
  3. 有限的低级进程管理和调度
  4. 低级I/O

22. 虚拟机

可以由软件或硬件实现

软件能实现的功能硬件也能实现

22. Spooling技术

欺骗进程拥有资源,利用缓冲区使进程排队延迟访问独占资源,实现独占资源的共享

23. 覆盖与交换

在多道程序环境下用于扩展内存的两种方式

24. 子程序调用

只需保存程序断点

25. 中断处理中保护的内容

由硬件自动将处理及状态字PSW和程序计数器PC中下一条指令的地址保存在中断保留栈中

保存被中断进程的CPU现场信息,包括所有CPU寄存器的内容都压入中断栈

寄存器信息由操作系统保存

26. 多道程序发挥并行工作能力

是CPU与外设之间

二:进程管理

1. 程序与进程

进程是动态的;程序是静态的

一个程序可以对应多个进程,一个进程在一个时间只能对应一个程序,当在进程的生命周期中可以执行无数个程序

进程是程序的一次执行

2,创建到就绪

I/O操作频率值增加;CPU利用率可能上升或下降;进程的平均响应时间增加

3,临界资源释放

临界资源只能提供一个进程使用

会引起一个等待的进程进入就绪

4. 进程自身决定

从运行态到阻塞态

5. 进程调度

动态地把处理机分配给处于就绪队列中的某一个进程,以使之执行。这就是进程调度

6.多线程进程

某个线程被阻塞整个进程都被阻塞

7. 键盘响应

由系统中断完成不需要多线程

8. 信号量=0时

表示临界资源用完且无阻塞进程

9. 互斥使用

信号量初值设置为1

10. 正常运行

每个变量的值都要是能唯一确定的

11. 互斥算法的三个正确性条件

  1. 互斥性原则:任何时刻只能由一个进程处于临界区
  2. 进展性原则:如果该进程不在它的临界区执行,那么不应该阻止其他进程进入该临界区执行
  3. 有限等待性原则:某个进程进入一个临界区应该在有限时间内完成。

12. 线程

包含CPU现场可独立执行程序

同一进程线程可以直接交换数据

13.互斥操作

两个不同进程间的全局变量不能互通

14:管道通信

管道可以双向数据传输,但同一时刻只能一边传数据

管道容量通常为内存的上一页,与不受磁盘容量限制

管道满时,写管道会阻塞;管道空时,都管道会阻塞

三:处理机调度和死锁

1. 三级调度

  1. 高级调度:作业调度,作业调入内存
  2. 中级调度:内存调度,选择一个进程调出外存,再从外存调入到主存
  3. 低级调度:进程调度,就绪进程调入处理机

2. CPU调度算法

n个进程有n!个调度顺序

面向系统:吞吐量高,处理机利用率高,各类资源的平衡利用

面向用户:周转时间短,响应时间快,截至时间保证,优先权准则

多重队列算法:将进程分队列,每个队列使用的调度算法都不同

多级队列:系统开销大

高响应比和短进程优先适合批处理

时间片轮转和多级反馈队列适合分时系统

短作业优先提高系统吞吐量

高响应比算法若同时到达相当于短作业优先算法

3. 死锁

  1. 死锁预防

    破坏四个必要条件之一
    即互斥条件,请求和保持条件,不可剥夺条件,循环等待条件

  2. 死锁避免

    银行家算法

  3. 死锁检测和解除

四,内存管理

1. 分页式存储管理地址变换工作由硬件完成

2. 页式存储选择页面大小不考虑磁盘访问时间

3. 页式存储运行过程中可能改变程序的位置

4. 页表的起始地址存放在页表起始址寄存器

5. 每个进程船舰一张页表

同一进程的线程共用一张页表

6. 多级页表优点

减少页表所占的连续内存空间

7. 段页式内存管理

地址结构:段号+段内页号+页内地址(位移量)

img

8. 段号超出段表长度引发

越界中断

9. 程序分段

在用户编程时决定

10. 两个进程共用同一个存储段

让进程各自的段表拥有相同的段起始地址和段长度

11. 引入段表

方便编程;信息共享;信息保护;动态链接;动态增长

12. 缺页中断

页号合法但对应页没调入内存产生缺页、

越界中断,页号不存在不合法

若页表大包含页表项多,进程找不到对应页号概率就小,换的次数就少,缺页中断次数就少

  1. 找到空闲或置换页框分配给缺的页
  2. 从磁盘调入缺页
  3. 修改页表标志位,物理页框号等

13. 请求分页式存储与基本分页式存储

均有:

  1. 页号
  2. 物理块号

请求分页式多四个字段:

  1. 状态位:是否调入内存
  2. 访问字段:记录最近被访问次数
  3. 修改位:记录是否修改过
  4. 外存地址:页面在外存存放位置

请求式主要特点:扩充内存

14. 引用串

引用串就是该程序一段时间内需要调用的页号序列,例如p = 1 2 3 3 2 1 4 5 6 2 2。

15. 缺页次数

缺页次数最理想的情况是 有n个不同的页号,每个页号肯定且仅发生缺页一次,那么下限为n;

(前提 驻留集<n)最糟糕的情况是每次访问某个页号时都发生缺页(重复访问时也发生缺页),那么此时跟引用串有关系,引用串长度p就为缺页次数上限 p。

16. 交换区

交换区,也叫Swap分区,是在系统的物理内存不够用的时候,把硬盘内存中的一部分空间释放出来,以供当前运行的程序使用。那些被释放的空间可能来自一些很长时间没有什么操作的程序,这些被释放的空间被临时保存到Swap分区中,等到那些程序要运行时,再从Swap分区中恢复保存的数据到内存中。

17. 对各进程进行固定分配页面数目不变,不可能全局置换

准备或运行时,

  1. 固定分配:
    给进程的 每个物理块
    分配数量固定,
    运行时数量固定,按照分配数量。

  2. 可变分配:
    分配数量固定,
    运行时数量不固定。

缺页时,

  1. 局部置换:
    缺页进程独立,
    置换分配给自身的物理块。

  2. 全局置换:
    从操作系统中抠一块给缺页进程;

    或者从其他进程抠一块下来,经过外存,又调回给缺页进程。

为什么没有固定分配–全局置换?
因为,固定分配要求自身缺页时,替换自身;不能要求其他进程的置换,与全局置换相悖。

img

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

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

相关文章

操作系统基础第三讲

操作系统基础第三讲 处理机调度与死锁考点一:处理机调度 1. 处理机调度的基本概念处理机调度的引入处理机调度的层次高级调度低级调度中级调度2. 处理机调度的方式抢占式方式非抢占式3,选择调度算法的若干准则面向用户的准则COU利用率:利用率=忙碌时间/总时间系统吞吐量系统…

操作系统基础第二讲

操作系统基础第二讲 进程管理考点一:进程的基本概念 1. 进程的顺序执行概念前驱图2. 程序并发执行的特征间断性失去封闭性不可再现性考点二: 进程的特征与状态 1. 特征的定义2. 进程的三种基本状态就绪态 已经分配好除CPU以外所有必要资源,可以进入处理机,排队等待执行态 正…

操作系统基础第一讲

操作系统基础第一讲考点一:操作系统的概念 1. 操作系统的定义2. 操作系统的作用2. 操作系统的特征并发性多线程,不能同时运行, 在同一时间间隔内交替发生,我走一段你走一段,谁先结束未知共享性虚拟性异步性考点二:操作系统的发展历程 1. 无操作系统的计算机系统人工操作方…

[43] (CSP 集训) CSP-S 模拟 10

B.清扫 考虑从叶子节点往上推 首先可以发现的几个性质子树内需要消除的数,要么通过子树根节点 “发送” 到上面(只经过子树内一个叶节点),要么通过自己的叶节点解决 对于子树内既不是根也不是叶节点的节点,节点上的值只能由这一支路的叶节点消除,所以如果他节点上的值和下…

DevNow: Search with Lunrjs

前言 假期真快,转眼国庆假期已经到了最后一天。这次国庆没有出去玩,在北京看了看房子,原先的房子快要到期了,找了个更加通透一点的房子,采光也很好。 闲暇时间准备优化下 DevNow 的搜索组件,经过上一版 搜索组件优化 - Command ⌘K 的优化,现在的搜索内容只能支持标题,…

Nuxt.js 应用中的 page:start 钩子详解

title: Nuxt.js 应用中的 page:start 钩子详解 date: 2024/10/8 updated: 2024/10/8 author: cmdragon excerpt: page:start 是一个关键的钩子,可以在页面加载时执行必要的逻辑,以提升用户体验。通过合理地使用这个钩子,可以创建流畅的页面导航体验,并提供用户反馈。 ca…

01-flask简单介绍

Flask是一个使用 Python 编写的轻量级 Web 应用框架,对比与Django框架呢,他的灵活度就很高了,可以自己一些设计代码框架。比较适合一些,分层比较少,逻辑不怎么复杂的web项目pip安装pip install flask -i https://pypi.tuna.tsinghua.edu.cn/simple 简单实例from flask im…

MySQL9的3个新特性

本文讲解MySQL9的3个新特性:支持将JSON输出保存到用户变量、支持准备语句以及支持面向AI的向量存储。 17.12 MySQL9新特性1——支持将JSON输出保存到用户变量 从MySQL 9版本开始支持将EXPLAIN FORMAT的JSON输出保存到用户变量,下面通过一个案例来理解该新特性。创建演示数据…

CSP-S 2024 第十次

AK 了就结束,USACO 赛制是吧( 神秘难度排序,D<C<A<B A 手模一下可以发现线性基里的数最多也只有两位,考虑模拟一个数插进线性基的过程。 对于 \(2^x\),其会依次异或上 \(2^x+2^{x},2^{x}+2^{x}\)……直到线性基里找不到最高位为 \(x\) 的数,或者某时刻异或上了一…

技术解读GaussDB (for MySQL)流控机制

本文详细分析了GaussDB (for MySQL) 在不同层级的流控机制,包括反馈式流控在存储层和计算层的策略和流程,以及计算节点的主动平滑流控的方案。本文分享自华为云社区《【华为云MySQL技术专栏】GaussDB (for MySQL)流控技术解读》,作者:GaussDB 数据库。本文主要介绍GaussDB …