操作系统期末总结

操作系统期末总结

    • 常见操作系统结构
    • 组织方式
    • 什么是原语,由什么构成,执行时有什么特点
    • 管程的相干概念(管程里的什么是不可见的,外部函数怎么调用完成的)
    • 死锁检测的实质是检测什么
    • 识别出与死锁有关的什么
    • 存储管理的主要任务是什么
    • 什么是紧缩技术(内存管理的)
    • 文件按照用途分类,能分几类,哪几类
    • 操作系统的主要功能有哪些
    • 进程由什么组成
    • 分时系统和实时系统的区别
    • 产生死锁的主要原因
    • spolling(假脱机)系统的相关概念
    • 虚拟存储器的主要特性
    • 为文件分配外存空间时,常用的分配方法

常见操作系统结构

简单结构、层次结构、微内核结构
1、传统操作系统结构:
(1)、无结构操作系统
(2)、模块化结构OS
(3)、分层式结构OS

单体式结构(Monolithic Structure这种结构将操作系统的所有功能模块都集中在一个单一的内核中。所有的系统调用和功能都由内核提供,这种结构简单直接,但缺乏模块化和可扩展性。

分层式结构(Layered Structure这种结构将操作系统划分为多个层次,每个层次都提供不同的功能。每个层次只能访问比自己更低层次的功能,这种结构具有良好的模块化和可维护性,但性能较差。

微内核结构(Microkernel Structure这种结构将操作系统的核心功能放在一个精简的微内核中,而将其他功能以服务的形式运行在用户空间。微内核只提供最基本的功能,如进程管理和内存管理,其他功能通过服务进行通信。这种结构具有良好的可扩展性和可维护性,但性能较差。

客户-服务器结构(Client-Server Structure这种结构将操作系统划分为多个独立的模块,每个模块都提供特定的功能,并通过消息传递进行通信。每个模块可以作为客户端或服务器,客户端向服务器发送请求并接收响应。这种结构具有良好的模块化和可扩展性,但增加了通信开销。

虚拟机结构(Virtual Machine Structure这种结构通过在硬件和操作系统之间引入虚拟机层,将物理资源虚拟化为多个逻辑资源。每个虚拟机都运行一个独立的操作系统,可以在不同的虚拟机之间隔离运行不同的应用程序。这种结构具有良好的隔离性和安全性,但增加了虚拟化开销。

组织方式

什么是原语,由什么构成,执行时有什么特点

原语:由若干条指令组成的,用于完成一定功能的一个过程。
构成:由若干条指令组成的。
特点:执行过程中不允许被中断。

管程的相干概念(管程里的什么是不可见的,外部函数怎么调用完成的)

管程中的共享变量在管程外部是不可见的,外部只能通过调用管程中所说明的外部过程(函数)来间接的访问管程中的共享变量

死锁检测的实质是检测什么

死锁检测的实质:是通过检测是否存在 循环等待 条件,以此来确定死锁的存在与否,并识别出与死锁有关的进程和资源。

检测死锁的实质是确定是否存在“循环等待”条件

识别出与死锁有关的什么

并识别出与死锁有关的进程和资源

存储管理的主要任务是什么

主存存储分配、地址变换、存储保护和存储扩充
地址转换 逻辑地址 物理地址 内存的分配和回收

什么是紧缩技术(内存管理的)

在内存中移动程序,将所有小的空闲区合并为较大的空闲区
紧缩时要考虑的问题:
系统开销、移动时机

文件按照用途分类,能分几类,哪几类

3类(系统文件、用户文件、库文件)

操作系统的主要功能有哪些

  1. 处理机管理功能
  2. 存储器管理功能
  3. 设备管理功能
  4. 文件管理功能
  5. 操作系统与用户之间的接口
  6. 现代操作系统的新功能

进程由什么组成

程序段、相关的数据段、PCB

分时系统和实时系统的区别

分时系统: 使一台计算机同时为几个、几十个甚至几百个用户服务的一种操作系统。把计算机与许多终端用户连接起来,分时操作系统将系统处理机时间与内存空间按一定的时间间隔,轮流地切换给各终端用户的程序使用(时间片的概念)。由于时间间隔很短,每个用户的感觉就像他独占计算机一样。
特点: 交互性:用户与系统进行人机对话。 多路性:多用户同时在各自终端上使用同一CPU。 独立性:用户可彼此独立操作,互不干扰,互不混淆。 及时性:用户在短时间内可得到系统的及时回答。
实时系统: 实时操作系统(RTOS)是指当外界事件或数据产生时,能够接受并以足够快的速度予以处理,其处理的结果又能在规定的时间之内来控制生产过程或对处理系统作出快速响应,并控制所有实时任务协调一致运行的操作系统。其特点是及时响应和高可靠性。实时系统又分为硬实时系统和软实时系统,硬实时系统要求在规定的时间内必须完成操作,这是在操作系统设计时保证的;软实时则只要按照任务的优先级,尽可能快地完成操作即可。
特点: 多任务:由于真实世界的事件的异步性,能够运行许多并发进程或任务是很重要的。多任务提供了一个较好的对真实世界的匹配,因为它允许对应于许多外部事件的多线程执行。系统内核分配CPU给这些任务来获得并发性。
抢占调度:真实世界的事件具有继承的优先级,在分配CPU的时候要注意到这些优先级。基于优先级的抢占调度,任务都被指定了优先级,在能够执行的任务(没有被挂起或正在等待资源)中,优先级最高的任务被分配CPU资源。换句话说,当一个高优先级的任务变为可执行态,它会立即抢占当前正在运行的较低优先级的任务。
任务间的通讯与同步:在一个实时系统中,可能有许多任务作为一个应用的一部分执行。系统必须提供这些任务间的快速且功能强大的通信机制。内核也要提供为了有效地共享不可抢占的资源或临界区所需的同步机制。任务与中断之间的通信:尽管真实世界的事件通常作为中断方式到来,但为了提供有效的排队、优先化和减少中断延时,我们通常希望在任务级处理相应的工作。所以需要在任务级和中断级之间存在通信。
总结:
1、系统的设计目标不同。
分时系统是设计成一个多用户的通用系统,交互能力强;而实时系统大都是专用系统。
2、交互性的强弱不同
分时系统是多用户的通用系统,交互性强;而实时系统是专用系统,仅允许操作并访问的有限的专用程序,不能随便修改,且交互能力差。
3、响应时间的敏感程度不同。
分时系统是以用户能接收的等待时间为系统的设计依据,而实时系统是以被测物体所能接受的延迟为系统设计依据。实时系统对响应时间的敏感程度更强。==

实时系统分时系统特征的比较
多路性、独立性、及时性、交互性、可靠性

产生死锁的主要原因

多个进程对资源的争夺

  1. 竞争不可抢占性资源
  2. 竞争可消耗资源
  3. 进程推荐顺序不当

spolling(假脱机)系统的相关概念

Spolling系统是由输入程序模块、输出程序模块、作业调度程序组成

提高了处理器的利用率

是用于将 IO 设备进行虚拟化的技术,主要解决的是速度不匹配的问题。
作业执行时,从磁盘上的输入井中读取数据,并把作业的执行结果暂时存放在磁盘上的输出井中。

SPOOLing提高了设备利用率,缩短了用户程序执行时间,但不提高处理器利用率。

spolling组成:
1、输入井和输出井
2、输入缓冲区和输出缓冲区
3、输入进程和输出进程
4、井管理程序

spolling特点:
1、提高了I/O的速度
2、将独占设备改造为共享设备
3、实现了虚拟设备功能

假脱机打印机系统:主要有以下3个部分
1、磁盘缓冲区
2、打印缓冲区
3、假脱机管理进程和假脱机打印进程

虚拟存储器的主要特性

  1. 多次性
  2. 对换性
  3. 虚拟性

为文件分配外存空间时,常用的分配方法

连续分配、链接分配、索引分配

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

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

相关文章

自动化测试知识总结

一、自动化测试概念 自动化测试是指一切把人为驱动的测试行为转换成机器程序去驱动测试的过程,小到可以通过脚本生成一些测试数据,大到根据测试用例生成测试脚本并驱动测试行为。 二、自动化测试优势 自动化测试在提升软件测试团队效率方面有很多优势…

【六大排序详解】终篇 :冒泡排序 与 快速排序

终篇 :冒泡排序 与 快速排序 1 冒泡排序1.1 冒泡排序原理1.2 排序步骤1.3 代码实现 2 快速排序2.1 快速排序原理2.1.1 Hoare版本代码实现 2.1.2 hole版本代码实现 2.1.3 前后指针法代码实现 2.1.4 注意取中位数局部优化 2.1.5 非递归版本非递归原理代码实现 2.2 特性总结 谢谢阅…

室内效果图没有质感?外国大神这6个实用技巧,带你轻松掌握!

为了创作出高级有质感的效果图,我们需要注意构图、颜色、布光等多种因素,以打造出逼真的渲染效果。不过不要担心!今天小编带来了国外知名设计师Arch Viz Artist在油管上分享的6个实用小技巧。看完带你轻松提升室内效果图的表现力!…

Vue2面试题:说一下$set的作用和原理?

作用: 对象: 响应式原理:通过触发setter实现更新 对象中后追加的属性、删除已有属性,Vue默认不做响应式处理 解决:this.$set() 数组: 响应式原理:调用重写的原生方法实现更新 数组中修改某下标的…

WPS/PPT插件-大珩助手免费功能更新-特殊字符

扩展特殊格式下特殊字符,增加200多个常用特殊字符,可直接点击插入。 PPT大珩助手 1.7.6 1、提供素材库功能,可实现一键保存素材,支持对选中的形状,支持一键替换素材,保留原素材的尺寸和位置,…

Redis使用场景(五)

Redis实战精讲-13小时彻底学会Redis 1.计数器 可以对 String 进行自增自减运算,从而实现计数器功能。 Redis 这种内存型数据库的读写性能非常高,很适合存储频繁读写的计数量。 2.缓存 将热点数据放到内存中,设置内存的最大使用量以及淘汰策略…

c++学习笔记-提高篇-STL-常用六大算法(遍历、查找、排序、拷贝和替换、算术生成、集合算法)

目录 概述 一、常用遍历算法 (1)for_each (2)transform 二、常用查找算法 (1)find (2)find_if (3)adjacent_find (4)binary…

RTT打印时间戳

官方的RTT VIEWER没有打印接收时间戳的功能,经过查找后发现可以有以下三种打印时间戳的方法。 第三方的RTT上位机ExtraPutty自己打印 第三方的RTT上位机 码云上有一个RTT_T2的仓库,基于python qt包写的画面,通过pylink来jlink通信。 优点…

Journal of King Saud University - Computer and Information Sciences投稿经验

期刊标签: 中科院二区 JCR Q1 影响因子:6.9 双盲审 个人认为还是很不错的期刊 开源期刊1350美元版面费 投稿经验 一共三个审稿人,一个建议小修后录取(list文章的贡献,添加一篇文章的引用), 另…

conda创建、查看、删除虚拟环境

在现代的Python开发中,使用虚拟环境已经成为了一种标准的做法。它可以帮助我们隔离不同的项目,使得每个项目都有自己独立的Python环境和依赖,从而避免各种依赖冲突。Conda是一个流行的包管理器和环境管理器,它可以帮助我们轻松地创…

Java八股文面试全套真题【含答案】-SQL优化篇

以下是关于Java八股文面试全套真题-SQL优化篇 你SQL优化这块有哪些技巧和方法,谈一谈? 以下是一些常用的SQL优化技巧: 使用索引:索引是提高SQL查询性能的最常见和有效的方法之一。通过创建适当的索引,可以加快查询的…

Nginx 负载均衡集群 节点健康检查

前言 正常情况下,nginx 做反向代理负载均衡的话,如果后端节点服务器宕掉的话,nginx 默认是不能把这台服务器踢出 upstream 负载集群的,所以还会有请求转发到后端的这台服务器上面,这样势必造成网站访问故障 注&#x…

Linux GDB 调试

文章目录 一、Qemu二、Gdbvscode 调试 三、RootFs 一、Qemu qemu 虚拟机 Linux内核学习 Linux 内核调试 一:概述 Linux 内核调试 二:ubuntu20.04安装qemu Linux 内核调试 三:《QEMU ARM guest support》翻译 Linux 内核调试 四:…

基于SSM框架和Layui框架的管理系统

计算机毕业设计:打造安全、高效的信息管理系统在这个数字化时代,信息安全和高效管理是至关重要的。为了帮助学校或机构更好地管理和保护信息,我们为您设计了一套功能强大的信息管理系统。该系统利用先进的技术,结合MD5加密&#x…

使用Go语言的HTTP客户端进行并发请求

Go语言是一种高性能、简洁的编程语言,它非常适合用于构建并发密集型的网络应用。在Go中,标准库提供了强大的HTTP客户端和服务器功能,使得并发HTTP请求变得简单而高效。 首先,让我们了解为什么需要并发HTTP请求。在许多应用场景中…

【Nacos专题】Nacos如何建立与应用服务之间的通信渠道?

作为Spring Cloud Alibaba微服务架构实战派上下册和RocketMQ消息中间件实战派上下册的作者胡弦。 Nacos是一款面向云原生服务的注册中心和配置中心技术解决方案,既然要与服务打交道,那么通信渠道是必不可少的组件,那么Nacos是如何建立与应用…

【后端已完成,前端更新ing】uniapp+springboot实现个人备忘录系统【前后端分离】

目录 (1)项目可行性分析 (一)技术可行性: (二)经济可行性: (三)社会可行性: (2)需求描述 功能模块图 用例图&#…

Xcode15在iOS12系统上崩溃的原因

1.1.崩溃在_dyld_start,如图: 崩溃截图 解决办法:在other link flags添加-ld64 注意:该办法只能解决运行真机,archive出来的包依然报错闪退...... 1.2 SwiftUI导致iOS12及以下系统闪退问题 SwiftUI是iOS13开始使用&…

(NeRF学习)NeRF复现 win11

目录 一、获取源码二、环境三、准备数据集1.下载数据集方法一:官方命令方法二:官网下载数据集 2.修改配置 四、开始训练1.更改迭代次数2.开始训练方法一:方法二: 3.使用预训练模型 五、NeRF源码学习 一、获取源码 git clone http…

Blazor 问题记录

1&#xff09;使用Ant 样式。结果弹窗提示怎么都出不来。 只要在App.razor 加最后一句即可 <Router AppAssembly"typeof(App).Assembly"><Found Context"routeData"><RouteView RouteData"routeData" DefaultLayout"typeof…