NOTE : This page will be updated whenever new projects become available.

Lab Sessions

There are four one-hour lab sessions every week, from week 2 to week 12.

  • Supervised - Every Tuesday from 1pm to 3pm in CO246.
  • Unsupervised - Every Thursday from 4pm to 6pm in CO246. (Note that the lab slot is not available on 05/09, Week 7.)
Lab instructor is Radek Hes.

You can use your own machine at home but we will not support it.

Get Started

Before you begin... Setting up your environment,

1. Download the Pintos tarball, and unpack it.

$> gunzip pintos.tar.gz

$> tar -xvf pintos.tar

2. Add Pintos's utils directory to your PATH environment variable.
**BASH
$> export PATH=$PATH: (path to your pintos utils directory)
 
**TCSH
$>setenv PATH ${PATH}: (path to your pintos utils directory)

For those students that wish to run pintos at home, you will need to install qemu.

The Pintos tar ball (base installation for all projects): pintos.tar.gz

Please refer to the lab/Pintos part of the lecture notes (OS Overview) for the details to set up Pintos and run the tests. To run pintos test, you may use the following command line invocation.
$>pintos -v -k -T 60 --qemu -- -q run

Project 1

Project 2

  • Project 2 Description: Project 2
  • Due at midnight on Fri., 13/09/2019.

Project 3

  • Project 3 Description: Project 3
  • Project 3 patch: lab3_patch
  • Due at midnight on Fri., 11/10/2019.
  • The initial setup of this lab project is to patch the original code pintos.tar.gz.

    To patch the source code:

    1. Download the patch file lab3_patch.

    2. Change directories to the base of the clean source distribution. (something like ~/pintos-anon-1bc4f6f -or wherever you have renamed it).

    3. Apply the patch to the directory,

    patch -p1 < lab3_patch

    (The reason we are using the switch -p1, is that if you look into the patches file then we can see we have taken a diff of the directories pintos-anon-1bcf6f and pintos-anon-1bcf6f.lab3. since we are applying the patch to the directory pintos-anon-1bcf6f we tell patch program to ignore the first directory in the diff file).

    Please Note: a conventional test program follows,

    pintos -v -k -T60 --qemu --filesys-size=2 -p build/tests/userprog/args-none -a args-none -- -q -f run 'args-none'

    Topic attachments
    I Attachment Action Size Date Who Comment
    tests_new.tar.gzgz tests_new.tar.gz manage 2 MB 30 Sep 2019 - 16:37 Main.radek