If you have a Raspberry Pi, you might consider reading http://www.cl.cam.ac.uk/projects/raspberrypi/tutorials/os/ Note though that the one for the Pi only scratches the surface. Topics like memory management or task scheduling are not included.