pete > courses > Operating Systems (CSCI 0414), Spring 2024


Operating Systems (CSCI 0414), Spring 2024

Who Peter C. Johnson (pete@midd)
Where 75 Shannon Street, Room 203
When Tuesdays and Thursdays, 11:15–12:30
Textbook none required

Schedule


13 Feb introduction, architecture review, OS overview
15 Feb system calls in detail
20 Feb DTrace
22 Feb virtual memory I
27 Feb virtual memory II
Assignment 1 available

Coursework


Five assignments and one final exam.

Each assignment will consist of three parts: complete any one part to earn a C, any two parts to earn a B, and all three parts to earn an A. (An exception: the filesystems assignment will require finishing two specific parts before embarking upon the third.) You will have ~2 weeks for each assignment, with rounds of feedback/revisions.

The final exam will consist of several questions requiring written answers. A certain number of correct answers will be required for a C, a B, and an A. (Exact numbers to be determined at a later date.) You will have ~1 week to complete the final, with rounds of feedback/revisions.

For the semester grade:

  • Complete all assignments and the final exam at the C tier to earn a C.
  • Complete all assignments and the final exam at the B tier to earn a B.
  • Complete all assignments and the final exam at the A tier to earn a A.

Half-grades (ie, + or -) will be assigned based on how many of the next-higher tier pieces of coursework have been completed. Whole grades (ie, A/B/C) will only be assigned if all assignments and final exam are completed at that level. (That is, a student who finishes everything at the C level and then does a smattering of A and B stuff, but not all the B stuff, will earn a maximum grade of B-.)

Resources


Textbooks

As stated above, none are required. Should you wish to consult alternative resources (and I fully encourage you to do so!), I suggest the following.

  • The Design and Implementation of the FreeBSD Operating System, McKusick, Neville-Neil, and Watson
  • Operating System Concepts, Silberschatz, Galvin, Gagne
  • Modern Operating Systems, Tanenbaum

I have copies of all of these in my office which you are most welcome to peruse. If you seek them out on your own, try to get the latest editions.

FreeBSD source code

These websites provide different interfaces to browse the FreeBSD source code:

Additionally, when you get yourself a FreeBSD virtual machine situation, you will have the source code there, too: it will be in /usr/src, with the kernel code specifically in /usr/src/sys.

Using FreeBSD for this course

Information here.

Academic Integrity


All work submitted in this course must be your own and no-one else’s. On all coursework, any assistance that is not explicitly allowed is prohibited; ask me for clarification if there is confusion at any point. You may discuss assignments with other students, but you may not view other students’ solutions, no matter how preliminary. Rule of thumb: never talk to another student about coursework with a computer screen open.

If I determine that the work you submit is not your own, you will earn no credit for that piece of work and you will not be permitted to resubmit it. Such work includes, but is not limited to, solutions that are in any way informed by large language models such as ChatGPT.

When in doubt, ask.

ADA


Students who have Letters of Accommodation in this class are encouraged to contact me as early in the semester as possible to ensure that such accommodations are implemented in a timely fashion. For those without Letters of Accommodation, assistance is available to eligible students through the Disability Resource Center (DRC). Please contact ADA Coordinators Jodi Litchfield and Peter Ploegman of the DRC at ada@middlebury.edu for more information. All discussions will remain confidential.

Last modified: