【软件设计师—基础精讲笔记2】第二章 操作系统2

简介: 【软件设计师—基础精讲笔记2】第二章 操作系统1

四、设备管理

1、I/O软件

       /O设备管理软件一般分为4层:中断处理程序、设备驱动程序、设备无关软件、用户级软件。如图。

硬件:完成具体的 I/O 操作。

中断处理程序:I/O 完成后唤醒设备驱动程序

设备驱动程序:设置寄存器,检查设备状态

设备无关 I/O 层:设备名解析、阻塞进程、分配缓冲区

用户级 I/O 层:发出 I/O 调用。

2、相关技术

(1)程序查询方式(CPU 一直处于询问、等待的过程,占用 CPU 时间最长,CPU 利用率最低);

(2)中断方式(I/O 完成后向 CPU 发送中断请求信号,CPU 和 I/O 可以并行);

(3)直接主存存取DMA(CPU 只做初始化,不参与具体数据传输过程):指数据在主存与I/O设备间直接成块传送,不需要CPU干涉,只需要CPU做初始化,实际操作由DMA硬件直接执行完成。

(4)通道方式:引入通道的目的是数据传输独立于CPU。在设置通道后,CPU只需要向通道发出I/O命令,通道来执行命令,仅当通道在完成I/O指令后才向CPU发出中断信号。

3、磁盘调度

磁盘调度分为移臂调度和旋转调度,并且是先进行移臂调度,然后进行旋转调度。

(1)存取时间=寻道时间+等待时间

寻道时间是指磁头移动到磁道所需的时间;

等待时间为等待读写的扇区转到磁头下方所用的时间,有时还需要加上数据的传输时间。

(2)磁盘调度算法

【1】先来先服务 FCFS(谁先申请先服务谁);

【2】最短寻道时间优先 SSTF(申请时判断与磁头当前位置的距离,谁短先服务谁);

【3】扫描算法SCAN(电梯算法,双向扫描);

【4】循环扫描 CSCAN(单向扫描)

(移臂时只需要考虑柱面信息即可,扇区不需要考虑,同一柱面的多个扇区先后顺序随机)

(3)单缓冲区

在处理过程中,如果有关于缓冲区的使用,需要明白对于单缓冲区每次只能被一个进程使用,即向缓冲区传输数据的时候不能从缓冲区读取数据,反之亦然。

(4)优化存储

对于磁盘存储的优化是因为磁头始终保持转动状态,当读取数据在传输或处理时,磁头会移动到超前的位置,需要继续旋转才能回到逻辑下一磁盘块;优化存储就是调整磁盘块的位置,让逻辑下一磁盘块放到磁头将要开始读取该逻辑块的位置。

五、文件管理

1、绝对路径与相对路径(★★★)

(1)绝对路径从根目录开始写起,并且该文件的全名即为绝对路径+文件名。

(2)相对路径从当前位置下一级目录开始写起。

2、存储空间管理

【1】空闲区表

【2】位示图(★★)

       在外存上建立一张位示图,记录文件存储器的使用情况。每一bit位对应文件存储器上的一个物理块,取值0和1分别表示空闲和占用。

       位示图按字进行分组,根据不同的计算机,具体一个字多长,一个字占多少bit位也不同;

【3】空闲块链

【4】成组链接法

3、索引文件结构(★★)
(1)基本概念

【1】直接索引:索引结点(线索)---->地址指向----->物理块号,结点编号的直接指向物理块,物理块里存储的是文件本身(文件的逻辑页,文件的数据),在直接索引中索引编号是连续的,对应物理块中的逻辑页也是连续的;

【2】一级间接索引:索引结点(线索)---->一级间接索引表----->物理块号,结点编号不直接指向物理块,而是指向一级间接索引表,由一级间接索引表编号指向物理块;

【3】二级间接索引:索引结点(线索)---->一级间接索引表----->二级间接索引表----->物理块号,结点编号不直接指向物理块,而是指向两次间接索引表,经过两次间接索引表编号最后指向物理块;

【4】三级间接索引:索引结点(线索)---->一级间接索引表----->二级间接索引表----->三级间接索引表----->物理块号,结点编号不直接指向物理块,而是指向三次间接索引表,经过三次间接索引表编号最后指向物理块;

       一般的索引文件结构由 13 个结点组成,其中 0 - 9 个结点为直接的物理盘块(直接索引),第 10 个结点是一级间接索引,第 11 个结点是二级间接索引,第 12 个结点是三级间接索引

(2)索引扩展原理

【1】如果一个存储结构不使用索引,那么他的容量= 物理块数 * 单位大小。

       例如,如果每个物理块的单位大小为 4K,则总空间为 52K,如下图所示。

