Fall 2021: System Programming
Contents
Logistics
- Class Timings: Wednesdays and Thursdays 10:45 am - 12:45 pm (3rd and 4th slot)
- Classroom: Online
- Lab Timings: Tuesdays 1:00 pm - 5:00 pm (5th - 8thslot)
Course Overview
- As per the COURSE Guidelines
Lectures
| Lecture | Topic | Lecture Slides | Readings |
|---|---|---|---|
| Unit 01-Part 1 (22/07, 29/07, 04/08, 05/08, 11/08) | Introduction to System Software: System Software and Machine Architecture. Assemblers: Introduction to Assembler. A Simple Manual Assembler. Assembler Design Process: (1) Major Data Structures used (Machine Opcode Table, Pseudo Opcode Table, Symbol Table), (2) Two-pass Assembler, (3) Single-pass Assembler. Load-and-go Assemblers, Object file formats.
|
1.pdf | Chapter 3 (R1) |
| Unit 01-Part 2 (12/08, 19/08, 25/08, 02/09) | Linkers and Loaders:Introduction to Linking, Static vs. Dynamic Linking, Combining Object Modules, Pass I of Linking, Pass II of Linking. LIbrary Linking. Position Independent Code. Shared Library Linking. Loader: Binary Image, Types of Loaders.
|
2.pdf | Chapter 4 (R1) |
| Unit 02 (08/09) | Introduction to Compilers:Overview of compilation, Phases of a compiler
|
3.pdf Example.jpg | Chapter 1 (R2) |
Assignments and Tests
Home Assignments
- Home Assignment (HA) No. 1, Explain the different object file formats. [12/08/2021]
- Home Assignment (HA) No. 2, Explain the difference between compiler and interpreter. [ 08/09/2021]
Class Assignments
- Class Assignment (CA) No. 1, Question No. 4, DU Previous Year Question Paper (18th Dec 2020). [11/08/2021]
- Class Assignment (CA) No. 2, Question No. 3, DU Previous Year Question Paper (23rd Dec 2020). [25/08/2021]
Tests and Quizes
- Test 1
- Quiz 1
- Test 2
- Quiz 2
References/Resources
- R1: Chattopadhyaya, S. (2011). System Software. PHI Learning.
- R2: Aho, A., Lam, M., Sethi, R., & Ullman, J. D. (2006). Compilers: Principles, Techniques, and Tools. 2nd edition. Addison Wesley.
- Additional R1: Beck, L. & Manjula, D. (1996). System Software: An Introduction to System Programming. 3rd edition. Pearson Education.
- Additional R2: Dhamdhere, D. M. (2015). Systems Programming. Tata McGrawHill.
Course Running Status (~25%)
| Unit/Chapter | Topic | Status | Remarks |
|---|---|---|---|
| 1/Ch3(R1) | Assemblers | Completed | 11/08/2021 |
| 1/Ch4(R1) | Linkers and Loaders | Completed | 25/08/2021 |
| 2/Ch1(R2) | Introduction | Completed | 08/09/2021 |