Introduction
Announcements

Schedule
Labs
Assignments
TA office hours

Tests, exam

Videos
Course notes
Extra problems
Discussion board


WeekTopicsLecture?Tutorial?†VideosClass problemsLab workAsmtNotes
May 15 course info; software tools     Lab 01   software tools notes and examples
May 22 none none shell 01   Lab 02    
May 29 software tools, shell programming shell 02, 03, 04 problems Lab 03   shell programming notes and examples
June 5 shell programming, introductory C introductory C, arrays in C problems, solutions Lab 04   Introduction to C
June 12 C data types pointers in C problems, solutions Lab 05 a1 C data types
June 19 The unix filesystem; a preview of "struct"; argv; begin files optional: files and strings none Lab 06   The unix filesystem
June 26 Files, strings, argv;   other C matters LM162 the C pre-processor; malloc. problem, solution Lab 07   argv;   files;   strings;  
July 3 none none processes 01 to 04   Lab 08 a2 struct and malloc()
July 10 Processes signals, bitwise operations, maybe shell 06 problems Lab 09   Processes
July 17 Interprocess communication (sockets) select() problem and notes Lab 10   socket code examples
July 24 finish ipc (sockets) none problem Lab 11 a3  
July 31 Exam information, multitasking, POSIX threads, concurrency processes 08 problem Lab 12    
Aug 7 none none     Lab 13 a4  
Aug 14 Computer security; concluding notes   none Lab 14    

† This column indicates whether there is a lab tutorial in BA 31[789]5 with a TA present, on the Monday at 20:10-21:00. Even in weeks without a lab tutorial, there is usually still a lab... see the "lab work" column.