OCP NVME SSD规范解读-8.SMART日志要求-4

图片

SMART-21:这段描述解释了一个与设备内部I/O操作非对齐相关的计数器功能。该计数器记录的是由NVMe SSD执行的、起始地址未按照设备内部间接寻址单元(IU,Indirection Unit)大小进行对齐的写入I/O操作数量。

“Alignment”指的是每次I/O操作的开始位置是否符合设备IU的边界要求。即使某个I/O操作在长度上并未超过IU的范围,只要其起始地址没有精确地落在IU的整数倍边界上,就被视为未对齐的I/O。比如,非4K对齐的示意图如下:

图片

这个计数器会在电源循环(即设备断电再通电)后重置为零,意味着每一次重启或重启后,未对齐写I/O次数将重新开始统计。同时,该计数器不会发生溢出(wrap),确保了计数的有效性和完整性。

最后,在出厂时,这个计数器会被清零。这意味着当NVMe SSD从生产线上下线并进入市场流通之前,所有关于未对齐写入操作的统计信息都会被清除,以提供一个基准状态给最终用户。通过跟踪此计数器的变化,系统可以了解在SSD运行期间发生了多少次未对齐的写入操作,从而评估存储子系统的性能优化潜力以及潜在的数据传输效率损失。

SMART-23:这段描述是对NVMe固态硬盘的命名空间利用率(Total Namespace Utilization)的解释。

  • 对于只有一个命名空间的设备,其总命名空间利用率应当是直接复制自“Identify Namespace Data Structure”结构中字节23:16定义的命名空间利用率字段。这意味着在这种情况下,整个设备的存储使用情况可以通过查询单个命名空间的利用率数据来获得。

  • 而对于具有多个命名空间的设备,则总命名空间利用率应基于所有命名空间的利用率计算得出。这意味着在多命名空间设备上,需要汇总所有独立命名空间的已使用存储容量,并除以总的可用存储容量,从而得到整个设备层面的存储资源利用状况。

图片

简单来说,无论设备上有多少个命名空间,总命名空间利用率都是一个反映整个设备存储资源整体占用程度的重要指标。对于单命名空间设备,可以直接读取特定位置的数据结构获取该信息;而对于多命名空间设备,则需要综合所有命名空间的数据进行综合计算。

图片

图片

SMART-24:该计数器记录了由于供电电压下降导致设备启动电源丢失保护过程(Power Loss Protection,PLP)的次数。当设备首次检测到电源断供状况时,即触发PLP机制以确保数据在电源突然中断前能够安全地写入非易失性存储区域,此时这个计数器就会增加。

图片

值得注意的是,这个计数器并不包含对PLP健康检查操作的统计。也就是说,它仅针对实际发生的电源故障事件进行计数,并不包括为了预防性检查和维护PLP功能而执行的相关测试或例行检查。通过观察这个计数器的数值变化,可以了解到设备在真实使用场景下应对电源故障的能力以及 PLP 机制的实际触发频率。

SMART-25:该字段用于估算在整个设备使用寿命内,在假设写入放大系数为1的情况下(即设备执行的实际写操作次数等于主机请求的写操作次数),可能被写入到该设备的数据总量。这意味着在理想情况下,没有额外的内部管理和维护操作导致写入次数增加。

图片

这个数值应当等同于Endurance Group Log(标识符为09h)中的“Endurance Estimate ”字段值,这个基于闪存芯片的固有特性以及其可承受的擦写次数来计算的,它反映了设备能够安全存储数据的最大总字节数量,同时也是评估设备寿命和剩余可用空间的一个关键指标。因此,用户可以通过查看这一字段了解在正常工作条件下,不考虑任何写入放大效应时,设备理论上的最大数据写入容量。

SMART-29:这该计数器用于记录PCIe链路重新训练事件的数量,这些事件包括但不限于链路速度和链路宽度的变化。在实际运行期间,每当发生PCIe链路由于任何原因需要进行重新配置(如自动调整链路速度或宽度以保持最佳性能)时,这个计数器就会递增。

图片

