一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

许可保护的启动装置的制作方法

2022-11-23 09:44:54 来源:中国专利 TAG:


1.本文中所公开的至少一些实施例大体上涉及存储器装置,且更特定来说,但不限于利用安全存储器装置来控制计算机系统的启动。


背景技术:

2.存储器子系统可包含存储数据的一或多个存储器装置。所述存储器装置可为例如非易失性存储器装置及易失性存储器装置。一般来说,主机系统可利用存储器子系统以将数据存储在所述存储器装置处及从所述存储器装置检索数据。


技术实现要素:

3.一方面,本公开涉及一种方法,其包括:由存储器装置产生与所述存储器装置相关联的测量数据;由所述存储器装置从所述存储器装置中的安全位置读取黄金测量,所述黄金测量基于与所述存储器装置相关联的所述数据的版本来产生;由所述存储器装置使用公钥来验证所述黄金测量;由所述存储器装置确定所述黄金测量是否等于所述测量数据;及由所述存储器装置在所述黄金测量等于所述测量数据时继续启动过程。
4.另一方面,本公开涉及一种用于有形地存储能够由存储器装置的控制器执行的计算机程序指令的非暂时性计算机可读存储媒体,所述计算机程序指令定义以下步骤:产生与所述存储器装置相关联的测量数据;从所述存储器装置中的安全位置读取黄金测量,所述黄金测量基于与所述存储器装置相关联的所述数据的版本来产生;使用公钥来验证所述黄金测量;确定所述黄金测量是否等于所述测量数据;及当所述黄金测量等于所述测量数据时继续启动过程。
5.进一步方面,本公开涉及一种存储器装置,其包括:存储阵列;及控制器,其经配置以:产生与所述存储器装置相关联的测量数据;从所述存储器装置中的安全位置读取黄金测量,所述黄金测量基于与所述存储器装置相关联的所述数据的版本来产生;使用公钥来验证所述黄金测量;确定所述黄金测量是否等于所述测量数据;及当所述黄金测量等于所述测量数据时继续启动过程。
附图说明
6.实施例在附图的图中以实例且非限制的方式进行说明,其中类似附图标记指示类似元件。
7.图1是根据本公开的一些实施例的存储器装置的框图。
8.图2是说明根据本公开的一些实施例的用于初始化存储器装置以进行安全启动的方法的流程图。
9.图3是说明根据本公开的一些实施例的用于执行存储器装置的初始启动的方法的流程图。
10.图4是说明根据本公开的一些实施例的用于执行存储器装置的安全启动的方法的
流程图。
11.图5是说明根据本公开的一些实施例的存储器系统的框图。
12.图6是说明展示用于本公开的各个实施例中的客户端或服务器装置的实例的计算装置的框图。
具体实施方式
13.在以下实施例中,存储器装置可包含用以支持自动测量能力、设置可测量位置及数据的能力、在制造期间将公钥保存在写入保护区域中的能力的软件及/或硬件;一或多个平台配置寄存器(pcr)位置;及用于启动映像的写入保护系统(例如,das u-boot)。
14.在所述实施例中,对应测量可使用服务器的私钥来产生且保存在存储器装置的平台配置寄存器(pcr)中。在一些实施例中,初始设置可由制造商在装置的制造期间执行。然而,在替代实施例中,客户(例如,原始设备制造商)可执行所述过程。除测量之外,还可将公钥写入到存储器装置的写入保护区域。
15.在初始设置(例如,制造之后的第一次启动)期间,存储器装置可测量软件(包含版本信息)、固件(包含版本信息)及驱动程序/硬件签名特征(例如,处理器标识符、完全限定域名、媒体存取控制地址等),它们是计算机或计算机系统独有的。接着,可在初始设置期间启用存储器装置的自动测量特征,使得存储器装置将在初始设置之后在启动时执行相同测量。在一些实施例中,这个自动测量特征仅可能够经由安全命令(例如,来自存储在写入保护区域中的公钥的所有者的带签名命令)停用。
16.当存储器装置再次启动时,其可执行测量(即,测量在初始设置期间测量的相同特征)以获得当前测量值。存储器装置接着可从pcr读取“黄金”测量且可使用公钥来验证所述测量以证实与pcr内容相关联的签名。
17.如果当前测量值与经确认黄金测量匹配,那么存储器装置可继续启动过程。如果不匹配,那么存储器装置可中止启动过程且作为一个非限制性实例,可执行恢复操作以将存储器装置恢复到受信任状态。
18.在一些实施例中,可仅对启动映像及硬件签名特征执行所述测量。因此,当网络存取通常不可用时,可在启动过程的早期执行测量证实。因此,所述测量可用作用以操作存储器装置的许可,因为所述许可通常将停用对存储器装置的整个存取。此外,由于私钥是秘密维持的,因此仅所有者可控制所述许可的分发。
19.在早期启动阶段中对许可硬件使用公钥基础设施(pki)进一步提供以下优点。首先,避免许可服务器的缺点、不可用性及成本,因为不需要此许可服务器。其次,公钥无法被攻击,因为其在写入保护区域中。再次,所公开实施例绕过更高级的许可检查,因为所述测量及检查是由所述装置在启动时完成。从次,整个过程可自动化且不需要用户输入。
20.图1是根据本公开的一些实施例的存储器装置的框图。
21.在实施例中,存储器装置100可包括非易失性存储器装置,例如固态驱动器(ssd)、快闪存储器驱动器、通用串行总线(usb)快闪存储器驱动器、嵌入式多媒体控制器(emmc)驱动器、通用快闪存储(ufs)驱动器、安全数字(sd)卡及硬盘驱动器(hdd)。
22.在实施例中,存储器装置100包含存储媒体104。在实施例中,存储媒体104可包括存储器单元的阵列。在一个实施例中,存储媒体104可包括nand快闪存储器单元的阵列。一
种类型的存储器单元,例如单电平单元(slc),可每单元存储一个位。其它类型的存储器单元,例如多电平单元(mlc)、三电平单元(tlc)、四电平单元(qlc)及五电平单元(plc)可每单元存储多个位。在一些实施例中,存储媒体104可包含存储器单元,例如slc、mlc、tlc、qlc、plc或其任何组合的一或多个阵列。在一些实施例中,存储器装置100可包含存储器单元的slc部分、mlc部分、tlc部分、qlc部分及/或plc部分。存储媒体104的存储器单元可被分组为可指代用以存储数据的存储器装置的逻辑单元的页面。对于一些类型的存储器(例如nand),页面可经分组以形成块。
23.尽管描述例如3d交叉点型及nand型存储器(例如,2d nand、3d nand)的非易失性存储器装置,但存储器装置100可基于任何其它类型的非易失性存储器,例如只读存储器(rom)、相变存储器(pcm)、自选择存储器、其它基于硫属化物的存储器、铁电晶体管随机存取存储器(fetram)、铁电随机存取存储器(feram)、磁随机存取存储器(mram)、自旋转移力矩(stt)-mram、导电桥接ram(cbram)、电阻式随机存取存储器(rram)、基于氧化物的rram(oxram)、“或非”(nor)快闪存储器、电可擦除可编程只读存储器(eeprom)等。
24.在所说明实施例中,存储媒体104包含两个区:写入保护区108及读取/写入区106。所公开实施例不限于仅两个区,且所说明区是实例性的。在实施例中,写入保护区108包括存储媒体104的无法由外部装置(例如,主机处理器)写入的区。相比之下,读取/写入区106可由此类外部装置读取及写入。
25.在实施例中,读取/写入区106可存储可执行代码120以及数据(未说明)。在实施例中,可执行代码120包括启动加载程序或类似启动代码。
26.在实施例中,写入保护区108可存储一或多个公钥112。在实施例中,公钥112包括公-私钥对的公钥部分。在一个实施例中,公钥112可由存储器装置100的制造商、存储器装置100的客户或所有者或另一经授权方产生,如本文中进一步论述。在所说明实施例中,公钥112可仅在制造期间或经由安全命令(例如,经鉴定命令)写入到写入保护区108。
27.在所说明实施例中,存储器装置100包含安全启动代码118。在一个实施例中,安全启动代码118可包括安全的第一阶段启动加载程序。在一些实施例中,安全启动代码118还可包括第二阶段启动加载程序。在一些实施例中,安全启动代码118可存储在无法被写入的专用存储媒体(例如,eeprom)中。在其它实施例中,安全启动代码118可存储在存储媒体中,例如在写入保护区108中。在一些实施例中,安全启动代码118可经配置以执行或管理图3及4中所描述的一些或所有框。在一些实施例中,安全启动代码118包括由存储器装置100在通电时执行的第一可执行代码。
28.在所说明实施例中,测量代码102通信地耦合到安全启动代码118及存储媒体104。在一些实施例中,测量代码102包括用以测量与存储器装置100相关联的数据的软件。在下图以及特定来说框202、304及404中更详细地描述这个测量的细节,其公开内容并入本文中。在一些实施例中,测量代码102可存储在无法被写入的专用存储媒体(例如,eeprom)中。在其它实施例中,测量代码102可存储在存储媒体中,例如在写入保护区108中。
29.在一些实施例中,测量代码102另外经配置以将代码的即时测量与经存储测量进行比较。在一个实施例中,存储器装置100包含一组平台控制寄存器。在所说明实施例中,pcr寄存器114包括在制造期间或响应于安全命令被写入的非易失性存储位置。在一些实施例中,pcr寄存器114可存储黄金测量116。在实施例中,黄金测量116包括描述与存储器装置
100相关联的数据的散列或其它值。在图2的论述中提供产生黄金测量116且在pcr寄存器114中存储所述黄金测量的细节,其并入本文中。在一些实施例中,pcr寄存器114可存储其它敏感数据,例如数字签名。在一个实施例中,pcr寄存器114可存储与黄金测量116相关联的数字签名。在其它实施例中,黄金测量116可存储在写入保护区108中。在此情况下,黄金测量116可为未签名的。
30.如本文中将进一步论述,安全启动代码118及测量代码102进行操作以控制超过第一阶段(及在一些实施例中,第二阶段)启动加载程序的启动过程。结合图2到4的以下流程图更全面地描述这些组件的交互的细节。在一些实施例中,安全启动代码118及测量代码102可由控制器,例如控制器506执行。
31.图2是说明根据本公开的一些实施例的用于初始化存储器装置以进行安全启动的方法的流程图。在实施例中,方法200可由集中式计算系统执行。例如,由存储器装置的制造商操作的服务器可在存储器装置的制造或初始配置期间执行方法200。
32.在框202中,方法200包括测量存储器装置的数据。
33.在实施例中,测量存储器装置的数据包括测量存储器装置的软件或固件。在一个实施例中,软件或固件可包括存储在存储器装置的存储阵列中的可执行代码及数据。在一些实施例中,软件或固件可存储在存储器装置的其它非易失性位置中。在一个实施例中,测量数据可进一步包括在所述测量中包含版本号或其它标识符。在实施例中,测量存储器装置的数据可包括测量驱动程序或硬件签名特征。在实施例中,驱动程序或硬件签名特征可包括中央处理单元(cpu)标识符(cpu_id)、完全限定域名(fqdn)、媒体存取控制(mac)地址或类似唯一值。在一些实施例中,方法200可测量一些或所有前述值。在一些实施例中,方法200关于存储器装置硬件测量这个数据。在一些实施例中,方法200还可测量来自包含存储器装置的计算机系统(例如,膝上型计算机、移动装置等)的数据。
34.在实施例中,框202中测量的软件及固件可包括由制造商在存储器装置的制造期间安装的已知软件或固件。就这一点而言,软件及/或固件可为受信任软件及/或固件。因此,框202中的测量可被视为与受信任软件及/或固件相关联的黄金测量。
35.在实施例中,测量包括组合所有待测量值(例如,软件、固件、版本信息、驱动程序/硬件签名特征)及使用所述待测量值来产生测量值。在实施例中,从待测量值产生测量值可包括使用例如sha-512、sm3或类似安全散列函数的单向函数来计算散列或其它结果。在此实施例中,待测量数据用作安全散列函数的输入且安全散列函数的(通常固定长度)输出可用作所述测量。
36.在一些实施例中,方法200可测量第二阶段启动加载程序代码或其它类似代码。在这个实施例中,如图4中将描述,第一阶段启动加载程序可测量第二阶段启动加载程序代码以在继续之前验证第二阶段启动加载程序。
37.在框204中,方法200可包括用私钥对框202中产生的测量进行签名。
38.在实施例中,私钥可包括服务器(例如,制造商)的私钥。在实施例中,私钥是使用非对称或公钥密码系统来产生的公/私钥对的部分。例如,rivest-shamir-adleman(rsa)或椭圆曲线密码术(ecc)密钥产生算法可用以产生公/私钥对。在一些实施例中,方法200可包括向认证机构(ca)或类似受信任实体注册密钥对的公钥。
39.在实施例中,方法200用私钥对所述测量进行签名。在实施例中,方法200可使用对
应签名算法以产生与所述测量相关联的数字签名,所述测量包括应用于待测量数据的安全散列函数的摘要输出,如上文所论述。例如,方法200可使用rsa签名算法或椭圆曲线数字签名算法(ecdsa)以使用所述测量及私钥来产生数字签名。
40.在一些实施例中,框204可为任选的。在此类实施例中,方法200可代替地将所述测量写入到存储器的写入保护区。在一些实施例中,这个写入保护区被阻止写入,除非接收到经鉴定命令。在实施例中,经鉴定命令包括使用服务器的对应于在框208中写入的公钥的私钥来进行签名的命令,如下文所论述。
41.在框206中,方法200可包括将带签名测量写入到存储器装置的平台配置寄存器(pcr)。
42.在实施例中,pcr可包括存储器装置中的安全寄存器或一组寄存器。在一些实施例中,pcr寄存器可位于存储器装置的安全区(例如,受信任平台模块或类似安全指定位址空间)中。在其它实施例中,pcr寄存器可包括仅可由存储器装置的控制器写入且不响应于外部命令的寄存器。
43.在框208中,方法200可包括将(框204中所论述的公-私钥对的)公钥写入到存储器装置的写入保护区。
44.在实施例中,在框208中写入的公钥可包括对应于用以在前述步骤中产生签名的私钥的公钥。在实施例中,方法200可将公钥写入到pcr。在其它实施例中,方法200可将公钥写入到存储阵列的专用区。在这个实施例中,控制器可将专用区配置为写入保护区。如本文中所使用,写入保护区可包括存储器装置的存储媒体的不可由外部装置写入的任何区。在一些实施例中,写入保护区可包括仅可由存储器装置的控制器内部的某些固件指令写入的区。
45.如上文所说明,方法200可产生用于每一存储器装置的受信任且唯一的数据。在实施例中,方法200将受信任代码(软件/固件)与装置独有的值(例如,cpu标识符、fqdn、mac地址)级联在一起以产生用于每一存储器装置的唯一签名。方法200接着可对测量进行签名以提供制造商对所述测量的验证,因此在确保安全性的情况下在制造期间证实所述测量。最后,方法200在装置上位置中提供其公钥以实现所述测量及签名的使用,如下文所描述。
46.尽管前述实例被描述为由制造商执行,但在一些实施例中,方法200可由存储器装置的所有者,例如原始设备制造商(oem)执行。在一些实施例中,存储器装置可配备有所有者的公钥。所有者接着可使用对应私钥来对命令进行签名。因此,存储器装置可使用公钥来鉴定所有者的命令(例如,通过证实使用私钥来产生的签名)。在实施例中,方法200可通过所有者发出指示存储器装置重新初始化pcr及公钥的安全命令来触发。在替代实施例中,主机处理器可执行步骤204及206且使用安全命令来将所述测量及签名提供到存储器装置。
47.图3是说明根据本公开的一些实施例的用于执行存储器装置的初始启动的方法的流程图。在实施例中,方法300可由在存储器装置上执行的固件执行。
48.在框302中,方法300可包括执行存储器装置的第一次启动。
49.在实施例中,第一次启动可包括在存储器装置从制造释放之后第一次对所述存储器装置通电。在实施例中,制造商可设置指示存储器装置在从制造释放之后尚未被启动的配置设置。例如,此设置可存储在pcr或其它安全位置中。在实施例中,存储器装置中的固件经配置以在启动时读取所述设置且可确定当前启动是否为第一次启动。在实施例中,在框
306之后,方法300可包括停用、删除或以其它方式移除配置设置,这指示启动是第一次启动。因此,在实施例中,方法300在存储器装置的寿命期间被执行一次,即,在从制造释放之后的初始启动。在替代实施例中,方法300可被执行多次。在此情况下,存储器装置可提供安全机制以启用配置设置的重新设置,从而指示下一次启动是第一次启动。作为实例,在一些实施例中,存储器装置可支持来自主机处理器的经鉴定命令,这允许经鉴定主机处理器更改配置设置。在此实例中,存储器装置的所有者(例如,购买者)可根据需要将存储器装置“复位”到出厂默认状态且因此重新执行方法300。
50.在框304中,方法300可包括测量存储器装置的数据。
51.在实施例中,可使用框202的描述中所描述的相同技术来执行框304。即,方法300可测量存储器装置的软件、固件及/或签名特征。应注意,这些值的内容可与框202中测量的那些内容不同;然而,在实施例中,框304中测量的数据的位置及类型与框202中测量的那些位置及类型相同。例如,方法200可测量在制造期间安装的启动加载程序代码,而方法300可测量当前存储在存储器装置上的启动加载程序代码。如将论述,这些测量之间的比较可用以选择性地启动存储器装置。
52.在一些实施例中,方法300可任选地包含使用所述测量以确定是否前进到框306。具体来说,在一些实施例中,方法300可在执行框304之后执行来自图4的框406及408。在这个实施例中,方法300可基于框304中的测量与框406及408中检索的黄金测量的比较来确定是否前进到框306。本质上,如果黄金测量与框304中执行的测量不匹配,那么方法300可选择性地停止所有操作。
53.在框306中,方法300可包括启用存储器装置的自动测量特征。
54.在实施例中,存储器装置可包含自动测量设置。此设置可存储在安全位置(例如,pcr或写入保护存储区域)中。在实施例中,自动测量设置可包括致使存储器装置在启动时执行测量的旗标或其它二进制指示符。如果停用自动测量设置,那么存储器装置可绕过测量且继续启动。然而,如果启用自动测量设置,那么存储器装置将执行与存储器装置相关联的数据的测量且使用这个测量以确定是否继续启动过程,如结合图4更全面地论述。
55.图4是说明根据本公开的一些实施例的用于执行存储器装置的安全启动的方法的流程图。在一些实施例中,方法400可由存储器装置经由例如存储器装置的固件执行。
56.在框402中,方法400可包括执行后续启动。
57.如本文中所使用,后续启动是指在框302中的初始启动之后发生的启动事件。后续启动可包括冷重新启动、暖或热重新启动、硬重新启动、通电复位或其中存储器装置的电源被中断的任何其它机制。在此后续启动之后,方法400可包括执行第一阶段启动加载程序(fsb)或类似初始启动层。在一些实施例中,方法400可作为fsb或类似早期阶段启动加载程序的部分来执行。应注意,在一些实施例中,方法400可在存储器装置可与外部装置或网络进行通信之前在启动过程的早期执行。
58.在框404中,方法400可包括测量存储器装置的数据。
59.在实施例中,可使用框202的描述中所描述的相同技术来执行框404。即,方法400可测量存储器装置的软件、固件及/或签名特征。应注意,这些值的内容可与框202中测量的那些内容不同;然而,在实施例中,框404中测量的数据的位置及类型与框202中测量的那些位置及类型相同。例如,方法200可测量在制造期间安装的启动加载程序代码,而方法400可
测量当前存储在存储器装置上的启动加载程序代码。如将论述,这些测量之间的比较可用以选择性地启动存储器装置。
60.在框406中,方法400从pcr读取所述测量。
61.在所说明实施例中,框406中读取的值包括框206中写入的值。简而言之,框406中读取的测量包括框402中测量的相同数据的黄金测量。在所说明实施例中,方法400可在启动序列的早期且由控制器及/或固件的受信任部分执行。这样,在实施例中,方法400可确定框404中的测量及pcr的读取是安全且不受篡改的。
62.在框408中,方法400用公钥验证黄金测量。
63.在实施例中,方法400从存储器装置的写入保护区域读取公钥。在实施例中,公钥包括图2的框208中写入的密钥。在一些实施例中,公钥可与存储器装置的制造商相关联。在其它实施例中,公钥可与客户(例如,oem)或其它受信任实体相关联。由于方法200将公钥写入到存储器装置的写入保护区,因此方法400可确保在框408中仅使用有效公钥。
64.在实施例中,方法400从写入保护区域加载公钥且读取与黄金测量相关联的签名。在实施例中,方法400可从例如pcr的指定位置或从写入保护区域读取签名。因此,在框408中,方法400获得与框406中读取的黄金测量相关联的公钥及数字签名。如上文所论述,在一些实施例中,省略签名且在此实施例中,将黄金测量存储在存储器装置的写入保护区中。在任一情况下,方法400可通过前述安全考量防止篡改黄金测量。
65.在实施例中,方法400通过使用公钥验证数字签名来验证黄金测量。具体来说,方法400使用经测量数据(框406)作为散列值。方法400接着可证实所述签名以从黄金测量计算预期散列。
66.在一些实施例中,如果方法400在框408中不能验证数字签名(及因此黄金测量),那么其可终止(例如,直接前进到框414)。
67.在框410中,方法400确定黄金测量与在框404中执行的测量是否相等。如上文所论述,在一些实施例中,框404中执行的测量产生第一散列值,且框406中读取的黄金测量包括第二散列值。在验证第二散列值之后(框408),方法400接着可在第一与第二散列之间执行逐位比较以确定所述散列是否相等。
68.在框412中,方法400确定第一散列(框404)与第二散列(框406)相等。在这种情况下,方法400前进以继续启动过程。在一个实施例中,可基于下一阶段(例如,第二阶段)启动加载程序来计算第一及第二散列。因此,在这个实施例中,方法400可在验证所述散列之后将控制转移到下一阶段启动加载程序。
69.在框414中,方法400确定第一散列(框404)与第二散列(框406)不相等。在这种情况下,所测量数据的当前内容(例如,下一阶段启动加载程序)与用以创建黄金测量的版本不相等。在这种情况下,方法400可中止启动过程。
70.在实施例中,作为框414的部分,方法400可终止存储器装置的通电程序。替代地或结合前文,方法400可起始恢复过程以将存储器装置恢复到可启动状态。在一个实施例中,方法400可从安全(例如,写入保护)位置加载受信任代码(例如,启动加载程序代码)且用受信任代码替换框404中测量的代码。方法400接着可从框404重新开始。在一些实施例中,如果网络连接性可用,那么方法400可从远程服务器检索受信任代码(经由输送层安全性、tls或类似客户端-服务器安全协议来保卫)。
71.在一些实施例中,方法200、300及400是使用启动映像(例如,软件)及硬件签名特征来执行且因此是存储器装置独有的。因此,当网络存取通常不可用时,可在启动过程的早期执行测量证实(框410)。由于黄金测量被安全地存储(在pcr位置或写入保护区中)且仅可由对应于由存储器装置存储的公钥的私钥的所有者更改,因此方法400可用作用以操作存储器装置的许可,这是因为所述许可通常将停用对存储器装置的整个存取。此外,由于私钥是秘密维持的,因此仅所有者可控制许可的分发。
72.图5是说明根据本公开的一些实施例的存储器系统的框图。图5的各种特征已在图1的描述中进行逻辑描述,且那些特征的全部内容以引用的方式并入本文中。
73.如图5中所说明,计算系统500包含经由总线518通信地耦合到存储器系统504的主机处理器502。存储器系统504包括控制器506,所述控制器经由总线/接口516通信地耦合到形成存储器阵列的一或多个存储器存储体514a-514n。如所说明,控制器506包含本地高速缓存505、固件510及错误校正码(ecc)模块512。
74.在所说明实施例中,主机处理器502可包括任何类型的计算机处理器,例如中央处理单元(cpu)、图形处理单元(gpu)或其它类型的通用或专用计算装置。主机处理器502包含允许在主机处理器502与存储器系统504之间传输地址、用户及控制数据的一或多个输出端口。在所说明实施例中,这个通信通过总线518执行。在一个实施例中,总线518包括输入/输出(i/o)总线或类似类型的总线。
75.存储器系统504负责管理一或多个存储器存储体514a-514n。在一个实施例中,存储体514a-514n包括nand快闪存储器裸片或其它配置的非易失性存储器。在一个实施例中,存储器存储体514a-514n包括存储器阵列。
76.存储体514a-514n是由控制器506管理。在一些实施例中,控制器506包括经配置以调解对及来自存储体514a-514n的存取的计算装置。在一个实施例中,控制器506包括安装在容纳存储体514a-514n的印刷电路板上的asic或其它电路系统。在一些实施例中,控制器506可与存储体514a-514n物理分离。控制器506通过接口516与存储体514a-514n进行通信。在一些实施例中,这个接口512包括物理有线(例如,示踪)接口。在其它实施例中,接口512包括用于与存储体514a-514n进行通信的标准总线。
77.控制器506包括各种模块505-512。在一个实施例中,各种模块505-512包括各种物理上相异的模块或电路。在其它实施例中,模块505-512可完全(或部分)以软件或固件实施。
78.如所说明,固件510包括控制器的核心且管理控制器506的所有操作。固件510可实施上文所描述的一些或所有方法。
79.图6是说明展示用于本公开的各个实施例中的客户端或服务器装置的实例的计算装置的框图。
80.计算装置600可包含比图6中所展示的组件更多或更少的组件,这取决于装置600的部署或使用。例如,服务器计算装置,例如机架式服务器可不包含音频接口652、显示器654、键盘656、照明器658、触觉接口662、全球定位系统(gps)接收器664或相机/传感器666。一些装置可包含未展示的额外组件,例如图形处理单元(gpu)装置、密码协处理器、人工智能(ai)加速器或其它外围装置。
81.如所述图中所展示,装置600包含经由总线624与大容量存储器630进行通信的中
央处理单元(cpu)622。计算装置600还包含一或多个网络接口650、音频接口652、显示器654、小键盘656、照明器658、输入/输出接口660、触觉接口662、任选全球定位系统(gps)接收器664及相机或其它光学、热或电磁传感器666。装置600可包含一个相机/传感器666或多个相机/传感器666。相机/传感器666在装置600上的定位可按照装置600型号、按照装置600能力及类似者或其某个组合更改。
82.在一些实施例中,cpu 622可包括通用cpu。cpu 622可包括单核或多核cpu。cpu 622可包括芯片上系统(soc)或类似嵌入式系统。在一些实施例中,可取代或组合cpu 622而使用gpu。大容量存储器630可包括动态随机存取存储器(dram)装置、静态随机存取存储器装置(sram)或快闪(例如,nand快闪)存储器装置。在一些实施例中,大容量存储器630可包括此类存储器类型的组合。在一个实施例中,总线624可包括外围组件互连快速(pcie)总线。在一些实施例中,总线624可包括多个总线而不是单个总线。
83.大容量存储器630说明用于存储例如计算机可读指令、数据结构、程序模块或其它数据的信息的计算机存储媒体的另一实例。大容量存储器630存储用于控制计算装置600的低级操作的基本输入/输出系统(“bios”)640。在所说明实施例中,bios 640可存储在只读存储器(rom),例如rom 634中。大容量存储器还存储用于控制计算装置600的操作的操作系统641。
84.应用程序642可包含计算机可执行指令,所述计算机可执行指令在由计算装置600执行时执行先前在前图的描述中所描述的方法(或所述方法的部分)中的任一者。在一些实施例中,实施方法实施例的软件或程序可由cpu 622从硬盘驱动器(未说明)读取且暂时存储在ram 632中。cpu 622接着可从ram 632读取软件或数据,处理所述软件或数据,且再次将所述软件或数据存储在ram 632中。
85.计算装置600可任选地与基站(未展示)或直接与另一计算装置进行通信。网络接口650有时被称为收发器、收发装置或网络接口卡(nic)。
86.音频接口652产生及接收音频信号,例如人声的声音。例如,音频接口652可耦合到扬声器及麦克风(未展示)以实现与其他人的远程通信或针对某个动作产生音频确认。显示器654可为液晶显示器(lcd)、气体等离子体、发光二极管(led)或与计算装置一起使用的任何其它类型的显示器。显示器654还可包含经布置以接收来自例如尖笔或人手的手指的对象的输入的触敏屏幕。
87.小键盘656可包括经布置以接收来自用户的输入的任何输入装置。照明器658可提供状态指示或提供光。
88.计算装置600还包括用于使用通信技术,例如usb、红外线、蓝牙等与外部装置进行通信的输入/输出接口660。触觉接口662将触觉反馈提供到客户端装置的用户。
89.任选gps接收器664可确定计算装置600在地球表面上的物理坐标,所述gps接收器通常输出作为纬度及经度值的位置。gps接收器664还可采用其它地理定位机制,包含但不限于三角测量、辅助gps(agps)、e-otd、ci、sai、eta、bss等,以进一步确定计算装置600在地球表面上的物理位置。然而,在一个实施例中,计算装置600可通过其它组件进行通信,提供可用以确定所述装置的物理位置的其它信息,包含例如mac地址、ip地址等。
90.已依据对计算机存储器内的数据位的操作的算法及符号表示来呈现前述详细描述的一些部分。这些算法描述及表示是被数据处理领域的技术人员用来最有效地向所属领
域的其他技术人员传达他们的工作实质的方式。算法在此被认为且通常被认为是导向所期望结果的自洽操作序列。所述操作是需要对物理量进行物理操纵的那些操作。通常,尽管并非必需的,但这些量采取能够被存储、组合、比较及以其它方式操纵的电或磁性信号的形式。已证明,有时主要出于通用的原因将这些信号称为位、值、元素、符号、字符、项、数字等是方便的。
91.然而,应记住,所有这些及类似术语应与适当物理量相关联且仅仅是应用于这些量的方便标签。本公开可涉及计算机系统或类似电子计算装置的动作及过程,所述计算机系统或类似电子计算装置将表示为计算机系统的寄存器及存储器内的物理(电子)量的数据操纵及变换成类似地表示为计算机系统存储器或寄存器或其它此类信息存储系统内的物理量的其它数据。
92.本公开还涉及用于执行本文中的操作的设备。这个设备可经专门构造用于预期目的,或其可包含由存储在计算机中的计算机程序选择性地激活或重新配置的通用计算机。此计算机程序可存储在计算机可读存储媒体中,例如但不限于任何类型的磁盘,包含软盘、光盘、cd-rom及磁光盘、只读存储器(rom)、随机存取存储器(ram)、eprom、eeprom、磁卡或光卡或适合存储电子指令的任何类型的媒体,其各自耦合到计算机系统总线。
93.本文中所提出的算法及显示并非固有地与任何特定计算机或其它设备相关。各种通用系统可与根据本文中的教示的程序一起使用,或可证明构造更专用设备来执行所述方法是方便的。多种这些系统的结构将如在以下描述中所阐述那样出现。另外,未参考任何特定编程语言描述本公开。将明白,可使用多种编程语言来实施如本文中所描述的本公开的教示。
94.本公开可被提供为计算机程序产品或软件,所述计算机程序产品或软件可包含其上存储有指令的机器可读媒体,所述指令可用以对计算机系统(或其它电子装置)进行编程以执行根据本公开的过程。机器可读媒体包含用于以机器(例如,计算机)可读的形式存储信息的任何机构。在一些实施例中,机器可读(例如,计算机可读)媒体包含机器(例如,计算机)可读存储媒体,例如只读存储器(“rom”)、随机存取存储器(“ram”)、磁盘存储媒体、光学存储媒体、快闪存储器组件等。
95.在本描述中,各种功能及操作被描述为由计算机指令执行或致使以简化所述描述。然而,所属领域的技术人员将认识到,此类表述的意思是所述功能是由一或多个控制器或处理器,例如微处理器执行计算机指令造成。替代地或组合地,所述功能及操作可使用具有或没有软件指令的专用电路系统,例如使用专用集成电路(asic)或现场可编程门阵列(fpga)来实施。实施例可使用没有软件指令或组合软件指令的硬接线电路系统来实施。因此,所述技术既不限于硬件电路系统及软件的任何特定组合,也不限于由数据处理系统执行的指令的任何特定源。
96.在前述说明书中,本公开的实施例已参考其特定实例实施例进行描述。将显而易见的是,在不脱离如所附权利要求书中所阐述的本公开的实施例的更广泛精神及范围的情况下,可对本公开进行各种修改。因此,说明书及附图应被视为说明性意义而非限制性意义。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献