0133: Calendar

Detailed Class Calendar

Below follows a day-by-day calendar for the class, including reading assignments, lecture topics, and courseworks. Lecture notes will be posted immediately after each lecture.

Class meetings consist largely of discussions of research papers. They are designed under the assumption that students have already read the assigned papers. If you do not read the papers that appear on a day of the calendar before that day's lecture, you are likely to have difficulty following the lecture and discussion.

N.B. that all assigned readings are examinable.

Monday Wednesday Friday

30th Sep

Course Introduction

Lecture Notes:
Class Intro

2nd Oct

Design: Worse Is Better;
OS Concepts;
Concurrent I/O

Reading: Worse Is Better

Lecture Notes:
OS Intro
I/O Concurrency

4th Oct

7th Oct

NFS

Reading: NFS Case Study (accessible only through UCL IS account)

Reading: Design and Implementation of the Sun Network Filesystem

Lecture Notes:
NFS

9th Oct

RPC and Transparency

Lecture Notes:
RPC and Transparency

11th Oct

14th Oct

Ivy: Distributed Shared Memory;
Programming Coursework Background

Reading: Ivy

Coursework Background Reading:
Mark Handley's Intro to C for Java Programmers

Coursework 1 Out:
Programming a Distributed Tickertape

due 11:05 AM, Monday 4th November 2019

Lecture Notes:
Ivy and DSM

16th Oct

Two-Phase Commit

Lecture Notes:
Two-Phase Commit

18th Oct

21st Oct

Paxos

Reading: Paxos

Lecture Notes:
Paxos

23rd Oct

Bayou: Weak Connectivity and Update Conflicts

Reading: Bayou

Lecture Notes:
Bayou

25th Oct

GFS: The Google File System

Reading: GFS

Lecture Notes:
GFS

28th Oct

No lecture today!

30th Oct

No lecture today!

1st Nov

Busy Servers: Receive Livelock

Reading: Eliminating Receive Livelock

Lecture Notes:
Eliminating Receive Livelock

4th Nov

Reading week; no lecture today!

Coursework 1 Due: 11:05 AM
(via GitHub)

6th Nov

Reading week; no lecture today!

8th Nov

11th Nov

Introduction to Security;
User Authentication

Lecture Notes:
Introduction to Security

13th Nov

Cryptographic Primitives I

Lecture Notes:
Cryptographic Primitives I

15th Nov

18th Nov

Cryptographic Primitives II

Lecture Notes:
Cryptographic Primitives II

The Kerberos Authentication Service

Reading: Kerberos

Lecture Notes:
Kerberos

20th Nov

Kerberos (cont'd)

22nd Nov

Secure Sockets Layer/Transport Layer Security (SSL/TLS)

Lecture Notes:
SSL/TLS

Coursework 2 Out:
Security Problem Set
due 5:05 PM, Friday 13th December 2019

25th Nov

Reasoning Formally about Authentication: TAOS

Reading: TAOS

Lecture Notes:
TAOS

27th Nov

No lecture today!

29th Nov

2nd Dec

Software Vulnerabilities and Exploits

Reading: Smashing the Stack for Fun and Profit

Reading: Exploiting Format String Vulnerabilities

Reading: Once Upon a free()

Lecture Notes:
Vulnerabilities and Exploits

4th Dec

Preventing Exploits

Reading: TaintCheck

Reading: PaX Overview

Reading: ASLR Overview

Reading: Limits of Address Space Randomization

Lecture Notes:
Preventing Exploits

6th Dec

Containing Buggy Code: Software-based Fault Isolation

Reading: SFI

Lecture Notes:
SFI

9th Dec

OKWS: Approximating Least Privilege in a Real-World Web Server

Reading: OKWS

Lecture Notes:
OKWS and Least Privilege

11th Dec

CPU Speculation vs. Isolation: Meltdown

Reading: Meltdown

Lecture Notes:
Out-of-Order Execution and Meltdown

13th Dec

Coursework 2 Due: 5:05 PM
(via GitHub)