【计算机基础】关于存储的各种概念

综述

在了解存储设备的过程中涉及到了很多的概念,本文将一一说明。

在介绍存储设备的时候会出现很多概念,这里简单说明下。

  • 总线:这里指的是CPU与存储设备的链路。目前有SATA、PCIe、SAS等。
  • 协议:这里指的是CPU与存储设备之间约定好的通信方式,它包含的内容很广,比如双方如何识别对方、如何建立连接,双方传递数据的格式,等等。目前有AHCI、NVMe、SCSI等。
  • 硬件接口:这里指的是存储设备接入到电脑主板的方式,目前有SATA、SCSI、SAS、m.2等。

下图是它们之间的一个关系图:

在这里插入图片描述

AHCI

AHCI全称Advanced Host Controller Interface。

AHCI一种由Intel制定的技术标准,它允许软件与SATA存储设备沟通的硬件机制,可让SATA存储设备激活高级SATA功能,例如原生指令队列及热插拔。

AHCI为SATA定义了新的操作模式,增加了两个额外功能:NCQ和热插拔。

SATA可以运行在两种模式下,即AHCI模式和IDE模式。两者之间的区别可参考下面的表格:

AHCIIDE
定义高级主机控制器接口IDE:集成驱动电子设备 / PATA:并行高级技术附件
优点支持新技术,如本机命令队列最大兼容性
热插拔支持不支持
缺点缺点缺乏对本机命令队列和热插拔硬盘等新技术的支持
创始者IntelWestern Digital
操作范围操作串行ATA(SATA)主机总线适配器操作并行ATA驱动器
运行模式传统并行ATA仿真,标准AHCI或特定于供应商的RAIDIDE

ATA

ATA全称是Advanced Host Controller Interface。

ATA本身是支持并行和串行,对应PATA和SATA。早期硬盘使用的是PATA,并与IDE硬盘一起使用,后期被SATA代替。所以目前当我们说ATA硬盘的时候一般是只PATA,也称为IDE硬盘,而SATA就是SATA,下面是PATA接口和SATA接口硬盘的比较:

在这里插入图片描述

ATA、IDE、PATA、SATA这些概念有一些混用,大致的理解是:

  • ATA是一种控制器技术。
  • IDE是一个匹配ATA的磁盘驱动器技术,注意这里的磁盘,后面还有闪存,就不是用IDE了。
  • ATA下一步的技术是SATA(Serial ATA),串行ATA。有了SATA之后,原来的ATA又被称为PATA(Parallel ATA),并行ATA。

IDE

IDE的全称是Integrated Drive Electronics。

IDE是把“硬盘控制器”与“盘体”集成在一起的硬盘驱动器。把盘体与控制器集成在一起减少硬盘接口的电缆数目与长度,数据传输的可靠性得到增强,硬盘制造起来变得更容易的技术。事实上,从IDE开始,所有的“存储芯片”和“控制芯片”都是在同一个盘上的,本文介绍的所有都是。

早期的IDE硬盘使用的是PATA接口,它通过一个40Pin的线与电脑主板相连,还有一个额外的电源接口,下图是IDE(或者叫ATA、PATA)和SATA接口的比较:

在这里插入图片描述

m.2

m.2原名NGFF(Next Generation Form Factor,意思是下一代封装形式)。

m.2是一种新的硬盘接口规范,旨在取代mSATA接口,提供更高的性能和更多的功能。m.2不仅支持SATA,还支持NMVe等其它的接口。

m.2有不同的物理形状,并导致了不同的分类:

  • 根据金手指处的开槽分为B-Key(Socket 2)和M-Key(Socket 3):

在这里插入图片描述

对于B-Key,它支持SATA、PCIe x2接口,而M-Key这可支持PCIe ×4接口。

  • 根据尺寸可以分为如下的一些:

在这里插入图片描述

m.2不仅仅支持存储设备,还支持其它的设备,比如WiFi无线网卡、4G上网卡等,比如下面这个:

在这里插入图片描述

由于m.2支持不同的分类,所以当我们看到一个m.2的时候,可能不能直接确定其支持的是SATA硬盘还是NVMe硬盘,或者其它什么设备。

NVMe

NVMe全称是Non Volatile Memory Express。

