You are explaining virtualization to your manager when he asks you to explain the term "hypervisor". Which of the following statements best describes the function of the hypervisor?
A. A CPU emulator that translates old programming code into new CPU instructions.
B. Software responsible for allocating hardware resources to a virtual machine.
C. Software that simulates different operating systems.
D. A monitoring application installed within virtual machines.