CSCI 1730 UNIX Systems Programming
Instructor: Dr. Leon Deligiannidis (ldeligia AT cs.uga.edu)
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.
- Grades:
- Two exams: Each 10%
- Assignments: 50%
- Final: 30%
- Late assignment policy:
- We will accept up to 3 days of late assignments.
- For each day there will be a 10% penalty.
- The last assignment cannot be submitted late.
TOPICS TO BE COVERED
- C++ Programming
- Control Structures.
- Functions.
- Arrays.
- Pointers.
- Structures.
- Classes.
- Operator overloading.
- Inheritance.
- Polymorphism.
- Templates.
- Stream I/O.
- Exception Handling.
- File Processing.
- Data Structures.
- String Manipulation.
- System Programming
- Files.
- Directories.
- File Systems.
- Processes.
- Signals.
- Pipes/FIFOs.
- Sockets.
- Academic integrity: Please read the Departmental policy on academic integrity. Unless otherwise stated, programming assignments, lab assignments, and homework are to be strictly your own work. Of course, you can talk over general principles and concepts about an assignment with others, but sharing of printed or electronic media is not acceptable. Guard you own work. Do not write code for others, and don't have others write code for you. Just as the work on an essay in English has to be your own, assignments in CSCI 1302 have to be your own work unless specifically stated otherwise. If suspected of academic dishonesty, I will report the incident to the appropriate authorities.
- Miscellaneous: You are responsible for all announcements that are made in class as well as those posted to the notice board found at the class site. Make sure to visit the class site daily. Being absent is not an excuse. Also, do not expect the web site to reflect everything we discuss in class - it is only an aid, a guide and a means of giving out information and/or instructions.
Contents of the syllabus are subject to change.