热门标签 | HotTags
当前位置:  开发笔记 > 运维 > 正文

使用物理硬盘_许迎果第147期机械硬盘的物理结构和逻辑结构

今天我们接着来聊机械硬盘科普的第二部分:机械硬盘的物理结构和逻辑结构.机械硬盘的结构分为两个部分:物理结构和逻辑结构.其中物理结构一般由磁头、盘片、电动机、主控芯片、排线、接口等部

今天我们接着来聊机械硬盘科普的第二部分:机械硬盘的物理结构和逻辑结构.

机械硬盘的结构分为两个部分:物理结构和逻辑结构.

其中物理结构一般由磁头、盘片、电动机、主控芯片、排线、接口等部件组成.

bc72ee45e09b5095f76a44aa74852833.png

磁头是硬盘中对盘片进行读写工作的工具,是硬盘中最精密最关键的部位之一.

最初的磁头是读写二合一的,后来逐渐分离出读磁头和写磁头两个部分.

一般来说,磁头的灵敏度越高,盘片的存储密度也随之提高,性能也随之变强.

比较成熟的磁头技术大体上经过了薄膜感应(TFI)磁头,磁阻(MR)磁头,各向异性磁阻(AMR)磁头,巨磁阻(GMR)磁头几个阶段.

盘片是硬盘中承载数据存储的介质,通常是将磁粉附着在以铝合金或玻璃为盘基的圆盘表面上而制成.

硬盘中一般会有多个盘片,每个盘片包含两个面,每个盘面都对应地有一个读/写磁头.

554245d6a68dc68d01f38ad3d832af4a.png

盘面又被划分为若干个同心圆的磁道,其中最外圈的就是"0"磁道.

存储数据时,一般是由外而内,从外圈向内圈存储.

所有盘面上处于同一半径圆的多个磁道构成一个圆柱,所以通常又称为柱面.

需要注意,数据的读/写不是按照盘面进行的,而是按照柱面进行.

也就是说,一个磁道写满数据后,就在同一柱面的下一个盘面来写,直到一个柱面写满后,才移到下一个扇区开始写数据.读数据也按照这种方式进行,这样可以提高硬盘的读/写效率.

磁道并不是连续记录数据的,而是被划分成一段段的圆弧,每段圆弧叫做一个扇区,扇区从"1"开始编号,每个扇区中的数据作为一个单元同时读出或写入.

扇区中密布着任意排列的小磁铁,磁场方向不同排列方式分别代表着二进制的0和1.

硬盘的接口一般分为电源接口和数据接口两个部分.

其中电源接口有两种较常见,一种上ATA接口的硬盘使用的D形4针电源接口,也就是俗称"大4pin",另一种是 SATA硬盘上使用的SATA电源接口.

数据接口大致分为ATA(又称IDE),SATA,SCSI,SAS,FC几种.

a0dc3f3ae77118d82acb2a64ad1c00cb.png

ATA接口是用传统的40-pin并口数据线连接主板与硬盘的,速度最大为133MB/s.目前已淘汰.

a7a502f0cc501d16f0d33a341b926951.png

SATA接口是使用串口的ATA接口,抗干扰性强,目前被广泛采用,SATA3支持600MB/s.

当然还需注意,接口速度不等于实际硬盘数据传输的速度,目前普通机械硬盘的传输速度基本不超过300MB/s.

94de4974f20f0d9b9f5ff11ec2992d1d.png

SCSI和SAS接口的硬盘通常是工作站以及服务器所使用,而 FC是光纤通道接口,价格高昂,通常只用于高端服务器领域.

以上这些内容作为个人用户简单了解即可.至于物理结构中的其他部件,非专业人士不必深究.

说完物理结构,接下来聊聊硬盘的逻辑结构.

由于操作系统直接对数目众多的扇区进行寻址将会十分麻烦,所以一般是用到文件系统把硬盘的若干个扇区组合成簇,然后创建文件和树形目录,以使访问,查找和管理数据变得容易.

目前常见的文件系统格式有FAT(16,32), NTFS, CDFS, Ext4, Btrfs等等.

当然在创建文件系统格式之前,需要先确定分区表方案.常见的有两种,MBR分区表和GPT分区表.

7f430ffec2b6655b53d3ba5d650ec6c6.png

MBR分区表是将分区信息保存到磁盘的第一个扇区(MBR扇区)中的64个字节中,由于每个分区的信息需要占用16个字节,所以MBR扇区只能记录4个分区的信息.后来为了支持更多的分区,引入了扩展分区及逻辑分区的概念,但每个分区项仍用16个字节存储,所以主分区数目不能超过4个,另外最关键的是该方案的每个分区最大不能超过2TB.也就是说,3TB以上的硬盘使用MBR分区表将会造成一定的浪费.

