Schedule
Week 0 |
||||
L00 | Wed, Jan 15 |
Introduction & C Refresher
[ pdf
]
Course administrivia. C Refresher, pointers, memory as an array of bytes
|
||
R00 | Thu, Jan 16 |
Recitation00: C & Pointers Review [ slides ]
C, Pointers, Arrays
|
||
Week 1 |
||||
:( | Mon, Jan 20 | No Class | ||
L01 | Wed, Jan 22 |
C++ and Memory
[ pdf
]
C++ Pointers, new/delete, memory diagrams
|
||
R01 | Thu, Jan 23 |
Recitation01: TODO
TODO
|
||
HW00 Due
(simple_string and check_time) due @ 11:59 pm on Fri, Jan 24 |
||||
Week 2 |
||||
Check-in00 Due
(Pointers, C refresher and Memory Model) due @ 10:15 am on Mon, Jan 27 |
||||
L02 | Mon, Jan 27 |
Core C++
Const, References, vector, string, printing, copying by value.
|
||
Survey00 Due
(Pre-semester Survey) due @ 11:59 pm on Tue, Jan 28 |
||||
L03 | Wed, Jan 29 |
Lifetimes and RAII
std::optional, destructors, RAII, refernces and memory model cont
|
||
R02 | Thu, Jan 30 |
Recitation02: TODO
TODO
|
||
HW01 Due
(vec) due @ 11:59 pm on Fri, Jan 31 |
||||
Week 3 |
||||
Check-in01 Due
(C++, references, RAII) due @ 10:15 am on Mon, Feb 03 |
||||
L04 | Mon, Feb 03 |
Style, Modules, and Encapsulation
Header Files, Makefiles, clang-tidy, valgrind, reading error messages
|
||
L05 | Wed, Feb 05 |
Invariants & smart pointers
Invariants, unique_ptr and shared_ptr
|
||
R03 | Thu, Feb 06 |
Recitation03: TODO
TODO
|
||
HW02 Due
(simple_string in C++ and memory diagram) due @ 11:59 pm on Fri, Feb 07 |
||||
Week 4 |
||||
Check-in02 Due
(Hoare Logic, Smart Pointers) due @ 10:15 am on Mon, Feb 10 |
||||
L06 | Mon, Feb 10 |
OS Start
nix, system calls, fork()
|
||
L07 | Wed, Feb 12 |
Processes Continued
Processes, process states, exec(), wait(), exit()
|
||
R04 | Thu, Feb 13 |
Recitation04: TODO
TODO
|
||
HW03 Due
(simplekv) due @ 11:59 pm on Fri, Feb 14 |
||||
Week 5 |
||||
Check-in03 Due
(Processes) due @ 10:15 am on Mon, Feb 17 |
||||
L08 | Mon, Feb 17 |
File Decriptors and Streams
stdin, stdout, stderr, file descriptor table
|
||
L09 | Wed, Feb 19 |
Pipes
pipe() and redirections
|
||
R05 | Thu, Feb 20 |
Recitation05: TODO
TODO
|
||
HW04 Due
(crash_proof) due @ 11:59 pm on Fri, Feb 21 |
||||
Week 6 |
||||
Check-in04 Due
(File Descriptors) due @ 10:15 am on Mon, Feb 24 |
||||
L10 | Mon, Feb 24 |
Caches
file buffering & memory caches
|
||
L11 | Wed, Feb 26 |
Caches cont and other overhead
memory caches, dynamic mem overhead, unnecessary copying
|
||
R06 | Thu, Feb 27 |
Recitation06: TODO
TODO
|
||
HW05 Due
(pipe_shell) due @ 11:59 pm on Fri, Feb 28 |
||||
Week 7 |
||||
Check-in05 Due
(Performance) due @ 10:15 am on Mon, Mar 03 |
||||
L12 | Mon, Mar 03 |
Midterm Review
Midterm Review
|
||
Ex0 | Wed, Mar 05 | Midterm Exam [exam info] | ||
R07 | Thu, Mar 06 |
Recitation07: TODO
TODO
|
||
Week 8 |
||||
:( | Mon, Mar 10 | No Class | ||
:( | Wed, Mar 12 | No Class | ||
Week 9 |
||||
Check-in06 Due
(C++ & File Descriptor Refresher) due @ 10:15 am on Mon, Mar 17 |
||||
L13 | Mon, Mar 17 |
Midterm Review
Last Minute Questions & Midterm Review
|
||
L14 | Wed, Mar 19 |
File Descriptors Refresh
Caches & posix file descriptor streams refresh
|
||
R08 | Thu, Mar 20 |
Recitation08: TODO
TODO
|
||
HW05 Due
(hashtable) due @ 11:59 pm on Fri, Mar 21 |
||||
Week 10 |
||||
Check-in07 Due
(posix streams) due @ 10:15 am on Mon, Mar 24 |
||||
L15 | Mon, Mar 24 |
More C++
C++ Copy Constructor, Assignment Operator, Casts
|
||
L16 | Wed, Mar 26 |
Intro to threads
Intro to threads
|
||
R09 | Thu, Mar 27 |
Recitation09: TODO
TODO
|
||
HW06 Due
(filereaders) due @ 11:59 pm on Fri, Mar 28 |
||||
Week 11 |
||||
Check-in08 Due
(Threads) due @ 10:15 am on Mon, Mar 31 |
||||
L17 | Mon, Mar 31 |
Mutex & Data races
mutex, data races, deadlocks
|
||
L18 | Wed, Apr 02 |
Transactions & ACID
Transactions & ACID
|
||
R10 | Thu, Apr 03 |
Recitation10: TODO
TODO
|
||
HW07 Due
(blur_bmp) due @ 11:59 pm on Fri, Apr 04 |
||||
Week 12 |
||||
Check-in09 Due
(Condition Variables & Transactions) due @ 10:15 am on Mon, Apr 07 |
||||
L19 | Mon, Apr 07 |
Condition Variables
Condition Varaibles & Monitors
|
||
L20 | Wed, Apr 09 |
Networking Intro
High Level Overview of the 7-layer OSI model.
|
||
R11 | Thu, Apr 10 |
Recitation11: TODO
TODO
|
||
HW08 Due
(transactions) due @ 11:59 pm on Fri, Apr 11 |
||||
Week 13 |
||||
Check-in10 Due
(Sockets) due @ 10:15 am on Mon, Apr 14 |
||||
L21 | Mon, Apr 14 |
TCP Sockets
Posix Sockets API
|
||
L22 | Wed, Apr 16 |
HTTP & Templates
HTTP & Templates
|
||
R12 | Thu, Apr 17 |
Recitation12: TODO
TODO
|
||
HW09 Due
(netcat) due @ 11:59 pm on Fri, Apr 18 |
||||
Week 14 |
||||
Check-in11 Due
(HTTP) due @ 10:15 am on Mon, Apr 21 |
||||
L23 | Mon, Apr 21 |
UDP
UDP
|
||
L24 | Wed, Apr 23 |
Project Overview and REST api's
Final Project Overivew, REST api's
|
||
R13 | Thu, Apr 24 |
Recitation13: TODO
TODO
|
||
Week 15 |
||||
L25 | Mon, Apr 28 |
Processes: pipe finished & Unix
pipes, Unix, HW4
|
||
L26 | Wed, Apr 30 |
Special topics: aync coding and Move
async, std::move
|
||
HW10 Due
(final project) due @ 11:59 pm on Wed, Apr 30 |