NVMe的官方定义将其描述为“一个开放的标准和信息集合,以充分释放非易失性存储在从移动端到数据中心的所有类型的计算环境中能够提供的优势。NVMe从底层开始设计,为当前和未来的NVM技术提供高带宽和低延迟存储访问。”

NVMe官网NVM Express。

NVMe基于PCIe,所以它不像SATA这样需要额外的控制器,而是可以直接与CPU或者芯片组连接:

在这里插入图片描述

SAS

SAS全称Serial Attached SCSI。

SAS替代了原本的并行SCSI。

SAS的物理接口上能够向下兼容SATA。

在这里插入图片描述

SATA

SATA的全称是Serial Advanced Technology Attachment。

SATA是一种由Seagate公司与Intel等几大厂商基于行业标准共同提出的串行硬件驱动接口,负责主板和大容量存储设备(如硬盘及光盘驱动器)之间的数据传输,主要用于个人计算机。

SATA是与PATA或者ATA对应的,使用串行的方式传递数据。PATA由于采用并行总线接口,传输数据和信号的总线是复用的,因此传输速率会受到一定的限制。如果要提高传输的速率,那么传输的数据和信号往往会产生干扰,从而导致错误。SATA以它串行的数据发送方式得名。在数据传输的过程中,数据线和信号线独立使用,并且传输的时钟频率保持独立,因此同以往的PATA相比,SATA的传输速率可以达到并行的30倍。可以说:SATA技术并不是简单意义上的PATA技术的改进,而是一种全新的总线架构。

SATA官网Home | SATA-IO。

SATA经历了SATA1.x,SATA2.x,SATA3.x等几个版本,目前(2024)主要用的是SATA3.x,最新的规范是《Serial ATA Revision 3.5a Specification (released March 2021)》。它们支持的速度如下:

在这里插入图片描述

下图是SATA硬盘上的接口:

在这里插入图片描述

左边通过SATA线连接到电脑主板上,右边是电源线。SATA线如下图所示:

在这里插入图片描述

eSATA

eSATA的全称是External Serial Advanced Technology Attachment。

它是SATA接口的外部扩展规范。换言之,eSATA就是“外置”版的SATA,它是用来连接外部而非内部SATA设备。如果拥有eSATA接口,你就可以轻松地将SATA硬盘与机箱的eSATA接口连接,而不用打开机箱更换SATA硬盘。

相对于SATA接口来说,eSATA在硬件规格上有些变化,结构也有差异,下面是两者的比较:

在这里插入图片描述

左边是SATA线,右边是eSATA线。

通常eSATA线可以比SATA线长,毕竟前者是用在机箱内部的,而后者是外部的,空间可以更大。

mSATA

mSATA的全称是mini Serial Advanced Technology Attachment,就是SATA的迷你版本。

mSATA主要是为了适应于笔记本、mini主机等超薄设备的使用环境。

mSATA不再是硬盘和线分开的情况,它的样式如下:

在这里插入图片描述

mSATA存在的时间比较段,很快就被m.2替代了。

SCSI

SCSI全称是Small Computer System Interface。

虽然SCSI目前也是用在CPU与外部存储设备之间,但这也并不是唯一,它的重点是CPU与外部设备(外部存储设备只是一种情况)。

就像SATA替代了ATA(IDE/PATA)一样,并行SCSI也基本被SAS替代。

iSCSI

iSCSI协议最早由IBM、CISCO、HP发起,2004年起作为正式的IETF标准,现有的iSCSI协议依据SAM2(SCSI Architecture Model-2)。

iSCSI中的i指的是Internet,它把SCSI命令和块状数据封装在TCP中在IP网络中传输。

在这里插入图片描述

u.2

U.2接口的原名并不叫U.2,而是叫SFF-8639。SFF的全称是SSD Form Factor,它的情况与m.2类似,也是一种硬盘接口规范

SATA、SAS和U.2的硬件接口很相似,它们的却别见下图:

在这里插入图片描述

参考文档

  • 【【硬核科普】硬盘的SATA M.2 NGFF NVME是什么意思,详解硬盘的总线协议与接口】 https://www.bilibili.com/video/BV1Qv411t7ZL/?share_source=copy_web&vd_source=1a74495878d79ff8fe92b4a1e8f7ed29
  • AHCI 和 SATA 之间的差异 | Dell 中国
  • 【科普】AHCI模式是什么,与IDE模式有什么区别? – Rene.E实验室支持中心 (zendesk.com)
  • 常见硬盘接口技术:从IDE、SCSI到SATA、SAS再到M.2、PCIe_scsi接口-CSDN博客

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

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

