step by step to make a micro kernel