Schedule
Week 1 Introduction
Tuesday 27 August
lecture/discussion
- Intro to Course < 30 min.
- What is an operating system
- Getting started with Vagrant . (Vagrantfile)
- History of OSs and their future
- Booting a computer
Thursday 29 August
- Partner C Programming Contest (bounce link)
- Installing software
- Lab 0 transpose
- Now due Saturday 7 September (email submission)
- Dual Mode Operation
Week 2 Processes OSTEP 2-6this resume
Tuesday 3 September
- Intro to Processes
- Lab 1 – bootloader
- due 12 September
Thursday 5 September
- Lab 0 due
- Lab 1 – bootloader cont’d
- Process lab
- Process Calisthenic
Week 3 Processes / Scheduling OSTEP 7-11, OSTEP 15
Tuesday 10 September
- CPU Scheduling
Thursday – 12 September
- Lab 1 due
- Scheduling Worksheet
- bootloader demos
- Lab 2 – Fibonacci
- due 26 September (email submission)
Week 4 Threads OSTEP 26
Tuesday 17 September
- last day to demo Process Calisthenic
- Short talk on process communication
- Create a Process Calisthenic
Thursday 19 September
- Talk on Scheduling (slides)
- lab time
- last day to demo Create a Process Calisthenic
- Signal Calisthenic
Week 5 pThreads OSTEP 27
Tuesday 24 September
- Scheduling Algorithm Worksheet
- Introduction to threads and semaphores
Thursday 26 September
- Lab 2 due
- QUIZ 1 – Processes (reading guide)
- lab 3 Simple Shell
- due 10 October
- last day to demo Signal Calisthenic
- Thread Calisthenic
- How Large is the TLB Calisthenic
Week 6 Concurrency OSTEP 30-34
Tuesday 1 October
- introduction to CPU scheduling (rough notes)
worksheet: comparison of scheduling algorithmslast day to demo Signal Calisthenic - The case against threads
- John Ousterhout. “Why threads are a bad idea (for most purposes).”
- Robert van Renesse “Goal-Oriented Programming or Composition using Events or Threads Considered Harmful“
- Deadlock and the Banker’s Algorithm (OSTEP ch 32)
Thursday 3 October
Week 7 Locking – Semaphores OSTEP 30-34 cont’d
Tuesday 8 October
- monitors, shared memory, locks, and condition variables(slides)
- pThreads
- last day to demo Thread Calisthenic
- last day to demo How Large is the TLB Calisthenic
Thursday 10 October
- general lab and catch up day
Week 8 Fall Break & Catch-up
Tuesday 15 October
- FALL BREAK
Thursday 17 October
- Memory – the hardware (slides)
Week 9 Memory OSTEP 12-15
Tuesday 22 October
- Memory Lecture
- Take Me For a Spin Thread Calisthenic
Thursday 24 October
- Lab 3 Due
Week 10 TBD
Tuesday 29 October
- VirtualMemory(slides)
-
Last day to demo Take Me For a Spin
Thursday 31 October
- Quiz 2 – reading guide
Week 11 Memory & Disks OSTEP 16-24
Tuesday 5 November
- Pthreads (slides)
- Lab 4 – pThreads (due15 November)
- Test Posted – due anytime before 6 December
- Memory lecture
- Memory and disk
- Calisthenics –
- My Malloc (25 xp)
- My malloc using mmap (25 xp)
- Malloc using the Magic (25xp)
Thursday 7 November
- File System
- lab time for memory calisthenics
Week 12 File System OSTEP 35-40
Tuesday 12 November
- File System Team Worksheet
- File Systems and Disk Drives (lecture notes)
- Malloc Calisthenics Due
- Calisthenics
- Secondary Storage (25 xp)
- File Operations (25 xp)
Thursday 14 November
- SSDs
Week 13 Virtualization OSTEP 41-47
Tuesday 19 November
- peer evaluations
- File Systems (lecture notes)
- Files and Secondary Storage calisthenics due
Thursday 21
Week 14 Distributed Systems OSTEP 48-41
Tuesday 26 November
- Quiz 3 (Scheduling ostep 7-10; persistence ostep 36-41 — details forthcoming)
- Hadoop Distributed File System and Map Reduce
Thursday 28 November Thanksgiving
- no class
Week 15 – Con
Tuesday 3 December
- Hadoop and Map Reduce Week
- Page Frame Calisthenic
Thursday 5 December
- Hadoop and Map Reduce