The concepts presented in class will be explored through a series of six intensive programming assignments. The assignments will make use of the C programming language, which the universal language for implementing and accessing operating systems at the lowest level. The projects will give students ample practice in manipulating pointers, managing memory, invoking system services, and dealing with error conditions. Although we will offer some technical guidance on these matters, students should expect to spend significant time debugging, consulting reference materials, and revising the projects until they work properly.
The goals for each student in this course are:
The course materials will test each student's achievement of these goals at several levels. For each topic in the course, students must be able to:
Sakai will be used only to record and distribute grades:
http://sakai.nd.edu
Piazza will be used for general Q&A about assignments. You are welcome to post or answer questions at any time; the instructors will generally answer
questions on weekday afternoons:
https://piazza.com/class/jcgiqrpkb9q5d2
Office hours will be noted on the course web page. To attend, dial into this Zoom meeting with your laptop, either voice or video as you prefer:
https://notredame.zoom.us/my/dthain
Office hours will likely have multiple participants dialed in at once. If you would like to discuss grades or other matters privately, please contact Prof. Thain by email to make an appointment.
Your notes can be organized in whatever way is appropriate to that chapter and is useful for you. Good things to include may be an outline of the chapter, definition of key terms, a sketch of the systems or data structures being discussed, that sort of thing. The one absolute requirement is that it must contain a clearly highlighted question you would like to discuss during the next class period.
Grading on notes will be very simple: either one, one-half, or zero points. There will be twelve opportunities to earn a total of ten points, so you may miss up to two without penalty.
Late assignments will receive no credit. You are free to turn in programming assignments multiple times before the deadline expires. It would be a good habit to turn in an incomplete but working assignment on a daily basis. Thus, there is no excuse for failing to turn in an assignment: everyone should turn in something long before the deadline.
Exceptions will only be made for the grave circumstances outlined in the duLac student life handbook, or for participation in a sponsored University activity. In the latter case, students must confer with the instructor at the earliest possible date to make alternate arrangements.
If you believe an error has been made in grading an item, please bring it to the attention of the TA who graded it within seven days of receiving it. (The TA who graded it knows the details best, and so can give you the best explanation.) Factual and clerical errors will of course be cheerfully corrected. If you are unsatisfied with the TA's explanation, you may appeal to the instructor. After seven days, graded items are final and will not be revisited.
All exams, homeworks, and programming assignments are to be completed individually, unless otherwise indicated.
Students in this course are expected to abide by the Academic Code of Honor Pledge: “As a member of the Notre Dame community, I will not participate in or tolerate academic dishonesty.”
For programming assignments, the following table summarizes how you may work with other students and use print/online sources:
Resources | Solutions | |
---|---|---|
Consulting | allowed | not allowed |
Copying | cite | not allowed |
See the CSE Guide to the Honor Code for definitions of the above terms.
If the instructor sees behavior that approaches the border of academically dishonest behavior, and believes that further clarification is needed, he/she will give a warning. If an instructor sees behavior that is, in his/her judgement, academically dishonest, he/she is required to file either an Honor Code Violation Report or a formal report to the College of Engineering Honesty Committee.