CS 410 -- Software Systems -- Spring 2001
Computer Science Department, Boston University
- There is no excuse for not reading the following links carefully:
- Course policy,
Homework submission rules
-
Some formal guidelines for program writing
- Tentative timetable
-
Midterm March 14, Final May 11, 2-4.
The exams are comprehensive.
- Some lecture notes (as they become
available)
-
The correspondence between these notes and what went on in the lectures
is not 1-1.
Some topics will be elaborated more, some less.
Still, these can be used as guidelines for studying.
-
Example programs
- Homework
(and its solution, after the late submission date)
0,
1,
2,
3,
4,
5,
6.
-
Midterm exam solutions (you need ghostscript/ghostview to see this from home)
-
Final exam solutions (you need ghostscript/ghostview to see this from home),
score distribution and grade cuts.
-
Example midterm questions and
answers
-
Example final questions and
answers
- Instructor
-
Peter Gacs
Office hours: Mon 2:00-4:00, Fri 4:00-5:00
Coordinates: E-mail: gacs@bu.edu, Phone: 353-2015,
Office: MCS 277
- Time, place
-
Mon, Wed, Fri 1-2, GCB205
- Texts
-
Required:
-
Haviland, Gray and Salama: Unix System Programming.
Second edition. Addison-Wesley 1999. ISBN 0-201-87758-9
-
Bradford Nichols, Dick Buttlar, Jacqueline Proulx Farrell, Jackie
Farrell:
Pthreads Programming: A POSIX Standard for Better Multiprocessing.
O'Reilly & Associates, ISBN 1565921151
Recommended (warmly):
- Abrams, Larson: Unix for the Impatient, Addison-Wesley,
ISBN 0-201-82376-4
(Thorough treatment of Unix for non-programmers.)
-
Neil Matthew, Richard Stones: Beginning Linux Programming, 2nd Edition. Wrox
Press, Birmingham, UK. ISBN 1861002971
(I may even have chosen this over the Haviland-Gray-Salama book, if I had
seen it before.)
- Stevens: Advanced Programming in the UNIX Environment.
Addison-Wesley, ISBN 0201563177
(Thorough treatment of Unix for programmers.)
Further recommended:
-
Stevens: Unix Network Programming I. Prentice-Hall, 1997,
ISBN 0-13-490012-X
(Thorough treatment of programming with sockets from the C interface.)
-
Kernighan, Pike: The Unix Programming Environment, Prentice-Hall,
ISBN 0-13-937681-x (Out of print classic.)
- Description
-
The course teaches the use of the facilities of a typical operating
system (Unix) in the writing of application programs.
We will be programming mainly in the Python language and somewhat in C.
The topics include text processing, file and process management,
interprocess communication, CGI programming, object oriented programming in
Python, threads and possibly graphical user interface (Tk).
Knowledge of the C programming language and use of the Unix system
to edit, build and execute programs is a prerequisite.
- Useful links