CAS CS210 Computer Systems
Fall 2012

Department of Computer
College of Arts and Science


This page http://www.cs.bu.edu/~jappavoo/webpages/cs210.html will NOT be generally updated. We will typically use the course's piazza site (http://piazza.com/class#fall2012/cs210 for all online information other than grades. For grade information we will use the course's Blackboard site (http://blackboard.bu.edu)

Announcements

Read and sign copy of syllabus for submission at your first discussion. See the course's piazza site (http://piazza.com/class#fall2012/cs210 for all online information other than grades. All future announcements will be done via the piazza site so please be sure to have register correctly.

Instructor

Prof. Jonathan Appavoo
Math & Computer Science Building Office: 284
111 Cummington Street, Boston, MA
Email: jappavoo (at) cs.bu.edu
Office Hours: Tuesday, Wednesday, Thursday 4:00-5:00PM

Teaching Fellow

Dan Schatzberg
Email: jappavoo (at) cs.bu.edu
Office Hours: Tuesday 2:00-4:00PM, Tuesday & Thursday 1:00-2:00pm

Time And Place

Time:
Tuesday, Thursday 2:00pm to 3:30pm
Place:
School of Theology (STH) B19

Syllabus

You are required to submit a signed and dated version of this syllabus to the TF in your first discussion session indicating that you have read, understood and agree to its contents. You can obtain a copy of the syllabus from here.

Class Schedule

Special Dates

You should be sure to be familar with the Official Semester Dates

Some of the critical Semester Dates are below:

Weekly Schedule

Week

Dates

Description

References

1 Sept 4, 6
2 Sept 11, 13
3 Sept 18, 20
4 Sept 25, 27
5 Oct 2, 4
6 Oct 11 NO CLASS ON TUESDAY
7 Oct 16, 18
8 Oct 23, 25
9 Oct 30, Nov 1
10 Nov 6, 8
11 Nov 13, 15
12 Nov 20 NO CLASS THURSDAY
13 Nov 27, 29
14 Dec 4, 6
15 Dec 11 TUESDAY IS LAST CLASS

Tests/Exams

Name

Date

Solutions

Midterm 1 Oct 4 TBP
Midterm 2 Nov 8 TBP
Final Date ---

Assignments

Name

Dates

Resources

Solutions

PS 1: 'C' Basics and Data Representation OUT: Tuesday Sept 11, IN: Tuesday Sept 25, 1:30 ps1.pdf ps1sol.pdf
PS 2: Programming Representation OUT: Oct 8, IN: Oct 23, 1:30 ps2.pdf ps2sol.pdf
PS 3: Caches & Virtual Memory OUT: , IN:
PS 3: Input Output OUT: , IN:
PA 1: Buffer Lab OUT: Sept 25, IN: Oct 16, 1:30pm handout
PA 2: Performance Lab OUT: Oct 22, IN: Nov 13, 1:30pm handout , resources ---
PA 3: 6502 Lab OUT: Tues Nov 20, IN: Thursday Nov. 29, Dec. 6, Dec. 11 1:30pm handout , resources ---


Assignments

You will be required to submit an electronic copy of your code, in addition to both electronic and hard copies of supporting documentation and any requested written report(s). When explicitly specified, you may have the option to work in teams of two on large programming assignments.

General Requirements on What to Submit

Unless automated and otherwise specified, the program you submit should work correctly and be documented. You should submit an electronic copy of the following:

1. Program: a program listing containing in-line documentation (i.e., comments).

2. Design document: a separate file (a page or so) describing the overall program design, a verbal description of "how it works", and design tradeoffs considered and made. Also describe possible improvements and extensions to your program (and sketch how they might be made).

3. Testing document: a separate file describing how to run your program. Specify the steps that must be followed to successfully run your program. Also, describe the tests you ran on your program to convince yourself that it is indeed correct. Also describe any cases for which your program is known not to work correctly.

It is fine to submit all the above documentation in one README file, given you have clear subtitles. To save trees, you are required to submit a hard copy only of the above supporting documentation and any requested written report(s), but not of your program listing/code.

Additional Guidelines for Electronic Submission

[adapted from Prof. Matta's note that was adapted from D. Metcalf's note]

How to submit an electronic copy: (Only plain ASCII files!)

To submit your programming assignments, use the gsubmit program from your csa account.

gsubmit is an electronic file submission engine which will submit files or directories of files to the grader so they can be marked.

Every file submitted by a given student for a given assignment should have a unique file name. If a file is submitted with a duplicate name it will either overwrite the file or generate an error message.

To make it easy for the grader to find the files relating to a specific programming assignment, all files for each assignment should be stored in a subdirectory called pa1, pa2, pa3, etc. and the entire directory should be submitted.

To submit an assignment:

Create a subdirectory "pa#", where # is the programming assignment number. This is done using the mkdir command: e.g.,
mkdir pa5

Copy all files necessary for that assignment into the new subdirectory, using the cp command: e.g.,

cp prog1.s pa5 

Be sure to copy only the files you need to submit into this subdirectory.

Use gsubmit to submit the entire subdirectory:

gsubmit cs210 -cp pa5

If submission is successful a status message will be printed.

To submit a file to an already-submitted subdirectory:

If you only submitted part of the assignment and would like to add another file: To submit a file README.txt to subdirectory pa5, type (at the prompt):
gsubmit cs210 -cp README.txt pa5

To resubmit a file:

To resubmit a file prog1.s in subdirectory pa5, first unsubmit the file:
gsubmit cs210 -rm pa5/prog1.s
Then resubmit it:
gsubmit cs210 -cp prog1.s pa5

List all files which you have submitted:

To list all files which you have submitted, type:
gsubmit cs210 -ls

Looking at a file which has already been submitted:

To look at a file which has already been submitted, type:
gsubmit cs210 -cat pa5/prog1.s
You can store this in a file foo by typing:
gsubmit cs210 -cat pa5/prog1.s > foo

Where do submitted files go?

Each student who submits an assignment has a subdirectory created to hold his/her files, in a directory for the specified course. This is called the student's "submission spool directory".

How can the grader tell when a file has been submitted?

Every gsubmit command is automatically logged in a log file, along with a time stamp.

For further information:

Note - The information in this document is taken from the gsubmit man page. For further information type man gsubmit.

Online References

C/Unix

GNU/Unix Tools

The GNU project provides online manuals for all of the GNU tools, including:

Other



Academic Honesty

Assignments must be completed individually. Discussion of issues in computer systems is encouraged, but representing the work of another person as your own is expressly forbidden. This includes "borrowing", "stealing", copying programs/solutions or parts of them from others. We may use an automated plagiarism checker. Cheating will not be tolerated under any circumstances. Handing in your own work a day or two late will affect your grade far less than turning in a copy of someone else's work on time!

See the CAS Academic Conduct Code, in particular regarding plagiarism and cheating on exams. Copies of the CAS Academic Conduct Code are also available in room CAS 105. A student suspected to violate this code will be reported to the Academic Conduct Committee, and if found culpable, the student will receive a grade of "F" for the course.

Any resources, including material from other students (current or past), that are used, beyond the text or that provided by the TF or professor must be clearly acknowledged and attributed. Using such material may at the discretion of the TF or professor result in a lower grade. However, if such material is used and not acknowledged and attributed, it will automatically be considered as possible academic misconduct.


Last modified: Mon Nov 19 18:52:12 EST 2012