CS-2303,
System Programming Concepts
A-term 2010
This course
introduces students to a model of programming where the programming language
exposes details of how the hardware stores and executes software. Building from
the design concepts covered in CS 2102, this course covers manual memory
management, pointers, the machine stack, and input/output mechanisms in the C
and C++ programming languages.
The intended
audience for this course is computer science and computer engineering students
with substantial object-oriented programming experience, particularly in
Java. It is preparation for upper-level computer science courses, particularly CS-3013,
Operating Systems.
Syllabus, Course Outline,
and Goals and Outcomes
Discussion Board and Contacting People
The following links are intended to be password-protected in accordance with WPI policy regarding the posting of copyright materials on course web sites. When you follow one of them, you may be asked to login with your regular WPI login ID and the password given in class.
CS-2303 meets two times per week for two hours during a seven-week undergraduate term (28 hours).
Time and Place: Tuesdays and Fridays, 8:00 9:50 AM, Fuller Labs 320 from August 27 October 12, 2010.
Lab Sessions: Wednesdays, Goddard Hall 012; section
01 meets at 9:00 9:50 AM, section
02 meets at 10:00
10:50 AM.
Professor:
Hugh C. Lauer
Email: <professors last name>@cs.wpi.edu
Office hours: see chart below; or by appointment
Office: Fuller Labs, Room 235
Chuan
Lei (chuanlei)
Can Tatar (can)
Eric Walston (ecwalston)
(e-mail addresses are in the
domain wpi.edu
Office hours in Fuller A22)
Class e-mail
lists: The following two lists are in the domain cs.wpi.edu:
cs2303-all to reach all students, TAs, SAs, and the
professor
cs2303-staff to reach just the
TAs, SAs, and the professor
You should use these e-mail lists for all course business and technical
questions. See below.
Course web
site: http://www.cs.wpi.edu/~cs2303/a10/
In order to comply with copyright regulations, portions of this web site
may require you to log in. Please use your own WPI login ID and the password CS-2303.
Absences: Students
needing to be absent from class should notify the professor by e-mail or in
person as soon as possible. Likewise, students needing to schedule assignments
or presentations around religious holidays, projects, or interview trips should
notify the professor at the
beginning of the term.
Class cancellations and snow dates: Consult official WPI sources regarding the cancellation of classes due to snow and for rescheduling of those classes.
Please use the course e-mail list (cs2303-all in the domain cs.wpi.edu) as a discussion board. All technical questions should be addressed to this list. If you know the answer to a question, please respond to the list. You will be helping your classmates and increasing the subjective portion of your grade.
For administrative items, including questions about submittals, requests for extensions, notification about upcoming absences, etc., please e-mail to cs2303-staff in the domain cs.wpi.edu.
The teaching assistants and the Professor will endeavor to monitor both of these lists on a regular basis.
Private and confidential matters should, of course, be addressed only to the Professor.
|
Sunday |
Monday |
Tuesday |
Wednesday |
Thursday |
Friday |
Saturday |
8:00 |
|
|
class |
|
|
class |
|
9:00 |
|
|
Lab |
|
|
||
10:00 |
|
|
|
Lab |
|
HCL |
|
11:00 |
|
|
|
|
|
|
|
Noon |
|
|
|
|
|
|
|
1:00 |
|
CL |
HCL |
|
|
|
|
2:00 |
|
CL |
|
|
|
|
|
3:00 |
|
|
|
|
|
|
|
4:00 |
|
CAN |
|
|
|
|
|
5:00 |
|
CAN |
|
|
|
ECW |
|
6:00 |
|
|
ECW |
CAN |
|
|
|
7:00 |
|
|
|
CAN |
CL |
|
|
8:00 |
|
|
|
|
CL |
|
|
HCL
Hugh C. Lauer
CAN Can Tatar
CL Chuan Lei
ECW Eric Walston
Final grades will be computed as follows:
· Exams: 40%
· Programming assignments: 40%
· Labs: 10%
· Class participation and Subjective Evaluation: 10%
It is unlikely that you can pass this course if you do not submit programming assignments or attend class regularly. In particular, good grades on exams are not a substitute for submitting the programming assignments.
For the Subjective Evaluation portion of your grade, it is in your interest that the Professor and the Assistants know who you are. Please introduce yourself at every opportunity.
If there are any circumstances that limit or restrict your participation in the class or the completion of assignments, please contact the professor by e-mail as soon as possible in order to work something out.
There will be two exams: the final exam will be on October 12. A mid-term exam will be held, probably during
the week of September 13.
Exams will be one hour in length and will be closed book, but students may bring one 8½ -by-11 inch sheet of prepared notes (two sides). You may not use any computers, calculators, mobile phones, music players, or any other electronic devices during the exams.
Prior to each exam, there will be a brief review period in which students may ask questions and discuss topics relevant to the exam.
There are no makeup
exams. Absence from an exam will be excused only for medical or emergency
reasons. A note from your doctor or from the Office of Academic Advising will
be required. In extreme circumstances, the Professor will try to help you find
a way to pass the course.
Students with disabilities who believe that they need accommodations in this class are encouraged to contact the Disability Services Office (DSO) as soon as possible to ensure that such accommodations can be implemented in a timely fashion. The DSO is located in Daniels Hall. The Professor must receive requests for accommodations at least one week prior to an exam.
Late programming assignments will be accepted within 24 hours of the due date except the last programming assignment. Each student will be allowed one late submission without penalty. Additional late submissions will incur an automatic 25% penalty. Any assignment turned in after the 24-hour grace period will receive a grade of zero. No extra credit or makeup programming assignments will be given. If you have special circumstances, contact the Professor by e-mail at least 24 hours before the assignment is due.
Students are strongly encouraged to work together, help each other, reinforce each others knowledge, and consult experts and resources outside the course on all topics. Like most professional environments in your future, success depends upon how well you do when you have access to a full array of resources, not how much you remember by rote.
Once you and your classmates have worked out a solution to
a problem, you must write it up in your
own words or code it in your own coding style. Copying is not
allowed. Borrowing algorithms from references, on-line sources, and other
students is permitted provided that you cite your sources in your write-up
and that you write out the solution in your own words or coding style!
Some assignments may be team assignments. For these, it is expected that all team members participate with roughly equal levels of effort. When you put your name on a team submission of an assignment, not only are you testifying that you have fully participated in that assignment, but also your teammates are also testifying that you have fully participated.
For all assignments, the WPI Academic Honesty Policy applies: