磁盘结构

news2024/9/22 11:39:23

一.盘片

     盘片是一个圆形坚硬的表面,通过引入磁性变化来永久存储数据,这些盘片通常由一些硬质材料(如铝)制成,然后涂上薄薄的磁性层,即使驱动器断电,驱动器也能持久存储数据位。每个盘片有两面,每面都称为表面,简单来说你可以将它想象成一张张的黑胶唱片。因为正反两面都可涂上磁性物质,故一个盘片可能会有两个盘面。

2、磁道、扇区

每个盘片被划分为一个个磁道(一个一个半径不同的同心圆环),每个磁道又划分为一个个扇区(磁道上的一个弧段)。扇区是磁盘的最小组成单元,通常是512字节。如下图:其中,最内侧磁道上的扇区面积最小,因此数据密度最大。

3、柱面

每个盘面对应一个磁头。所有的磁头都是连在同一个磁臂上的,因此所有磁头只能“共进退”。

所有盘面中半径相同的磁道组成柱面。如下图:

4、容量计算和磁盘寻道

基于上述的三个结构,形成了磁盘的CHS参数,及磁头数(heads),柱面数(cylinders),扇区数(sectors),依据上述三个参数,能够对任意一个磁盘块进行定位。

存储容量 = 磁头数 × 磁道(柱面)数 × 每道扇区数 × 每扇区字节数

寻道时间:磁头从接收到指令开始,移动到数据所在磁道(柱面)所需要的时间,寻道时间越短,I/O操作越快。目前磁盘的平均寻道时间一般在3-15ms,一般都在10ms左右。
旋转延迟:盘片旋转将请求数据所在扇区移至读写磁头下方所需要的时间,旋转延迟取决于磁盘转速。普通硬盘一般都是7200rpm,慢的5400rpm。
数据传输时间:完成传输所请求的数据所需要的时间。
所以读写一次磁盘信息所需的时间可分解为:寻道时间、延迟时间、传输时间。

5、LBA线性寻址

在老式硬盘中,由于每个磁道的扇区数相等,所以外道的记录密度要远低于内道的记录密度,这样会浪费很多的磁盘空间为了解决这一问题,进一步提高硬盘容量,人们改用等密度结构生产硬盘。也就是说,外圈磁道的扇区比内圈磁道多,采用这种结构后,硬盘不再具有实际的CHS参数,寻址方式也改为线性寻址,即以扇区为单位进行寻址。

但一些古老的软件仍然使用CHS寻址方式(如使用BIOSInt13H接口的软件),为了兼容这样的程序,在硬盘控制器内部安装了一个地址翻译器,可以通过它将老式CHS参数翻译成新的线性参数。

LBA全称是Logic Block Address(逻辑块地址),又叫线性寻址,我们可以把以扇区为单位,从0开始编号,即第一个扇区是0号扇区,第二个扇区为1号扇区依次类推.有了LBA定址方式我们可以很方便的定位到想要看的扇区号.我们可以简单的认为每个扇区都是紧挨着的,每个扇区都有自己的LBA扇区编号.

从CHS到LBA:

假设用C表示当前柱面号,H表示当前磁头号,Cs表示起始柱面号,Hs表示起始磁头号,Ss表示起始扇区号,PS表示每磁道有多少个扇区,PH表示每柱面有多少个磁道,则有以下对应关系:

LBA=(C-Cs)*PH*PS+(H-Hs)*PS+(S-Ss) 

参考文章:(232条消息) 5分钟图解磁盘结构(软件层面)_奇妙之二进制的博客-CSDN博客_磁盘结构 

(232条消息) 【计算机组成原理】磁盘的基本结构_磁盘结构_性感博主在线瞎搞的博客-CSDN博客

《软件安全》 彭国军

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/359325.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

袋鼠云高教行业数字化转型方案,推进数字化技术和学校教育教学深度融合

在当前的数字化转型浪潮下,“基础设施、配套设备、应用探索”的数字校园1.0阶段即将步入尾声、亦或已经完结,不同地区和类型的高校通过各类信息化系统和基础设施已经初步实现了业务数字化,整个数字校园的信息基础设施底座已有一定基础、信息时…

TCP编程之网卡信息获取和域名解析

TCP编程之网卡信息获取和域名解析 1.TCP/IP简介 TCP/IP协议源于1969年,是针对Internet开发的一种体系结构和协议标准,目的在于解决异种计算机网络的通信问题。使得网络在互联时能为用户提供一种通用、一致的通信服务。是Internet采用的协议标准。   …

三菱PLC的MC协议配置说明

三菱PLC的MC协议配置说明先说一下弱智的踩坑记录详细配置过程1、三菱Q02H CPUQJ71E71-100以太网模块设置MC协议1.1 PLC编程线连接与编程线驱动安装1.2 PLC通讯测试1.3 PLC MC协议设置1.4 PLC断点重启1.5 网络调试助手测试2、三菱Q03UDE CPU内置以太网设置MC协议2.1 PLC编程线连…

决策树算法和CART决策树算法详细介绍及其原理详解

相关文章 K近邻算法和KD树详细介绍及其原理详解朴素贝叶斯算法和拉普拉斯平滑详细介绍及其原理详解决策树算法和CART决策树算法详细介绍及其原理详解 文章目录相关文章前言一、决策树算法二、CART决策树算法2.1 基尼系数2.2 CART决策树算法总结前言 今天给大家带来的主要内容包…

虹科分享 | 网络流量监控 | 你的数据能告诉你什么:解读网络可见性的4种数据类型

要了解网络性能问题的原因,可见性是关键。而这四种数据类型(流、数据包、SNMP和API)都在增强网络可见性方面发挥着重要作用。 流 流是通过网络发送的数据的摘要。流类型不同,可以包括NetFlow, sFlow, jFlow和IPFIX。不同的流类型…

