CPC G06F 9/45558 (2013.01) [G06F 9/44505 (2013.01); G06F 9/544 (2013.01); G06F 13/1673 (2013.01); G06F 2009/45583 (2013.01); G06F 2009/45595 (2013.01)] | 12 Claims |
1. A data processing system, comprising:
one or more processors;
a host system including a plurality of virtual machines; and
a memory system including a plurality of virtual function controllers, a plurality of namespaces and a memory controller,
wherein the plurality of virtual function controllers executed by the one or more processors to communicate with the plurality of virtual machines and receive a command for accessing the plurality of namespaces, respectively,
wherein the memory controller executed by the one or more processors to communicate with the plurality of virtual function controllers and access the plurality of namespaces based on the command,
wherein the plurality of namespaces have different storage capacities based on the plurality of virtual machines,
wherein each of the plurality of namespaces are provided to one or more virtual functions,
wherein the plurality of namespaces provided to only one virtual function are a plurality of dedicated namespaces and a single namespace provided to a plurality of virtual functions is a shared namespace,
wherein the plurality of dedicated namespaces is accessible by only a corresponding virtual function controller and the shared namespace is accessible by the plurality of virtual function controllers, and
wherein a first virtual machine of the plurality of virtual machines accesses a first dedicated namespace of the plurality of dedicated namespaces only through a first virtual function controller of the plurality of virtual function controllers, a second virtual machine accesses a second dedicated namespace only through a second virtual function controller, a third virtual machine accesses a third dedicated namespace only through a third virtual function controller, and the first to third virtual machines access the shared namespace through the first to third virtual function controllers.
|