值得注意的是,当设备经历复位操作或者电源循环导致的初始化过程中的链路训练阶段,并不会增加此计数器的值,因为这是正常启动流程的一部分,而不是运行时发生的突发状况。此外,在出厂设置下,即设备从工厂出货前,该计数器会被清零,确保用户拿到新设备时,所有监控数据都从零开始记录。

总结来说,这一计数器主要是用来监测PCIe链路在设备生命周期内因各种原因进行动态调整的次数,以便了解和评估PCIe接口的稳定性及潜在问题。

SMART-31:该计数器用于记录NVMe电源状态变化的次数,无论是由主机发起还是设备本身触发的。这一统计范围涵盖了电源状态变更而导致的NVMe电源状态变化情况。

此计数器只在运行时才会递增,也就是说,在设备实际运行过程中发生的任何NVMe电源状态切换都将被记录在这个累计计数器中。而在出厂设置阶段,即设备从工厂退出并交付给用户之前,这个计数器会被清零,确保初始状态下计数值为零。

简而言之,这是一个用于监控NVMe设备在其整个生命周期内电源状态改变频率的重要指标,包括由于与DSSD系统交互导致的电源状态转换,并且仅反映实际使用过程中的变化,不包括出厂重置后的初始化状态。

SMART-33:该字段显示了在允许回滚固件时所能退回到的最低固件版本号。这个字段是为了确保在进行固件回滚操作时,能够遵循一定的安全策略,避免由于意外或未经授权的回滚导致的安全风险。具体来说:

  • 如果当前激活的固件版本支持回滚到所有之前的固件版本,则此字段应被清零(值为0h)。这意味着用户可以不受限制地将固件回滚至任意早期版本。

  • 如果当前激活的固件版本不支持回滚到所有先前的固件版本,那么这个字段将会指示具有与当前活跃固件相同固件安全版本(Firmware Security Version)的最低固件版本的固件修订版号。这意味着在考虑回滚时,出于安全性或其他原因,设备会有一个允许回滚的固件版本下限,并且只能回滚到与当前版本具有相同安全级别的固件版本。 

小编每日撰文不易,如果您看完有所受益,欢迎点击文章底部左下角“关注”并点击“分享”、“在看”,非常感谢!

精彩推荐:

  • 对于超低延迟SSD,IO调度器已经过时了吗?

  • 浅析CXL P2P DMA加速数据传输的原理

  • HDD回暖于2024,与SSD决战于2028

  • SSD固态硬盘的黄金原则:抱最高的希望,做最坏的打算

  • PCIe 6.0生态业内进展分析总结

  • 详细解读QLC SSD无效编程问题

  • NVMe SSD IO压力导致宕机案例解读

  • 浅析PCIe 6.0功能更新与实现的挑战

  • 过度加大SSD内部并发何尝不是一种伤害

  • FIO测试参数与linux内核IO栈的关联分析

  • PCIe surprise down异常与DPC功能分析

  • 过度加大SSD内部并发何尝不是一种伤害

  • NVMe over CXL技术如何加速Host与SSD数据传输?

  • 为什么QLC NAND才是ZNS SSD最大的赢家?

  • SSD在AI发展中的关键作用:从高速缓存到数据湖

  • 浅析不同NAND架构的差异与影响

  • SSD基础架构与NAND IO并发问题探讨

  • 字节跳动ZNS SSD应用案例解析

  • SSD数据在写入NAND之前为何要随机化?

  • 深度剖析:DMA对PCIe数据传输性能的影响

  • NAND Vpass对读干扰和IO性能有什么影响?

  • HDD与QLC SSD深度对比:功耗与存储密度的终极较量

  • NVMe SSD:ZNS与FDP对决,你选谁?

  • 如何通过优化Read-Retry机制降低SSD读延迟?

  • 关于硬盘质量大数据分析的思考

  • 存储系统性能优化中IOMMU的作用是什么?

  • 全景解析SSD IO QoS性能优化

  • NVMe IO数据传输如何选择PRP or SGL?

  • 浅析nvme原子写的应用场景

  • 多维度深入剖析QLC SSD硬件延迟的来源

  • 浅析PCIe链路LTSSM状态机

  • 浅析Relaxed Ordering对PCIe系统稳定性的影响

  • 实战篇|浅析MPS对PCIe系统稳定性的影响

  • 浅析PCI配置空间

  • 浅析PCIe系统性能

  • 存储随笔《NVMe专题》大合集及PDF版正式发布!

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

