CS 460 Schedule
|
Date
|
Topic
|
Notes
|
Assignments
|
| Jan 30 | Introduction to OS (Chapter 1) | |
|
| Feb 01 | Introduction to OS |
|
Homework: Page 42. 1.1, 1.2,1.3,1.5, 1.6, 1.10, 1.13, 1.18 DUE Feb 8. Submit as a GoogleDoc! |
| Feb 03 | Assignment One | PATA |
Assignment
One (System
Calls | strace) C Coding Standards Eclipse Coding Standards Profile |
| Feb 06 | OS Structure (Ch 2) | PDF AMD Pacifica Spec |
SVN Repository DUE |
| Feb 08 | Homework page: 91 2.1, 2.2, 2.5, 2.6,2.8,2.14,2.20,2.24 DUE Feb 13 as GoogleDoc |
||
| Feb 10 | Lab (Demo Assignment One |
Study strace/ltrace output) |
glibc glibc Eclipse Project (non-building) |
Assignment One DUE 4:45! |
| Feb 13 | Processes (Ch 3) | PDF |
Linux Kernel Source Code Linux Kernel Source Code (backup) Linux Kernel Source Code - Download LWN - Linux "Weekly" News |
| Feb 15 | Process Layout | ELF File |
Linux Task Struct (PCB) #1, OpenFiles, #3, thread_struct switch_to X86_32 X86_64 Files Struct fdtable file |
|
| Feb 17 | In Marsh! |
|
|
| Feb 20 | Unix Shell | dup2, pipe | glibc |
Homework page 141: 3.1, 3.2, 3.7, 3.103.13 DUE Feb 27 as GoogleDoc |
| Feb 22 | fork()/exec Lab |
PDF LAB |
Assignment Two (Unix Shell) |
| Feb 24 | Linux Kernel in a Nutshell |
Exam Review and Homework Question! Linux Kernel: dup2 rcu: read-copy-update see also Feb 15! intel Instruction Manual vdso vdso2 |
|
| Feb 27 | Assignment Two (Milestone One DUE) | ||
| Feb 29 | EXAM | ||
| Mar 02 | Threads (Ch 4) | PDF Java Concurrency PThreads |
|
| Mar 05 | Threads | Assignment Two (Milestone Two DUE) | |
| Mar 07 | |||
| Mar 09 | Threads Lab Day! |
PDF Lab |
|
| Mar 12 | Demo Day! Game of Life! CS Lab |
Script Big Input |
Assignment Two (Final Milestone DUE) Assignment Three (Game of Life) Valgrind |
| Mar 14 |
PThreads Lab Review | Game of Life |
PDF |
|
| Mar 16 |
|
tsQueue |
cmpxchg (CS @ Denver U) Compare And Swap and ABA Lock free datastructures Non-Blocking Queue Wait-Free Queue Double ended Queue Lock-free Dynamic Memory |
| Mar 19 | Process Synchronization (Ch 6) | PDF |
Game Boards Assignment Three (Milestone One DUE) Flame Graphs |
| Mar 21 |
|
More Game Boards |
|
| Mar 23 |
long long |
||
| Mar 26 | SPRING BREAK |
||
| Mar 28 | SPRING BREAK | ||
| Mar 30 | SPRING BREAK | ||
| Apr 02 | CPU Scheduling (Ch 5) | PDF |
Linux Scheduler Linux Scheduler (Multiprocess) sched.c sched.h |
| Apr 04 | Assignment Three (Milestone Two DUE) | ||
| Apr 06 | Linux CFS Kernel Patch Discussion struct rq struct cfs_rq struct sched_entity struct task_struct schedule function pick_next_task |
||
| Apr 09 | Linux Loadable Modules and Device Drivers (Marsh) | PDF |
Linux Device Drivers Chapter 1, 2, 3 O'Reilly |
| Apr 11 | Implement a Loadable Module (CS Lab) | Lab Exam Review |
Arch Linux in VirtualBox |
| Apr 13 | Character Devices: struct inode/struct file/ tty_driver/timer_list (CS LAB) | Char Dev Tutorial |
Assignment Three DUE |
| Apr 16 | Implement a Character Device Driver (CS Lab) | Lab |
|
| Apr 18 | EXAM | ||
| Apr 20 | Add a System Call to Linux (CS Lab) |
Lab |
Huge Game Board |
| Apr 23 |
Game of Life | Kernel Hacking Review (Marsh) |
GameOfLife |
Assignment Four (Kernel Hacking) |
| Apr 25 | SENIOR PROJECTS DAY |
||
| Apr 27 | Main Memory (Ch 8) | PDF |
|
| Apr 30 |
|
||
| May 02 | Virtual Memory (Ch 9) | PDF |
|
| May 04 | |||
| May 07 | Kernel Results discussion | Review | FINAL REVIEW |
Assignment Four DUE |
| May 09 | READING DAY NO CLASS |
||
| May
11 |
FINAL
EXAM 3pm - 5:30 pm |