Labs
The operating system you will build, called JOS, will have Unix-like functions, but is implemented in an ExoKernel style (i.e., the functions are implemented mostly as user-level library instead of built-in to the kernel).
The labs used in this course are largely based on the materials originally developed for MIT 6.828: Operating System Engineering and edited by OSU CS 444/544.
The labs are done in pairs or individually. Please make sure that you enroll along with your partner in a group on Brightspace (click on course tools and click on groups)
You can do labs by logging into eceprog
(after following the steps in Lab 0) or using a ubuntu 22.04 machine (again following the corresponding steps in Lab 0).
Late Policy
- Each group have free 2 late days.
- You can use late days for assignments. A late day extends the deadline 24 hours.
- Once you have used all 2 late days, the penalty is 10% for each additional late day.
- All additional requests for late submissions should come through the [Office of the Dean of Students](https://www.purdue.edu/odos/).
- Out-of-band requests for late submissions will be ignore.
Grading Rules
- 1. Compilation error/empty or incorrectly formed tar.gz file results in immediate zero points. This is not a intro to programming class. You should have already overcome this hurdle long before.
- 2. Code faking/cheating of any form, for example Copying other team's solutions, faking your program to simply print out the expected output, or changing the Makefile to use the TA provided kernel as opposed to your own but claiming it is using your own modified kernel, will result in immediate zero points for that entire lab, plus a report to the Dept and the Dean's office of academic dishonesty.
- 3. Any coredump/hanging will result in a deduction of 60% of the total points for that problem right away
- 4. For all the other cases, the grade script should give you a good estimate of the expected grade. We also maintain other tests, so final grade will depend on you passing the provided grading script and our internal tests.
- 5. All members of the group are responsible for the lab. Unfortunately, given the large class size, TAs or instructors will not handle requests related to problems within the group members. For instance, "My partner is supposed to complete the paging, but he did not do it on time. Can I get a partial grade?". Your grade will be based on what is submitted on the brightspace.
- 6. Submissions via email will be ignored and discarded, unless it is pre-approved by the TA/Instructor.