add kernel code for os