Which of the following software directly interacts with the hardware and handles hardware resource requests from virtual machines?