利用命名空间管理隐藏存储空间的方法及相关产品与流程

xiaoxiao8天前  16


本技术一般地涉及存储。更具体地,本技术涉及用于管理存储设备的方法、访问隐藏空间的方法以及相关产品。


背景技术:

1、图1a展示了固态存储设备的框图。固态存储设备102同主机相耦合,用于为主机提供存储能力。主机同固态存储设备102之间可通过多种方式相耦合,耦合方式包括但不限于通过例如sata(serial advanced technology attachment,串行高级技术附件)、scsi(small computer system interface,小型计算机系统接口)、sas(serial attachedscsi,串行连接scsi)、ide(integrated drive electronics,集成驱动器电子)、usb(universal serial bus,通用串行总线)、pcie(peripheral component interconnectexpress,pcie,高速外围组件互联)、nvme(nvm express,高速非易失存储)、以太网、光纤通道、无线通信网络等连接主机与固态存储设备102。主机可以是能够通过上述方式同存储设备相通信的信息处理设备,例如,个人计算机、平板电脑、服务器、便携式计算机、网络交换机、路由器、蜂窝电话、个人数字助理等。存储设备102(下文中,将固态存储设备简称为存储设备)包括接口103、控制部件104、一个或多个nvm芯片105以及dram(dynamic randomaccess memory,动态随机访问存储器)110。

2、上述nvm芯片105包括nand闪存、相变存储器、feram(ferroelectric ram,铁电存储器)、mram(magnetic random access memory,磁阻存储器)、rram(resistive randomaccess memory,阻变存储器)等常见的存储介质。

3、上述接口103可适配于通过例如sata、ide、usb、pcie、nvme、sas、以太网、光纤通道等方式与主机交换数据。

4、上述控制部件104用于控制在接口103、nvm芯片105以及dram 110之间的数据传输,还用于存储管理、主机逻辑地址到闪存物理地址映射、擦除均衡、坏块管理等。控制部件104可通过软件、硬件、固件或其组合的多种方式实现,例如,控制部件104可以是fpga(field-programmable gate array,现场可编程门阵列)、asic(application specificintegrated circuit,应用专用集成电路)或者其组合的形式。控制部件104也可以包括处理器或者控制器,在处理器或控制器中执行软件来操纵控制部件104的硬件来处理io(input/output)命令。控制部件104还可以耦合到dram 110,并可访问dram 110的数据。在dram可存储ftl表和/或缓存的io命令的数据。

5、控制部件104包括闪存接口控制器(或称为介质接口控制器、闪存通道控制器),闪存接口控制器耦合到nvm芯片105,闪存接口控制器以遵循nvm芯片105的接口协议的方式向nvm芯片105发出命令,以操作nvm芯片105,并接收从nvm芯片105输出的命令执行结果。已知的nvm芯片接口协议包括“toggle”、“onfi”等。

6、在存储设备102中,利用ftl(flash translation layer,闪存转换层)来维护从逻辑地址(lba)到物理地址的映射信息。逻辑地址构成了操作系统等上层软件所感知到的固态存储设备的存储地址空间。物理地址是用于访问固态存储设备的物理存储单元的地址。在相关技术中还可利用中间地址形态实施地址映射。例如将逻辑地址映射为中间地址,进而将中间地址进一步映射为物理地址。存储了从逻辑地址到物理地址的映射信息的表结构被称为ftl表。ftl表是存储设备中的重要元数据。ftl表的条目记录了存储设备中以数据页为单位的地址映射关系。

7、一些存储设备的ftl由存储设备所耦合的主机提供,由主机的存储器存储ftl表,主机的cpu执行软件提供ftl。还有一些被设置在主机与存储设备之间的存储管理装置提供ftl。这些情况下,存储设备所接收的读/写命令指示物理地址。

8、主机提供给存储设备的命令可能访问ftl表的一个或多个条目所对应的逻辑地址。以及控制部件可能将从接口103接收的命令改变形态(例如,根据ftl条目所对应的逻辑地址空间大小切分命令),并处理改变形态的命令。为了清楚的目的,在本文中,以存储设备接收的读/写命令访问单一ftl条目为例来描述。

9、图1b展示了现有技术中逻辑地址空间的示意图。在现有技术中,逻辑地址空间是存储设备所提供的存储地址空间,主机可以使用逻辑地址空间中的元素(逻辑地址)来访问存储设备。一般来说,主机所能够访问的逻辑地址(logical block addressing,lba)空间与存储设备所能提供的lba空间大小相同。对于逻辑地址空间,存储设备是通过ftl表来进行管理逻辑地址与物理地址之间的映射。

