Computer Systems Organization

CSCI-UA.0201(005), Spring 2018

Lab assignments

Lab 1 (Due: 2/11; 2/18)
Lab 2 (Due: 3/18)
Lab 3 (Due: 4/1)
Lab 4 (Due: 4/22)
Lab 5 (Due: 5/6)

Collaboration and Integrity Policy

Please read this carefully. We will run plagiarism detection software on all submitted code.

Lab Virtual Machine

We will grade your labs on an Ubuntu 16.04 machine. We recommend you do the labs in the the class virtual machine (based on Ubuntu 16.04).

For a basic virtual machine setup, perform the following four steps:

For more advanced tune-ups to help your productivity, do the following:

Note that if you choose to do your labs outside of the class virtual machine, we will not provide any technical support should you encounter any OS-related issues in doing the labs. Furthermore, should the results of your lab differ from what we have obtained by running the tests on Linux, we will use our test results in determining the grade.

Lab Repository Setup

For each student in the class, we have created for him/her a corresponding private lab repository on You will submit labs by pushing to your private repo on (as many times as you want) and we will collect labs for grading after the lab deadline directly from Below are the steps for setting up your the lab environment on your laptop. If you are not familiar with the git version control system, follow the resources here to get started.

Handin Procedure

To handin your files, simply commit and push them to by doing:
$ git commit -am "saving all my changes and handing in"
$ git push origin 
We will fetch your lab files from at the specified deadline and grade them.