相关文章

二、Servlet

文章目录 1. Servlet技术1.1 什么是Servlet1.2 手动实现 Servlet 程序1.3 url 地址到 Servlet 程序的访问1.4 Servlet 的生命周期1.5 GET 和 POST 请求的分发1.6 通过继承 HttpServlet 实现 Servlet 程序1.7 使用 IDEA 创建 Servlet 程序1.8 Servlet 类的继承体系 2. ServletCo…

OpenFeign接口调用日志

一、介绍 在开发或测试环境中,需要更多的调试信息;在通过 Spring Cloud OpenFeign 调用远程服务的接口时,可能需要记录接口调用的日志详情,比如:请求头、请求参数、响应等。 Spring Cloud OpenFeign 打印 FeignClien…

Golang | Leetcode Golang题解之第413题等差数列划分

题目&#xff1a; 题解&#xff1a; func numberOfArithmeticSlices(nums []int) (ans int) {n : len(nums)if n 1 {return}d, t : nums[0]-nums[1], 0// 因为等差数列的长度至少为 3&#xff0c;所以可以从 i2 开始枚举for i : 2; i < n; i {if nums[i-1]-nums[i] d {t}…

java四种内置线程池介绍

目录 java线程池概述Executor接口ExecutorService接口 工具类快速创建线程池FixedThreadPoolSingleThreadExecutorCachedThreadPoolScheduledThreadPool内置线程池总结 java线程池概述 Executor框架是Java提供的一个用于处理并发任务的工具。它简化了线程管理&#xff0c;提供…

用Python实现时间序列模型实战——Day 24: 时间序列中的贝叶斯方法

一、学习内容 1. 贝叶斯时间序列分析的基本概念 贝叶斯方法基于贝叶斯统计&#xff0c;通过对数据的先验分布和似然函数进行推断&#xff0c;更新为后验分布。贝叶斯时间序列分析使用贝叶斯推断处理时间序列中的不确定性&#xff0c;适合处理复杂、不确定性高的时间序列问题。…

【RabbitMQ】可靠性传输

概述 作为消息中间件来说&#xff0c;最重要的任务就是收发消息。因此我们在收发消息的过程中&#xff0c;就要考虑消息是否会丢失的问题。结果是必然的&#xff0c;假设我们没有采取任何措施&#xff0c;那么消息一定会丢失。对于一些不那么重要的业务来说&#xff0c;消息丢失…

中秋佳节,月圆人团圆

文章目录 历史和文化起源与演变文化内涵习俗与活动 军事中秋节的军事背景中秋节的军事象征现代军营中的中秋节 月圆之夜&#xff0c;共赏婵娟传统文化&#xff0c;薪火相传团圆时刻&#xff0c;温馨满溢展望未来&#xff0c;祈愿美好 在这个金秋送爽、丹桂飘香的季节里&#xf…

web基础—dvwa靶场(五)File Upload

File Upload(文件上传) 上传的文件对 web 应用程序来说是一个巨大的风险&#xff0c;许多攻击的第一步是上传攻击代码到被攻击的系统上&#xff0c;然后攻击者只需要找到方法来执行代码即可完成攻击。也就是是说&#xff0c;文件上传是攻击者需要完成的第一步。 不受限制的文件…

Java或者前端 实现中文排序(调API的Demo)

目录 前言1. 前端2. Java 前言 前端 Vue 中的中文排序通常使用 JavaScript 提供的 localeCompare 方法来比较中文字符串 Java 后端可以使用 Collator 类来实现中文排序 1. 前端 在 Vue 中&#xff0c;使用 localeCompare 来实现中文字符串的排序&#xff1a; <template&…

如何在webots中搭建一个履带机器人

前期准备 下载webotswebots基本知识 a. 官方文档:Webots documentation: Track b. B站教程:webots-超详细入门教程(2020)_哔哩哔哩_bilibili搭建流程 搭建履带机器人主要使用到了webots中的track节点,这个节点是专门用来定义履带的相关属性,模拟履带运动的 首先,创建一个…

软考高级:嵌入式-嵌入式实时操作系统调度算法 AI 解读