10、图1c展示了主机访问存储设备的示意图。在图1c中,主机向存储设备发送io命令(读/写命令),io命令指示了要访问的逻辑地址(lba地址),存储设备基于控制部件中管理的ftl表将该lba地址转换为物理块地址(physical block address,pba),然后控制部件根据pba地址来访问nvm芯片。

11、随着数据存储技术的不断提高,各种各样的数据被存储于存储设备中,例如用户数据、操作系统、应用程序数据或主机恢复出厂设置所需的数据等,为了提高数据的安全性,有些数据并不希望被用户所看到(如主机恢复出厂设置所需的数据),而这些数据可以在存储设备中被隐藏存储,其中,数据的隐藏存储是指在主机侧用户或者应用程序看不到也无法访问这些数据。


技术实现思路

1、现有技术所说的隐藏存储的数据,通常是指对主机的应用程序隐藏,而对主机的操作系统是可见的,如果操作系统被入侵或者误操作,也会导致隐藏存储的数据存在被篡改或删除等风险。为了提高隐藏存储的数据的安全性,希望隐藏存储的数据对主机应用程序和操作系统都隐藏,正常情况下主机不能通过应用程序或者操作系统来对隐藏存储的数据进行访问以及修改等操作,仅在需要使用隐藏存储的数据时,主机才能够访问隐藏存储的数据,例如,主机需要恢复出厂设置时,主机能够访问在存储设备中隐藏存储的主机恢复出厂设置所需的数据,以执行出厂设置。

2、为了实现隐藏存储的数据对主机应用程序和操作系统都隐藏的功能,通常会将存储设备所提供逻辑地址空间进行分区,将需要隐藏存储的数据存储在隐藏空间,其中,隐藏空间是指在正常情况下存储设备所提供的逻辑地址空间不提供给主机,主机的应用程序或操作系统均无法访问隐藏空间中隐藏存储的数据。然而有些情况下,例如需要恢复出厂设置情况,主机需要去访问隐藏空间中隐藏存储的数据,此时隐藏空间需要能被主机所访问,也就是说,让隐藏空间对主机开放。因此,如何让隐藏空间根据实际需求对主机进行隐藏或者开放成为对隐藏存储的数据管理的一个重要环节。

3、本技术实施例所提供的方案,存储设备可以响应接收到的相应命令来调整其工作模式为普通模式或隐藏模式,以及设置在不同工作模式下的存储容量的值,以通过工作模式的调整实现对主机隐藏部分空间或对主机开放所隐藏的空间,使得存储设备满足对数据的隐藏需求。

4、进一步地,本技术实施例所提供的方案中调整工作模式的命令可以是自定义的模式切换命令,或者还可以是nvme协议所定义的set feature命令,通过不同命令自身特点来实现工作模式切换,可最大程度上满足用户的使用需求,同时确保存储设备与主机之间的交互适配性。

5、进一步,本技术实施例所提供的方案中引入两组概念,分别为主机可见的逻辑地址空间和逻辑地址空间,以及主机逻辑地址空间和设备逻辑地址空间(具体概念解释参见下文),可以结合主机可见的逻辑地址空间和逻辑地址空间来设置不同需求下存储设备的存储容量的值,或者可以结合主机逻辑地址空间和设备逻辑地址空间来设置不同需求下存储设备的存储容量的值,多样化地实现方式在确保满足对数据的隐藏需求的同时,进一步提升存储设备的性能。

6、根据本技术的第一方面,提供了根据本技术第一方面的第一用于管理存储设备的方法,包括响应于接收到触发存储设备调整工作模式的命令,设置所述存储设备的工作模式,其中,所述工作模式包括普通模式和隐藏模式;响应于设置所述存储设备的工作模式,还设置用于指示所述存储设备的存储容量的值;其中,所述隐藏模式所指示所述存储设备的存储容量的值不同于所述普通模式。

7、根据本技术的第一方面的用于管理存储设备的方法,提供了根据本技术第一方面的第二用于管理存储设备的方法,设置用于指示所述存储设备的存储容量的值包括:响应于将所述存储设备设置为普通模式,将所述存储设备在所述普通模式下的存储容量设置为第一容量值;或响应于将所述存储设备设置为隐藏模式,将所述存储设备在所述隐藏模式下的存储容量设置为第二容量值,其中所述第一容量值不同于所述第二容量值。

