IC221: Systems Programming (SP14)

Home Policy Calendar Syllabus Resources Piazza

Course Policy


Text Book

Learning Objectives

  1. Understand the operation of the UNIX OS from the user, systems programmer, and application programmer perspective.
  2. Use a UNIX command shell and do basic scripting.
  3. Navigate and manipulate the UNIX filesystem from the command line.
  4. Build application software using the make utility.
  5. Write simple shell scripts and configure resource files.
  6. Interact with the O.S. through system call API to manage processes and interact with the file system
  7. Learn UNIX command-line tools and how they are implemented
  8. Use standard debugging techniques using gdb and valgrind
  9. Design simple network programs that use the socket API
  10. Design software on UNIX that uses concurrency to solve problems.

Program Outcomes

This course contributes to the student's ability to:
  1. Use current techniques, skills, and tools necessary for computing practices. (PO i)
  2. Develop an appreciation for the Operating System role in computing

Extra Instruction

You are encouraged to come in for extra instruction (EI) when you are having trouble. Your individual instructors will have different feelings about drop-ins versus appointments.


Piazza Message Board

We will use a Piazza Message Board to assist and help with the class discussion. You should feel free to post questions to the message board for help on labs and homework. You should also feel free, as a student, to answer another student's questions, and this is the key design. Participation on the message board can positively impact your participation grade.

Posting about Labs and Homework

Posting and Answering Questions


As detailed above, you may collaborate as much as you like on homeworks, but the actual pencil-to-paper or fingers-to-keyboard effort must be your own. All work on exams and labs should be your own, unless otherwise specified by the instructor.

Classroom Decorum

Beverages are permitted in classrooms and labs provided they are in closed containers. No food or smokeless tobacco is permitted in classrooms or labs.


Adam J. Aviv
Course Coordinator

Steve Miner
CS Department Chair

Last modified: Tue Jan 7 08:22:18 EST 2014