CSCI 1730

UNIX Systems Programming

Spring 2014

Department of Computer Science
Franklin College of Arts and Sciences
The University of Georgia

This four-hour course covers the basics of UNIX systems programming, including file and directory structures, basic and advanced file i/o, process creation, and interprocess communication. An initial unit on "C++ for Java programmers" will familiarize students with the use of C and C++ in systems programming.

Course resources

People:

Times and Places

Course Policies:

Policy on Attendance:

Students are expected to attend class. Online materials are designed to supplement, rather than replace, classroom presentations. Essential information about assignments, extensions of due dates, format of exam questions, etc. may be announced or discussed in class with no accompanying posting on eLC. Attendance will be taken periodically in lectures and in labs, and will comprise an element of the course grade.

Policy on Collaboration:

The purpose of course projects is to familiarize the student with concepts and details of C++ and UNIX systems programming.

These may be pair-programming projects or individual projects, as assigned. Individual projects should be worked on only by that individual. Pair projects should be worked on only by members of the pair, in accordance with established pair programming practices.

We recognize that student interaction can facilitate learning. Accordingly, students are both permitted and encouraged to ask certain types of questions of one another but should be aware that direct exchange of code is prohibited, as is line-by-line assistance.

Examples of allowable questions:

Examples of prohibited questions: If in doubt, please contact Dr. Kraemer or Kyle Krafka for assistance in deciding what is or is not an allowable interaction.

Exams are closed-book. No outside assistance is permitted. No additional materials may be used.

Late Policy:

Late submissions of projects will be accepted with a penalty computed as follows:

score = Max_Score * Percentage_Score * (0.90)^(days_late).

A day is a 24 hour period, rounded up to the nearest day.

For example:

You turn your project in 3 days late, and received a 95% score based on the work done. Your recorded score will be:

score = 100 * (0.95) * (0.90)^3

score = 100 * (0.95) * (0.729)

score = 69 Exception: In the case that a solution is distributed, no project submissions will will be accepted after distribution of the solution.

Grading Policy:

Your grade in this course will be calculated as follows:

Letter Grades assigned as follows:
93 <= Grade 		A
89 <= Grade < 93	A-
86 <= Grade < 89	B+
83 <= Grade < 86	B
79 <= Grade < 83	B-
76 <= Grade < 79	C+
73 <= Grade < 76	C
69 <= Grade < 73	C-
65 <= Grade < 69	D
      Grade < 65	F


Eileen Kraemer (eileen@cs.uga.edu)
Last modified:  Mon Jan 6 2014