CPC G06F 3/0664 (2013.01) [G06F 3/0604 (2013.01); G06F 3/0631 (2013.01); G06F 3/0673 (2013.01)] | 20 Claims |
1. A server for hosting at least one kernel isolated container, comprising:
at least one physical processor; and
at least one physical computer memory addressable via physical memory addresses, the at least one physical computer memory storing executable code for execution by the at least one physical processor, the executable code providing at least one host including a kernel and the at least one kernel isolated container within the at least one host, wherein the executable code providing the at least one host is configured to:
allocate virtual memory having virtual memory addresses to a respective kernel isolated container of the at least one kernel isolated container;
pin a subset of the virtual memory addresses to a subset of the physical memory addresses, wherein:
the subset of the virtual memory addresses includes at least one but fewer than all of the virtual memory addresses allocated to the respective kernel isolated container; and
an amount of the subset of virtual memory addresses that is pinned is limited based on an input-output technology used by the respective kernel isolated container; and
perform a direct memory access operation or a device memory-mapped input-output operation for the respective kernel isolated container on the subset of the physical memory addresses.
|