磁盘调度-01

磁盘调度,简单的讲就是让磁盘工作,并且符合我们的要求的工作!

很多初学者可能多磁盘调度和文件系统弄混,其实他们是两个完全不相同的概念。

磁盘调度可以说是一个磁盘的驱动系统,由磁盘厂商设计和开发。而文件系统属于操作系统的一部分,它比磁盘调度系统更高一级,他直接面向上层用户。

那就说说磁盘的调度过程吧,上图。

如图,我们知道,文件系统的存取是按簇的读取的,簇的大小一般和内存块的大小一样,或者整数倍。windows簇的概念等价于linux的块的概念。而磁盘的最小读写单位是扇区(当然不是位),显然我们可以推理得到簇(块)一定是扇区大小的整数倍。扇区大小一般是512字节,簇(块)大小一般是4096字节。

我们可以认为图中两块有色区域为两个扇区(因为画图的原因,不可能画出512个小块,所以用4个暂且表示一个扇区)。

我们知道,磁盘数据的读取靠的是磁头(上图中未画出),如下图

读取过程就是摇臂先摇到指定磁道上,当磁盘旋转到指定扇区时,磁头依次读取扇区中的位,并缓存到磁盘缓冲区中。显然,磁盘转的越快,磁头读取的速度就越快。、

写数据的过程类似,磁盘先将内存的数据缓存到自己的缓冲区中,然后依据上述过程,磁头将缓冲区的数据修改到指定扇区中。

初学者可能会好奇,系统怎么确定磁头摇到哪儿读写的?

其实跟内存寻址一样,磁盘也是靠寻址来确定扇区的。(文件系统就不必关系这些问题了,它提供了更高一层的抽象)

对于普通单片单磁头磁盘,一般有两个参数来确定寻址:磁道和扇区(注意,扇区是一块扇形区域,他上边的每一条道都是512字节)。跟内存寻址略微不同。

当然,现在磁盘技术已经飞速发展了,现代主流磁盘一般都是如下结构:

这样的磁盘一般有多个盘片,每个盘片都有正反两个磁头,磁头和盘片都被序号标记。这里用柱面代替磁道这个概念。

显然,现在要确定某个512字节扇区就需要  磁片号,磁头号(上或者下),柱面号,扇区号。注意顺序不可颠倒。

我们熟知的操作系统的主引导记录MBR就在 0磁片0磁头0柱面1扇区的512字节中。

对于扇面中的靠近圆心的扇区和边远的扇区,他们的存取速度其实是一样的,因为角速度一样。

磁盘调度-01,码迷,mamicode.com

时间: 2024-10-12 08:04:56

磁盘调度-01的相关文章

磁盘调度-02

上节讲了磁盘的一些基本知识. 这一节我们就开始磁盘的真正调度,调度之前需要先说一个知识点. 磁盘参数: 1. 磁盘容量 = 磁头数 * 柱面数 * 扇区数 * 512bytes,固定的 2. 转速:转速决定读写512字节的速度 3. 平均访问时间:是指磁头从起始位置到到达目标磁道位置,并且从目标磁道上找到要读写的数据扇区所需的时间. 平均访问时间=平均寻道时间+平均等待时间. 4. 传输速率:传输速率分内部传输速率和外部传输速率.内部传输速率由磁盘转速和平均访问时间决定.外部传输速率即系统总线与

操作系统原理之磁盘调度

首先介绍主要的的四种磁头调度算法 (一)先来先服务算法(FCFS) 1.算法思想:按访问请求到达的先后次序服务. 2.优点:简单,公平. 3.缺点:效率不高,相邻两次请求可能会造成最内到最外的柱面寻道,使磁头反复移动,增加了服务时间,对机械也不利. 4.例子: 假设磁盘访问序列:98,183,37,122,14,124,65,67.读写头起始位置:53.求:磁头服务序列和磁头移动总距离(道数). 由题意和先来先服务算法的思想,得到下图所示的磁头移动轨迹.由此: 磁头服务序列为:98,183,37

16.磁盘调度

