磁盘基础知识-磁盘的构成

news/2024/11/13 4:03:43/

磁盘是计算机主要的存储设备,也是计算机的主要构成硬件,一切的数据都是存储在磁盘中,因此了解磁盘的结构是非常重要的。

磁盘主要构成要素有盘片、磁头、磁道、扇区、柱面,如下图。

1、盘片
硬盘首先会有多个盘片构成,类似很多个独立的光盘合并在一起,每个盘片都有2个面,每个盘片都有一个对应的磁头,一般硬盘会有5个盘片构成,盘片盘便面自下往上顺序进行编号,如5个盘片那么编号自下而上就是10个盘面的编号。

2、扇区和磁道
每个盘片会分成若干个相同同心圆的磁道,磁道从外围开始编号,从0开始,每个磁道又会划分成若干个扇区,扇区是硬盘的最小存储单元,一般是存储512字节(byte)

3、磁头和柱面

磁头用于读取盘面中磁道内的扇区中存储的数据。一个盘片有上下2个盘面对应2个磁头。

柱面是所有盘面中相同磁道的柱面,形成的是一个立体的柱体形状,磁盘的柱面数和磁道数是相等的,盘面数等于总的磁头数。

 

3、磁盘容量计算

存储容量=磁头数*磁道(柱面)数*每道扇区数*每扇区的字节数 
比如上图共有3个盘片6个盘面(6个磁头)、7个磁道、12个扇区、每个扇区512字节
存储容量:6*7*12*512=258148字节

4、磁盘读取响应时间

1)寻道时间:磁头从开始移动到数据所在的磁道需要的时间,寻道时间越短,I/O操作越快,目前磁盘的平均寻道时间一般在3-15ms,一般都在10ms左右。
2)旋转延迟:盘片旋转将请求数据所在扇区移至读写磁头下方所需要的时间,旋转延迟取决于磁盘转速,普通硬盘一般是7200rpm,慢的5400rpm
3) 数据传输时间:完成传输请求的数据所需要的时间。
个人理解寻道时间和旋转应该是并发进行的,比如寻找到了目标磁道,同时盘片旋转也旋转到了该磁道的扇区

5、磁盘块

块是操作系统中最小的逻辑存储单位,操作系统与磁盘打交道最小单位是磁盘块,多个物理上存在的扇区组成了系统中所谓的逻辑块。
块的形成:由于扇区的数量比较小,数目多在寻址时比较困难,所以操作系统将相邻的扇区组合在一起形成块,在对块进行整体的读写操作。

6、page

操作系统经常与内存和硬盘这两种存储设备进行通信,类似于“块”的概念,都需要一种虚拟的基本单位。所以,与内存操作,是虚拟一个页的概念来作为最小单位。与硬盘打交道,就是以块为最小单位。

总结

  1. 扇区: 硬盘的最小读写单元
  2. 块/簇: 是操作系统针对硬盘读写的最小单元
  3. page: 是内存与操作系统之间操作的最小单元。

7、操作系统文件索引结构

块是操作系统对硬盘读写的最小单元实际上是一种逻辑上的存储块,最终会对应到实际的物理扇区。

操作系统实际上通过建立文件的索引结构来进去文件的存取,文件的索引结构一般如下

 磁盘块通过索引结构与物理扇区进行对应,分为直接索引、一级间接索引、二级间接索引、三级间接索引。

实际就是索引编号对应的内容存储的是什么的类型的问题,比如ArrayList A数据结构,A[0]存储Arraylist B,B[0]也可能存储的是Arayylist C,也就产生直接索引、一级间接索引、二级间接索引、三级间接索引等等

附上几个题目来做个练习巩固一下:

某文件系统采用多级索引结构,若磁盘块的大小为 512 字节,每个块号需占 3 字节,那么根索引采用一级索引时的文件最大长度为  (1)  K 字节;采用二级索引时的文件最大长度为  (2)  K 字节。

(1)A、85
   B、170
   C、512
   D、1024
