操作系统论述题+第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

相关文章

Python版本与package版本兼容性检查方法总结

《Python版本与package版本兼容性检查方法总结》:本文主要介绍Python版本与package版本兼容性检查方法的相关资料,文中提供四种检查方法,分别是pip查询、conda管理、PyP... 目录引言为什么会出现兼容性问题方法一:用 pip 官方命令查询可用版本方法二:conda 管理包环境方法

pycharm跑python项目易出错的问题总结

《pycharm跑python项目易出错的问题总结》:本文主要介绍pycharm跑python项目易出错问题的相关资料,当你在PyCharm中运行Python程序时遇到报错,可以按照以下步骤进行排... 1. 一定不要在pycharm终端里面创建环境安装别人的项目子模块等,有可能出现的问题就是你不报错都安装

Linux中查看操作系统及其版本信息的多种方法

《Linux中查看操作系统及其版本信息的多种方法》在服务器运维或者部署系统中,经常需要确认服务器的系统版本、cpu信息等,在Linux系统中,有多种方法可以查看操作系统及其版本信息,以下是一些常用的方... 目录1. lsb_pythonrelease 命令2. /etc/os-release 文件3. h

Python中logging模块用法示例总结

《Python中logging模块用法示例总结》在Python中logging模块是一个强大的日志记录工具,它允许用户将程序运行期间产生的日志信息输出到控制台或者写入到文件中,:本文主要介绍Pyt... 目录前言一. 基本使用1. 五种日志等级2.  设置报告等级3. 自定义格式4. C语言风格的格式化方法

Spring 依赖注入与循环依赖总结

《Spring依赖注入与循环依赖总结》这篇文章给大家介绍Spring依赖注入与循环依赖总结篇,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录1. Spring 三级缓存解决循环依赖1. 创建UserService原始对象2. 将原始对象包装成工

MySQL中查询和展示LONGBLOB类型数据的技巧总结

《MySQL中查询和展示LONGBLOB类型数据的技巧总结》在MySQL中LONGBLOB是一种二进制大对象(BLOB)数据类型,用于存储大量的二进制数据,:本文主要介绍MySQL中查询和展示LO... 目录前言1. 查询 LONGBLOB 数据的大小2. 查询并展示 LONGBLOB 数据2.1 转换为十

Unity新手入门学习殿堂级知识详细讲解(图文)

《Unity新手入门学习殿堂级知识详细讲解(图文)》Unity是一款跨平台游戏引擎,支持2D/3D及VR/AR开发,核心功能模块包括图形、音频、物理等,通过可视化编辑器与脚本扩展实现开发,项目结构含A... 目录入门概述什么是 UnityUnity引擎基础认知编辑器核心操作Unity 编辑器项目模式分类工程

在Java中实现线程之间的数据共享的几种方式总结

《在Java中实现线程之间的数据共享的几种方式总结》在Java中实现线程间数据共享是并发编程的核心需求,但需要谨慎处理同步问题以避免竞态条件,本文通过代码示例给大家介绍了几种主要实现方式及其最佳实践,... 目录1. 共享变量与同步机制2. 轻量级通信机制3. 线程安全容器4. 线程局部变量(ThreadL

Spring Boot 与微服务入门实战详细总结

《SpringBoot与微服务入门实战详细总结》本文讲解SpringBoot框架的核心特性如快速构建、自动配置、零XML与微服务架构的定义、演进及优缺点,涵盖开发环境准备和HelloWorld实战... 目录一、Spring Boot 核心概述二、微服务架构详解1. 微服务的定义与演进2. 微服务的优缺点三

Java通过驱动包(jar包)连接MySQL数据库的步骤总结及验证方式

《Java通过驱动包(jar包)连接MySQL数据库的步骤总结及验证方式》本文详细介绍如何使用Java通过JDBC连接MySQL数据库,包括下载驱动、配置Eclipse环境、检测数据库连接等关键步骤,... 目录一、下载驱动包二、放jar包三、检测数据库连接JavaJava 如何使用 JDBC 连接 mys