磁盘访问时间主要由三部分组成: 寻道时间    旋转延迟 传输时间 磁盘调度算法  FCFS(先来先服务) SSTF(最短寻到时间优先) SCAN(扫描) C-SCAN(循环扫描) 这种方式容易产生饥饿状态

计算机组成与体系结构------磁盘调度

一.磁盘结构与参数 1.磁盘结构 1)磁道: 磁盘上的一组同心圆 磁盘上的数据都是存放在磁道上的 其宽度和磁头宽度相同 为减少磁道和磁道之间的干扰,之间要保持一定的间隔 2)道密度 沿磁盘半径的方向单位长度内磁道的数目简称为道密度,简称为TPI(每一英寸/道),实际计算中,也有以毫米为单位 . 称最外层为0道,由外向内递增    3)位密度 沿磁道方向单位长度内存储的二进制的信息的个数成为位密度(每毫米/位) 为了简化电路的设计.每个磁道存储的位数都是相同的,但是由于磁道半径的变化,所以磁盘的位

设备管理之磁盘调度算法

[百度百科] 磁盘调度在多道程序设计的计算机系统中,各个进程可能会不断提出不同的对磁盘进行读/写操作的请求.由于有时候这些进程的发送请求的速度比磁盘响应的还要快,因此我们有必要为每个磁盘设备建立一个等待队列,常用的磁盘调度算法有以下四种:[1] 先来先服务算法(FCFS), 最短寻道时间优先算法(SSTF), 扫描算法(SCAN), 循环扫描算法(CSCAN)

操作系统核心原理-6.外存管理(上)磁盘基础

计算机是处理数据的机器,而数据就需要有地方存放.在计算机中,可供数据存放的地方并不太多,除了内存之外,最主要的存储数据的媒介就是磁盘.对于大多数计算机领域的人来说,磁盘通常被看做是一种外部设备.可是,对于现代操作系统来说,磁盘是不可或缺的.虽然早期的操作系统可以基于磁带,但由于操作系统复杂性和性能的不断提升,用磁带作为操作系统的载体已经不合时宜,取而代之的是磁盘.由于操作系统需要存放在磁盘上,且操作系统内的文件系统也是基于磁盘,所以,从某种程度来说,磁盘是操作系统不可分割的一部分,理解磁盘将对理

硬盘与磁盘冗余阵列

这篇博客位于:http://xubenbenhit.github.io/HardDiskAndRAID.html 先来扯淡吧,圣诞节前几天一直在看一些论文,磁盘相关的,今天索性一次性写完,不然看了又忘记了. 1. 硬盘 硬盘的基础知识就不赘述了,什么磁头磁道扇区等等啦,看下图一目了然,不了然的话自己看书去.                         然后有一点需要明确一下,那就是磁盘保证对于扇区的更新操作都是原子的.每次写扇区要么全写进去了要么全没写进去.  下面写一些磁盘的调度算法吧.调

磁盘IO过高时的处理办法

针对系统中磁盘IO负载过高的指导性操作 主要命令:echo deadline > /sys/block/sda/queue/scheduler 注:以下的内容仅是提供参考,如果磁盘IO确实比较大的话,是数据库,可以进行读写分离或者分库操作,减小磁盘压力,文件的话,可以利用raid来减轻压力 一)I/O调度程序的总结: 1)当向设备写入数据块或是从设备读出数据块时,请求都被安置在一个队列中等待完成.2)每个块设备都有它自己的队列.3)I/O调度程序负责维护这些队列的顺序,以更有效地利用介质.I/O

磁盘知识

硬盘各种参数 rotational latency:旋转延迟 磁头旋转的时间延迟.转速越快,延迟越小. seek time:寻道时间   磁头的径(半径)向移动时间.磁头机械臂只会在一条线(半径)上来回移动,磁头的移动速度越快,seek time则越短.这个参数基本上是固定的,不同档次的硬盘这个值也不同,相同级别的硬盘这个值差不多.如目前的服务器硬盘的seek time大概在4ms左右,普通的pc硬盘大概 除了以上两种延时,还有一个是磁头定位后传输数据的延时,但是这个延时非常小,比上面两种延时低