CIS 46: Workstation Programming
Syllabus
September 1 & 3 - Overview of the course, introduction to Unix, Linux and security. Relationship of a program to a a process. Read Chapter 1 of Robbins and Robbins.
September 8 & 10 - Processes, threads, process environment, program image in memory, command line arguments, static objects, process identification and state. Read Chapter 2 of R&R and begin Chapter 3.
September 15 & 17 - System calls involved with process creation and monitoring, background processes, critical sections. Finish reading Chapter 3 of R&R.
September 22 & 24 - Reading and writing files, system calls, redirection and filters. Read Chapter 4 of R&R.
September 29 - no class, Monday schedule
October 1 & 6 - Unix file system, directories, links. Read Chapter 5 of R&R.
October 8 - Exam 1 based on Chapters 1-5 of R&R.
October 13 & 15 - Inteprocess communication with special files, pipes, FIFO's, terminal control. Read Chapter 6 of R&R.
October 20 & 22 - Asynchronous events, introduction to signals, generating signals, manipulating signals, signal system calls, program control with signals. Read Chapter 8 of R&R.
October 27 & 29 - Real-time signals, section 9.4 Posix threads, thread management, thread safety, user threads . Read Chapter 12 of R&R.
November 3 & 5 - Thread synchronization, mutex locks, condition variables, signals handling, deadlocks. Read Chapter 13 of R&R.
November 10 & 12 - Critical sections, semaphores. Read Chapters 14 of R&R.
November 17 - Exam 2 based on Chapters 6,8, 12-14 of R&R.
November 19& 24 - The client server model and networks, sockets, host names and IP addresses. Read Chapter 18 of R&R.
December 1 & 3 - UDP and datagrams. Start reading Chapter 20 of R&R.
December 8 & 10 - TCP/IP and packet transmission. Finish reading Chapter 20 of R&R.
December 15 - Final Exam, 1 - 3:00 PM, Room 236 NE