CPC G06F 9/45558 (2013.01) [G06F 9/5077 (2013.01); G06F 12/0238 (2013.01); G06F 12/0246 (2013.01); G06F 12/109 (2013.01); G06F 13/00 (2013.01); G06F 2009/45579 (2013.01); G06F 2009/45595 (2013.01); G06F 2212/151 (2013.01); G06F 2212/206 (2013.01); G06F 2212/657 (2013.01); G06F 2212/7201 (2013.01); H04L 47/6215 (2013.01)] | 19 Claims |
1. A storage device, comprising:
storage for data;
a first Input/Output (I/O) queue for a first request from a first virtual machine (VM) on a host device; and
a second Input/Output (I/O) queue for a second request from a second VM on a host device,
wherein the storage device supports an I/O queue creation command to request allocation of the first I/O queue for the first VM, the I/O queue creation command including a Logical Block Address (LBA) range attribute for a range of LBAs to be associated with the first I/O queue, and to request allocation of the second I/O queue for the second VM,
wherein the storage device maps the range of LBAs to a range of Physical Block Addresses (PBAs) in the storage for data, and
wherein the I/O queue creation command includes a shared namespace attribute specifying an array of namespaces including at least a first namespace to share access to at least one PBA in the range of PBAs, wherein a second namespace also shares access to the at least one PBA in the range of PBAs.
|