8、根据本技术的第一方面的第一或第二用于管理存储设备的方法,提供了根据本技术第一方面的第三用于管理存储设备的方法,所述调整工作模式的命令是模式切换命令或nvme协议所定义的set feature命令。

9、根据本技术的第一方面的第三用于管理存储设备的方法,提供了根据本技术第一方面的第四用于管理存储设备的方法,其中将所述存储设备设置为普通模式或隐藏模式包括:响应于所述命令为模式切换命令,若所述存储设备的当前工作模式为所述普通模式,则将所述存储设备的工作模式从所述普通模式切换至所述隐藏模式;若所述存储设备的当前工作模式为所述隐藏模式,则将所述存储设备的工作模式从所述隐藏模式切换至所述普通模式。

10、根据本技术的第一方面的第四用于管理存储设备的方法,提供了根据本技术第一方面的第五用于管理存储设备的方法,根据所述模式切换命令所指示的模式切换命令的参数的值,将所述存储设备的存储容量设置为所述第一容量值或所述第二容量值。

11、根据本技术的第一方面的第三用于管理存储设备的方法,提供了根据本技术第一方面的第六用于管理存储设备的方法,响应于所述命令为nvme协议所定义的set feature命令,根据所述set feature命令所指示的一段或多段逻辑地址区间设置所述存储设备的工作模式以及指示所述存储设备的存储容量的值。

12、根据本技术的第一方面的第二用于管理存储设备的方法至第六用于管理存储设备的方法之一,提供了根据本技术第一方面的第七用于管理存储设备的方法,其中逻辑地址空间是存储设备提供的存储地址空间,主机使用作为所述逻辑地址空间的元素的逻辑地址访问所述存储设备,其特征在于,设置用于指示所述存储设备的存储容量的值包括:响应于设置所述存储设备的工作模式,根据对主机可见的逻辑地址空间设置所述第一容量值或所述第二容量值,其中,所述主机可见的逻辑地址空间为所述存储设备报告给主机、且被主机按照块设备访问的存储地址空间。

13、根据本技术的第一方面的第二用于管理存储设备的方法至第六用于管理存储设备的方法之一,提供了根据本技术第一方面的第八用于管理存储设备的方法,其中设备逻辑地址空间是存储设备提供的存储地址空间,主机使用主机逻辑地址空间的元素访问所述存储设备,为处理主机提供的io命令,所述存储设备将io命令中的主机逻辑地址空间的元素转换为设备逻辑地址空间的元素,其特征在于,设置用于指示所述存储设备的存储容量的值,还包括:响应于设置所述存储设备的工作模式,基于主机逻辑地址空间设置所述第一容量值或所述第二容量值,其中所述主机逻辑地址空间为所述存储设备报告给主机、且被主机按照块设备访问的存储地址空间。

14、根据本技术的第一方面的第八用于管理存储设备的方法之一,提供了根据本技术第一方面的第九用于管理存储设备的方法,基于主机逻辑地址空间设置所述第一容量值或所述第二容量值,包括:响应于将所述存储设备的工作模式设置为隐藏模式,基于第一主机逻辑地址空间设置所述第二容量值;或响应于将所述存储设备的工作模式设置为普通模式,基于第二主机逻辑地址空间设置第一容量值,其中,所述第二主机逻辑地址空间包括所述第一主机逻辑地址空间和新增的主机逻辑地址空间,在所述隐藏模式下,新增的主机逻辑地址空间对主机不可见。

15、根据本技术的第一方面的第九用于管理存储设备的方法之一,提供了根据本技术第一方面的第十用于管理存储设备的方法,在所述第二主机逻辑地址空间中所述新增的主机逻辑地址空间位于所述第一主机逻辑地址空间之后。

16、根据本技术的第一方面的第九用于管理存储设备的方法或第十用于管理存储设备的方法,提供了根据本技术第一方面的第十一用于管理存储设备的方法,在所述普通模式下所述新增的主机逻辑地址空间被映射到所述设备逻辑地址空间中对主机不可见部分的任一位置。

