Course mailing list: cs410@cs.bu.edu
(type: 'csmail -a cs410' to add yourself to the mailing list).
NOTE: The last day to drop a course without a 'W' grade is Tuesday,
February 22. The Registrar's website provides further information about
important dates.
Prerequisites:
This course assumes that students have a solid background in C
and/or C++ programming. Experience with UNIX to edit, build and execute
programs is also required.
CS112 is a prerequisite course.
Course Summary:
This course will focus on various aspects of system programming.
We will study the UNIX programming interface, from the point-of-view
of system calls and library routines to perform file, I/O and process
management, as well as inter-process communication and synchronization.
The C language will be used throughout the course, but aspects
of shell programming and languages such as Perl will also be discussed.
Additional topics may include graphical user interfaces
(GUIs) and toolkits for graphical interaction with applications.
Further Information:
Additional recommended reading:
Larry Wall, Tom Christiansen and Jon Orwant, "Programming
Perl", 3rd Edition, O'Reilly and Associates, ISBN:0-596-00027-8. There
are many other O'Reilly books on
Perl and one of the "Learning Perl" books might be easier to follow.
W.R. Stevens, "UNIX Network Programming", Volumes I & II,
Prentice-Hall, ISBN 0-13-490012-X and 0-13-081081-9, respectively.
You should know how to write makefiles. Further
information can be found by typing 'info make' on a UNIX machine,
reading the man pages, or checking the GNU on-line documention.
If you're having trouble debugging your C/C++ programs, look at the gdb info pages ('info
gdb'), the gdb man pages, or the GNU on-line documentation.