(2)A、512
   B、1024
   C、14450
   D、28900

(1)512/3=170 ,一个磁盘块可以使用170个块。因此,170*512/1024=85,选A。

(2)二级索引=一级索引*一级索引*大小=170*170*512/1024=85*170=14450,选C。

例:某文件系统采用多级索引结构。若磁盘块的大小为1K字节,每个块号占3字节,那么采用二级索引时的文件最大长度为(26)K字节。

  A.1024   B.2048   C.116281   D.232562

(1024/3)*(1024/3)*1024/1024 选C。

补充解析:就是对块存储数据进行拆分,块要么直接存储数据,要么存储的数据内容是一个索引表,索引表中每个编号都会占用空间,我自己比较容易模糊的就是,块中存储的是索引数据,还是直接的数据,直接块中存储的是具体的数据就是直接存储,块第一次存储是是索引数据就是一级所以,一级索引指向的块存储如何还是索引那就是二级索引,依次类推。


http://www.ppmy.cn/news/629734.html

相关文章

普通相机标定——OpenCV函数讲解(上)

计算流程 我们使用OpenCV进行标定算法的开发,这里使用的是OpenCV3.4.6版本。使用OpenCV标定相机的算法流程如下。 Step1.检测之前采集的多张图像中的棋盘格角点像素坐标 Step2.利用棋盘格角点的像素坐标、世界坐标,计算相机的内参、畸变系数 Step3.利用相机的内参…

数据结构---循环链表

数据结构—循环链表 循环单链表 typedef struct LNode {ElemType data;struct LNode* next; }LNode, *LinkList;循环单链表初始化 bool InitList(LinkList &L) {L (LNode*)malloc(sizeof(LNode));if (L NULL) return false;L->next L; //头结点next指向头结点retur…

PE工具清除Windows10笔记本开机密码忘记

1.准备一个2G以上的U盘,下载大白菜之类的制作U盘启动盘; 2.将制作好的U盘启动盘插入到忘记密码的电脑上,重启笔记本,按住F12,选择USBHDD移动到第一位,然后按F10保存退出即可,再重启电脑时U盘就会…

【硬件】显示器接显卡上开机不显示 BIOS 界面,直接进入 windows。显示器接主板上则显示BIOS界面。

【解决方法】 1)显示器接主板上, 2)修改BIOS设置:Advance > VGA Priority > offboard,如图, 3)显示器接回显卡,开机显示 BIOS 界面。

笔记本加装固态安装win10和Ubuntu双系统

安装固态 笔记本拆机加固态 http://www.jb51.net/softjc/469814.html 需要注意的地方是笔记本后改拆下来以后要先把电池的电源断开,装完固态后再把电源的白色插头复位。 固态初始化和分区 http://www.upantool.com/jiaocheng/ssd/2014/6263.html 安装完成后&am…

十三.linux开发之uboot移植(十三)——三星官方uboot移植过程详解

2018/08/12 21:39 有道云地址:http://note.youdao.com/noteshare?id9ab91347c6ce1b15ef0c3fa8e8a60605&sub612AF77E36994945B6638F4B884E286C 太大了,这里就不高亮各处关键点了,详细查看有道云笔记。 一.VMware NAT方式 Ubuntu 14.04…

树莓派4B安装配置LibreELEC并连接到三星电视

由于以前购买的安卓机顶盒无法播放H265的片源,本着尽量利用手头资源的原则,就想把手头的树莓派4B利用起来替代原先的安卓盒子的Kodi。经过多日的折腾,终于搞定了,虽然后来电视坏掉了,但是还是应该做个记录。 硬件准备…

这两款明星手机的指纹支付功能,为什么被支付宝微信紧急叫停

号称最先进最安全的屏下指纹识别技术翻车了。 一对英国夫妇给三星S10手机套上硅胶套后,发现任何人的指纹都能轻易解锁手机,甚至可以用指纹登录到银行APP。 随后,三星官方承认S10和Note 10两款手机以及Tab S6平板的指纹识别确实存在漏洞&…