Difference between revisions of "Fall 2020: System Programming"
Jump to navigation
Jump to search
| Line 33: | Line 33: | ||
| Introduction to '''Compilers''', Language Processors. The Structure of a Compiler, '''Phases of a Compiler'''. | | Introduction to '''Compilers''', Language Processors. The Structure of a Compiler, '''Phases of a Compiler'''. | ||
| [http://mkbhandari.com/mkwiki/data/fall2020/4IntroCompilers.pdf '''CompilersIntro.pdf'''] | | [http://mkbhandari.com/mkwiki/data/fall2020/4IntroCompilers.pdf '''CompilersIntro.pdf'''] | ||
| − | | Chapter 1 (R1) | + | | Chapter 1 (R1) [http://mkbhandari.com/mkwiki/data/fall2020/TranslationPhase.png '''Translation Phase'''] |
|} | |} | ||
Revision as of 22:08, 16 September 2020
Contents
Logistics
- Class Timings: Mondays(4th and 5th slot), Wednesdays(1st,2nd slot),
- Classroom: Online
- Lab Timings:Wednesdays(3rd slot),Fridays(1st slot) Saturdays(2nd,3rd slot)
Course Overview
- As per the COURSE Guidelines
Lectures
| Date | Topic | Lecture Slides [ppt/pdf] | Readings |
|---|---|---|---|
| Wed 19/08 | Background: Introduction to System Software, System Software and Machine Architecture, The Simplified Instructional Computer(SIC). | SystemSoftwareIntro.pdf | Chapter 1 (Additional R1) |
| Mon 24/08, Wed 26/08, Fri 28/08 | 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. | Assemblers.pdf | Chapter 3 (R2) |
| Mon 31/08, Wed 02/09, Mon 07/09 | Introduction to Linking, Static vs. Dynamic Linking, Combining Object Modules, Pass I of Linking, Pass II of Linking, Algorithm for Pass II. LIbrary Linking. Position Independent Code. Shared Library Linking. Loader: Binary Image, Types of Loaders. | LinkersLoaders.pdf | Chapter 4 (R2) |
| Wed 09/09, Fri 11/09 | Introduction to Compilers, Language Processors. The Structure of a Compiler, Phases of a Compiler. | CompilersIntro.pdf | Chapter 1 (R1) Translation Phase |
Assignments and Tests
Assignments
- A1
- A2
- A3
Tests
- T1
- T2
- T3
Resources
- [R1]: Aho, A., Lam, M., Sethi, R., & Ullman, J. D. (2006). Compilers: Principles, Techniques, and Tools. 2nd edition. Addison Wesley.
- [R2]: Chattopadhyaya, S. (2011). System Software. P H I Learning.
- [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.