操作系统论述题+第5、6、7、8、9章的知识小点总结(尤其是选择题)

2024-01-29 15:52

本文主要是介绍操作系统论述题+第5、6、7、8、9章的知识小点总结(尤其是选择题),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

  • 一、操作系统论述题
      • 怎么提高内存利用率?
      • 怎么提高CPU利用率?
      • 怎么提高操作系统并发度?
      • 这个答案也不知道是什么问题里面的
  • 二、操作系统5、6、7、8、9章选择题知识点
    • 第五章:存储器管理
    • 第六章:虚拟存储器
    • 第七章:IO
    • 第八章:文件
    • 第九章:磁盘存储器管理

一、操作系统论述题

image-20231228090112859

  1. 使用线程,减少切换开销
  2. 多道程序技术是指在内存中同时存放若干个作业,并使它们共享系统的资源且同时运行的技术。带来的好处有(1)提高CPU利用率(2)提高内存和I/O利用率。(3)增加系统吞吐量。
  3. 使用基于优先级的调度算法,根据进程的优先级和资源需求进行调度,保证高优先级进程优先获得CPU时间片,避免了低优先级进程的饥饿状况,提高了系统资源利用率。
  4. 使用预防性死锁避免机制,如银行家算法、超时机制等,预先分配资源,避免死锁的发生。
  5. 使用信号量技术,通过设置信号量来控制对共享资源的访问,保证了多个进程之间的互斥访问,避免数据冲突。
  6. 使用虚拟内存技术,将物理内存和硬盘空间结合起来,实现内存的动态管理和扩展,避免了内存碎片化,提高了系统的运行效率。
  7. 使用分页技术,将程序和数据分成固定大小的页,实现了程序和数据的离散存储,便于管理和访问,提高了系统资源利用率。
  8. 使用合理的页面置换算法:如最近最少使用(LRU)等,根据页面的使用情况进行页面置换,少用FIFO算法,减少缺页中断的发生。
  9. 使用缓冲区技术,将输入输出数据先存放在缓冲区中,再进行读写操作,减少了输入输出设备的访问次数,提高了系统资源利用率。
  10. 使用DMA(直接内存访问)技术:将数据传输的工作交给DMA控制器,减少CPU的参与,提高读写速度。
  11. 使用文件目录结构加快检索速度
  12. 使用高效的磁盘调度算法:如最短寻道时间优先(SSTF)、扫描算法(SCAN)、循环扫描算法(C-SCAN)等,根据磁头的位置和请求队列中的请求顺序进行调度,减少寻道时间,提高磁盘调度速度。
  13. 通过提前读、延迟写和优化物理块的分布,可以进一步提高磁盘I/O速度
  14. 文件系统中使用成组链接法,提高系统资源利用率

怎么提高内存利用率?

image-20231231111922994


怎么提高CPU利用率?

image-20231231112143123


怎么提高操作系统并发度?

image-20231231112120873

缓冲 提高CPU和IO的并发度


这个答案也不知道是什么问题里面的

image-20231228090417149

二、操作系统5、6、7、8、9章选择题知识点

第五章:存储器管理

4 对换技术提高内存利用率

7

8

9 是最佳适应算法 找最小的地址 不是首次适应算法!

10 我认为是一个比较难的题目 提个醒:对于最佳适应算法而言 首先得重新排序(不是指空闲块的位置更改 而是重新连接链表告诉第一个空闲块是谁) 第一个分区 代表的就是地址大小最小的空闲块 而不是看到第一个是地址上的第一个 这样明显是不对的 这个时候 80KB就是最小的了 所以500K 80KB才是正确答案

11 就是尹老师上课强调的那个分块数量的题目

13 什么是可重定位内存的分区分配目的? 动态重定位是为了移动已经分配好内存的作业地址 为了减少碎片

内碎片可以理解为占着茅坑不拉S,外碎片可以理解为茅坑虽然是空着的,但是太小了,有些大胖子进不去😂

14当一个进程不能完全使用分给它的固定内存区域时就产生了内部碎片,通常内部碎片难以完全避免; 2. 外部碎片是由于某些未分配的连续内存区域太小,以至于不能满足任意进程的内存分配请求,从而不能被进程利用的内存区域。

分页产生碎片 也是因为最后一页往往不会布满 就产生了内部碎片

5 / 13 存储保护(内存管理的保护措施):1.上限下限寄存器2.重定位寄存器(利用索引动态重定位方式)和界地址寄存器

19 多级页表的优点:减少页表所占的连续内存空间

22 spooling是为了缓和CPU/IO设备间速度不匹配而被引入的

23 分段地址计算方法:如果没超过的话,就是起始地址+段内地址 如果段长大 就会发生中断也叫做越界异常

24 往往最后一个分页装不满 产生内部碎片 但是分段就不会有内部碎片

25 分页的优点:解决产生外部碎片 分段的优点:可共享,便于保护,动态链接

29 / 31:段页式和俩级页表 都需要访问至少三次 才可以真正的取到一个数据

第六章:虚拟存储器

2 体现了虚拟存储器的三个特征

3 虚拟存储只能用于离散分配技术 不受内存和外存的限制

5 虚拟存储管理系统的前提是系统的 局部性

6 生成逻辑地址的步骤 叫做编译

7 虚拟地址转换成物理地址 是由硬件自动完成的

11 交换区的大小 和 进程优先级和抖动无关 抖动是因为进程的频繁的进入和出去 所以撤销部分进程可以降低抖动率

