网工 硬盘调度和地址换算

  1. 存储系统
  2. CPU基本概念
  3. 可靠性的计算
  4. 流水线

多级存储:一般cpu 寄存器、由高速缓存、内存、外存三级构成。

内存编址

内存编址:RAM 存取方式需对每个存储单元进行编址、通常使用字节编址、也就是一个内存单元存放字节的大小,例如地址从A4000H~CBFFFH 则表示(CBFFFH-A4000H)+1个字节,即28000H字节。如果芯片的容量是4K*4b,那么一共需要个芯片。

步骤1:将16进制数转换为十进制数

首先,将16进制数 28000H 转换为十进制数。根据16进制到十进制的转换规则:

  • 2 -> 2 × 16^4
  • 8 -> 8 × 16^3
  • 0 -> 0 × 16^2
  • 0 -> 0 × 16^1
  • 0 -> 0 × 16^0

因此,28000H 转换成十进制数为:

2×164+8×163+0×162+0×161+0×1602×164+8×163+0×162+0×161+0×160

=2×65536+8×4096+0+0+0=2×65536+8×4096+0+0+0

=131072+32768=131072+32768

=163840=163840

这意味着 28000H 表示的字节数为 163840 字节。

步骤2:将字节数转换为KB

1 KB (kilobyte) 等于 1024 字节。因此,要将字节数转换为KB,我们需要将字节数除以 1024。

163840÷1024=160163840÷1024=160

因此,28000H 表示的字节数转换为KB为 160 KB

总结

  • 28000H 表示的字节数为 163840 字节。
  • 163840 字节等于 160 KB。

160KB/(4K*4b)=160K*8b/(4K*4b)=80(片)

例子

地址编号从80000H 到BFFFFH且按字节地址的内存容量是(256)KB,若用16K*4bit 的存储芯片构成该内存,共需(32)片。

BFFFF-8000H+1 =40000H

40000H 转换成十进制为4*16的4次方等于256KB 、256KB/(16KB*4bit)=32

好的,让我们将16进制数 40000H 表示的字节数转换为千字节(KB)。

步骤1:将16进制数转换为十进制数

首先,将16进制数 40000H 转换为十进制数。根据16进制到十进制的转换规则:

  • 4 -> 4 × 16^4
  • 0 -> 0 × 16^3
  • 0 -> 0 × 16^2
  • 0 -> 0 × 16^1
  • 0 -> 0 × 16^0

因此,40000H 转换成十进制数为:

4×164+0×163+0×162+0×161+0×1604×164+0×163+0×162+0×161+0×160

=4×65536+0+0+0+0=4×65536+0+0+0+0

=262144=262144

这意味着 40000H 表示的字节数为 262144 字节。

步骤2:将字节数转换为KB

1 KB (kilobyte) 等于 1024 字节。因此,要将字节数转换为KB,我们需要将字节数除以 1024。

262144÷1024=256262144÷1024=256

因此,40000H 表示的字节数转换为KB为 256 KB

总结

  • 40000H 表示的字节数为 262144 字节。
  • 262144 字节等于 256 KB。

磁盘的调度算法

  • 1、先来先服务算法
  • 2、最短寻道时间优先
  • 3、扫描算法(电梯调度)
  • 4、循环扫描算法

假定磁盘有 200 个柱面,编号 0~199 , 如果在访问 143 号柱面的请求者服务后,当前正在访问125 号柱面的服务请求, 如果请求队列的先后顺序是: 86 , 147 , 91 , 177 , 94 , 150 , 102 , 175 , 130 ; 试问: 为完成上述请求, 下列算法存取臂移动的总量是多少?并算出存取臂移动的顺序。

先来先服务:的算法访问柱面的移动顺序为: 86 , 147 , 91 , 177 , 94 , 150 , 102 , 175 , 130

最短寻道优先算法:移动顺序为:130、147、150、175、177、102、94、91、86

扫描算法(电梯调度算法):这里要注意磁盘运行的方向从143-125可以理解为电梯向下、在向下的过程中最近的为102、94、91、86、130、147、150、175、177。

循环扫描算法:是对扫描算法的改进、143-125(自里向外结束后又从最里面向外)那么顺序为:130、147、150、175、177(这里最外层结束后又从最内开始)、86、91、94、102

在磁盘调度管理中,应先进行移臂调度,再进行旋转调度(也就是扇区由小到大访问)。假设磁盘移动臂位于21号柱面上,进程的请求序列如下表所示。如果采用最短移臂调度算法,那么系统的响应序列应为( )。

首先按照寻道最短优先进行访问柱面号的顺序号为:21-23-17-32-38 ,23柱面按扇区从小到在访问为(2、8、3)17柱面按扇区访问顺序为(5、7、1或者5、1、7);32柱面访问顺序为(4、6)38柱面为顺序为9 因此响应序列为2、8、3、5、7、1、4、6、9

磁盘工作原理

在磁盘上存储数据的排列方式会影响服务的总时间。假设每个磁道被划分成10个物理 块,每个物理块存放1个逻辑记录。逻辑记录R1,R2,…,R10存放在同一个磁道上,记录的排列顺序如下表所示

假定磁盘的旋转速度为10ms/周,磁头当前在R1的开始处。若系统顺序处理这些记录, 使用单缓冲区,每个记录处理时间为2ms,则处理这10个记录的最长时间为 (27) ;若对存储数据的排列顺序进行优化,处理10个记录的最少时间为 (28) 。(2021年下半年第27、28题)

