|Feb 24||First class|
|--||Introduction||The UNIX Operating System
Original Unix paper
OSTEP 1, 2
|--||Processes and Threads||OSTEP 3, 4, 5, 6, 25, 26, 27|
An Introduction to Programming with Threads
Scheduler Activations paper
Stack Ripping paper
slides-proc, slides-schedact, slides-stackrip
minish.c, pipesh.c, redirsh.c
|--||Virtual Memory & Memory Allocation||OSTEP 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23
|17-03-2021, 22-03-2021, 24-03-2021, 29-03-2021, 31-03-2021, 05-04-2021, 07-04-2021, 12-04-2021, 21-04-2021|
|TBD||Mid-term exam: In class||All material covered until previous class|
|--||File Systems|| OSTEP 35, 36, 37, 39, 40, 41, 42, 43, 44,
|slides-fs, slides-advancedfs, slides-lfs, slides-ssd, 26-04-2021, 28-04-2021, 03-05-2021, 05-05-2021, 10-05-2021, 12-05-2021|
|--||Concurrency & Synchronization||
|--||Virtual Machines||OSTEP Appendix B,
VMWare ESX paper
|TBD||Final exam||All material covered|
POLICY ON ETHICS IN CLASS
We have a strict, zero-tolerance policy against cheating in class, based on CSA departmental guidelines. Both the cheater and enabler (or the corresponding teams) will be considered guilty. It doesn't matter whether you cheat in an exam, a single homework, one question on one homework—the granularity of cheating does not matter. If you're caught cheating once, you're caught cheating in the course—period.
What constitutes cheating? Here is a non-exhaustive list:
- Copying work (including code) from others in class and passing it off as your own;
- Copying work (including code) from your "seniors" (i.e., past batches) and passing it off as your own;
- Copying work (including code) from the Internet without attribution;
- Copying work (including code) from any source when it is explicitly forbidden;
- Discussing ideas with others (over any medium, including email, phone, whatsapp, etc.) without proper attribution;
- Discussing ideas with others when it is explicitly forbidden.
What happens if you're caught cheating?
In addition to this penalty that has a direct bearing on the grade, the following penalties will also be applied:
- A permanent record of the cheating incident will be placed in your student file. Note that this file is available to faculty members, including any potential thesis supervisors;
- You will be required to sign a hand-written declaration that you will not repeat this incident in other courses. You will have to send original copies of this declaration by speed post to the CSA department chairman and the EECS dean (or, if in-person classes resume, you will have to schedule appointments to personally visit the department chairman and EECS dean, and hand over the hand-written, signed declaration in-person to them);
- Your name will be reported to OCCAP (IISc's campus placement office), with a recommendation to exclude you from all campus placement related activity (internships, jobs, etc.)
It is very tempting to cheat when courses are taught online. Indeed, we had the unpleasant experience of having to deal with many cheating cases in the Autumn 2020 semester. You may think that you can get away because there is nobody to proctor your work. If you think this way, you think wrong. If you cheat, you will get caught. We have various methods by which we detect cheating in exams and homeworks. We also have an archival repository of all your "seniors'" homework code, and will be checking your code against this repository for copying.
You've been warned. Don't even think of cheating. It's not going to be worth it. If despite all these warnings, you cheat, be prepared to face the consequences listed above.