【2】如果引入了一级间接索引,索引指向了具体的物理块号,如下图所示。

       如果一个地址占用 4 个字节一个物理盘块有 4KB 容量,那么在第 10 个物理块中就可以存放 1024 (=4KB/4B)份地址,那么 10 号物理块就可以存储 1024 份容量,就是 1024 X 4KB = 4MB 的容量。

【3】如果引入了二级间接索引,索引指向了中间索引,中间索引在指向具体的物理块号,如下图所示。

       如果一个地址占用 4 个字节一个物理盘块有 4KB 容量,那么在第 11 个物理块中就可以存放 1024 份地址,每份子地址可以再存储 1024 份二级地址,那么 11 号物理块就可以存储 1024 * 1024 份容量,就是 1024 X 1024 X 4KB = 4GB 的容量。

(3)解题思路

【例题】现有一个文件系统采用索引结点管理模式,物理块大小为 1KB。 每个索引结点有 32KB 的存储空间,每个地址项占 4 字节,磁盘索引块和磁盘数据块大小均为 1KB。 其中 0 - 4 用直接地址索引,5 - 6 用一级间接地址索引,7 用二级间接地址索引,逻辑块号为 5 和 261 的物理块号在哪里?

【解题思路】逻辑块号从 0 开始编码,物理块号从 1 开始编码,所以逻辑块号 5 就代表第六块。每个地址项占 4 字节,磁盘索引块大小均为 1KB,所以一个物理块可以存放 256 份地址。 第 5 个逻辑块号的物理块号位置如下所示。

第 261 个逻辑块号的物理块号位置如下所示。

1、索引结点对应的索引方式一般题干会给出,没有给出的默认按照如图所示方式理解,下面的文件大小依图给出计算过程。

2、根据物理块大小(假设 1KB)和地址项长度(假设 4B),可以计算地址项个数=物理块大小/地址项长度,向下取整(1KB/4B =256,注意单位和进制转换)。

3、直接索引(即索引结点直接指向实际存储文件的物理块),能够表示的逻辑页号范围是 0~9,能够表示的文件大小时 10*1KB。

4、一级间接索引(即索引结点指向的物理块存放的是地址项,对应地址项个数256 个,可以指向 256 个实际存储文件的物理块),能够表示的逻辑页号范围是10~265,能够表示的文件大小是 256*1KB。

5、二级间接索引(即索引结点指向的物理块存放的是间接索引的地址项,共 256个,可以指向 256 个存放地址项的物理块,每个物理块指向实际存储文件的地址项有256 个,最终指向的物理块共有 256*256 个),能够表示的逻辑页号范围是266~ 65801,能够表示的文件大小是 65536KB。

六、总 结

       笔记总结不易,如果喜欢,请关注、点赞、收藏。

完整笔记下载地址:(后续完成后更新)

基础精讲课件地址:(请关注、点赞、收藏后,私信我)

基础精讲视频地址:(请私信我)

目录
相关文章
|
7月前
|
存储 安全 API
[笔记]深入解析Windows操作系统《四》管理机制(三)
[笔记]深入解析Windows操作系统《四》管理机制(三)
|
5天前
|
存储 算法 Unix
【软件设计师—基础精讲笔记2】第二章 操作系统1
【软件设计师—基础精讲笔记2】第二章 操作系统
69 1
|
5天前
|
存储 算法 调度
《计算机操作系统》重点知识笔记整理(二)
《计算机操作系统》重点知识笔记整理(二)
47 0
|
5天前
|
存储 资源调度 算法
《计算机操作系统》重点知识笔记整理(一)
《计算机操作系统》重点知识笔记整理(一)
53 0
|
7月前
|
安全 C++
系统分析师笔记-操作系统
系统分析师笔记-操作系统
|
7月前
|
存储 安全 API
[笔记]深入解析Windows操作系统《四》管理机制(二)
[笔记]深入解析Windows操作系统《四》管理机制(二)
|
7月前
|
存储 安全 数据库
[笔记]深入解析Windows操作系统《四》管理机制(一)
[笔记]深入解析Windows操作系统《四》管理机制
|
7月前
|
算法 API 调度
[笔记]深入解析Windows操作系统《三》系统机制(三)
[笔记]深入解析Windows操作系统《三》系统机制(三)
|
7月前
|
存储 安全 API
[笔记]深入解析Windows操作系统《三》系统机制(二)
[笔记]深入解析Windows操作系统《三》系统机制(二)
[笔记]深入解析Windows操作系统《三》系统机制(二)
|
7月前
|
存储 网络协议 开发工具
[笔记]深入解析Windows操作系统《一》概念和工具(二)
[笔记]深入解析Windows操作系统《一》概念和工具(二)