CS110: Principle of Computer Systems, Autumn 2021

Based on documents by Lisa Yan, Jerry Cain, Julie Zelenski, Nick Bowman, and others


CS110 self-assessments are intended to gauge your comfort and facility with the course material so far. Since the course topics build on each other, confirming you have a solid grasp of the foundational material periodically ensures you're equipped to tackle the later concepts to come in the course.

We provide the assessments as a tool to take stock of where you're at and see how much you've learned, as well as what work you have left to do. Each assessment also contributes a small but meaningful contribution to your course grade.

Assessment 2 Details

Assessment Window Start Time: Fri. 10/29 5:00pm PDT - Tue. 11/02 5:00pm PDT.

Material Covered: through multiprocessing (everything through the end of Lecture 12, Assignments 4, and Lab 4 [minus the one threading problem involving quicksort]).

Practice Materials: click here for a compilation of multiprocessing questions from previous CS110 midterm and final exams. We highly recommend revisiting the section and assignment material as you prepare. The textbooks may also contain exercises if you want additional problems to work. For this assessment, we may ask questions where you write code. See the practice problems for examples of what types of coding questions we may ask.

Assessment 1 Details

Assessment Window Start Time: Fri. 10/08 5:00pm PDT - Mon. 10/11 5:00pm PDT.

Material Covered: through filesystems (first half of Lecture 4 slide deck, through and included filesystem data structures), including lab 1 and assign2. Excludes material from assign1 such as C++ lambdas.

Practice Materials: click here for a compilation of filesystems questions from previous CS110 midterm exams. We highly recommend revisiting the section and assignment material as you prepare. The textbooks may also contain exercises if you want additional problems to work. For this assessment, we will not ask questions where you must write code (though you may be asked code reading/understanding questions), but we included coding practice in case it's helpful.


All three assessments are open-book, open-note, and will be completed electronically via Gradescope. While you are able to access the myth machines during the assessment, the problems will be written with the intent that you not need to use the myth machines to complete them.

Each assessment will have a 72-hour "assessment window" during which all students must start the assessment. Assessment windows open at 5:00pm on Fridays and close precisely three days later, on Monday at 5:00pm. To be clear, you may start by Monday at 5:00pm and subsequently submit by 8:00pm.

We will target each assessment for a completion time of about 1-1.5 hours, but students will be allowed to work up to 3 hours if they so choose. You may choose any three-hour time period that is entirely contained within an assessment window during which to take an assessment. You do not have to communicate your planned schedule to us. Our tools automatically monitor the time you begin and when you submit. Your submission must be received no later than 3 hours after you have started an assessment. Late submissions cannot be accepted.

Unlike the assignments, the assessments are strictly individual work. Even course staff assistance will be limited to clarifying questions of the kind that might be allowed on a traditional, in-person exam.

The assessments may be a mix of short answer, multiple choice, code reading, code writing, etc. questions.

If you have questions during an assessment, please ask them as a private question via our discussion forum. Private questions will be re-enabled while self-assessment windows are open.

If you encounter an issue during an assessment period that prevents you from completing the assessment, please email the course staff immediately so that we can work with you to resolve the issue.


Scores will be initially interpreted as a percentage out of 100%, but when computing final grades, we’ll take the square root of that percentage and multiply it by 10 to arrive at a different "percentage". That means a 100% stays a 100%, 81% becomes 90%, and 64% becomes 80%, etc. We’re adopting this grading scheme so self-assessments can be as challenging and thought-provoking as on-campus exams generally are, but without the added pressure to get every single point. It also means you’re not competing against each other and fighting to sit in the better half of the bell curve.

The Honor Code

The Honor Code policies are a critical part of the assessments (see the general information handout on the main course homepage) and we expect you to uphold your obligations as for any other coursework. Here are the key principles:

  • You must not give or receive unpermitted aid of any form.
  • The work you submit must be your independent, original work, and not jointly developed or derived from the work of another.
  • You are not to discuss the content with any other person (except for private, individual communication with the course staff to ask for clarification). This restriction applies while completing your own work and afterwards up until an assessment window closes for all.
  • The prohibition against sharing or discussing with others applies to the content in any form (no verbal description, problem text, solution diagrams or code, and so on) and through any communication channel (no private conversation, group chat, email, discussion forum post, internet question/answer forum, etc.)

Here is a non-exhaustive list of what resources are permitted and not:


  • You may access the textbooks and other books in printed or digital form
  • You may look at any materials on the course website (lecture slides, lab problems, practice materials, etc.), read previous conversations on our discussion forum, and review your own code on Myth
  • You may use the myth machines to run code, although we generally don't recommend spending your time doing this
  • You may search online to find resource material related to course content
  • You may make a private post on the discussion forum to ask a clarifying question about the assessment content

Not Permitted

  • You must not make a public post on the discussion forum discussing any assessment content
  • You must not post content from an assessment on any online site or seek help from a forum such as Stack Overflow
  • You must not discuss an assessment content with any person (other than the course staff) during the entire assessment window
  • You must not share your answers with other students nor ask other students to share their answers with you


The assessments will be administered on Gradescope much as they're used for concept checks. The only difference worth mentioning is that you have precisely three hours from the time you open the self-assessment to complete and submit.