zoukankan      html  css  js  c++  java
  • 操作系统复习笔记2

    1、第四章 存储器管理

    2、第五章 虚拟存储器

    3、第六章 输入输出系统

    4、第七章 文件管理

    参考:计算机操作系统(第四版)  -  汤小丹、梁红兵、哲凤屏、汤子瀛  - 西安电子科技大学出版社出版

    一、第四章 存储器管理

    1、计算机系统存储层次  P120 - P122

    计算机的存储层次如下:

    • 寄存器 =》 具有与处理机一样的速度 访问速度最快 价格最贵 容量小
    • 高速缓存 =》 备份内存中常用数据 减少处理机对内存的访问次数
    • 主存储器 =》 内存(主存)  用于保存进程运行中的程序和数据
    • 磁盘缓存 =》 暂时存放频繁使用的一部分磁盘数据或信息  减少磁盘访问次数
    • 固定磁盘
    • 可移动存储介质

    2、动态分区分配算法  P130 - P131

    基于顺序搜索的动态分区分配算法:

    • 首次适应算法(first fit): 每次分配第一个找到的合适的空闲分区
    • 循环首次适应算法(next fit): 每次从上一次找到的空闲分区的下个分区开始查找第一个合适的空闲分区
    • 最佳适应(best fit): 每次分配最合适的(既能满足要求又是最小的空闲分区)
    • 最坏适应(worst fit): 与最佳适应相反

    3、分页存储管理  P138 - P139

    分页存储管理:

    将用户程序的地址空间分为若干个固定大小的区域,称为页或页面,典型的页面大小为1KB,相应的也将内存空间分为若干个物理块或页框,另外注意页和块的大小相同

    分页存储管理的优缺点:

    • 优点: 利用率高、碎片小、分配及管理简单
    • 缺点: 增加系统开销、可能产生抖动

    页表:

    页表中记录了进程地址空间中的页在内存中对应的物理块号,页表的作用是实现从页号到物理块号的地址映射,通过查表找到每页在内存中的物理块号

    分页存储管理地址计算(计算题):

    • 页号 = INT[逻辑地址/页面大小] 页内地址 = 逻辑地址 % 页面大小
    • 逻辑地址 =》 物理地址: 根据页号查出对应的块号然后计算
    • 逻辑地址 = 页号 * 页面大小 + 偏移量p
    • 物理地址 = 块号 * 块大小 + 偏移量p

    4、分段存储管理  P145

    分段存储管理: 将用户程序的地址空间分为若干个大小不同的段,每段可定义一组相对完整的信息,在存储器分配时,以段为单位,这些段在内存中可以不相邻接

    分段存储管理的优缺点:

    • 优点: 多道程序共享内存、各段程序修改互补影响
    • 缺点: 内存利用率低、内存碎片浪费大

    5、分页和分段的区别  P148

    分页和分段的区别:

    • 两者的相同之处: 两者都采用离散分配方式且通过地址映射结构实现地址变化
    • 目的不同: 分页仅仅是系统管理需要(用户不可见) 分段是为了更好满足用户需要
    • 大小: 页的大小由系统决定 段的长度不固定(由用户编写的程序决定)
    • 分页的用户程序地址空间是一维的 分段的用户程序地址空间是二维的

    二、第五章 虚拟存储器

    1、虚拟存储器概述  P153 - P156

    虚拟存储器:是指具有请求调入功能和置换功能,能从逻辑上对内存容量加以扩充的一种存储器系统

    虚拟存储器基本特征:多次性、对换性、虚拟性

    虚拟存储器关键技术:分页请求系统和请求分段系统

    虚拟存储器工作原理:基于分页请求系统和请求分段系统 然后使用相应的页面置换算法进行操作

    2、请求分页存储管理方式  P157

    请求页表:

    在请求分页系统中的每个页表应该包含以下选项:

    • 页号
    • 物理块号
    • 状态位: 指示该页是否已经调入内存中,供程序访问时参考
    • 访问字段: 记录本页在一段时间内被访问的次数或记录本页最近已有多长时间未被访问
    • 修改位: 标识该页在调入内存后是否被修改过
    • 外存地址: 指出该页在外存上的地址(物理块号)

    3、页面置换算法(计算题)  P163 - P167

    常见的页面置换算法:

    • 最佳置换算法
    • 先进先出置换算法
    • 最近最久未被使用置换算法(LRU)
    • 最少使用置换算法

    缺页率计算: 缺页率 = 缺页次数/总的页面访问次数

    简单的Clock置换算法(最近未用Not Recently Used, NRU算法):

    给每一帧关联一个附加位,称为使用位。当某一页首次装入主存时,该帧的使用位设置为1;当该页随后再被访问到时,它的使用位也被置为1。

    对于页替换算法,用于替换的候选帧集合看做一个循环缓冲区,并且有一个指针与之相关联。当某一页被替换时,该指针被设置成指向缓冲区中的下一帧。

    当需要替换一页时,操作系统扫描缓冲区,以查找使用位被置为0的一帧。每当遇到一个使用位为1的帧时,操作系统就将该位重新置为0;

    如果在这个过程开始时,缓冲区中所有帧的使用位均为0,则选择遇到的第一个帧替换;如果所有帧的使用位均为1,则指针在缓冲区中完整地循环一周,

    把所有使用位都置为0,并且停留在最初的位置上,替换该帧中的页

    改进型Clock置换算法:
    在使用位的基础上再增加一个修改位,则得到改进型的CLOCK置换算法。这样,每一帧都处于以下四种情况之一(u为访问位,m为修改位):

    1. 最近未被访问,也未被修改(u=0, m=0)
    2. 最近被访问,但未被修改(u=1, m=0)
    3. 最近未被访问,但被修改(u=0, m=1)
    4. 最近被访问,被修改(u=1, m=1)

    算法执行如下操作步骤:

    1. 从指针的当前位置开始,扫描帧缓冲区。在这次扫描过程中,对使用位不做任何修改。选择遇到的第一个帧(u=0, m=0)用于替换。
    2. 如果第1)步失败,则重新扫描,查找(u=0, m=1)的帧。选择遇到的第一个这样的帧用于替换。在这个扫描过程中,对每个跳过的帧,把它的使用位设置成0。
    3. 如果第2)步失败,指针将回到它的最初位置,并且集合中所有帧的使用位均为0。重复第1步,并且如果有必要,重复第2步。这样将可以找到供替换的帧。

    三、第六章 输入输出系统

    1、IO系统基本介绍 P178

    IO系统管理的主要对象:IO设备和相应的设备控制器

    IO系统的基本功能:

    • 隐藏物理设备的细节
    • 与设备无关
    • 提高I/O设备的利用率、控制IO设备
    • 确保对设备的正确共享、错误处理

    IO设备的控制方式:

    • 采用轮询的可编程IO方式
    • 采用中断的可编程IO方式
    • 直接存储器访问方式(DMA)
    • IO通道方式

    IO设备和设备控制器之间的接口:数据信号线、控制信号线、状态信号线

    2、中断处理  P189 - P191

    什么是中断:

    CPU对IO设备发来的中断信号的一种响应,CPU暂停正在执行的程序,保留CPU环境之后自动转去执行该IO设备的中断处理程序,执行完毕后回到断点,继续执行原来的程序


    中断处理程序的过程(简答题):

    1. 测定是否有未响应的中断信号
    2. 保护被中断进程的CPU环境
    3. 转入相应的设备处理程序
    4. 中断处理
    5. 恢复CPU的现场并退出中断

    四、第七章 文件管理

    1、文件及文件系统  P221

    文件: 具有文件名的若干相关元素的集合

    文件系统: 操作系统用于明确存储设备或分区上的文件的方法和数据结构;即在存储设备上组织文件的方法

    文件系统的目的:

    文件系统是对文件存储器空间进行组织和分配,负责文件存储并对存入的文件进行保护和检索的系统。

    具体地说,它负责为用户建立文件,存入、读出、修改、转储文件,控制文件的存取,当用户不再使用时撤销文件等

    2、文件的分类  P223

    • 按用途划分: 系统文件、用户文件、库文件
    • 按数据形式: 源文件、目标文件、可执行文件(exe)
    • 按存取属性: 只执行文件、只读文件、读写文件
    • 按组织形式: 普通文件、目录文件、特殊文件
  • 相关阅读:
    Python数据挖掘—回归—一元非线性回归
    Python数据挖掘—回归—线性回归
    Python 线程 进程 协程
    Python 异常处理
    Python Socket
    python mysql
    Python 面向对象
    Python 正则表达式
    Python 算法
    python 迭代器 生成器 装饰器
  • 原文地址:https://www.cnblogs.com/wyb666/p/10196142.html
Copyright © 2011-2022 走看看