CSC 272 - Unix and C - Fall 2006
Augsburg Weekend College
Class: Friday 6:00 – 9:30 PM
An introduction to the Unix
operating system and the C language
Students should have previous
experience with a programming language. This course requires hands-on work.
Students should either have access to a Windows, Unix, Linux, or OS X system
with a gnu C compiler. The primary lab will be the Linux machines in Sverdrup
203G. You will be able to use those machines remotely by logging in to one of
the CS lab machines (eg, eagle)
using ssh.
Instructor:
Noel J. Petit
Office: Sverdrup 203D Email:
petit@augsburg.edu Phone:
612-330-1061
Text:
C and Unix Programming: A Comprehensive Guide, N. S. Kutti, Lightspeed Books,
2002, ISBN 1-929175-28-4 (paperback)
Requirements:
Assignments are all short
programs demonstrating some part of C or Unix. Each week, a short description
of the new program will be handed out. You are expected to do your own
programming. The programs should be well documented with an explanatory header
and lots of notes in the code. Keep all of your code well organized in folders
as you may reuse some parts of previous assignments.
To work on c programs at
home, I recommend the gnu c compiler from http://gcc.gnu.org
for a unix or linux machine. This will require some work on your part to
download and install some software. Read the web pages carefully on doing the
installation. If you want to run
windows then there is a windows c compiler at http://www.cs.virginia.edu/~lcc-win32/.
You may have to do some Google
seaching for other compilers.
Assignments are to be your
own individual work. Do NOT share code.
Code that is identical to other’s work (or found on Google.com) will be
given a zero grade.
Grading will be
based on:
Fifteen assigned
programs 70%
Quiz
I 10
%
Quiz II 10
%
Final Exam 10
%
Course Outline
|
Week |
Topics |
Chapters |
||
|
1 |
Intro and Your first C
program |
1,2 |
||
|
1 |
Variables |
3 |
||
|
2 |
Functions and Storage Class |
4,5 |
||
|
2 |
Statements and Macros |
6,7 |
||
|
3 |
Quiz I |
1-7 |
||
|
3 |
Integers and Reals |
8,9 |
||
|
3 |
Characters and Strings |
10,11 |
||
|
4 |
Pointers and Arrays |
12,13 |
||
|
4 |
String Operations and
Composite Data Structures |
14,15 |
||
|
4 |
Storage Management and
ANSI- C File system |
16, 17 |
||
|
5 |
Signal, Time Management and
the Unix Interface |
18,19 |
||
|
5 |
Quiz II |
1-19 |
||
|
6 |
Project Management |
20 |
||
|
6 |
Unix File I/O |
21 |
||
|
7 |
Program Call Interface and
Shell Scripts |
22 |
||
|
7 |
Programming with Threads |
23 |
||
|
8 |
Final |
1-23 |
||