⑴ 扇区、磁盘块、页。磁盘是如何存储数据的:磁盘的物理结构
扇区,sector
硬盘的读写以扇区为基本单位。磁盘上的每个磁道被等分为若干个弧段,这些弧段称之为扇区。硬盘的物理读写以扇区为基本单位。通常情况下每个扇区的大小是 512 字节。linux 下可以使用 fdisk -l 了解扇区大小:
$ sudo /sbin/fdisk -l
Disk /dev/sda: 20 GiB, 21474836480 bytes, 41943040 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x7d9f5643
其中 Sector size,就是扇区大小,本例中为 512 bytes。
注意,扇区是磁盘物理层面的概念,操作系统是不直接与扇区交互的,而是与多个连续扇区组成的磁盘块交互。由于扇区是物理层面的概念,所以无法在系统中进行大小的更改。
磁盘块,IO Block
文件系统读写数据的最小单位,也叫磁盘簇。扇区是磁盘最小的物理存储单元,操作系统将相邻的扇区组合在一起,形成一个块,对块进行管理。每个磁盘块可以包括 2、4、8、16、32 或 64 个扇区。磁盘块是操作系统所使用的逻辑概念,而非磁盘的物理概念。磁盘块的大小可以通过命令 stat /boot 来查看:
$ sudo stat /boot
File: /boot
Size: 4096 Blocks: 8 IO Block: 4096 directory
Device: 801h/2049d Inode: 655361 Links: 3
Access: (0755/drwxr-xr-x) Uid: ( 0/ root) Gid: ( 0/ root)
Access: 2019-07-06 20:19:45.487160301 +0800
Modify: 2019-07-06 20:19:44.835160301 +0800
Change: 2019-07-06 20:19:44.835160301 +0800
Birth: -
其中 IO Block 就是磁盘块大小,本例中是 4096 Bytes,一般也是 4K。
为了更好地管理磁盘空间和更高效地从硬盘读取数据,操作系统规定一个磁盘块中只能放置一个文件,因此文件所占用的空间,只能是磁盘块的整数倍,那就意味着会出现文件的实际大小,会小于其所占用的磁盘空间的情况。
test2.txt是一个只包含一个字母的文本文档。它的理论大小是一个字节,但是由于系统的磁盘块大小是4KB(文件的最小存储大小单位),所以test2.txt占据的磁盘实际空间是4KB
操作系统不能对磁盘扇区直接寻址操写,主要原因是扇区数量庞大,因此才将多个连续扇区组合一起操作。磁盘块的大小是可以通过blockdev命令更改的。
页,page
内存的最小存储单位。页的大小通常为磁盘块大小的 2^n 倍,可以通过命令 getconf PAGE_SIZE 来获取页的大小:
$sudo getconf PAGE_SIZE
4096
本例中为 4096 Bytes,与磁盘块大小一致。
总结两个逻辑单位:
页,内存操作的基本单位
磁盘块,磁盘操作的基本单位
命令索引
扇区大小,fdisk -l
磁盘块大小,stat /boot
内存页大小,getconf PAGE_SIZE
硬盘是如何存储数据的:硬盘的物理结构
提示:硬盘分为机械硬盘和固态硬盘这2种。这里只讲解机械硬盘,固态硬盘的存储另当别论。
要想知道硬盘是如何存储数据的,就先明白硬盘的物理结构。
1、名称机械硬盘,由于信息载体为磁性物质,故又称磁盘。 2、硬盘主要结构在硬盘盒里面其实是由许许多多的圆形盘片、机械手臂、磁头与主轴马达所组成的。 3、工作情形实际的数据都是写在具有磁性物质的盘片上,而读写主要是通过在机械手臂上的磁头(head)来达成。实际运行时, 主轴马达让盘片转动,然后机械手臂可伸展让磁头在盘片上头进行读写的动作。
4、各主要部件说明(1)盘片和主马达主马达就是一个小电机,作用是让盘片转动起来。通常数据写入当然就是以圆圈转圈的方式读写啰!
对于机械硬盘,最重要的结构是这些两面涂有磁性材料的盘片,在工作时会以每分钟7200转的速度旋转。盘片的作用是记录数据,在盘片上有序的排列了很多的小颗粒材料,它们都是磁性物质,可以被永久磁化和改变磁极,这两个磁极就分别表示了计算机二进制中的0和1。由于盘片是转动后读写数据的,所以,当初设计就是在类似盘片同心圆上面切出一个一个的小区块,这些小区块整合成一个圆形,让机器手臂上的磁头去存取。这个小区块就是磁盘的最小物理储存单位,称之为扇区 (sector),那同一个同心圆的扇区组合成的圆就是所谓的磁道(track)。 扇区容量:原本硬盘的扇区都是设计成 512Byte(即0.5KB) 的容量,但因为近期以来硬盘的容量越来越大,为了减少数据量的拆解,所以新的大容量硬盘已经有 4KByte(即4KB)的扇区设计! 由于单一盘片的容量有限,因此有的硬盘内部会有两个以上的盘片喔!由于磁盘里面可能会有多个盘片,因此在所有盘片上面的同一个磁道可以组合成所谓的柱面 (cylinder)。 数据存储在盘片上的一个个扇区中。
1)1个扇区(磁道)可存储512Bytes的数据量;
2)一个平面中同一半径下的多个扇区共同组成了1个磁道;
3)一个盘片有2个盘面,每个盘面都对应一个磁头,负责读写数据;
4)一个硬盘可以有多个盘片;
5)同一半径下的多个磁道共同组成了1个柱面。
(2)磁头和机械手臂机械手臂的作用是控制来回磁头移动。磁头的作用是在盘片上读写数据。磁头通过改变盘片上小颗粒磁性物质的磁极方向来完成写入数据的功能,通过感知盘片上磁性物质的磁极方向来完成读取数据的功能。
5、扇区中是如何表示01数据的?
硬盘是在硬质盘片(一般是铝合金,以前 IBM 也尝试过使用玻璃)上涂敷薄薄的一层铁磁性材料。这些磁粉被划分成称为磁道的若干个同心圆,在每个同心圆的磁道上就好像有无数的任 意排列的小磁铁,它们分别代表着0和1的状态。当这些小磁铁受到来自磁头的磁力影响时,其排列的方向会随之改变。利用磁头的磁力控制指定的一些小磁铁方 向,使每个小磁铁都可以用来储存信息。写入时,磁头线圈上加电,在周围产生磁场,磁化其下的磁性材料;电流的方向不同,所以磁场的方向也不同,可以表示 0 和 1 的区别。读取时,磁头线圈切割磁场线产生感应电流,磁性材料的磁场方向不同,所以产生的感应电流方向也不同。
================================优美的分割线===================================
延伸:固态硬盘的存储原理(微观)
接下来来讲固态硬盘,相比较于机械硬盘里面的各种机械结构,固态硬盘就没有太多的机械机构;它主要是靠FLASH芯片来作为储存数据的介质;由主控芯片来承担数据的中转,还有调配数据储存在闪存芯片上面
FLASH芯片储存数据的方式也不是太难理解,就是FLASH芯片里面分出了很多储存单元,这些储存单元里面有电子的位置;当一颗电子的位置里面没有存放电子,它就是0;如果存放了电子,它就是1 参考:
https://zhuanlan.hu.com/p/117375905 https://www.cnblogs.com/andy9468/p/11091115.html
⑵ 磁盘地址的最小单位是什么 是扇区么
磁道是将磁盘纪录区划分为若干个记录信息的同心圆
扇区是磁盘地址的最小单位,每个扇区可记录等量塌枯的数据
磁盘的容量等渗和于磁道数乘扇区数乘扇丛衫盯区内字节数乘面数乘磁盘片数
⑶ 硬盘一次读取或写入的最小单位是多少
磁盘硬盘一次读取或写入的最小单位是字节。
磁盘上的每个磁道被等分为若干个弧段,这些弧段便是磁盘的扇区,每个扇区可以存放512个字节的信息,磁盘驱动器在向磁盘读取和写入数据时,要以扇区为单位。
(3)扇区是磁盘存储的最小单位吗扩展阅读
换算
1字节(Byte)=8位(bit)
1KB( Kilobyte,千字节)=1024B
1MB( Megabyte,兆字节)=1024KB
1GB( Gigabyte,吉字节,千兆)=1024MB
1TB( Trillionbyte,万亿字节,太字节)=1024GB
1PB( Petabyte,千万亿字节,拍字节)=1024TB
1EB( Exabyte,百亿亿字节,艾字节)=1024PB
1ZB(Zettabyte,十万亿亿字节,泽字节)=1024EB
1YB( Yottabyte,一亿亿亿字节,尧字节)=1024ZB
1BB( Brontobyte,千亿亿亿字节)=1024YB
⑷ 扇区大小是否可以理解成硬盘分区时的最小单位
有点偏差。
一个扇区能存储512Bytes的数据,此外还有数十个Bytes信息,包括标识(ID)、校验值和其它信息。
硬盘分区的最小单位是磁柱(Cylinder)
硬盘存储的最小单位是扇区(Sector)
⑸ 磁盘存储信息的最小单位是扇区还是字节为什么
文件最小的单位是字节,而磁盘是分成若干个扇区去存储这些字节的。
⑹ 硬盘当中存储的最小单位是扇区吗
磁盘上的每个磁道被等分为若干个弧段,这些弧段便是磁盘的扇区。磁盘驱动器在向磁盘读取和写入数据时,要以扇区为单位。在磁盘上,DOS操作系统是以“簇”为单位为文件分配磁盘空间的。硬盘的簇通常为多个扇区,与磁盘的种类、DOS 版本及硬盘分区的大小有关。每个簇只能由一个文件占用,即使这个文件中只有几个字节,决不允许两个以上的文件共用一个簇,否则会造成数据的混乱。
希望能解决你的问题
⑺ 文件系统中分配存储空间的基本单位是什么
以块为单位进行的。
为了提高存储空间的利用率,对存储空间的分配,通常是采用离散分配方式,以减少外存零头,并以盘块为基本分配单位。盘块的大小通常为 1~8KB。
文件系统中,用于文件的描述和控制并与文件一一对应的是文件控制块。文件存储空间的管理就是块空间的管理,包括空闲块的分配、回收和组织等几个问题。
(7)扇区是磁盘存储的最小单位吗扩展阅读:
位示图是利用二进制的一位来表示磁盘中一个盘块的使用情况。当其值为“0”时,表示对应的盘块空闲;为“1”时,表示已分配。有的系统把“0”作为盘块已分配的标志,把“1”作为空闲标志。(它们在本质上是相同的,都是用一位的两种状态来标志空闲和已分配两种情况。)
磁盘上的所有盘块都有一个二进制位与之对应,这样,由所有盘块所对应的位构成一个集合,称为位示图。通常可用 m × n 个位数来构成位示图,并使 m × n 等于磁盘的总块数。位示图也可描述为一个二维数组 map:Var map: array of bit;
⑻ 磁盘中存取信息的最小单位是
字节(比特)磁盘厂家以1000为进制,系统以1024为进制.这就是为什么320G的硬盘在系统中显示为298G.
⑼ 操作系统对磁盘进行读写操作的物理单位
磁盘读写基本单位是扇区,操作系统是通过块和簇来做为单位读取等操作数据的。扇区是对硬盘而言,是物理层的,块和簇是对文件系统而言,是逻辑层的。
扇区的空间比较小且数目众多,在寻址时比较困难,操作系统就将多个的扇区组合在一起,形成一个更大的单位,再对这个单位进薯圆闷行整体的操作。这个单位,在Windows下,FAT,FAT32和NTFS 文件系统中叫做簇(cluster);在Linux下如Ext4等文件系统中叫做块(block)。
(9)扇区是磁盘存储的最小单位吗扩展阅读:
现在的磁盘使用ZBR(Zone Bit Recording 分区域记录)技术,盘片表面从里向外划分为数个区域,不同区域的磁道扇区数目不同,同一区域内各磁道扇区数相同,盘片外圈区域磁道长扇区数目较多,内圈区域磁道短扇区数目较少,大体实现了等密度,从而获得了更多的存储空间。
大多数产品划分了16个区域,最外圈的每磁道扇区数正好是最内圈的二倍(373~746)。当磁盘主轴马达按一定转速(腔冲N转每秒)旋转的时候,越往外,线速度越大,单位时间内扫过的扇区数就越多,读写速度就数弯越高。
⑽ 磁盘的读写单位是什么
磁盘的读写单位应该是KB。一凳弊般来说都是多少KB组成多少兆,再从多少兆组成多少GB,再从多少GB组成多少T。所以信孙一般来说磁盘的读写单滑粗链位是KB或B。