17、根据本技术的第一方面的第七用于管理存储设备的方法或第八用于管理存储设备的方法,提供了根据本技术第一方面的第十二用于管理存储设备的方法,响应于所述setfeature命令所指示的一段或多段逻辑地址区间,根据所述一段或多段逻辑地址区间设置所述存储设备的存储容量为第一容量值或第二容量值。

18、根据本技术的第一方面的第十二用于管理存储设备的方法,提供了根据本技术第一方面的第十三用于管理存储设备的方法,根据所述一段或多段逻辑地址区间设置所述存储设备的存储容量为第一容量值或第二容量值包括:响应于所述set feature命令所指示的一段或多段逻辑地址区间描述为对主机可见的逻辑地址空间,设置所述存储设备的工作模式为普通模式,以及根据所述一段或多段逻辑地址区间设置所述存储设备的存储容量为第一容量值;或者响应于所述set feature命令所指示的一段或多段逻辑地址区间描述为对主机隐藏的逻辑地址空间,设置所述存储设备的工作模式为隐藏模式,以及根据所述一段或多段逻辑地址区间设置所述存储设备的存储容量为第二容量值。

19、根据本技术的第一方面的第十二用于管理存储设备的方法,提供了根据本技术第一方面的第十四用于管理存储设备的方法,设置用于指示所述存储设备的存储容量的值包括:响应于所述set feature命令所指示的一段或多段逻辑地址区间描述为主机逻辑地址空间,设置所述存储设备的工作模式为普通模式,以及根据所述一段或多段逻辑地址区间设置所述存储设备的存储容量为第一容量值;或响应于所述set feature命令所指示的一段或多段逻辑地址区间为设备逻辑地址空间中的部分,且该部分设备逻辑地址空间没有对应的主机逻辑地址空间,根据所述主机逻辑地址空间设置所述第二容量值。

20、根据本技术的第一方面的第七用于管理存储设备的方法之一,提供了根据本技术第一方面的第十五用于管理存储设备的方法,响应于所述命令为模式切换命令,将所述存储设备的工作模式设置为隐藏模式,根据所述主机可见的逻辑地址空间设置所述第二容量值;或者响应于所述命令为模式切换命令,将所述存储设备的工作模式设置为普通模式,根据所述主机可见的逻辑地址空间设置所述第一容量值。

21、根据本技术的第一方面的第十五用于管理存储设备的方法,提供了根据本技术第一方面的第十六用于管理存储设备的方法,还包括:设置所述主机逻辑地址空间与所述设备逻辑地址空间之间的关系,其中,所述设备逻辑地址空间是指所述存储设备的存储介质管理单元所管理的逻辑地址空间。

22、根据本技术的第一方面的第八用于管理存储设备的方法,提供了根据本技术第一方面的第十七用于管理存储设备的方法,响应于所述命令为模式切换命令,将所述存储设备的工作模式设置为隐藏模式,根据主机逻辑地址空间设置所述第二容量值;或者响应于所述命令为模式切换命令,将所述存储设备的工作模式设置为普通模式,根据所述主机逻辑地址空间设置所述第一容量值。

23、根据本技术的第一方面的第十五用于管理存储设备的方法至第十七用于管理存储设备的方法之一,提供了根据本技术第一方面的第十八用于管理存储设备的方法,还包括:响应于所述命令为模式切换命令,且所述工作模式设置为隐藏模式,则所述主机逻辑地址空间的大小小于所述设备逻辑地址空间的大小;或响应于所述命令为模式切换命令,且所述工作模式设置为普通模式,所述主机逻辑地址空间的大小等于所述设备逻辑地址空间的大小。

24、根据本技术的第一方面的第十五用于管理存储设备的方法至第十七用于管理存储设备的方法之一,提供了根据本技术第一方面的第十九用于管理存储设备的方法,还包括:响应于所述命令为set feature命令,且所述工作模式设置为隐藏模式,则所述主机逻辑地址空间的大小等于所述设备逻辑地址空间中除所述set feature命令所指示的一段或多段逻辑地址区间之外的逻辑地址空间的大小;响应于所述命令为set feature命令,且所述工作模式设置为普通模式,所述主机逻辑地址空间的大小等于所述set feature命令所指示的一段或多段逻辑地址区间的大小。

25、根据本技术的第一方面的第十五用于管理存储设备的方法至第十七用于管理存储设备的方法之一,提供了根据本技术第一方面的第二十用于管理存储设备的方法,响应于所述命令为set feature命令,且所述工作模式设置为普通模式,所述set feature命令所指示的一段或多段逻辑地址区间的大小小于或等于所述设备逻辑地址空间。

