Patent ID: 11886900
Assignee: NANOVMS, INC.
Field: Computer technology (Electrical engineering)
Classification: CPC G | IPC G

Claim 3:
4. A method, comprising:
receiving, by a hypervisor, an indication of a request to fork a first process running in a first unikernel virtual machine;
in response to receiving the indication of the request to fork the first process running in the first unikernel virtual machine, deploying, by the hypervisor, a second unikernel virtual machine to run a second process that is a child of the first process;
evaluating, by the hypervisor, first thread performance information exported by a first kernel running in the first unikernel virtual machine and second thread performance information exported by a second kernel running in the second unikernel virtual machine, wherein the first thread performance information is exposed to the hypervisor via a set of shared pages that are shared between the first unikernel virtual machine and the hypervisor;
based at least in part on the evaluation of the first and second thread performance information exported by the first kernel running in the first unikernel virtual machine and by the second kernel running in the second unikernel virtual machine, assigning, by the hypervisor, a weight to a thread;
providing, by the hypervisor, the weight assigned to the thread to the first kernel running in the first unikernel virtual machine, wherein the first kernel running in the first unikernel virtual machine is configured to perform thread scheduling based at least in part on the weight provided by the hypervisor, and wherein providing the weight comprises:
populating, by the hypervisor, at least some of the shared pages that are shared between the first unikernel virtual machine and the hypervisor with the weight assigned to the thread; and

executing, by the first unikernel virtual machine, the thread in accordance with the weight assigned to the thread.