作者简介
刘孝冬,资深工程师
背景
目前在业界广泛使用的NVMe 协议,它的Spec1.3已经推出近两年了。Zoned Namespace作为一个新的特性会逐步被NVMe工作组接纳,并在未来的NVMe Spec 版本中支持。
Zoned Namespace中的zone名称,源自于为SMR硬盘(Shingled Magnetic Recording, 叠瓦式磁记录)所做的设计。相关标准化组织曾制定了ZBC(Zoned Block Commands,分区块命令集)与ZAC(Zoned-device ATA Commands, 区设备ATA指令集),来对SCSI和ATA协议进行拓展。所以zone所涉及的状态转换与软件栈,都与之前的SMR硬盘相符。
Zone状态转换
zone可能处于一下几种状态,它们的转换关系如图1所示:
Emptyzone内无有效数据
Explicitly Openedzone被Management命令显式的打开
Implicitly Openedzone处在打开状态,但并非是由Management命令打开的
Closedzone被Management命令显式的关闭
Fullzone处于写满状态
Offlinezone无法被读写
