Posted by: winslie | November 14, 2012

Free online course building Raspberry Pi OS

from the University of Cambridge

Read [blog here]

Baking Pi – Operating Systems Development

Welcome to Baking Pi: Operating Systems Development! Course by Alex Chadwick.

This website is here to guide you through the process of developing very basic operating systems on the Raspberry Pi! This website is aimed at people aged 16 and upwards, although younger readers may still find some of it accessible, particularly with assistance. More lessons may be added to this course in time.

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.

Rather than leading the reader through the full details of creating an Operating System, these tutorials focus on achieving a few common tasks separately. Hopefully, by the end, the reader should know enough about Operating Systems that they could try to put together everything they’ve learned and make one. Although the lessons are generally focused on creating very specific things, there is plenty of room to play with what you learn. Perhaps, after reading the lesson on functions, you imagine a better style of assembly code. Perhaps after the lessons on graphics you imagine a 3D operating system. Since this is an Operating Systems course, you will have the power to design things how you like. If you have an idea, try it! Computer Science is still a young subject, and so there is plenty left to discover!

1 Requirements

In order to complete this course you will need a Raspberry Pi with an SD card and power supply, as well as another computer running a version of linux, Microsoft Windows or Mac OS X, capable of writing to the SD card, and installing software. It is helpful, but not necessary, for your Raspberry Pi to be able to be connected to a screen.

In terms of software, you require a GNU compiler toolchain that targets ARMv6. Links for downloads are available on the Downloads Page, along with model answers for all of the exercises.

2 Lessons

Table 2.1 – Lessons
Name Description
0 Introduction This introductory lesson does not contain a pratical element, but exists to explain the basic concepts of what is an operating system, what is assembly code, and other important basics. If you just want to get straight into practicals, it should be safe to skip this lesson.
OK LED Series (Beginner)
1 OK01 The OK01 lesson contains an explanation about how to get started, and teaches how to enable the ‘OK’ LED on the Raspberry Pi board near the RCA and USB ports.
2 OK02 The OK02 lesson builds on OK01, by causing the ‘OK’ LED to turn on and off repeatedly.
3 OK03 The OK03 lesson builds on OK02 by teaching how to use functions in assembly to make more resusable and rereadable code.
4 OK04 The OK04 lesson builds on OK03 by teaching how to use the timer to flash the ‘OK’ LED at precise intervals.
5 OK05 The OK05 lesson builds on OK04 using it to flash the SOS morse code pattern (…—…).
Screen Series (Advanced)
6 Screen01 The Screen01 lesson teaches some basic theory about graphics, and then applies it to display a gradient pattern to the screen or tv.
7 Screen02 The Screen02 lesson builds on Screen01, by teaching how to draw lines, and also a small feature on generating pseudo random numbers.
8 Screen03 The Screen03 lesson builds on Screen02 by teaching how to draw text to the screen, and introduces the concept of the kernel command line.
9 Screen04 The Screen04 lesson builds on Screen03 by teaching how to manipulate text to display computed values on the screen.
Input Series (Advanced)
10 Input01 The Input01 lesson teaches some theory about drivers, and linking programs, as well as keyboards. It is then applied to print out input characters to the screen.
10 Input02 The Input02 lesson builds on Input01 by teaching how to make a commnad line interface for an Operating System.

Source: Computer Lab Cambridge University



  1. Reblogged this on Astronomy and Law.

  2. […] Prime Mac OS X Is Here! + INTRANET 2 Coming Soon…Apple Mac Mini MC270LL/A DesktopDigital Piano PurchaseMacbook Pro 13Types of Servers on the InternetFree online course building Raspberry Pi OS […]

  3. […] Prime Mac OS X Is Here! + INTRANET 2 Coming Soon…Apple Mac Mini MC270LL/A DesktopMacbook Pro 13Digital Piano PurchaseTypes of Servers on the InternetApple points Judge Koh to new Federal Circuit ruling on damages and injunctive reliefFree online course building Raspberry Pi OS […]

Leave a Reply. Cheers

Please log in using one of these methods to post your comment: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s


The Ryanblog!

Ramblings about TV shows, games, sport & movies!



Lingo Lunch

A Canteen of World Travellers Baking Stories

Traveling Thane Furrows

Sharing Seeds of Benevolence, One Step at a Time.

Espen Stenersrød- From Pen To Heart

Jack Kerouac with a scent of Henry Vaughn

Clare Flourish

Everything in this blog is true

Stephy K.

Live, Love, Laugh...SHARE!


Travel & Life

Dharma Deen Alliance

Exploring Hindu-Muslim Spirituality, History, Harmony, and Activism


Work in progress. I'm working here! I'm working here!

Deus Nexus

Messages for an Entangled Universe

Fading Meta

stars fall, but they light the lonely nights.....

stillness of heart


Simply Simplistic Complexities

The Complex seen Simply....


Generating a fearless and humanising narrative on Palestine!

♥ The Tale Of My Heart ♥

In your light, I learn how to love. In your beauty, how to make poems. You dance inside my chest, where no one sees you.

I'm not gossiping... (I'm networking!)

Life: the serious and the silly...


Politics, Sociology, Current Events or Whatever I Feel Like

CHINDIA ALERT: You'll be living in their world, very soon

continuously updated blog about China & India

%d bloggers like this: