Global memory as non-volatile random access memory for guest operating systems
    1.
    发明授权
    Global memory as non-volatile random access memory for guest operating systems 有权
    全局内存作为客户机操作系统的非易失性随机存取存储器

    公开(公告)号:US08990520B1

    公开(公告)日:2015-03-24

    申请号:US13435328

    申请日:2012-03-30

    IPC分类号: G06F12/00 G06F12/10

    摘要: Global memory of a storage system may be used to provide NVRAM capabilities to guest operating systems accessing the storage system. The non-volatility of NVRAM (i.e. that retains its information when power is turned off) provides that an NVRAM device provided by global memory may be used as a journaling device to track storage operations and facilitate recovery and/or failover processing in a storage system without needing to add additional hardware and/or other installed devices. Use of the global memory according to the system described herein to provide an NVRAM device, that may function as a journaling device, provides for the speeding up of transactions, thereby improving metadata intensive operations performance and reducing recovery time and/or failover time of a storage system without adding additional hardware support.

    摘要翻译: 可以使用存储系统的全局存储器来向访问存储系统的客户操作系统提供NVRAM功能。 NVRAM的非易失性(即在电源关闭时保留其信息)规定,由全局存储器提供的NVRAM设备可用作日志记录设备以跟踪存储操作并促进存储系统中的恢复和/或故障转移处理 而不需要添加额外的硬件和/或其他已安装的设备。 根据本文描述的系统使用全局存储器来提供可用作日志记录设备的NVRAM设备,用于提高事务的加速,从而提高元数据密集型操作性能并减少恢复时间和/或故障转移时间 存储系统,无需添加额外的硬件支持。

    Determining environmental availability in a storage subsystem
    2.
    发明授权
    Determining environmental availability in a storage subsystem 有权
    确定存储子系统中的环境可用性

    公开(公告)号:US08051260B1

    公开(公告)日:2011-11-01

    申请号:US10881131

    申请日:2004-06-30

    IPC分类号: G06F11/22 G06F11/273

    摘要: A method for safeguarding data stored in a memory of a data storage system includes monitoring values of a subset of environmental variables associated with the data-storage system and updating a portion of a table containing values of environmental variables associated with the data-storage system. The table includes values for environmental variables that are not in the subset of environmental variables monitored. The values of the environmental variables are then inspected. On the basis of the inspection, a condition in which there exists a high-risk of data loss is determined.

    摘要翻译: 用于保护存储在数据存储系统的存储器中的数据的方法包括监视与数据存储系统相关联的环境变量的子集的值,并且更新包含与数据存储系统相关联的环境变量的值的表的一部分。 该表包括不在监控环境变量子集中的环境变量的值。 然后检查环境变量的值。 在检查的基础上,确定存在高风险的数据丢失的条件。

    Message based global distributed locks with automatic expiration for indicating that said locks is expired
    3.
    发明授权
    Message based global distributed locks with automatic expiration for indicating that said locks is expired 有权
    基于消息的全局分布式锁具有自动过期,用于指示所述锁已过期

    公开(公告)号:US07343432B1

    公开(公告)日:2008-03-11

    申请号:US10666773

    申请日:2003-09-19

    IPC分类号: G06F13/00 G06F13/28 G06F17/30

    CPC分类号: G06F9/526

    摘要: Described is a distributed lock processing technique that may be used to coordinate access to globally accessed resource between endpoints using the connecting message fabric. Processors in a data storage system communicate using the message switch of the message fabric. Each processor is an endpoint within a data storage system. Each endpoint, prior to requesting a lock, dynamically determines a current lock owner of the lock to be requested in accordance with a determination of which endpoints are available as lock owners at the current time. The lock request is issued to the current lock owner with a requested time period used by the lock owner to determine an expiration time. The lock expires automatically at the expiration time even if the lock holder becomes unavailable. If the current lock owner becomes unavailable, a new lock owner is determined prior to the next request for that lock.

    摘要翻译: 描述了一种分布式锁处理技术,其可用于协调使用连接消息结构的端点之间对全局访问资源的访问。 数据存储系统中的处理器使用消息结构的消息交换进行通信。 每个处理器是数据存储系统中的端点。 在请求锁之前,每个端点根据在当前时间作为锁拥有者可用的哪些端点的确定动态地确定要请求的锁的当前锁拥有者。 锁请求将以锁所有者使用的请求时间段发出给当前锁所有者以确定到期时间。 即使锁定架不可用,锁定也将在到期时自动过期。 如果当前的锁拥有者变得不可用,则在下一次请求该锁之前确定新的锁拥有者。

    Using the message fabric to maintain cache coherency of local caches of global memory

    公开(公告)号:US07136969B1

    公开(公告)日:2006-11-14

    申请号:US10462949

    申请日:2003-06-17

    IPC分类号: G06F12/00

    CPC分类号: G06F12/0831 G06F12/0808

    摘要: Described is a technique for maintaining local cache coherency between endpoints using the connecting message fabric. Processors in a data storage system communicate using the message fabric. Each processor is an endpoint having its own local cache storage in which portions of global memory may be locally cached. A write through caching technique is described. Each local cache line of data of each processor is either in an invalid or a shared state. When a write to global memory is performed by a processor (write miss or a write hit), the following are performed atomically: the global memory is updated, other processor's local cache lines of the data are invalidated, verification of invalidation is received by the processor, and the processor's local copy is updated. Other processors' cache lines are invalidated by transmission of an invalidate command by the processor. A processor updates its local cache lines upon the next read miss or write miss of the updated cacheable global memory.

    Method and apparatus for enabling access to storage
    8.
    发明授权
    Method and apparatus for enabling access to storage 有权
    用于访问存储的方法和装置

    公开(公告)号:US08930568B1

    公开(公告)日:2015-01-06

    申请号:US13331478

    申请日:2011-12-20

    IPC分类号: G06F15/16 G06F9/46 G06F17/30

    摘要: When a guest OS loads within the context of a container provided by the host OS, the guest OS uses PCI or other protocol to specify a virtual hardware device. The guest OS enumerates the virtual hardware device to establish the size for the BARs and establish its view of physical addresses for the memory locations. A server running in the context of the container receives read/write requests from the guest OS, maps the read/write requests to host OS physical address space, and posts responses to the virtual hardware device. Since the guest OS executes memory related operations using its own memory space, exits to the container code are not required to implement storage related actions by the Guest OS. This allows performance of an application executing in the context of the guest OS to approximate performance of an application executing in the context of the host OS.

    摘要翻译: 当客户操作系统在由主机OS提供的容器的上下文中加载时,客户操作系统使用PCI或其他协议来指定虚拟硬件设备。 客户操作系统枚举虚拟硬件设备以建立BAR的大小并建立其对存储器位置的物理地址的视图。 在容器的上下文中运行的服务器从客户操作系统接收读/写请求,将读/写请求映射到主机OS物理地址空间,并将响应发布到虚拟硬件设备。 由于访客操作系统使用自己的内存空间来执行与内存相关的操作,因此客户操作系统不需要退出到容器代码来执行与存储相关的操作。 这允许在客户OS的上下文中执行的应用程序的性能来近似在主机OS的上下文中执行的应用程序的性能。

    Method for performing a raid operation in a data storage system
    9.
    发明授权
    Method for performing a raid operation in a data storage system 有权
    在数据存储系统中执行突袭操作的方法

    公开(公告)号:US08645623B1

    公开(公告)日:2014-02-04

    申请号:US11769746

    申请日:2007-06-28

    IPC分类号: G06F12/00 G06F13/00 G06F13/28

    CPC分类号: G06F12/0866 G06F2212/261

    摘要: A data storage system having protocol controller for converting packets between PCIE format used by a storage processor and Rapid IO format used by a packet switching network. The controller includes a PCIE end point for transferring atomic operation (DSA) requests, a data pipe section having a plurality of data pipes for passing user data; and a message engine section for passing messages among the plurality of storage processors. An acceleration path controller bypasses a DSA buffer in the absence of congestion on the network. Packets fed to the PCIE end point include an address portion having code indicating an atomic operation. An encoder converts the code from a PCIE format into the same atomic operation in SRIO format. Each one of a plurality of CPUs is adapted to perform a second DSA request during execution of a first DSA request.

    摘要翻译: 一种具有协议控制器的数据存储系统,用于在由存储处理器使用的PCIE格式和分组交换网使用的Rapid IO格式之间转换分组。 控制器包括用于传送原子操作(DSA)请求的PCIE终点,具有用于传递用户数据的多个数据管道的数据管段; 以及用于在多个存储处理器之间传递消息的消息引擎部分。 加速路径控制器在没有网络拥塞的情况下绕过DSA缓冲区。 馈送到PCIE端点的分组包括具有指示原子操作的代码的地址部分。 编码器将代码从PCIE格式转换为与SRIO格式相同的原子操作。 多个CPU中的每一个适于在执行第一DSA请求期间执行第二DSA请求。

    End-to-end broadcast based flow control in a switch fabric
    10.
    发明授权
    End-to-end broadcast based flow control in a switch fabric 有权
    交换结构中基于端到端广播的流控制

    公开(公告)号:US07818447B1

    公开(公告)日:2010-10-19

    申请号:US10402009

    申请日:2003-03-28

    IPC分类号: G06F15/16

    CPC分类号: G06F15/17368

    摘要: Described is an end-to-end broadcast-based messaging technique used in controlling message flow in a data storage system. Each node stores flow control state information about all the nodes which is used in determining whether to send a data transmission to a receiving node. The flow control state information includes an indicator as to whether each node is receiving incoming data transmissions. If a node is not receiving incoming data transmissions, the flow control state information also includes an associated expiration time. Data transmissions are resumed to a receiving node based on the earlier of a sending node determining that the expiration time has lapsed, or receiving a control message from the receiving node explicitly turning on data transmissions. Each node maintains and updates its local copy of the flow control state information in accordance with control messages sent by each node to turn on and off data transmissions. Each node sends out control messages in accordance with predetermined threshold levels taking into account hardware and/or software resources for message buffering.

    摘要翻译: 描述了一种用于控制数据存储系统中的消息流的端对端基于广播的消息收发技术。 每个节点存储关于用于确定是否向接收节点发送数据传输的所有节点的流控制状态信息。 流控制状态信息包括关于每个节点是否正在接收输入数据传输的指示符。 如果节点没有接收传入数据传输,则流控制状态信息还包括相关联的到期时间。 基于发送节点的早期确定过期时间已经过去或者从接收节点明确地接收数据传输接收控制消息,数据传输被恢复到接收节点。 每个节点根据每个节点发送的控制消息来维护和更新其流控制状态信息的本地副本,以打开和关闭数据传输。 每个节点考虑到用于消息缓冲的硬件和/或软件资源,根据预定的阈值级别发出控制消息。