Announcements
See piazza.Lecture Notes
Notes (includes the future)Videos
(Should require umd central authentication for box access)- Review of 216
- Synchronization Topics
- Sychronization Overview - The basics
- Semaphore Interface - How Semaphores can be used.
- Semaphore Implementation - How Semaphores are built (so you know what they are and don't reinvent them).
Lecture Buffer
Expect lecture notes here. I am likely to follow my notes from prior semesters.
Projects
Setting up your build environment
Partially configured virtual machine. Get the password in class. Other linux virtual machines are possible, but this one is already configured with a patched Qemu and has the rest of the toolchain installed.
We recommend you use your own machine for the
projects.
Setup instructions
for QEMU and the
build environment for GeekOS are below:
- Vagrant (all OSes) This should generally work; please comment.
- Linux (Old instructions)
- Mac (Old instructions)
- Linuxlab (Obsolete instructions)
- If you run Windows, your best bet is vagrant. Otherwise install Ubuntu in a virtual machine, then follow the Linux instructions.
Specifications
- Project 0, Due Sep 9
- Project 1, Due Sep 23
- Project 2, Due Oct 7
- Project 3, Due Oct 21
- Project 4A, Due Nov 4
- Project 4B, Due Nov 11
- Project 5B, Due Dec 2
- Project 5C, Due Dec 9