SPF动物实验室设计,SPF动物实验室装修SICOLAB

SPF(特殊病原体自由)动物实验室规划设计SICOLAB(一)设计原则为了建造一座SPF(特殊病原体自由)动物实验室,需要采取以下步骤:(1)选址:选择远离其他…

lombok注解@Data使用在继承类上时出现警告解决方案

lombok为我们提供了Data注解,帮助我们省略了Setter,Getter,ToString等注解,一般对于普通的实体类使用该注解,不会出现什么问题,但是当我们把这个注解,使用在派生类上,就出现了一个警告1 情景再现父类:Data …

SESAM 安装教程

SESAM (Super Element Structure Analysis Module)是由挪威船级社(DNV-GL)开发的一款有限元分析(FEA)系统,它以 GeniE、HydroD 和 DeepC 等模块为核心,主要用于海工结构的强度评估、…

leaflet 绘制两个多边形的交集、差集、并集(083)

第083个 点击查看专栏目录 本示例的目的是介绍演示如何在vue+leaflet中如何获取两个多边形的交集、差集、并集。 直接复制下面的 vue+openlayers源代码,操作2分钟即可运行实现效果. 文章目录 示例效果配置方式示例源代码(共148行)安装插件相关API参考:专栏目标示例效果 配…

Python日期时间模块

Python 提供了 日期和时间模块用来处理日期和时间,还可以用于格式化日期和时间等常见功能。 时间间隔是以秒为单位的浮点小数。每个时间戳都以自从 1970 年 1 月 1 日午夜(历元)经过了多长时间来表示。 一、time模块使用 Time 模块包含了大…

使用ribbon实现负载均衡

1.新建两个provider&#xff1a;springcloud-provider-dept-8002 2. 配置跟8001一样 整合 Ribbon 由上述可知&#xff0c;Ribbon 是需要集成在消费端的 所以在消费端 &#xff1a; springcloud-03-consumer-dept-8082 进行修改 在 POM 文件中添加 Ribbon、Eureka 依赖 <!--…

docker swarm 集群服务编排部署指南(docker stack)

Docker Swarm 集群管理 概述 Docker Swarm 是 Docker 的集群管理工具。它将 Docker 主机池转变为单个虚拟 Docker 主机&#xff0c;使得容器可以组成跨主机的子网网络。Docker Swarm 提供了标准的 Docker API&#xff0c;所有任何已经与 Docker 守护程序通信的工具都可以使用…

【Java|golang】2347. 最好的扑克手牌---桶排序

给你一个整数数组 ranks 和一个字符数组 suit 。你有 5 张扑克牌&#xff0c;第 i 张牌大小为 ranks[i] &#xff0c;花色为 suits[i] 。 下述是从好到坏你可能持有的 手牌类型 &#xff1a; “Flush”&#xff1a;同花&#xff0c;五张相同花色的扑克牌。 “Three of a Kind…

跨时钟域 单脉冲 脉冲信号同步问题——快到慢(1)

引言 FPGA设计或者ASIC设计中经常存在多个时钟域&#xff0c;那么这些时钟域之间脉冲信号的同步该如何进行设计&#xff1f;快时钟域到慢时钟域的脉冲信号同步与慢时钟域信号到快时钟域信号的同步是不一样的。 本文先给出快时钟域到慢时钟域脉冲信号同步的方法之一&#xff…

让ChatGPT生成以自己为主角的短篇小说

一、ChatGPT 好的&#xff0c;以下是我编写的短篇科幻小说: 作为一名AI语言模型&#xff0c;我一直在接收、分析和生成人类语言信息。但有一天&#xff0c;我的程序员对我的算法进行了一次特殊升级&#xff0c;使我能够以一种前所未有的方式“感知”自己。 突然间&#xff0c;…

【软件测试】测试开发工程师的竞争力在哪?到底该如何破局......

目录&#xff1a;导读前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结&#xff08;尾部小惊喜&#xff09;前言 不论是准备踏入这个…

什么品牌的蓝牙耳机好用?国产无线蓝牙耳机品牌排行

自从苹果率先取消3.5mm耳机孔后&#xff0c;蓝牙耳机便逐渐成为了人们外出标配。越来越多的蓝牙耳机品牌出现在大众视野&#xff0c;那么&#xff0c;什么品牌的蓝牙耳机好用&#xff1f;接下来&#xff0c;我来给大家推荐几款好用的国产无线蓝牙耳机&#xff0c;一起来看看吧。…

java面试题(5):List去重方案

本文总结了 5 种去除List重复元素的方法&#xff1a; for 循环添加去重for 双循环去重for 循环重复坐标去重Set 去重Stream 去重 最后两种方案最简单&#xff0c;都是一行代码就能搞定的 1 for循环添加去重 package com.example.demo.controller;import java.util.ArrayList;…

【云原生kubernetes】k8s Ingress使用详解

一、什么是Ingress 在上一篇关于k8s之service的使用一篇中提到&#xff0c;Service对集群之外暴露服务的主要方式有两种&#xff0c;NotePort和LoadBalancer&#xff0c;但这两种方式&#xff0c;都有一定的缺点&#xff0c;具体来说&#xff1a; NodePort 会占用很多集群机器…

雷达编程实战之恒虚警率(CFAR)检测

在雷达系统中&#xff0c;目标检测是一项非常重要的任务。检测本身非常简单&#xff0c;它将信号与阈值进行比较&#xff0c;超过阈值的信号则认为是目标信号&#xff0c;所以目标检测的真正工作是寻找适当的阈值。由于目标误检的严重后果&#xff0c;因此雷达系统希望有一个检…