 The vkernel has two important differences from the real kernel : it lacks many routines for dealing with the low @-@ level hardware management and it uses C standard library ( libc ) functions in place of in @-@ kernel implementations wherever possible . As both real and virtual kernel are compiled from the same code base , this effectively means that platform @-@ dependent routines and re @-@ implementations of libc functions are clearly separated in a source tree . 