26、根据本技术的第一方面的第十二用于管理存储设备的方法或第十四用于管理存储设备的方法,提供了根据本技术第一方面的第二十一用于管理存储设备的方法,还包括:响应于所述命令为模式切换命令,且所述工作模式设置为隐藏模式,则所述主机可见的逻辑地址空间的大小小于所述逻辑地址空间的大小;或响应于所述命令为模式切换命令,且所述工作模式设置为普通模式,所述主机可见的逻辑地址空间的大小等于所述逻辑地址空间的大小。

27、根据本技术的第一方面的第十二用于管理存储设备的方法或第十四用于管理存储设备的方法,提供了根据本技术第一方面的第二十二用于管理存储设备的方法,还包括:响应于所述命令为set feature命令,且所述工作模式设置为隐藏模式,则所述主机可见的逻辑地址空间的大小等于所述逻辑地址空间中除所述set feature命令所指示的一段或多段逻辑地址区间之外的逻辑地址空间的大小;响应于所述命令为set feature命令,且所述工作模式设置为普通模式,所述主机可见的逻辑地址空间的大小等于所述set feature命令所指示的一段或多段逻辑地址区间的大小。

28、根据本技术的第一方面的第十二用于管理存储设备的方法或第十四用于管理存储设备的方法,提供了根据本技术第一方面的第二十三用于管理存储设备的方法,响应于所述命令为set feature命令,且所述工作模式设置为普通模式,所述set feature命令所指示的一段或多段逻辑地址区间的大小小于或等于所述逻辑地址空间。

29、根据本技术的第一方面的第二用于管理存储设备的方法至第二十三用于管理存储设备的方法之一,提供了根据本技术第一方面的第二十四用于管理存储设备的方法,所述方法还包括:响应于接收到idenfity命令,若所述存储设备当前的工作模式为普通模式,将所述第一容量值反馈给主机;若所述存储设备当前的工作模式为隐藏模式,将所述第二容量值反馈给主机。

30、根据本技术的第一方面的第七用于管理存储设备的方法或第八用于管理存储设备的方法,提供了根据本技术第一方面的第二十五用于管理存储设备的方法,所述方法还包括:响应于接收到io命令,获取所述io命令所访问的逻辑地址;以及响应于所述io命令所访问的逻辑地址超出对主机可见的逻辑地址空间或所述io命令所访问的主机逻辑地址超出主机逻辑地址空间,返回报错信息。

31、根据本技术的第一方面的第七用于管理存储设备的方法或第八用于管理存储设备的方法,提供了根据本技术第一方面的第二十六用于管理存储设备的方法,所述方法还包括:响应于执行垃圾回收操作,对所述存储设备所对应的逻辑地址空间或设备逻辑地址空间所指示的物理地址空间执行垃圾回收操作。

32、根据本技术的第一方面的第一用于管理存储设备的方法至第二十六用于管理存储设备的方法之一,提供了根据本技术第一方面的第二十七用于管理存储设备的方法,所述方法还包括:将所述存储设备的出厂工作模式设置为所述隐藏模式。

33、根据本技术的第一方面的第二十七用于管理存储设备的方法,提供了根据本技术第一方面的第二十八用于管理存储设备的方法,将所述存储设备的出厂工作模式设置为所述隐藏模式包括:设置所述主机可见的逻辑地址空间以及所述主机隐藏的逻辑地址空间,其中,对主机隐藏的逻辑地址空间为在隐藏模式下所述存储设备不报告给主机、且对主机不可见或者无法访问的存储地址空间。

34、根据本技术的第一方面的第二十八用于管理存储设备的方法,提供了根据本技术第一方面的第二十九用于管理存储设备的方法,所述主机隐藏的逻辑地址空间位于所述主机可见的逻辑地址空间之后。

35、根据本技术的第一方面的第一用于管理存储设备的方法至第二十九用于管理存储设备的方法之一,提供了根据本技术第一方面的第三十用于管理存储设备的方法,所述方法还包括:响应于所述存储设备下电后再上电,将所述存储设备的工作模式切换至隐藏模式或保持为下电前的工作模式。

