[发明专利]在存储阵列系统中执行为单处理器环境设计的控制器固件的多处理在审
申请号: | 201680053816.8 | 申请日: | 2016-07-28 |
公开(公告)号: | CN108027747A | 公开(公告)日: | 2018-05-11 |
发明(设计)人: | A·班纳吉;M·杰思 | 申请(专利权)人: | NETAPP股份有限公司 |
主分类号: | G06F9/455 | 分类号: | G06F9/455 |
代理公司: | 北京市金杜律师事务所 11256 | 代理人: | 酆迅;姚杰 |
地址: | 美国加利*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 存储 阵列 系统 执行 处理器 环境设计 控制器 处理 | ||
提供了用于在多处理器存储阵列中共享主机资源的系统、设备和方法,所述多处理器存储阵列运行为单处理器环境设计的控制器固件。在一些方面,一个或多个虚拟机可以由存储阵列系统中的虚拟机管理器或管理程序初始化。一个或多个虚拟机中的每一个实现为单处理器环境设计的控制器固件的实例。虚拟机管理器或管理程序可以将存储阵列系统内的处理设备指派给一个或多个虚拟机中的每一个。虚拟机管理器或管理程序也可以将虚拟功能指派给虚拟机中的每一个。虚拟机可以通过向各自的虚拟功能写和从各自的虚拟功能读来并发访问一个或多个I/O设备,诸如物理存储设备。
技术领域
本公开一般涉及存储阵列系统,并且更具体地涉及用于共享具有为单处理器环境设计的控制器固件的多处理器存储阵列中的主机资源的方法和系统。
背景技术
商业实体和消费者正在存储数量不断增加的数字数据。例如,许多商业实体例如通过在Web服务器、文件服务器和其他数据库上托管大量数据而在将其业务记录和其他数据进行数字化的过程中。促进大量数字数据的高效且成本有效存储的技术和机制在存储阵列系统中正被实现。存储阵列系统可以包括并连接到多个存储设备,例如物理硬盘驱动器、后端控制器上的联网磁盘驱动器以及其他介质。一个或多个客户端设备可以连接到存储阵列系统以访问存储的数据。存储的数据可以分成多个数据块并且跨连接到存储阵列系统的多个存储设备被维护。
用于存储阵列系统的控制器固件代码(也称为操作系统)通常被设计为在单处理器环境中作为单线程操作系统来操作。具有单线程操作系统的单处理器存储控制器的硬件-软件体系架构可以围绕非抢占模型而被构建,其中由单线程固件代码启动的任务(例如,用于访问连接的存储设备的特定存储资源)通常不能自然地被调度出CPU。非抢占模型也可以被称为自愿抢占。在自愿抢占/非抢占模型中,存储阵列控制器中的数据结构不受并发访问保护。对于具有单线程固件的存储控制器,缺乏并发访问保护通常不是问题,因为对存储资源的访问可以由单线程操作系统进行调度。在具有单线程操作系统的存储控制器中CPU核上的中断在运行代码的关键部分时被禁用,从而保护数据结构的冲突访问。然而,为了在多处理器存储控制器上运行操作系统,需要重新设计单线程操作系统,使其具有多处理器的能力,以避免允许对数据结构的冲突访问。多处理器存储控制器可以包括单个多核处理器和多个单核处理器。运行单线程操作系统的多处理器存储阵列目前在当前架构中不可用,因为在自愿抢占架构中,在不同处理器或不同处理核上运行的两个任务可以同时访问相同的数据结构,并且这会导致对数据结构的冲突访问。将存储操作系统重新设计为具备多处理器能力将需要进行重大的软件架构改革。因此,希望有一种新的方法和系统,其可以利用为单处理器架构设计的存储控制器固件,包括单处理器操作系统,并且可以被缩放以在具有多个处理核的存储阵列系统上操作。
发明内容
描述了用于在多处理器存储阵列系统中共享主机资源的系统和方法,其中存储阵列系统执行为单处理器环境设计的控制器固件。存储阵列系统中的多处理可以通过在相应的虚拟机中执行单线程控制器固件的多个实例来实现,每个虚拟机被指派给存储阵列系统内的物理处理设备。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于NETAPP股份有限公司,未经NETAPP股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201680053816.8/2.html,转载请声明来源钻瓜专利网。