| 
    Week 1
     
       Administrivia
       The shell and shell scripting
     
    Week 2
     
       Shell scripting II
       Regex, grep, sed, &c, Lab #1 Assigned
     
    Week 3
     
       Perl
       Perl II, Lab #2 Assigned
     
    Week 4
     
       Compiliation model, "Hello world", similarity to Java
       Exam #1 -- UNIX environment, shell scripting and Perl 
     
    Week 5
     
       No class -- Gates-Hillman Complex Dedication
       Parameters, Multitple files, Globals, Static, Extern, Weak/Strong, Lab #3 Assigned 
     
    Week 6
     
       Memory, addresses, pointers, pass-by-reference-value, &-operator, *-operator, gdb
       Arrays, strings, pointer arithmetic, File IO, Lab #4 assigned
     
    Week 7
     
       Reinforcement, Multidimensional arrays
       Structs, typedefs; dynamic memory
     
    Week 8
     
       Designing a library interface, reinforcement
       Exam #2 (Programming in C, gdb)
     
    Week 9
     
       Implementing data structures, void pointer, multiple files, static, Hashing, Lab #5 assigned
       Linked lists
     
    Week 10
     
       Linked lists, cont, Lab #6 Assigned
       Function-like Macros, Valgrind, Make/CVS, Lab #7 Assigned
     
    Week 11
     
       Bitwise operators, Computer organization (ISA, registers, instructions, etc), Lab #8 Assigned
       SAMS ISA and assembly
     
    Week 12
     
       Discuss SAMS simulator implementation
       Continue Discussion of SAMS simulator
     
    Week 13
     
       System calls, Process control
       /proc, strace, Lab #9 assigned
     
    Week 14
     
       No class -- Thanksgiving
       gprof and program execution
     
    Week 15
     
       Exam #3 (More C, program-memory validation, SAMS assignment, process lifecycle and system calls
       Course wrap-up, Final Exam review
     |