36、根据本技术的第一方面的第三十用于管理存储设备的方法,提供了根据本技术第一方面的第三十一用于管理存储设备的方法,将所述存储设备的工作模式切换至隐藏模式或保持为下电前的工作模式包括:将所述存储设备的工作模式设置为所述模式切换命令所指示的再次上电后的工作模式;或者将所述存储设备的工作模式设置为所述存储设备中的控制器或非易失性存储器中记录的再次上电后的工作模式;或者将所述存储设备的工作模式设置为所述存储设备启动时获得的工作模式;或者响应于下电前通过set feature命令所设置所述存储设备为隐藏模式,将所述存储设备的工作模式设置为下电前所设置的隐藏模式。

37、根据本技术的第二方面,提供了根据本技术第二方面的用于管理存储设备的方法,包括:响应于接收到触发存储设备调整工作模式的命令,设置所述存储设备的工作模式,其中,所述工作模式包括普通模式和隐藏模式;响应于设置所述存储设备的工作模式,设置第一命名空间状态,其中,所述第一命名空间为在隐藏模式下主机不可访问的存储空间。

38、根据本技术的第二方面的第一用于管理存储设备的方法,提供了根据本技术第二方面的第二用于管理存储设备的方法,存储设备包括第一命名空间,其中,设置第一命名空间状态,包括:响应于将所述存储设备设置为普通模式,设置第一命名空间为开放状态;或响应于将所述存储设备设置为隐藏模式,设置第一命名空间为隐藏状态。

39、根据本技术的第二方面的第二用于管理存储设备的方法,提供了根据本技术第二方面的第三用于管理存储设备的方法,设置第一命名空间开放状态,包括:响应于所述第一命名空间为用户空间,设置所述第一命名空间为第一状态,其中,所述第一状态为对主机开放;或响应于所述第一命名空间为预留空间,设置所述第一命名空间为第二状态,其中,所述第二状态为对存储设备开放。

40、根据本技术的第二方面的第二或第三用于管理存储设备的方法,提供了根据本技术第二方面的第四用于管理存储设备的方法,设置第一命名空间隐藏状态,包括:响应于所述第一命名空间为用户空间,设置所述第一命名空间为第三状态,其中,所述第三状态为对主机隐藏;或响应于所述第一命名空间为预留空间,设置所述第一命名空间为第四状态,其中,所述第四状态为对存储设备隐藏。

41、根据本技术的第二方面的第三或第四用于管理存储设备的方法,提供了根据本技术第二方面的第五用于管理存储设备的方法,其中,响应于存储设备的工作模式从所述普通模式切换至所述隐藏模式,设置所述第一命名空间由开放状态切换到隐藏状态;响应于存储设备的工作模式从所述隐藏模式切换至所述普通模式,设置所述第一命名空间由隐藏状态切换到开放状态。

42、根据本技术的第二方面的第三至第五任一用于管理存储设备的方法,提供了根据本技术第二方面的第六用于管理存储设备的方法,其中,响应于所述第一命名空间为预留空间,切换所述存储设备的工作模式,提供给主机的用户空间大小不变,存储设备可用的预留空间大小发生变化;响应于所述第一命名空间为用户空间,切换所述存储设备的工作模式,提供给主机的用户空间大小发生改变,存储设备可用的预留空间大小不变。

43、根据本技术的第二方面的第三至第六任一用于管理存储设备的方法,提供了根据本技术第二方面的第七用于管理存储设备的方法,存储设备还包括第二命名空间,其中,所述第二命名空间在隐藏或者普通模式下主机均可见;响应于所述第一命名空间为所述第一状态,接收到主机发送的io命令,基于所述io命令所指示的命名空间以及主机逻辑地址访问所述第一命名空间或者访问所述第二命名空间;其中,所述主机逻辑地址为主机逻辑地址空间中的元素,所述主机逻辑地址空间为所述存储设备报告给主机、且被主机按照块设备访问的存储地址空间。

44、根据本技术的第二方面的第七用于管理存储设备的方法,提供了根据本技术第二方面的第八用于管理存储设备的方法,其中,所述主机逻辑地址空间包括第一主机逻辑地址空间和第二主机逻辑地址空间;所述第一主机逻辑地址空间与所述第一命名空间对应,所述第二主机逻辑地址空间与第二命名空间对应。

45、根据本技术的第二方面的第八用于管理存储设备的方法,提供了根据本技术第二方面的第九用于管理存储设备的方法,其中,所述第一主机逻辑地址空间与所述第二主机逻辑地址空间中部分或者全部逻辑地址重叠。

