CSC 3320

System-Level Programming

Spring 2011

Classroom: Classroom South 509

1:30-2:45 p.m. MW

Instructor:Dr. Yi Pan

Office:34 Peachtree Street, room 1442

Phone: 404-413-5719 (o)

Fax:404-413-5717

E-mail:

Website:

Office Hours:12:00 p.m.-1:30 p.m. MW or by appointment
Teaching Assistant:Promita Bose, Email Address:

Pre-requisites: CSc 2310. Note that this is required - IF YOU DO NOT HAVE THE PREREQUISITES (OR ITS EQUIVALENT FROM ANOTHER INSTITION) ON YOUR TRANSCRIPT, WITHDRAW FROM THIS COURSE NOW.

Catalog Description:
An introduction to programming at the level of the operating system. Topics include editors, system calls, programming tools, files, processes, interprocess communication, and shells.

Course Objectives:
This course is designed to give students experience in using a high-level language ( C ) to interface with an operating system (UNIX). Students will learn fundamental UNIX concepts, including files, processes, interprocess communication, and shells. They will also gain experience writing and testing C programs using UNIX editors and programming tools.

Topics:

  1. Unix Basics, Editors (2 weeks) - vi, emacs, sed.
  2. C Programming(2 weeks) - Difference between C and C++, compiling and linking under UNIX.
  3. Programming Tools (2 weeks) - make; ar, tar, char; lint; profilers; debuggers; filters (awk, wc, sort, tr, grep, diff, uniq); sccs, rcs.
  4. Files (2 weeks) - UNIX file system, file permissions, file system calls (fcntl, creat, open, read, write, close, lseek).
  5. Processes (2 weeks) - Basic concepts, daemon processes, process creation and termination, process diagnostics and communication (ps, kill, top, pipe).
  6. Shells (3 weeks) - sh, ksh, csh; shell programming.

Texts:
Glass and Ables, Unix for Programmers and Users, Prentice Hall, Third Edition (2003), ISBN 0-13-046553-4.
King, C Programming: A Modern Approach, Norton, 1996, ISBN 0-393-96945-2.

Final Exam:
The final exam will be given in the above classroom. See the university schedule for time and date.

Grading Policy:

  • Twotests will constitute 40% of the course grade.
  • Assignments/projects will constitute 40% of the course grade.
  • The final exam will constitute 20% of the course grade.

Class Policy:

  • Attendance: Daily attendance is strongly encouraged. Any student missing a lesson is responsible for any material assigned or covered in class during his or her absence.
  • Assignments and Projects:
  1. Assignments and projects are due at the beginning of the specified class. Late assignments and projects will be penalized at 10% per 24-hour or fraction thereof. No assignment or project will be accepted for credit after it has been returned to the class.
  2. All work to be handed in must be done individually unless the instructor explicitly states otherwise. Any assignment or portion of an assignment that is duplicate or group result will receive a grade of zero for all parties concerned.

The same policy applies to projects.

  1. Makeup exams will only be given in the case of serious illness or emergency. You must personally contact the instructor before the scheduled exam.
  • Withdrawals: Feb 25is the last day to withdraw and receive a possible grade of W except for hardship withdrawal.

Statement: This course syllabus provides a general plan for the course; deviations may be necessary.