第七章:IO

image-20231228210324255

设备驱动程序:负责处理设备工作中的所有细节

spooling:1.解决CPU和IO速度不匹配2.将独占变为共享

缓冲:解决CPU与IO之间的速度不匹配 (不是内存)

第八章:文件

image-20231231101452579

image-20231231101504752

1 文件系统中按名存取是最重要的

2 文件名不可以包含/ \ ? : *

6 逻辑文件:流式文件(无结构)+记录型文件(有结构) 是用户可见的,从用户观点出发的文件

7 数据库中的逻辑文件常用的就是记录型文件

8 文件的逻辑结构分为:流式文件和记录型文件(定长记录文件+顺序文件+索引文件+索引顺序文件)

9 文件目录是文件系统中最重要最核心的 其中 按名存取又是文件目录最重要最核心的

13 多级目录结构下的文件可以相同也可以不同 可以重名 但是不代表不由系统管辖

第九章:磁盘存储器管理

image-20231231103526908

成组链接法

1 物理结构:连续(容易产生碎片+支持随机访问)+链式(直接存取效率最低)+索引(支持随机访问+可以文件扩展+直接存取效率最高)

16 空闲链表法:文件的空闲盘块组织

18 位示图 用于磁盘空间的管理

20 成组链接法需要使用到 空闲盘块号栈

这篇关于操作系统论述题+第5、6、7、8、9章的知识小点总结(尤其是选择题)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/657407

相关文章

java常见报错及解决方案总结

《java常见报错及解决方案总结》:本文主要介绍Java编程中常见错误类型及示例,包括语法错误、空指针异常、数组下标越界、类型转换异常、文件未找到异常、除以零异常、非法线程操作异常、方法未定义异常... 目录1. 语法错误 (Syntax Errors)示例 1:解决方案:2. 空指针异常 (NullPoi

Java反转字符串的五种方法总结

《Java反转字符串的五种方法总结》:本文主要介绍五种在Java中反转字符串的方法,包括使用StringBuilder的reverse()方法、字符数组、自定义StringBuilder方法、直接... 目录前言方法一:使用StringBuilder的reverse()方法方法二:使用字符数组方法三:使用自

国内环境搭建私有知识问答库踩坑记录(ollama+deepseek+ragflow)

《国内环境搭建私有知识问答库踩坑记录(ollama+deepseek+ragflow)》本文给大家利用deepseek模型搭建私有知识问答库的详细步骤和遇到的问题及解决办法,感兴趣的朋友一起看看吧... 目录1. 第1步大家在安装完ollama后,需要到系统环境变量中添加两个变量2. 第3步 “在cmd中

Python依赖库的几种离线安装方法总结

《Python依赖库的几种离线安装方法总结》:本文主要介绍如何在Python中使用pip工具进行依赖库的安装和管理,包括如何导出和导入依赖包列表、如何下载和安装单个或多个库包及其依赖,以及如何指定... 目录前言一、如何copy一个python环境二、如何下载一个包及其依赖并安装三、如何导出requirem

Rust格式化输出方式总结

《Rust格式化输出方式总结》Rust提供了强大的格式化输出功能,通过std::fmt模块和相关的宏来实现,主要的输出宏包括println!和format!,它们支持多种格式化占位符,如{}、{:?}... 目录Rust格式化输出方式基本的格式化输出格式化占位符Format 特性总结Rust格式化输出方式

Python中连接不同数据库的方法总结

《Python中连接不同数据库的方法总结》在数据驱动的现代应用开发中,Python凭借其丰富的库和强大的生态系统,成为连接各种数据库的理想编程语言,下面我们就来看看如何使用Python实现连接常用的几... 目录一、连接mysql数据库二、连接PostgreSQL数据库三、连接SQLite数据库四、连接Mo

Git提交代码详细流程及问题总结

《Git提交代码详细流程及问题总结》:本文主要介绍Git的三大分区,分别是工作区、暂存区和版本库,并详细描述了提交、推送、拉取代码和合并分支的流程,文中通过代码介绍的非常详解,需要的朋友可以参考下... 目录1.git 三大分区2.Git提交、推送、拉取代码、合并分支详细流程3.问题总结4.git push

Kubernetes常用命令大全近期总结

《Kubernetes常用命令大全近期总结》Kubernetes是用于大规模部署和管理这些容器的开源软件-在希腊语中,这个词还有“舵手”或“飞行员”的意思,使用Kubernetes(有时被称为“... 目录前言Kubernetes 的工作原理为什么要使用 Kubernetes?Kubernetes常用命令总

高效管理你的Linux系统: Debian操作系统常用命令指南

《高效管理你的Linux系统:Debian操作系统常用命令指南》在Debian操作系统中,了解和掌握常用命令对于提高工作效率和系统管理至关重要,本文将详细介绍Debian的常用命令,帮助读者更好地使... Debian是一个流行的linux发行版,它以其稳定性、强大的软件包管理和丰富的社区资源而闻名。在使用

龙蜥操作系统Anolis OS-23.x安装配置图解教程(保姆级)

《龙蜥操作系统AnolisOS-23.x安装配置图解教程(保姆级)》:本文主要介绍了安装和配置AnolisOS23.2系统,包括分区、软件选择、设置root密码、网络配置、主机名设置和禁用SELinux的步骤,详细内容请阅读本文,希望能对你有所帮助... ‌AnolisOS‌是由阿里云推出的开源操作系统,旨