46、根据本技术的第二方面的第七至第九任一用于管理存储设备的方法,提供了根据本技术第二方面的第十用于管理存储设备的方法,其中,接收主机发送的第一io命令,其中,所述第一io命令指示第一命名空间标识以及第一逻辑地址;基于所述第一命名空间标识以及所述第一逻辑地址访问所述第一命令空间中第一逻辑地址所对应的第一物理地址;响应于接收主机发送的第二io命令,其中,所述第二io命令指示第二命名空间标识以及第一逻辑地址;以及基于所述第二命名空间标识以及所述第一逻辑地址访问所述第二命令空间中第一逻辑地址所对应的第二物理地址。

47、根据本技术的第二方面的第三至第十任一用于管理存储设备的方法,提供了根据本技术第二方面的第十一用于管理存储设备的方法,其中,若所述第一命名空间为所述第二状态,将所述第一命名空间作为预留存储空间,以及利用预设的预留存储空间以及所述第一命名空间对应的存储空间执行垃圾回收操作;若所述第一命名空间为所述第一状态,仅利用预设的预留存储空间执行垃圾回收操作。

48、根据本技术的第二方面的第三至第十一任一用于管理存储设备的方法,提供了根据本技术第二方面的第十二用于管理存储设备的方法,其中,响应于所述第一命名空间为所述第三状态,接收到第三io命令;响应于所述第三io命令所指示的命名空间标识为所述第一命名空间标识,返回报错信息。

49、根据本技术的第二方面的第一至第十二任一用于管理存储设备的方法,提供了根据本技术第二方面的第十三用于管理存储设备的方法,还包括:响应于所述第一命名空间设置为隐藏状态,以及收到identify命令,将所述第一命名空间不提供给主机;响应于所述第一命名空间设置为开放状态,以及收到identify命令,将所述第一命名空间提供给主机。

50、根据本技术的第二方面的第一至第十二任一用于管理存储设备的方法,提供了根据本技术第二方面的第十四用于管理存储设备的方法,还包括:响应于所述第一命名空间设置为隐藏状态,所述第一命名空间被锁定;响应于收到identify命令,将所述第一命名空间提供给主机;响应于收到访问第一命名空间的第四io命令,向主机反馈访问失败信息。

51、根据本技术的第二方面的第一至第十二任一用于管理存储设备的方法,提供了根据本技术第二方面的第十五用于管理存储设备的方法,还包括:响应于所述第一命名空间设置为开放状态,所述第一命名空间被解锁锁;响应于收到identify命令,将所述第一命名空间提供给主机;响应于收到访问第一命名空间的第五io命令,基于所述第五io命令访问第一命名空间获取要访问的数据。

52、根据本技术的第二方面的第一至第十六任一用于管理存储设备的方法,提供了根据本技术第二方面的第十七用于管理存储设备的方法,启动预设程序,其中,所述预设程序用于控制数据备份操作;响应于收到第一自定义命令,通过预设程序将所述存储设备的工作模式切换至普通模式,以及将所述第一自定义命令指示的备份数据写入到第一命名空间;以及响应于收到第二自定义命令,通过预设程序将所述存储设备的工作模式切换至隐藏模式。

53、根据本技术的第二方面的第一至第十七任一用于管理存储设备的方法,提供了根据本技术第二方面的第十八用于管理存储设备的方法,其中,所述存储设备包括多个第一命名空间,不同第一命名空间用于存储不同备份数据。

54、根据本技术的第三方面,提供了根据本技术第三方面的第一访问隐藏空间的方法,包括:启动指定程序以及通过所述指定程序生成第一自定义命令,并将所述第一自定义命令发送给存储设备;其中,所述第一自定义命令指示向主机开放隐藏的命名空间,其中所述隐藏的命名空间在所述隐藏模式下对主机不可见,且在所述普通模式下对主机可见;基于所述第一自定义命令从所述隐藏的命名空间中读取数据,并基于读取数据执行指定操作。

55、根据本技术的第三方面的第一访问隐藏空间的方法,提供了根据本技术第三方面的第二访问隐藏空间的方法,其中,所述指定程序为bios程序或统一可扩展固件接口uefi程序。

56、根据本技术的第三方面的第一或第二访问隐藏空间的方法,提供了根据本技术第三方面的第三访问隐藏空间的方法,通过所述指定程序生成第一自定义命令,包括:响应于收到用户的需求信息以及隐藏的命名空间的密码,通过所述指定程序基于所述需求信息以及所述密码生成所述第一自定义命令。

