A290: UNIX and C

MW 17:00 - 17:50, LH 115

Instructor: D. Kevin McGrath

The course is designed to provide a brief introduction to UNIX and the C programming language. This will include the coverage of command line UNIX, the emacs text editor, the GNU compilers, and introductory C. The coverage of C will consist of basic syntax, loops, functions (including basic recursion), pointers, arrays, strings, structs, I/O, and an assortment of system libraries. The UNIX coverage will focus on a command line oriented environment, though the X windowing system will be introduced. The emphasis will be on commonly used utilities, such as file system navigation and manipulation, text manipulation, and development oriented utilities.

Office Hours:

Helpful Links:


Schedule:

(Last updated: Wed Oct 17 10:12:26 2007)

This schedule will be revised throughout the semester, so check back frequently! Also, keep in mind that the schedule is open to change. If we need to spend more time on a topic, we will.

All homework and readings will be posted on this schedule, complete with due dates. Readings posted on a given class day are expected to be read by that class day! All labs will be posted here as well. Supplementary material will be posted here, but will also be given a link at the top of the page.

Date Topic
Readings
Assignment
Week 0

Monday
08/27

Introduction

Wednesday
08/29

Getting acquainted with UNIX and C K&R: Chapter 1, A&L: Chapter 1 Week 0
Week 1

Monday
09/03

C: Types, operators, and expressions K&R: Chapter 2 (excluding 2.9)

Wednesday
09/05

UNIX: File system A&L: 2.7-2.9 (reference) Week 1
Week 2

Monday
09/10

C: Control Flow K&R: Sections 3.1-4.2, Code from class

Wednesday
09/12

UNIX: File manipulation and location A&L: Sections 3.1-3.9.2, 3.10.2, 3.12, 3.13.2, 3.14.2, 3.17 Week 2
Week 3

Monday
09/17

C: Functions and program structure K&R: Sections 4.1-4.2

Wednesday
09/19

UNIX: Shell A&L: 6.6-6.10, 6.13, 6.17-6.19, 6.23, 6.25 Week 3
Week 4

Monday
09/24

C: Pointers and arrays K&R: 5.1-5.5

Wednesday
09/26

C: Pointers and arrays K&R: 5.6-5.10 Week 4
Week 5

Monday
10/01

C: Structures K&R: 6.1-6.7

Wednesday
10/03

UNIX: Communications Week 5
Week 6

Monday
10/08

C: Input and Output K&R: Chapter 7

Wednesday
10/10

UNIX: Development Tools Linux Development Environment: Chapters 2.2.5, 3.3, 3.7, 4, 5
Week 7

Monday
10/15

Question Session

Wednesday
10/17

Interesting Tricks in C

D. Kevin McGrath
Last modified: Wed Oct 31 16:30:46 2007