1、R1:处理时间为:10ms/周 也就是一个10物理块每个使用了1ms 加个处理时间为2ms = 3ms 、处理完R1此时磁头位置R4、再处理R2需要经过8个物理块(R4->R2 4、5、6、7、8、9、10、1)每个需要1秒也就是要8秒;加上处理完R2需要时间3秒等于11秒。也就是除R1外其它物理块每个需要11(3+8)秒,合计需要3+11*9=102秒。

2、如果对数据排列进行优化,每个处理3秒、合计为3*10=30秒,也就是R4存放R2依此类推。

在磁盘上存储数据的排列顺序会影响 I/O 服务的总时间。假设每道划分成 10 个物理块,每块存放 1 个逻辑记录。逻辑记录 R1、R2、…、R10 存放在同一个磁盘上,记录的安排顺序如下表示:

假定磁盘的旋转速度为 30ms/周,磁头当前处在 R1 的开始处。若系统顺序处理这些记录,使用单缓冲区,每个记录处理时间为 6ms,则处理这 10 个记录的最长时间为(4);若对信息存储进行优化后,处理 10 个记录的最少时间为(5)。

举例:

假设某计算机的字长为32位,该计算机文件管理系统磁盘空间管理采用位示图,记录磁盘的使用情况,若磁盘的容量为300GB,物理块的大小为4MB,那么位示图的大小为(2)个字节。(2020年)

(2)A.2400 B.3200 C.6400 D.9600

答案:A

解析:字长为32位,表示1个字记录32位物理块

已知磁盘容量为300GB,物理块大小为4MB

则计算物理块数=300*1024/4=76800(个)

位示图大小=76800/32=2400

位视图是用来表示磁盘块使用状况的概念,一个字表示32个物理块的使用的使用状况、计算位视图的大小,需要将物理块的大小除以32,得到的结果即为位视图的大小。

步骤1:计算磁盘的物理块数量

首先,我们需要计算磁盘的物理块总数。磁盘的容量为300GB,物理块的大小为4MB。

  • 磁盘容量 = 300GB
  • 物理块大小 = 4MB

将磁盘容量转换为MB,以便与物理块大小单位一致:

300GB=300×1024MB=307200MB

磁盘的物理块总数为:

物理块总数=磁盘容量物理块大小=307200MB/4MB=76800

这意味着磁盘共有76800个物理块。

步骤2:计算位示图所需的位数

位示图中的每一个位代表一个物理块的状态(使用或未使用)。因此,位示图需要的位数等于磁盘的物理块总数。

位示图位数=物理块总数=76800位示图位数=物理块总数=76800

步骤3:计算位示图的字节数

字长为32位,表示1个字记录32位物理块 76800/32=2400

CPU 主频

cpu主频=外频*倍频

串联和并联系统可靠性

串联可靠性:R=r1*r2*r3(有个的部件工作异常,整个系统瘫痪)

并联可靠性:R=1-(1-r1)*(1-r2)*(1-r3)(有冗余的作用,例如有多个内存条,多个CPU)

进程管理的核心内容

总结:系统中有N个并发进程、若规定每个进程需要申请R个某类资源、则当系统提供K=n*(R-1)+1个同类资源时、无论采用何种方式申请使用,一定不会发生死锁

https://www.cnblogs.com/wkfvawl/p/11598647.html

内存-页面转换算法

进程P有8个页面,页号分别为0-7,页面大小为4K,假设系统给进程P分配了4个存储块P,进程P的页面变换表如下所示。表中状态位等于1和0分别表示页面在内存和不在内存。若进程P要访问的逻辑地址为十六进制5148H,则该地址经过变换后,其物理地址应为十六进制( );如果进程P要访问的页面6不在内存,那么应该淘汰页号为( )的页面。

磁盘寻道时间、存取时间、

盘存取时间由三个主要部分组成:寻道时间、旋转延迟时间和数据传输时间。如果磁盘的转速提高一倍,会对其中的旋转延迟时间和数据传输时间产生影响,但对寻道时间没有直接影响。下面我们详细分析这三部分:

1. 寻道时间(Seek Time)

定义:寻道时间是指磁头移动到目标磁道所需的时间。

影响寻道时间主要取决于磁头的机械运动速度,与磁盘的转速无关。因此,即使磁盘的转速提高一倍,寻道时间也不会发生变化。

2. 旋转延迟时间(Rotational Latency)

定义:旋转延迟时间是指磁盘旋转到目标扇区位于磁头下方所需的时间。

影响:旋转延迟时间与磁盘的转速直接相关。磁盘的转速提高一倍,意味着磁盘的旋转周期减半。因此,旋转延迟时间也会减半。

3. 数据传输时间(Transfer Time)

定义:数据传输时间是指从磁盘读取或写入数据所需的时间。

影响:数据传输时间与磁盘的转速和数据传输速率有关。转速提高一倍,意味着数据传输速率也会提高一倍,因此数据传输时间会减半。

总结

寻道时间:不变

旋转延迟时间:减半

数据传输时间:减半

因此,如果磁盘的转速提高一倍,总的磁盘存取时间将会显著减少,主要是因为旋转延迟时间和数据传输时间都减半了。寻道时间虽然没有变化,但整体存取时间的减少仍然会带来性能的提升。

机械磁盘性能指标

计算机中机械硬盘的性能指标包括磁盘转速及容量、平均寻道时间。

硬盘平均访问时间=平均寻道时间+平均等待时间。

1)平均寻道时间:硬盘磁头从一个磁道移动到另一个磁道所需要的平均时间。它描述硬盘读取数据的能力,单位为毫秒。

2)平均等待时间:数据所在的扇区转到磁头下方的平均时间。一般认定,平均等待时间=1/2×磁盘旋转一周的时间。

SSD性能指标,如IOPS、带宽、延迟、顺序读写和随机读写性能