building up the kernel interface