2014年苏州大学837复试机试C/C++

2014年苏州大学复试机试 要求 要求用C/C编程;对程序中必要的地方进行注释。上机规则 请在电脑桌面上新建一个文件夹文件夹名为考试姓名(中文);考试完毕后,将所编写的文件放在上述文件中。 第一题(20分&…

使用ffmpeg madiamtx制作一个rtsp源

有很多人在跑rtsp解码的demo的时候, 苦于找不到一个可以拉流的源, 这里说一个简单的方法. 使用mediamtx, 加ffmpeg加mp4文件方式, 模拟一个rtsp的源. 基本架构就是这样. 在PC上, 这里说的PC可以是远程的服务器, 也可以是你的开发用的windows, 都行. 把mediamtx, 在pc上跑起来 …

如何有效避免市场恐慌性抛售?

布雷特斯坦伯格是一位备受尊敬的交易心理导师,曾担任华尔街多家顶级培训机构的心理导师,指导交易员们如何应对心理挑战。作为一名心理学教授和资深交易员,他对交易心理的理解远超常人。人们普遍认为,要想在交易领域取得成功&#…

BUUCTF-Real-[PHP]XXE

目录 1、原理 2、XXE漏洞产生的原因 3、开始复现 paylaod 复现 4、flag 1、原理 XML数据在传输过程中,攻击者强制XML解析器去访问攻击者指定的资源内容(本地/远程),外部实体声明关键字SYSTEM会令XML解析器读取数据&#xf…

基于SpringBoot的高校社团管理系统

末尾获取源码作者介绍:大家好,我是何时,本人4年开发经验,专注定制项目开发 更多项目:CSDN主页YAML 我欲乘风归去 又恐琼楼玉宇 高处不胜寒 -苏轼 目录 一、项目简介 二、开发技术与环境配置 2.1 SpringBoot框架 2…

sqlmap的使用

2024.1.31 sqlmap支持五种不同的注入模式&#xff1a; 1、布尔盲注2、时间盲注3、报错注入4、联合注入5、堆叠注入 检测注入 GET请求的基本格式 ​python sqlmap.py -u <测试网址> Ps:不知道为什么我的sqlmap使用时前面要加python&#xff0c;而大部分其他教程没提到…

Maven简述

Maven是用于管理和构建Java项目的工具&#xff0c;提供了一套标准化的项目结构&#xff0c;提供了一套标准化的构建流程&#xff0c;提供了一套依赖管理机制&#xff0c;通过Maven使得所有IDE构建的项目结构完全一样&#xff0c;让项目可以通用。 项目名称下分为src 和 pom.xm…

河南省考后天网上确认,请提前准备证件照哦

✔报名时间&#xff1a;2024年1月18号一1月24号 ✔报名确认和缴费&#xff1a;2024年1月 31号一2月4号 ✔准考证打印&#xff1a;2024年3月12号一3月17号 ✔笔试时间&#xff1a;2024年3月16日-2024年3月17日。 ✔面试时间&#xff1a;面试时间拟安排在2024年5月中旬 报名网址&…

【Pwn | CTF】BUUCTF test_your_nc1

天命&#xff1a;时隔两年&#xff0c;又杀回了pwn这里 拿到题目的提示&#xff0c;测试你的nc工具 这题直接连接就可以了&#xff0c;windows装了nc工具&#xff0c;直接耍 nc node5.buuoj.cn 28930 下面给一点nc命令的解释&#xff0c;文心一言得出来的 nc命令是一个用于网…

CTF-WEB的入门真题讲解

EzLogin 第一眼看到这个题目我想着用SQL注入 但是我们先看看具体的情况 我们随便输入admin和密码发现他提升密码不正确 我们查看源代码 发现有二个不一样的第一个是base64 意思I hava no sql 第二个可以看出来是16进制转化为weak通过发现是个弱口令 canyouaccess 如果…

[349. 两个数组的交集](C语言)(两种解法:双指针+排序,哈希)

✨欢迎来到脑子不好的小菜鸟的文章✨ &#x1f388;创作不易&#xff0c;麻烦点点赞哦&#x1f388; 所属专栏&#xff1a;刷题 我的主页&#xff1a;脑子不好的小菜鸟 文章特点&#xff1a;关键点和步骤讲解放在 代码相应位置 前提&#xff1a; 看本文章之前&#xff0c;建…

iOS开发Xcode中的ld64和-ld_classic是什么意思

在iOS应用程序开发中&#xff0c;Xcode是一款广泛使用的集成开发环境&#xff08;IDE&#xff09;&#xff0c;而链接器是构建应用程序的关键组成部分之一。在Xcode中&#xff0c;我们常常会遇到两个重要的概念&#xff1a;ld64和-ld_classic。它们分别代表了默认链接器和经典链…

Linux文本三剑客---awk经典案例

awk&#xff08;是一种处理文本文件的应用程序&#xff0c;它依次处理文件的每一行&#xff0c;并读取里面的每一个字段。&#xff09; awk 包含几个特殊的内建变量&#xff08;可直接用&#xff09;如下所示&#xff1a; 1、获取根分区剩余大小 #可以使用df -h命令来查看所有…

OceanBase与新加坡南洋理工大学合作,推进机器学习与数据库技术融合

1月31日&#xff0c;OceanBase和新加坡南洋理工大学&#xff08;以下简称“南洋理工大学”&#xff09;签署合作协议&#xff0c;探索数据库智能化的技术创新。合作将以OceanBase 4.0 小鱼&#xff08;Paetica&#xff09;为研究基础&#xff0c;推进机器学习与数据库技术融合。…

力扣hot100 数据流的中位数 大小根堆

Problem: 295. 数据流的中位数 文章目录 思路复杂度&#x1f496; Code 思路 &#x1f468;‍&#x1f3eb; 参考 大根堆维护较小值&#xff08;堆顶即中位数&#xff09;&#xff0c;小根堆维护较大值&#xff08;堆顶可能是中位数之一&#xff09;维护小堆长度较长&#x…

初谈C++:缺省参数函数重载

文章目录 缺省参数概述缺省参数的分类全缺省半缺省参数 注意 函数重载概述重载类型不同参数类型不同参数个数不同参数类型顺序不同 C支持函数重载的原理 缺省参数 概述 缺省参数是声明或定义函数时为函数的参数指定一个缺省值。在调用该函数时&#xff0c;如果没有指定实参则…

TI AM5708工业派

文章目录 一、TI AM5708工业派简介二、主要使用的功能三、J12 扩展接口四、NFS代码实现总结 一、TI AM5708工业派简介 TI AM5708工业派是基于美国德州仪器&#xff08;TI&#xff09;的AM5708处理器所开发的智能硬件工业派&#xff0c;主要面向工业生产、图像处理、智能人机交…

Java面试题之 IO(四)

Java面试题之 IO&#xff08;四&#xff09; 文章目录 Java面试题之 IO&#xff08;四&#xff09;随机访问流 文章来自Java Guide 用于学习如有侵权&#xff0c;立即删除 随机访问流 这里要介绍的随机访问流指的是支持随意跳转到文件的任意位置进行读写的 RandomAccessFile 。…

HTTPS实现原理

1 为什么需要HTTPS&#xff1f; HTTP 在进行数据传输时采用明文传输&#xff0c;数据包中的用户信息等隐私数据可以被第三方通过抓包等方式窃取&#xff0c;是不安全的。 如果客户端使用 MD5 加密算法对数据进行加密&#xff0c;由于加密后的结果是不可逆的&#xff0c;服务器…

LeetCode刷题日志-117填充每个节点的下一个右侧指针II

二叉树的题目&#xff0c;我认为二叉树必须要掌握递归的三种遍历算法&#xff0c;以及层序遍历算法才能做二叉树题目。这道题目我的想法是&#xff1a; 因为在二叉树每一层中&#xff0c;next指针指向的是的当前节点的右边的节点&#xff0c;所以&#xff0c;使用层序遍历&…