IC221: Systems Programming (SP15)

Home Policy Calendar

Course Policy


Text Book

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.


There will be three MGSP student leaders to compliment extra instruction to be held before labs and homework are due.

Course Objectives and Assessment

Learning Objectives

  1. Understand the operation of the UNIX OS from the user, systems programmer, and application programmer perspective. (supports GSO i and g)
  2. Use a UNIX command shell to interact the file system, developing basic scripting, and develop command line tools. (supports GSO i)
  3. Interact with the O.S. through system call API to manage processes and interact with the file system (supports GSO i)
  4. Use standard debugging techniques using gdb and valgrind (supports GSO i)
  5. Design simple network programs that use the socket API (supports GSO i and EC310 1)
  6. Design software on UNIX that uses concurrency to solve problems. (supports GSO i)
  7. Learn basic operating system security concepts such as those related to file permissions, user group permissions, unintended execution paths. (supports GSO e, i and g and EC310 2)

General Student Outcomes

This course contributes to CS/IT program assessment goals:

EC310 Course Objective Assessment

This course contributes to the EC310 program assessment goals:
  1. Describe in depth the principles, mechanisms, and technologies of information systems' hardware and software in both computers and communications domains, and describe the development of typical exploits used against vulnerabilities in information systems. (EC310 1)
  2. Identify action that can be taken to protect information systems' hardware and software in both computers and communications domains against potential exploits. (EC310 2)

Grading Policy

Grading Breakdown

Lab Submission Policy

All labs are released on Thursday and will be due the following Wednesday at 23:59. Submission instructions will be provided for each lab.

Lab Grace days:

Homework Submission Policy

Homeworks for each week will post on Monday nights, and are due the following Monday at the start of lecture. Homeworks must be submitted in hard copy to the instructor.

Homework Late Policy :

Honor, Collaboration and Classroom Conduct Policy

The honor and collaboration policy of this class references and adapts the language of Computer Science Department Instruction 1531.1D, Policy Concerning Programming Projects. We make the following course-specific adaptations and revisions below; however, when not explicitey stated, the policy of the departments policy holds.

Homework Assignment Collaboration

Programming and Lab Assignment Collaboration Policy

Programming and Lab Assignment Discussion Policy

Classroom Decorum


Adam J. Aviv
Course Coordinator
Steve Miner
CS Department Chair

Last modified: Wed Dec 17 15:44:36 EST 2014