预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共40页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

磁盘管理.磁盘I/O一般以磁盘存取速度来衡量磁盘I/O性能。对磁盘的存取操作包括三个步骤:首先磁头径向运动到指定磁道,然后旋转盘片,将指定要访问的扇区旋转到磁头下,使磁头处于扇区开始位置,然后开始读或写数据。因此磁盘访问时间可以分为以下三部分。 (1)寻道时间Ts 这是把磁头移到指定磁道上用的时间。 (2)旋转延迟Tr 这是指定扇区旋转到磁头下经历的时间。(3)传输时间Tt 这是指把数据从磁盘读出或向磁盘写入数据所经历的时间。由读写的字节数和磁盘旋转速度决定。 其中,b为一次读写的字节数,r为磁盘每秒的转数,N为每条磁道的字节数。 对磁盘的访问时间为三部分时间之和:T=Ts+Tr+Tt。在这三个时间中,寻道时间和旋转延迟与读写的字节数无关,寻道时间所占比例最大。.磁盘存储格式 磁盘可包含一个或多个圆形盘片,每片有两面。每面首先划分为若干半径不同的同心磁道,然后将每个磁道等分为若干扇区。各磁道虽然周长不同,但存储容量相同,各扇区的存储容量也相同,一般每个扇区的容量为512字节,内层磁道的存储密度比外层磁道高。 磁盘存储空间分配以整数N个扇区为单位,称为簇,在不同的操作系统中,N可有不同的取值。这样一个文件在磁盘上占有整数个簇,一个簇只能分配给一个文件使用。 磁盘I/O以扇区为单位,一次传送一个扇区。.磁盘调度.磁盘调度考虑的问题:1.先来先服务算法 这种调度算法按进程请求访问磁盘的时间先后次序进行调度。此算法的优点是实现简单,且公平,每个进程的磁盘I/O请求都能依次得到处理,不会出现某一进程的请求长时间得不到满足的情况。缺点是未对寻道进行优化,平均寻道时间较长。2.最短寻道时间优先算法(SSTF),会使某进程发生“饥饿”现象。3.扫描算法(SCAN电梯算法)该算法的最大缺点: 会使某些进程出现等待时间长的情况。4.循环扫描算法5.N-Step-SCAN算法6.FSCAN算法.磁盘高速缓存当有一进程请求访问某盘块中的数据时,先去查看磁盘高速缓存,看其中是否有进程所需访问的盘块数据的拷贝。若有,则直接从磁盘高速缓存中提取数据,而不必访问磁盘;若没有,则先将所需盘块读到磁盘高速缓存,然后从中提取数据送往请求进程的数据存储区。 磁盘高速缓存两种形式: (1)开辟一个单独的存储空间,其大小固定 (2)开辟一个缓冲池,大小不固定 注意:对磁盘高速缓存的访问都由OS控制。.磁盘高速缓存回写问题 当磁盘高速缓存中的已修改的盘块数据每间隔一段时间需要写回磁盘,防止数据丢失。 UNIX采用后台回写进程,周期性内地运行该进程,通过该进程的执行,将磁盘高速缓存中的已修改的盘块数据写回磁盘中。 MS-DOS采用立即回写方式。称为write-throughcache。缺点:频繁访问磁盘。.提高磁盘I/O速度的方法(2)延迟写 延迟写是指在缓冲区A中的数据,本应立即写回磁盘,但考虑到该缓冲区中的数据在不久之后可能还会再被本进程或其它进程访问(共享资源),因而并不立即将该缓冲区A中的数据写入磁盘,而是将它挂在空闲缓冲区队列的末尾。(3)优化物理块分布 主要思想:将数据尽量分布在同一磁道或相近的磁道上,例如:对文件的分配采用“簇”为单位进行分配。(4)虚拟盘 又称为RAM盘,由内存空间模拟磁盘。常用于保存临时文件等。 该盘的设备驱动程序也可以接受所有标准的磁盘操作,但这些操作的执行,不是在磁盘上而是在内存中。这些对用户都是透明的。在该系统中,有多台磁盘驱动器,系统将每一盘块中的数据分为若干个子盘块数据,再把每一个子盘块的数据分别存储到各个不同磁盘中的相同位置上。 图:磁盘并行交叉存取方式 缺点:无冗余校验功能,数据易丢失。