Please download the dossier by clicking on the dossier button x
×

Shareable virtual non-volatile storage device for a server

  • US 9,652,182 B2
  • Filed: 01/31/2013
  • Issued: 05/16/2017
  • Est. Priority Date: 01/31/2012
  • Status: Active Grant
First Claim
Patent Images

1. A method of a server computing device comprising:

  • receiving, by the server computing device, a server identifier (ID) from a management processor of a remote storage array comprising the management processor, a plurality of controllers, and a plurality of solid state storage devices, wherein the server ID identifies the server computing device to the remote storage array;

    algorithmically determining, by the server computing device based on the server ID, a controller ID for a controller of the plurality of controllers in the remote storage array, wherein the controller having the controller ID is to perform read operations and write operations to transfer data between the server computing device and the remote storage array;

    algorithmically determining, by the server computing device based on the server ID, an input/output (IO) queue ID for an IO queue to be used for reading data from the remote storage array and writing data to the remote storage array;

    registering, by a driver executing on the server computing device, the server computing device to one or more storage blocks of the remote storage array;

    generating, by the driver, a virtual storage device on the server computing device;

    maintaining a logical mapping of the one or more storage blocks for the virtual storage device;

    receiving a write request to write first data to the virtual storage device; and

    transferring at least a portion of the first data from one or more data buffers of the server computing device through the controller to a shared solid state storage device of the plurality of solid state storage devices in the remote storage array without writing the first data to any internal physical drive of the server computing device, the transferring comprising;

    mapping the write request to the IO queue, having the IO queue ID, that is maintained at the server computing device based on the logical mapping of the one or more storage blocks;

    adding an entry for the write request to the IO queue at a next available location in the IO queue; and

    notifying the controller of the entry for the write request in the IO queue.

View all claims
  • 1 Assignment
Timeline View
Assignment View
    ×
    ×