O hypercall toma o mesmo tempo que uma chamada do sistema linux?

0

Do site do Xen,

A hypercall is to a syscall what a hypervisor is to an OS. Alternatively, a hypercall is to a hypervisor what a syscall is to a kernel. A hypercall is a software trap from a domain to the hypervisor, just as a syscall is a software trap from an application to the kernel. Domains will use hypercalls to request privileged operations like updating pagetables. Like a syscall, the hypercall is synchronous, but the return path from the hypervisor to the domain uses event channels. An event channel is a queue of asynchronous notifications, and notify of the same sorts of events that interrupts notify on native hardware. When a domain with pending events in its queue is scheduled, the OS's event-callback handler is called to take appropriate action.

  • O hypercall toma o mesmo tempo que um syscall assumindo que ambos estão fazendo a mesma coisa.
  • Existe alguma diferença na maneira como o hypervisor lida com um hypercall do que com um kernel do linux que manipula a chamada do sistema da mesma forma
por Nikhil 31.05.2017 / 20:24

1 resposta

0

Um hiperchamada é mais lenta que um syscall. Isso ocorre porque o hypercall precisa primeiro alcançar o host / hipervisor e depois navegar até a CPU para ser executado. Da mesma forma para o caminho de retorno. De fato, benchmarks em um kernel similar, o Hyperkernel , mostraram que um hypercall leva cerca de 3 a 4 vezes mais página do pdf da página 15).

    
por 19.12.2017 / 02:30