GPT分区表(GUID)是源自EFI标准的一种新的分区表结构标准,提供了更加灵活的磁盘分区机制.

d5c1bf27cea6206657debf0421fac05c.png

它不但支持2TB以上的大硬盘,而且对每个磁盘的分区个数以及分区大小都几乎没有限制.与此同时,GPT分区表还自带备份,在磁盘的首尾分别保存了一份相同的分区表,当其中一份被破坏后,可以通过另一份恢复.

一般来说,最近几年面市的设备和操作系统都是支持GPT分区表的,安装系统前应该优先选择这种方案,如果是使用老旧设备,或者WindowsXP等老旧系统,不支持GPT的情况下,再考虑MBR分区表方案.

好啦,关于机械硬盘的物理结构和逻辑结构就先说到这里了,我是许迎果,一个爱好广泛,不务正业的UP主,欢迎你点击关注我的频道,并且点赞收藏留言转发支持一下,谢谢!

小伙伴们,咱们下期再见喽,拜拜!



推荐阅读
  • CentOS 7 磁盘与文件系统管理指南
    本文详细介绍了磁盘的基本结构、接口类型、分区管理以及文件系统格式化等内容,并提供了实际操作步骤,帮助读者更好地理解和掌握 CentOS 7 中的磁盘与文件系统管理。 ... [详细]
  • 本文将介绍如何编写一些有趣的VBScript脚本,这些脚本可以在朋友之间进行无害的恶作剧。通过简单的代码示例,帮助您了解VBScript的基本语法和功能。 ... [详细]
  • 在寻找轻量级Ruby Web框架的过程中,您可能会遇到Sinatra和Ramaze。两者都以简洁、轻便著称,但它们之间存在一些关键区别。本文将探讨这些差异,并提供详细的分析,帮助您做出最佳选择。 ... [详细]
  • 本文详细介绍了在使用Socket进行网络编程时,遇到链接器错误`undefined reference to WSAStartup@8`的解决方案,适用于多种开发环境。 ... [详细]
  • 优化联通光猫DNS服务器设置
    本文详细介绍了如何为联通光猫配置DNS服务器地址,以提高网络解析效率和访问体验。通过智能线路解析功能,域名解析可以根据访问者的IP来源和类型进行差异化处理,从而实现更优的网络性能。 ... [详细]
  • 本文详细分析了JSP(JavaServer Pages)技术的主要优点和缺点,帮助开发者更好地理解其适用场景及潜在挑战。JSP作为一种服务器端技术,广泛应用于Web开发中。 ... [详细]
  • PyCharm下载与安装指南
    本文详细介绍如何从官方渠道下载并安装PyCharm集成开发环境(IDE),涵盖Windows、macOS和Linux系统,同时提供详细的安装步骤及配置建议。 ... [详细]
  • 本文详细介绍如何使用Python进行配置文件的读写操作,涵盖常见的配置文件格式(如INI、JSON、TOML和YAML),并提供具体的代码示例。 ... [详细]
  • 1:有如下一段程序:packagea.b.c;publicclassTest{privatestaticinti0;publicintgetNext(){return ... [详细]
  • 如何配置Unturned服务器及其消息设置
    本文详细介绍了Unturned服务器的配置方法和消息设置技巧,帮助用户了解并优化服务器管理。同时,提供了关于云服务资源操作记录、远程登录设置以及文件传输的相关补充信息。 ... [详细]
  • DNN Community 和 Professional 版本的主要差异
    本文详细解析了 DotNetNuke (DNN) 的两种主要版本:Community 和 Professional。通过对比两者的功能和附加组件,帮助用户选择最适合其需求的版本。 ... [详细]
  • 本文介绍如何通过Windows批处理脚本定期检查并重启Java应用程序,确保其持续稳定运行。脚本每30分钟检查一次,并在需要时重启Java程序。同时,它会将任务结果发送到Redis。 ... [详细]
  • 本文详细分析了Hive在启动过程中遇到的权限拒绝错误,并提供了多种解决方案,包括调整文件权限、用户组设置以及环境变量配置等。 ... [详细]
  • 本文探讨了如何优化和正确配置Kafka Streams应用程序以确保准确的状态存储查询。通过调整配置参数和代码逻辑,可以有效解决数据不一致的问题。 ... [详细]
  • 基于Node.js、Express、MongoDB和Socket.io的实时聊天应用开发
    本文详细介绍了使用Node.js、Express、MongoDB和Socket.io构建的实时聊天应用程序。涵盖项目结构、技术栈选择及关键依赖项的配置。 ... [详细]
author-avatar
孙倩倩猫小窝W_199
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有