操作系统期末考试复习——简答题总结

news2025/1/21 9:22:59

最近考研在复习OS,顺便把大二期末考试的简答题整理了一下~ 


1、操作系统的定义

“操作系统(operating system,简称OS)是管理计算机硬件与软件资源的计算机程序

2、操作系统的基本类型及特征

批处理操作系统、分时操作系统、实时操作系统,都具有操作系统的四个基本特征:并发性、共享性、虚拟和异步性

3、操作系统的功能

功能:处理器管理、存储器管理、设备管理、文件管理、用户接口

4、进程的定义、特征

定义:进程是资源分配的基本单位,也是独立运行的基本单位,进程是程序的一次执行过程

特征:动态性(最基本的特征)、并发性、独立性、异步性

5、进程基本状态及其转换原因

基本状态:就绪、执行、阻塞、创建、结束

转换原因:

  • 就绪 → 执行(已获得除处理器以外的资源
  • 执行 → 阻塞(等待事件发生
  • 执行 → 就绪(时间片用完或有更高优先级的进程变为就绪状态)
  • 阻塞 → 就绪(进程因条件发生而被唤醒

6、进程互斥、同步

互斥:进程互斥指当一个进程访问某临界资源时,另一个想要访问该临界资源的进程必须等待。当前访问临界资源的进程访问结束,释放该资源后,另一个进程才可以去访问临界资源。

同步:同步亦称直接制约关系,它是指为完成某种任务而建立的两个或多个进程,这些进程因为需要在某些位置上协调它们的工作次序而产生的制约关系。进程间的直接制约关系就是源于它们之间的相互合作

7、用信号量和PV操作机制实现进程的同步和互斥

利用信号量和PV操作实现进程同步:

PV操作是典型的同步机制之一。用一个信号量与一个消息联系起来,当信号量的值为0时,表示期望的消息尚未产生;当信号量的值非0时,表示期望的消息已经存在。用PV操作实现进程同步时,调用P操作测试消息是否到达,调用V操作发送消息

8、线程的定义、引入线程的目的

定义:线程是进程内的一个执行单元、一个可调度实体、是程序(进程)中相对独立的一个控制流序列

目的:为了提高程序并发执行的程度,进一步提高系统吞吐量

9、静态优先级、动态优先级及确定的依据

静态优先级:在创建进程时确定,确定之后在整个进程运行期间不再改变;按进程类确定、按作业的资源要求确定、按用户类型和要求确定

动态优先级:在创建进程时所赋予的优先权,可以随进程的推进或随其等待时间的增加而改变;根据进程占有CPU时间的长短、进程等待CPU时间的长短确定

10、先来先服务、短者优先、高响应比优先、最高优先级优先、轮转调度算法

  • 先来先服务:FCFS 按照进程进入就绪队列的先后次序来分配处理器,非抢占式,有利于长作业
  • 短者优先:SJF 就是把处理器分配给最快完成的作业,平均周转时间最短,长作业会因长期得不到调度而产生 “ 饥饿 ” 现象,无法实现人机交互
  • 高响应比优先:综合了先来先服务和短作业优先的特点;响应比 = 作业响应时间 / 估计运行时间 = (作业等待时间 + 估计运行时间) / 估计运行时间
  • 最高优先级优先:把CPU 分配给就绪队列中优先数最高的进程
  • 时间片轮转调度算法:由系统响应时间、就绪队列中的进程数目、系统的处理能力决定

11、死锁定义、产生死锁的原因、必要条件

定义:两个或两个以上的进程由于竞争资源或者由于彼此通信而造成的一种阻塞的现象

原因:多个进程并发执行时,系统中的资源不足以同时满足所有进程的需要

必要条件:互斥条件、不剥夺条件、请求与保持条件、环路等待条件

12、预防死锁方法、避免死锁

预防:破坏四个必要条件之一或几个

避免:使系统始终处于安全状态、银行家算法

13、静态重定位、动态重定位

静态重定位:根据内存当前情况,将装入模块装入到内存的适当位置,在装入时对目标程序中指令和数据地址的修改过程,装入时一次完成,不再改变

动态重定位:允许程序运行时在内存中移动位置,依靠硬件地址变换机构

14、连续分配原理和特点

原理:创建文件时,分配一组连续的块

特点:简便、支持顺序存取和随机存取、所需的磁盘寻道次数和寻道时间最少

15、请求分页系统所必须的软件、硬件支持

页表机制,缺页中断机构和地址变换机构

16、页式、段式存储管理原理和特点

页式存储原理:页式管理把内存空间按页的大小划分成片或者页面(page frame),然后把页式虚拟地址与内存地址建立一一对应页表,并用相应的硬件地址变换机构,来解决离散地址变换问题

特点:不要求将作业同时全部装入到主存的连续区域

段式存储原理:段式管理(segmentation),是指把一个程序分成若干个段(segment)进行存储,每个段都是一个逻辑实体(logical entity)

特点:按照用户观点,即按程序段、数据段等有明确逻辑含义的“段”,分配内存空间

17、分页、分段存储管理的地址转换过程

分页式:在作业指令执行时,由指令的逻辑地址中的段号查该作业段表,获得作业该段的页表首址,再由指令逻辑地址中的页号查该页表,获得该页对应的内存块号,最后,将块号和指令中逻辑地址的单元号拼成绝对地址,该地址就是要访问的内存的绝对地址。这个绝对地址如果是在该段的存储区域内,则可访问;否则,产生一个地址越界中断。

分段式:在作业执行时,每执行一条指令,硬件的地址转换机构按逻辑地址中的段号查段表,得到该段在内存中的起始地址和长度,起始地址加上段内地址就是要访问的内存的绝对地址。这个绝对地址如果是在该段的存储区域内,则可访问;否则,产生一个地址越界中断。

18、虚拟存储器定义、理论基础

定义:在具有层次结构存储器的计算机系统中,自动实现部分装入和部分替换功能,能从逻辑上为用户提供一个比物理贮存容量大得多,可寻址的“ 主存储器 ”。

理论基础:程序执行时的局部性原理

19、设备独立性、逻辑设备、虚拟设备

设备独立性:设备独立性是指操作系统把所有外部设备统一当作成文件来看待,只要安装它们的 驱动程序 ,任何用户都可以象使用文件一样,操纵、使用这些设备,而不必知道它们的具体存在形式。

逻辑地址:逻辑地址是指在计算机体系结构中是指应用程序角度看到的内存单元(memory cell)、存储单元(storage element)、网络主机(network host)的地址。

虚拟设备:用来代替独占型设备的那部分外存空间称为虚拟设备。

20、引入缓冲的原因

改善CPU与I/O设备间速度不匹配的矛盾

21、磁盘的调度算法-先来先服务、电梯调度

先来先服务:进程请求访问磁盘的先后次序进行调度,公平、简单,且每个进程的请求都能依次地得到处理。

电梯调度:先按照一个方向扫描,扫描的过程中依次访问要求服务的序列。当扫描到最里层的一个服务序列时反向扫描。

22、OS中资源转换技术-时间换空间、空间换时间

时间换空间:时间换空间通常用于嵌入式设备,或者内存、硬盘空间不足的情况,通过使用牺牲CPU的方式,获得原本需要更多内存或者硬盘空间才能完成的工作。

空间换时间:空间换时间则是尝试使用更多的内存或者磁盘空间换取CPU资源或者网络资源等,通过增加系统的内存消耗,来加快程序的运行速度,典型应用是缓存。

23、文件的逻辑结构

文件的逻辑结构是用户可见结构。 逻辑文件从结构上分成二种形式:一种是无结构的流式文件,是指对文件内信息不再划分单位,它是依次的一串字符流构成的文件。 一种是有结构的记录式文件, 是用户把文件内的信息按逻辑上独立的含义划分信息单位,每个单位称为一个逻辑记录(简称记录)

24、文件的物理结构(顺序结构、链接结构(隐式、显式)、索引结构(单级、多级、增量式))

  • 顺序结构:文件中的所有记录按关键字顺序排列
  • 链式结构:在计算机中用一组任意的存储单元存储线性表的数据元素,文件存储在多个在空间上也许并不相连的簇中
  • 索引结构:索引结构指一个文件的信息存放在若干不连续的物理块中,系统为每个文件建立一个专用的数据结构——索引表,并将这些块的块号存放在索引表中,即能顺序存取,又能随机存取。

25、UNIX系统多级混合(增量式)索引结构

增量式混合索引结构在索引节点中用13 个地址项表示,其中有10个直接地址,1个一次间接地址,1个三次间接地址。

26、文件存储空间的管理方法-空闲表法、位示图、空闲块链法

空闲表法:文件存储设备上的一个连续空闲区可以看作一个空闲文件,仅适用于连续文件

位示图:为文件存储器建立一张位示图,需要进行二进制所在位置与盘块号之间的转换

空闲块链法:将文件存储设备上的所有空闲块链接在一起,形成一条空闲块链,设置一个头指针指向空闲块链的第一个物理块

27、文件控制块、目录管理的主要要求

文件控制块:为文件设置用于描述和控制文件的数据结构

目录管理:解决存储空间的有效利用, 解决快速搜索 文件命名冲突 文件共享

28、树形目录结构解决重名问题

在树型目录结构中,文件系统是通过文件的路径名来确定文件的位置的,起相同名字的文件只要在不同的目录中就不会造成混乱。

29、基于索引节点的共享实现及存在问题

基于索引接点共享文件查找共享文件速度比软链接快,但当有其他用户共享文件时,共享文件拥有者不能删除共享文件。

30、程序接口系统调用

应用程序接口:是一些预先定义的函数,目的是提供应用程序与开发人员基于某软件或硬件得以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节。

系统调用:是操作系统内核和用户态运行程序之间的接口,它把用户程序的请求传送至内核,调用相应的内核函数完成所需的处理,将处理结果返回给用户程序

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

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

相关文章

gdb 条件断点

条件断点,顾名思义就是有条件才会触发的断点,一般设置此类断点形如:b xxx if xxx,如: 要触发此断点则需要 is_created 0。打完断点我们也可以用 info b 查看一下当前已经设置的断点信息,如: 断…

02-Numpy基础-ndarray

NumPy(Numerical Python的简称)是Python数值计算最重要的基础包。 NumPy的部分功能如下: ndarray,一个具有矢量算术运算和复杂广播能力的快速且节省空间的多维数组。用于对整组数据进行快速运算的标准数学函数(无需编…

EMC三大法宝之一:屏蔽

结论:解决EMC的三大法宝为:屏蔽、接地和滤波。 Part 1 屏蔽的原理 首先,我们要了解屏蔽的概念。 屏蔽就是用金属对两个空间区域进行隔离, 用以控制一个空间区域的电场、 磁场和电磁波对另一个空间区域的影响,通常的…

【学习FreeRTOS】第17章——FreeRTOS任务通知

1.任务通知的简介 任务通知:用来通知任务的,任务控制块中的结构体成员变量 ulNotifiedValue就是这个通知值。 使用队列、信号量、事件标志组时都需另外创建一个结构体,通过中间的结构体进行间接通信! 使用任务通知时&#xff0c…

深入理解linux内核--程序的执行

可执行文件 在第一章中我们把进程定义为“执行上下文”。这就意味着进行特定的计算需要收集必要的信息,包括所访问的页,打开的文件,硬件寄存器的内容等等。 可执行文件是一个普通文件,它描述了如何初始化一个新的执行上下文&…

《Linux从练气到飞升》No.17 进程创建

🕺作者: 主页 我的专栏C语言从0到1探秘C数据结构从0到1探秘Linux菜鸟刷题集 😘欢迎关注:👍点赞🙌收藏✍️留言 🏇码字不易,你的👍点赞🙌收藏❤️关注对我真的…

EdifierW200btfree耳机说明书

Edifier W200bt free 耳机说明书。

【MySQL系列】Select语句单表查询详解(二)ORDERBY排序

💐 🌸 🌷 🍀 🌹 🌻 🌺 🍁 🍃 🍂 🌿 🍄🍝 🍛 🍤 📃个人主页 :阿然成长日记 …

static关键字(实例成员方法可以访问静态变量,但是静态成员方法不能直接访问非静态变量或者非静态方法)

1、静态static关键字概述 static是静态的意思,可以修饰成员变量和成员方法。static修饰成员变量表示该成员变量只在内存中只存储一份,可以被共享访问、修改。静态成员变量(有static修饰,属于类,内存中加载一次&#xf…

vue3中引入百度地图

话不多说直接开干 1.第一种方式 百度地图地址 打开 https://lbsyun.baidu.com/index.php?title%E9%A6%96%E9%A1%B5 然后点进去地图 然后再这个功能里面选择一个地图,然后跳转页面 然后一直下滑 滑到底部 点击这个 跳转到这个页面 然后点击进入demo这个 然后到这个…

什么是Flex布局?请列举一些Flex布局的常用属性。

聚沙成塔每天进步一点点 ⭐ 专栏简介⭐ Flex布局(Flexible Box Layout)⭐ Flex布局的常用属性⭐ 写在最后 ⭐ 专栏简介 前端入门之旅:探索Web开发的奇妙世界 记得点击上方或者右侧链接订阅本专栏哦 几何带你启航前端之旅 欢迎来到前端入门之…

Windows用户如何安装Cpolar

目录 概述 什么是cpolar? cpolar可以用在哪些场景? 1. 注册cpolar帐号 1.1 访问官网站点 2. 下载Windows版本cpolar客户端 2.1 下载并安装 2.2 安装完验证 3. token认证 3.1 将token值保存到默认的配置文件中 3.2 创建一个随机url隧道&#x…

Spring Boot(Vue3+ElementPlus+Axios+MyBatisPlus+Spring Boot 前后端分离)【二】

文章目录 Spring Boot(Vue3ElementPlusAxiosMyBatisPlusSpring Boot 前后端分离)【二】项目介绍项目功能/界面项目操作界面 技术栈 实现功能02-创建项目基础界面需求分析/图解思路分析代码实现 Spring Boot(Vue3ElementPlusAxiosMyBatisPlusSpring Boot 前后端分离)【二】 项目…

c语言函数指针和指针函数的区别,以及回调函数的使用。

函数指针是什么,函数指针本质也是指针,不过是指向函数的指针,存储的是函数的地址。 指针函数是什么,指针函数其实就是返回值是指针的函数,本质是函数。 函数指针是如何定义的呢,如下 void (*pfun)(int a,int b) 这…

Could not resolve all artifacts for configuration ‘:classpath‘.

不与世俗为伍。哪怕这是自己许给自己的诅咒。 —— 宫崎骏 《红猪》 出现的问题 Caused by: org.gradle.api.internal.artifacts.ivyservice.DefaultLenientConfiguration$ArtifactResolveException: Could not resolve all artifacts for configuration ‘:classpath’. 解…

Qt 自定义菜单、右键菜单

在接触Qt这段时间以来,经常遇到菜单项的问题(右键菜单、托盘菜单、按钮菜单等),QMenu用于菜单栏,上下文菜单,弹出菜单等,利用QMenuQAction就可以达到效果! 右键菜单实现:通过重写contextMenuEv…

Three.js + Theatre.js WebGL动画制作简明教程

在这个教程中,我们将介绍 Theatre.js 的基础知识并探索如何制作令人惊叹的动画序列。 我们将演示如何为 Three.js 立方体制作动画、集成引人注目的视觉效果、修改颜色、试验 HTML 元素以及以特定时间间隔将动画与声音播放同步。 推荐:用 NSDT编辑器 快速…

CSS选择器讲解!!!

CSS选择器 一. 常用的CSS基本选择器1.标签(元素)选择器2.类选择器3.id选择器4.类选择器和标签选择器的区别5.通配符选择器 二.复合选择器(2种)1.交集选择器2.并集(群组)选择器 三.属性选择器四.关系选择器1.后代选择器2.子代选择器3.相邻兄弟选择器4.通用兄弟选择器 五.伪元素选…

SpringMVC探秘: 实现MVC模式的Web应用

文章目录 1. SpringMVC概述1.1. 什么是SpringMVC?1.1.1. MVC与SpringMVC 1.2. SpringMVC项目的优势 2. SpringMVC项目的创建与使用2.1. 创建SpringMVC项目2.2. 设置路由2.3. 获取参数2.3.1. 获取一个参数2.3.2. 获取多个参数2.3.3. 获取日期参数2.3.4. 参数重命名Re…

C++之fileno用法实例(一百八十四)

简介: CSDN博客专家,专注Android/Linux系统,分享多mic语音方案、音视频、编解码等技术,与大家一起成长! 优质专栏:Audio工程师进阶系列【原创干货持续更新中……】🚀 人生格言: 人生…