CS3 Operating Systems, Practical Exercise
For ease of emailing, and in the tradition of Real Programming,
documentation for this practical is given as ASCII text.
Introduction
The first document is the
introduction to
the practical, which provides a basic description of the
task, and administrative information such as deadlines and
collaboration policies.
Phase 1
Phase 1 runs for around two weeks.
Background reading
A large part of Phase 1 is background reading about the Linux kernel.
Here are
suggestions for reading.
Some more C
During the course of this practical, you need to refresh or acquire a basic
knowledge of C. Here are
some notes on how
to do this, and some brief explanations of two of the most important
features of C that will occur in the kernel source.
Using VirtualBox
The next document is the
instructions for
running a virtual Linux system.
The Kernel Source
Here is
very brief guide to the kernel source.
Phase 2
Kernel modules
Here are
instructions on compiling and
loading kernel modules.
The Scheduler
The focus of phase 3 will be on the scheduler. Here is
a rough guide to the scheduler code.
Well, actually, it's really just a reference to the
linux_cpu_scheduler.pdf, which
should soon be available in printed form from the ITO. (Please
don't print your own copy until the ITO's run
out. If you need to print, beware that the original is on a strange
paper size. Print this
2-up on A4
paper copy instead.)
Phase 3
The assessed part of the practical is in three parts.
Here is
part 1.
And here is part 2.
And the final part 3.