57、根据本技术的第三方面的第三访问隐藏空间的方法,提供了根据本技术第三方面的第四访问隐藏空间的方法,其中,响应于所述需求信息为恢复系统设置,通过所述指定程序基于要恢复的系统设置以及所述隐藏的命令空间的密码生成第一自定义命令;响应于基于所述第一自定义命令从所述隐藏的命名空间中加载恢复系统设置的第一备份数据,基于所述第一备份数据恢复系统设置。

58、根据本技术的第三方面的第四访问隐藏空间的方法,提供了根据本技术第三方面的第五访问隐藏空间的方法,其中,响应于收到用户的按键操作,通过bios程序或统一可扩展固件接口uefi程序基于所述按键操作展示一键恢复菜单;获取用户从所述一键恢复菜单上选择的要恢复的系统设置以及所述第一密码,基于所述要恢复的系统设置以及所述密码生成所述第一自定义命令;将所述第一自定义命令发送给存储设备以及接收主机基于所述第一自定义命令从所述隐藏的命名空间中加载所述第一备份数据,基于所述第一备份数据来恢复出厂设置。

59、根据本技术的第三方面的第五访问隐藏空间的方法,提供了根据本技术第三方面的第六访问隐藏空间的方法,响应于基于所述第一备份数据来恢复出厂设置完成后,通过所述指定程序生成第二自定义命令,并将所述第二自定义命令发送给存储设备,其中,所述第二自定义命令用于指示存储设备将工作模式切换到隐藏模式;重启加载恢复出厂设置后的数据。

60、根据本技术的第三方面的第一至第六任一访问隐藏空间的方法,提供了根据本技术第三方面的第七访问隐藏空间的方法,存储设备包括多个隐藏的命名空间,不同隐藏的命名空间用于备份不同的数据,还包括:响应于所述需求信息为要读取的第二备份数据以及存储所述第二备份数据的第一隐藏命名空间的密码,通过所述指定程序基于所述第二备份数据以及所述第一隐藏命名空间的密码生成第三自定义命令;响应于基于所述第三自定义命令从所述隐藏的命名空间中加载所述第二备份数据。

61、根据本技术的第四方面,提供了根据本技术第二方面的一种控制部件,所述控制部件用于实现本技术的第一方面或第二方面用于管理存储设备的方法之一。

62、根据本技术的第五方面,提供了根据本技术第五方面的一种存储设备,包括存储介质和如本技术第四方面所述的控制部件。

63、根据本技术的第六方面,提供了根据本技术第六方面的一种主机,所述主机用于实现本技术的第三方面访问隐藏空间的方法之一。


技术特征:

1.一种用于管理存储设备的方法,其特征在于,包括:

2.根据权利要求1所述的方法,其特征在于,设置第一命名空间状态,包括:

3.根据权利要求2所述的方法,其特征在于,其中,

4.根据权利要求1-3任一项所述的方法,其特征在于,还包括:

5.根据权利要求1-3任一项所述的方法,其特征在于,还包括:

6.根据权利要求1-3任一项所述的方法,其特征在于,还包括:

7.根据权利要求1-6任一项所述的方法,其特征在于,其中,

8.一种访问隐藏空间的方法,其特征在于,包括:

9.根据权利要求8所述的方法,其特征在于,其中,

10.一种控制部件,其特征在于,所述控制部件用于实现权利要求1至7任一项所述的用于管理存储设备的方法。


技术总结
本申请涉及利用命名空间管理隐藏存储空间的方法及相关产品,该方法包括:响应于接收到触发存储设备调整工作模式的命令,设置所述存储设备的工作模式,其中,所述工作模式包括普通模式和隐藏模式;响应于设置所述存储设备的工作模式,设置第一命名空间状态,其中,述第一命名空间为在隐藏模式下主机不可访问的存储空间。本申请的技术方案通过命名空间来管理隐藏模式下主机不可访问的存储空间,通过调整命名空间状态实现对主机隐藏部分空间或对主机开放所隐藏的空间,使得存储设备满足对数据的隐藏需求。

技术研发人员:王祎磊,李小凤,何蒙
受保护的技术使用者:成都忆芯科技有限公司
技术研发日:
技术公布日:2024/9/23

最新回复(0)