We'll be following the Cambridge Baking Pi - Operating Systems Development course to build a simple operating system for the Raspberry Pi. This workshop will start from the beginning and cover as much of the material as possible.
This course takes you through the basics of operating systems development in assembly code. I have tried not to assume any prior knowledge of operating systems development or assembly code. It may be helpful to have some programming experience, but the course should be accessible without. This course is divided into a series of 'lessons' designed to be taken in order as below. Each 'lesson' includes some theory, and also a practical exercise, complete with a full answer.
For more information see:
Course website: http://www.cl.cam.ac.uk/freshers/raspberrypi/tutorials/os/