磁盘的内部结构
磁头组件,磁盘的驱动结构,磁盘片(platter),主轴组件,前端控制电路
磁头(Head),磁头是磁盘中最为昂贵的部件,是磁盘技术中最为重要的一环,采用了给接触式结构,加电后悬浮在高速旋转的磁盘表面,分为读写合一磁头(Read/Write Head)和分离式磁头。
The read/write heads for all of the platters in the drive in a dirve are attached to one actuator arm assembly and move across the platter simultaneously. there are two read/write heads per platter,one for each surface.
磁道(Track),当磁盘旋转时,磁头若保持在一个位置上,则每个磁头都会在磁盘便面划出一个圆形轨迹,这些圆形轨迹就是磁道。
Data is recorded in track. A track is a concentric ring around the spindle which contains information.A trarck can hold a large amount of information. Track density decribes how tightly packed the track are on a platter.
扇区(Sector),磁盘上每个磁道被等分为若干弧段,这些弧段被称为磁盘的扇区。
Every sectors store user data along with its own location data: sector number, head number, or platter number and track number. 512 bytes per sector.
柱面(Cylinder),磁盘通常由重叠的一组盘片构成,每个盘面都被划分为数据相等的磁道,并且从外边缘的"0"开始编号,具有相同编号的磁道形成的一个圆柱,称之为磁盘的柱面。
A cylinder is the set of identical tracks on both surfaces of each of the drives's platters. Often the location of drives are referred to by cylinder number rather than by track number.
磁盘的主要参数
磁盘容量(Capacity),作为计算机系统的数据存储器,容量是磁盘最主要的参数,磁盘的容量以兆字节(MB)或千兆字节(GB)为单位。
磁盘转速(Rotationl Speed),转速是指磁盘盘片每分钟转动的圈数,单位为rpm(Revolutions Per Minute)。
平均寻道时间(Average Seek Time),指磁头移动到数据所在磁道需要的时间,这是衡量磁盘机械性能的重要指标 。
平均潜伏期 (Average Latency),指当磁头移动到数据所在的磁道以后,等待指定的数据扇区转动到磁头下方的时间。
平均访问时间(Average Access Time),指从读/写指令发出到第一笔数据读/写实际开始所用的平均时间。
数据传输率(Data Transfer Rate ),指磁盘读写数据的速度,单位为兆字节每秒(MB/s).
磁盘缓冲区,也称之为缓存(Cache)缓冲区的基本作用是平衡内部与外部的数据传输率,为了减少主机的等待时间,磁盘会将读取的资料先存入缓冲区,等全部读完或缓冲区填满后再以接口速率快速向主机发送。
磁盘接口
IDE(Integrated Drive Electronics),即“电子集成驱动器”,它的本意是指把“硬盘控制器”与“盘体”集成在一起的硬盘驱动器。把盘体与控制器集成在一起的做法减少了硬盘接口的电缆数目与长度,数据传输的可靠性得到了增强,硬盘制造起来变得更容易,因此硬盘生产厂商不需要再担心自己的硬盘是否与其它厂商生产的控制器兼容。对用户而言,硬盘安装起来也更为方便。IDE这一接口技术从诞生至今就一直在不断发展,性能也不断地提高,其拥有的价格低廉、兼容性强的特点,为其造就了其它类型硬盘无法替代的地位。
SCSI(Small Computer System Interface ),一种用于计算机和智能设备之间(硬盘、软驱、光驱、打印机、扫描仪等)系统级接口的独立处理器标准。
FC(Fibre Channel ),就是网状信道,光纤接口,最初是专门为网络系统设计的,随着存储系统对速度的需求,逐渐应用到硬盘系统中。通常用于连接一个SCSI RAID(或其它一些比较常用的RAID类型),以满足高端工作或服务器对高数据传输率的要求。
SATA(Serial Advanced Technology Attachment),ATAZ中文简称硬盘接口技术,SATA,是串行ATA,一种完全不同于并行ATA的新型硬盘接口类型,由于采用串行方式传输数据而得名。现在,SATA分别有SATA 1.5Gbit/s、SATA 3Gbit/s和SATA 6Gbit/s三种规格。
SAS(Serial Attached SCSI ),即串行连接SCSI,是新一代的SCSI技术,和现在流行的Serial ATA(SATA)硬盘相同,都是采用串行技术以获得更高的传输速度,并通过缩短连结线改善内部空间等。SAS是并行SCSI接口之后开发出的全新接口。此接口的设计是为了改善存储系统的效能、可用性和扩充性,并且提供与SATA硬盘的兼容性。
SAS的接口技术可以向下兼容SATA。具体来说,二者的兼容性主要体现在物理层和协议层的兼容。在物理层,SAS接口和SATA接口完全兼容,SATA硬盘可以直接使用在SAS的环境中,从接口标准上而言,SATA是SAS的一个子标准,因此SAS控制器可以直接操控SATA硬盘,但是SAS却不能直接使用在SATA的环境中,因为SATA控制器并不能对SAS硬盘进行控制;在协议层,SAS由3种类型协议组成,根据连接的不同设备使用相应的协议进行数据传输。其中串行SCSI协议(SSP)用于传输SCSI命令;SCSI管理协议(SMP)用于对连接设备的维护和管理;SATA通道协议(STP)用于SAS和SATA之间数据的传输。因此在这3种协议的配合下,SAS可以和SATA以及部分SCSI设备无缝结合。
分区(Partition)
低级格式化:实现划分好磁道扇区等。
高级格式化:创建文件系统。
分区就是把整这个磁盘划分成多个逻辑组成结构。每个逻辑组成结构里可以创建一个独立的文件系统,因而一个磁盘上可以创建多个独立的文件系统。
MBR:主引导记录(Master Boot Record) (512byte 0,0,0)0platter 0Track,0Sector
前446btyes BootLoader程序,能够引导某个分区上的操作系统让它启动起来。
后64bytes:per 16 bytes:表示一个分区,因而主分区+扩展分区<=4。
最后2bytes,Magic Number: 标记MBR是否有效。
BIOS中的数据rom中的一段程序代码,检查自身健康状况, 开机以后,会映射到内存的最低端,cpu开始执行这段代码,开始检查自身的健康状况,自检没有任何问题了,BIOS依据在BIOS中设定的启动次序,挨个去找启动设备的MBR(可能是光盘,usb设备,硬盘设备)。于是,BIOS把MBR中的bootloader映射到内存,BISO把执行指令交给cpu,bootloader最开始执行,BIOS退出,bootloader读取分区表,找到的分区找操作系统的内核,操作系统内核加载到内存,boorloader将管理权交给操作系统内核。
对磁盘分区:
磁盘是按柱面cylinder分区的。因为在存储一个文件时,为了加速文件存储,数据存储也是按柱面存储的。
Since a platter is made up of concentric tracks, the outer trackes can hold more data than the inner ones beacause they are physically longer than ther inner trackes. However,in older disk drivers the outer tracks had the same number of sectors as the inner tracks, which means that the data density was low on the outer tracks. This was an inefficent use of the availables space.
磁盘分区后(platter with zone)就可以存储数据,但是存储的数据需要逻辑的边界,寻址定位的功能,要能分类,编号,建立索引。因此就需要在分区上建立一个叫做文件系统的东西。文件系统就是一个管理软件,存储在磁盘的某个位置上,并不是直接在分区上,但是存储的数据在分区上。文件系统能够把一个分区中的存储空间划分为两个部分:一块是Metadata,一块是数据存储区,数据存储区划分为逻辑存储单元,称为磁盘块block,逻辑概念。
元数据区:
指定一段固定区域,block bitmap,块位图<---存储编目:文件的名字和存储的路径。每个文件占一个条目。可以指向磁盘块编号,2k
编目存储对应的inode位图区-->与条目存放块一一对应,每一个条目叫inode(index node)全局唯一。每个inode用来引用一个文件,存放inode号,对应文件的权限,时间戳,属主 ,属组,扩展属性,大小,存储的block信息,没有文件名。
还有有块位图bitmap,每个block有个位在bitmap中,只有一位,1为已使用,0为空闲
文件查找过程
根目录自引用:
一个目录也是一个磁盘块,分成两部分,一部分存放inode号,一部分存放文件名。 叫目录项,dentry。
扫描inode位图,找空闲的inode占位,找到目录所对应的磁盘块block,就找到了一个目录项dentry。建立一个条目,叫test.txt,和空闲的inode号放置保存。
扫描块位图,找到空闲的磁盘块,一次10k的数据,会找出5块。
引入软链接和硬链接文件的概念:
链接文件:
软链接,也叫符号链接:直接指向同一个inode的两个不同路径,就可以叫做软连接
符号链接;
1、可以应用于目录,
2、可以跨文件系统
3、不会增加被连接文件的次数;
4、其大小为指定的路径所包含的字符的个数。
硬链接,
指向的inode链接,存储着inode号和一个文件存储路径,大小为文件存储路径字符的个数,通过文件存储路径找到文件数据存储的位置
1、只能指向文件,不能用于目录;
2、不能跨文件系统;
3、 创建硬链接会怎家文件被链接的次数;
硬链接的次数:只有次数小于1,才能彻底删除,否则只是删除了文件存储路径,inode号和数据依然存在
ln [-s -v] SRC