first server side kernel part