讲解 嵌入式实时操作系统中的调度算法主要用于管理任务的执行顺序&#xff0c;以确保任务能够在规定时间内完成。针对你提到的几种调度算法&#xff0c;我会逐一进行通俗解释。 生活化例子 假设你在家里举办一个家庭聚会&#xff0c;家里人轮流使用一个游戏机玩游戏。你作为…

实例讲解使用Matlab_Simulink整车模型进行车速控制策略仿真测试验证方法

在进行VCU软件开发过程中&#xff0c;经常要设置一些扭矩控制相关的参数&#xff0c;一般可以通过经验先设置一版参数&#xff0c;然后通过与整车模型的联合仿真及实车标定优化相关参数&#xff0c;最终得到一版综合性能最优的参数作为最终程序定版参数。本文通过蠕行扭矩控制模…

C++八股文之STL篇

&#x1f916;个人主页&#xff1a;晚风相伴-CSDN博客 思维导图链接&#xff1a;STL 持续更新中…… &#x1f496;如果觉得内容对你有帮助的话&#xff0c;还请给博主一键三连&#xff08;点赞&#x1f49c;、收藏&#x1f9e1;、关注&#x1f49a;&#xff09;吧 &#x1f64…

[Python]一、Python基础编程

F:\BaiduNetdiskDownload\2023人工智能开发学习路线图\1、人工智能开发入门\1、零基础Python编程 1. Python简介 Python优点: 学习成本低开源适应人群广泛应用领域广泛1.1 Python解释器 下载地址:Download Python | Python.org 1.2 Python开发IDE -- Pycharm 2. 基础语法…

数据权限的设计与实现系列9——前端筛选器组件Everright-filter集成框架开发2

功能实现 ‍ 规则转换为 SQL 片段‍ 规则解析 首先我们来构造一个典型的规则&#xff0c;包括两个条件组&#xff0c;每个组由两个条件组成&#xff0c;由且与或两种逻辑关系&#xff0c;如下图&#xff1a; 然后看看生成的规则&#xff0c;如下&#xff1a; {"filt…

合宙Air201模组LuatOS:PWRKEY控制,一键解决解决关机难问题

不知不觉间&#xff0c;我们已经发布拉期课程&#xff1a;hello world初体验&#xff0c;点灯、远程控制、定位和扩展功能&#xff0c;你学的怎么样&#xff1f;很多伙伴表示已经有点上瘾啦&#xff01;合宙Air201&#xff0c;如同我们一路升级打怪的得力法器&#xff0c;让开发…

计算机的错误计算(九十六)

摘要 探讨 的计算精度问题。 计算机的错误计算&#xff08;五十五&#xff09;与&#xff08;七十八&#xff09;分别列出了 IEEE 754-2019 中的一些函数与运算。下面再截图给出其另外3个运算。 例1. 已知 x-0.9999999999966 . 计算 不妨在Python下计算&#xff0c;则有&am…

10 - UDP实验

在本章节中&#xff0c;我们将采用 network 与 socket 这两个第三方库来构建UDP网络连接的功能。具体而言&#xff0c;network 库将被应用于WiFi连接的建立&#xff0c;而 socket 库则基于 lwIP 协议栈来实现网络协议的连接。在实验环节&#xff0c;我们将利用 ESP32 开发板与远…

【自动驾驶】决策规划算法(一)决策规划仿真平台搭建 | Matlab + Prescan + Carsim 联合仿真基本操作

写在前面&#xff1a; &#x1f31f; 欢迎光临 清流君 的博客小天地&#xff0c;这里是我分享技术与心得的温馨角落。&#x1f4dd; 个人主页&#xff1a;清流君_CSDN博客&#xff0c;期待与您一同探索 移动机器人 领域的无限可能。 &#x1f50d; 本文系 清流君 原创之作&…

FL Studio 24.1.1.4285中文完整版新功能介绍及百度网盘下载

‌FL Studio 24‌版本引入了多项新功能和改进&#xff0c;旨在提升用户体验和工作效率&#xff0c;同时保持其强大的功能和灵活性。以下是一些主要的新功能&#xff1a; ‌CLAP插件支持‌&#xff1a;FL Studio 24支持Clever Audio Plug-in (CLAP)插件&#xff0c;这扩展了软件…