数据结构 - 持久事件日志的事件支持与事件格式 (第215页)
持久事件日志的事件支持与事件格式
在 NVM Express® Base Specification, revision 2.0b 中,持久事件日志(Persistent Event Log)是一个非常重要的功能,用于记录设备运行过程中发生的关键事件。这些事件对于设备状态的追踪和管理非常重要,尤其是在设备发生故障或需要诊断时。
持久事件日志支持的事件类型
支持的事件位图(Supported Events Bitmap) 是一个 32 字节的字段,用于表示哪些持久事件日志事件被当前控制器支持。每个位对应一个特定的事件类型,设置为 1 表示该事件类型被支持,设置为 0 则表示该事件类型不被支持。
以下是一些关键事件的支持标志:
- 223: TCG Defined TCG Storage Interface Interactions Specification:是否支持 TCG(可信计算组)定义的存储接口交互事件。
- 222: Vendor Specific Event Supported:是否支持供应商特定的事件。
- 13: Thermal Excursion Event Support:是否支持温度变化事件。
- 12: Telemetry Log Create Event Support:是否支持遥测日志创建事件。
- 11: Set Feature Event Support:是否支持设置特性事件。
- 10: Sanitize Completion Event Support:是否支持清除完成事件。
- 09: Sanitize Start Event Support:是否支持清除开始事件。
- 08: Format NVM Completion Event Support:是否支持格式化 NVM 完成事件。
- 07: Format NVM Start Event Support:是否支持格式化 NVM 开始事件。
- 06: Change Namespace Event Support:是否支持命名空间变更事件。
- 05: NVM Subsystem Hardware Error Event Support:是否支持 NVM 子系统硬件错误事件。
- 04: Power-on or Reset Event Supported:是否支持开机或重置事件。
- 03: Timestamp Change Event Supported:是否支持时间戳变更事件。
- 02: Firmware Commit Event Supported:是否支持固件提交事件。
- 01: SMART/Health Log Snapshot Event Supported:是否支持 SMART/健康日志快照事件。
持久事件日志条目格式
每个持久事件条目都遵循一个固定的格式,具体包括事件类型、事件类型版本、事件头长度等信息。
事件头格式:
- Event Type (事件类型):
-
该字段指示该事件条目的类型。每种事件类型在协议的第 5.16.1.14.1 节中都有定义。
-
Event Type Revision (事件类型版本):
-
该字段包含一个数字,表示此事件数据结构遵循的事件类型修订版。
-
Event Header Length (EHL) (事件头长度):
- 该字段指示事件头信息的字节长度,计算方法是该字段的值加上 3。主机可以使用此值来计算指向 Vendor Specific Information 字段的偏移量。
持久事件日志条目:
持久事件条目包含在 Persistent Event 0 到 Persistent Event N 的字段中,其中 M 是事件的长度。这些事件存储了设备状态变更或重要操作的历史记录。
- Persistent Event 0 (第一个事件):指代持久事件日志中的第一个事件条目。
- Persistent Event N (最后一个事件):指代持久事件日志中的最后一个事件条目。
这些事件格式的详细信息如 Figure 225 所示,并且根据具体的事件类型会包含不同的字段。对于每种类型的事件,其数据结构都有详细的定义,允许设备或系统管理员了解设备运行过程中的关键变更。
总结
- 支持的事件位图:通过支持的事件位图,控制器可以标识支持的各种事件,这对于故障诊断、性能监控等非常重要。
- 持久事件日志条目格式:每个事件条目都通过一个标准的头部结构来标识,确保日志数据的一致性和易于解析。
- 事件记录和上下文管理:持久事件日志中的事件可以跨多个控制器和事件发生周期进行跟踪,确保在设备故障或重置后仍然能够追溯重要事件。
这一机制增强了 NVM Express 系统在运行时对关键事件的追踪能力,提升了故障排除的效率和设备管理的透明度。