CSE 271: Programming in C and the UNIX Environment
Schedule of Topics (Spring 2011)

Mon Jan 17 Introduction Prata Ch 1
Hahn Ch 1-2
Wed Jan 19 Lab in PL122: Using X-Window and Editing Files Hahn Ch 3-6,22
Fri Jan 21 Short Quiz 1
Compiling / Intro to using UNIX
Prata Ch 2
Ch 1 of Advanced Linux Programming
Hahn Ch 8-10,21
Mon Jan 24 C Basics; Start mycat.c Prata Ch 4-7
Wed Jan 26 Lab in PL122: Using UNIX; Finish mycat.c Hahn Ch 24-25
Fri Jan 28 Short Quiz 2
Unix processes, redirection
Molay Ch 1, Hahn Ch 15-18,26
Mon Jan 31 C Functions and Structures (myncat.c, dice.c) Prata Ch 9, 14
Wed Feb 2 Lab in PL122: Using UNIX, part 2 Prata Ch 8
Fri Feb 4 Short Quiz 3
Strings and Pointers (concat.c)
Prata Ch 10-11
Mon Feb 7 More on Pointers
Memory Allocation (expand.c)
Prata Ch 12
Ch 3 of Linux Programming by Example: The Fundamentals
Wed Feb 9 Lab in PL122: Finish pointers  
Fri Feb 11 Short Quiz 4
Miscellaneous C topics
Mon Feb 14 Preprocessor
Persistant remote access via screen and VNC
Prata Ch 16
Wed Feb 16 Lab in PL122: Debugging  
Fri Feb 18 Hourly Exam 1 
Mon Feb 21 Large Program Development/Coding Style
Debugging Dynamic Memory Management
Section 2.2 of Advanced Linux Programming
Appendix A of Advanced Linux Programming
Wed Feb 23 Lab in PL122: Debugging and Profiling Tools  
Fri Feb 25 Short Quiz 5
Introduction to Shell Scripting
Hahn Ch 11-14
Add'l references: Sams Teach Yourself Shell Programming in 24 Hours or The GNU Bash Reference Manual
Mon Feb 28 Scripting and Regular Expressions Hahn Ch 19,20
Wed Mar 2 Lab in PL122: Shell Scripting Exercises  
Fri Mar 4 Short Quiz 6
Finish Shell Scripting
UNIX Programming: who
Mon Mar 7NO CLASS - Spring Break 
Wed Mar 9NO CLASS - Spring Break 
Fri Mar 11NO CLASS - Spring Break 
Mon Mar 14 UNIX Programming: who.c Molay Ch 2
Wed Mar 16 Lab in PL122: LaTeX  
Fri Mar 18 Short Quiz 7
UNIX Programming: who, cp (who.c, copy.c)
Molay Ch 3
Mon Mar 21 UNIX File System Molay Ch 4, Hahn 23
Wed Mar 23 Lab in PL122: More UNIX Programming (Ls.c) Prata Ch 15
Fri Mar 25 Short Quiz 8
Finish filesystems
Mon Mar 28 NO CLASS - Do homework/projects, and study for exam 
Wed Mar 30 Lab in PL122: Perl  
Fri Apr 1 Hourly Exam 2  
Mon Apr 4 Accessing and Controlling UNIX Devices Molay Ch 5
Wed Apr 6 Lab in PL122: Terminals Molay Ch 6, Hahn Ch 7
Fri Apr 8 Short Quiz 9
Games: Managing the screen and handling events
Molay Ch 7
Mon Apr 11 Processes and Inter-Process Communication Molay Ch 8, 15.3
Wed Apr 13 Lab in PL122: Games part 2  
Thu Apr 14 HPC Symposium  
Fri Apr 15 HPC Symposium (No class)  
Mon Apr 18 Redirection and Pipes Molay Ch 10
Wed Apr 20 Lab in PL122: More Pipes Molay Ch 11.1-11.4
Fri Apr 22 Short Quiz 10
Large files and memory
Mon Apr 25 Character Sets (wide.c) Prata B.V, B.VII
Wed Apr 27 TIME IN LAB  
Fri Apr 29 NO CLASS - Do project and study for final  
Wed May 4 Final Exam, 7-10pm, WH 207 
Last revised: 24 April 2011, Brian D. Davison.