【技术实现步骤摘要】
用于裸机云的安全且高效微码(uCode)热升级
技术介绍
[0001]云托管服务和应用的使用在过去十年中呈爆炸式增长,并继续以指数速度增长。云托管服务和应用通常在容纳数千个计算平台(例如,服务器、刀片服务器、服务器模块、微型服务器等)的大型数据中心中实现。通常,这些平台被配置为虚拟化执行,该虚拟化执行用于托管虚拟机和“容器”、或者在其中运行软件应用的类似物。
[0002]每个平台包括物理硬件、固件(也称为BIOS
‑
基本输入输出系统)和软件。平台的信任根是平台硬件和固件,虽然不太容易受到恶意行为者的影响,但软件仍然可能构成风险。出于安全和其他原因(例如,性能),可能需要更新平台固件。
[0003]历史上,个人计算机(PC)平台中的BIOS是安装在只读存储器(ROM) 中的单片代码块,其中,通过更换BIOS ROM芯片来更新BIOS。随后, BIOS安装在EEPROM(电可擦除可编程只读存储器)中,并且可以通过固件更新(完全)更换。大约在1998年,英特尔公司开始开发称为可扩展固件接口(EFI)的模块化固件架构。200 ...
【技术保护点】
【技术特征摘要】
1.一种方法,包括:在包括其上执行租户环境中的主机操作系统和应用的一个或多个处理单元的平台上的所述主机操作系统的运行时操作期间,采用带外微码(uCode)热升级过程来更新所述一个或多个处理单元中的至少一个的固件uCode,其中,所述固件uCode更新包括在带外控制器板载的存储器中缓冲的并且从所述存储器复制到所述一个或多个处理单元中的所述至少一个的uCode补丁。2.如权利要求1所述的方法,其中,所述uCode热升级过程对所述租户环境中的所述主机操作系统是透明的。3.如权利要求1或2所述的方法,其中,所述带外控制器包括基带管理控制器(BMC)。4.如权利要求1
‑
3中任一项所述的方法,还包括:在所述带外控制器处接收所述uCode补丁;在所述带外控制器中的存储器缓冲器中缓冲所述uCode补丁;以及将所述存储器缓冲器作为存储器映射输入输出(MMIO)范围暴露给处理单元。5.如权利要求4所述的方法,还包括:在所述处理单元上执行代码以定位所述MMIO范围并且从所述带外控制器的所述存储器缓冲器中读取所述uCode补丁;以及在所述处理单元上执行uCode的热升级。6.如权利要求5所述的方法,其中,所述代码包括实现uCode更新SMI服务的系统管理中断(SMI)处理程序,所述方法还包括:触发SMI;以及将所述处理单元上的执行模式切换到安全执行模式;以及执行所述uCode更新SMI服务,以在所述处理单元上执行所述uCode的所述热升级。7.如权利要求4所述的方法,其中,所述带外控制器使所述处理单元能够从所述MMIO范围读取,同时阻止所述处理单元向所述MMIO范围写入。8.如权利要求1所述的方法,还包括:使用中断,触发uCode更新服务以在处理单元上执行;暂停所述主机操作系统的执行;执行所述uCode更新服务以:从所述带外控制器上的存储器缓冲器加载uCode补丁;对于至少一个处理单元中的每一个,执行uCode更新命令,以使用所述uCode补丁更新该处理单元的所述uCode;以及在所述uCode更新服务完成后,恢复所述主机操作系统的执行。9.如权利要求8所述的方法,其中,所述中断包括系统管理中断(SMI)并且所述uCode更新服务包括uCode更新SMI服务,并且其中,所述uCode更新SMI服务的执行以及所述SMI使所述主机处理器:将所述处理单元从当前操作模式切换到系统管理模式(SMM),其中,在所述处理单元在SMM中的同时,所述主机操作系统的执行被暂停;在所述处理单元在SMM中的同时,执行所述uCode更新SMI服务;将所述处理单元返回到所述当前操作模式;以及
恢复所述主机操作系统的执行。10.一种裸机平台,包括:一个或多个主机中央处理单元(CPU);存储器,其耦合到所述一个或多个CPU;以及带外控制器,其通信地耦合到至少一个主机CPU,所述带外控制器具有板载存储器缓冲器,其中,所述裸机平台被配置为在云服务提供商环境中实现并且托管租户环境,在所述租户环境中主机操作系统和应用在所述一个或多个主机CPU上执行,并且其中,所述裸机平台被配置为使用所述带外控制器实现微码(uCo...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。