Resources for CSC 252, Spring 2014

Computers and Remote Access

The main computers for the course will be the machines of the Undergraduate CS Labs.  If you don’t have a CS major’s account, you’ll need to talk to Marty Guenther in CSB 735.  Machines in the Hylan Lab (room 301) are available to all students in the course.  Machines in the Majors Lab (CSB 633) are available only to CS majors.  Three of the lab machines (cycle1, cycle2, and are dedicated to use as remote login servers for access across the campus network.  For much of the work we will be doing an ssh terminal window will suffice.  If you need to use graphical tools you’ll want to run an X11 server on your machine.  MacOS X includes an X11 implementation (note that the two meanings of ‘X’ have nothing to do with each other).  X11 implementations are also available for Windows; see for example Cygwin/X

If you have access to other Unix machines (e.g., in your dorm room, or in the CS research labs) you may elect to work there if you like, but note that (1) course software will be maintained only on the CSUG network, and (2) all projects must be turned in electronically on CSUG machines, and must run correctly on those machines.  Do not assume that a program that runs on your desktop will also run fine after you scp it over to CSUG: there are subtle differences among Unix systems that can make porting a many-hour (or even many-day) process. 

Be sure to change permissions on any directories in which you are doing class work, to make sure they aren’t readable by others. 

Mail and On-line Forum

All students 252 should read the 252 discussion board in BlackBoard, through which class announcements will be made.  Questions may be posted to the discussion board or sent directly to the instructor or the TAs.  Any answer deemed useful to the class as a whole will be posted (with identifying information removed) back to the discussion board. 

If you don’t expect to log into your CSUG account every day, you should forward your mail to an account that you do read every day.  To forward an account under Linux, put the email address at which you want to receive your mail into a single-line file named .forward, and place this file in your home directory. 

Lecture Notes


The textbook for the course is the Second Edition of Bryant and O’Hallaron’s Computer Systems: A Programmer’s Perspective [Prentice Hall, 2011].  Copies are available from the River Campus bookstore or online.  A copy has also been placed on reserve at Carlson library. 

The textbook includes a variety of practice exercises, intersperced with the rest of the material.  You should plan to do these exercises as you go along, and to check your answers against the solutions in the back of the book. 

For the second edition, there are a variety of “Web Aside” sections available on-line.  You may find several of these enlightening, or helpful for assignments. 

Also on Reserve at Carlson:

Web Pointers

Getting Help

CSC 252 is not a course you can coast through.  It’s also not a course with a whole lot of “hand-holding.”  You will need to take responsibility for your own success.  Do not wait until you’re drowning before you ask for help. 

Many of the programming assignments will require that you become an expert user of certain tools, notably the GNU assembler and debugger.  These tools will be not be covered thoroughly in class.  You are expected to read the manuals and then attend TA office hours for hands-on help. 

Past exams

Last Change: 21 December 2017 / Michael Scott's email address