Resources

The following software and links are provided to assist you with this course. Some software is hosted locally on EAIT's network to save you download bandwidth. More material will be made available here as the semester progresses.

Name Link Description

Virtual machine

Ubuntu virtual machine image

On-campus EAIT network: COMP3301-VM.zip
(only accessible from the on-campus EAIT labs network), or:

Download from home via SCP: view instructions
(works from any Internet-connected computer)

Ubuntu Server 10.04 pre-installed VM image (for VMWare player).

This will be the platform for assignments 2 and 3 and associated practicals. Please install it onto your own laptop, USB HDD or USB flash disk (least preferred, as performance may be poor). The minimum size required is 2 GB.

Do not copy this VM image onto any of your EAIT labs network drives (such as H:), as you will get a nastygram from the helpdesk and they may delete it without notice. You have been warned!

Ubuntu VM login: username: comp3301, password: comp3301

Network problems: if you have problems getting the network working from within the virtual machine, follow step 2 of this answer (ignore steps 1 and 3).

Please do not update any software (especially the kernel) or you may lose marks.

Size: compressed image is 484 MB and will expand to around 2 GB when full.

VMware player

VMware downloads page

Install this to boot and run the virtual image (above). You will need to register and click through the site to get to the download.

Please note that all EAIT lab machines have this software pre-installed.

Size: the installer is 105 MB to download.

Relating to assignment 1

The Problem with Threads, Edward A. Lee, Berkeley

eecs.berkeley.edu/.../EECS-2006-1.pdf

An argument against threads as a concurrent programming model.

Size: 200 KB

Pth 2.0.7 library (with preemption patch)

pth-2.0.7-preempt.tar.gz

User-space threading library that you will be modifying in assignment 1. Do not download from any other source, as it will not include the preemption patch that is required for this course.

Size: 660 KB

Pth build script (v1.7)

build-pth.sh

Build script for the Pth library (above). This will be used to build your solution while marking.

Size: 3 KB

Relating to assignments 2 and 3

Linux Device Drivers, 3rd edition

lwn.net/Kernel/LDD3

An excellent guide to Linux device drivers, which is useful in assignments 2 and 3.

LXR (Linux Cross-Reference)

lxr.linux.no/linux+v2.6.32.16

Linux cross-reference for the 2.6.32.16 kernel we use in the virtual image.

Kernel linked list info

Links to the right

Useful references on how to use the kernel's doubly linked list data structure.

checkpatch

checkpatch-0.32.pl

Perl script to check Linux source code for coding style violations (mirrored from kernel.org). This is the version used in assignment marking.

Size: 95 KB