Syllabus System Software - (BE05000261) Total Credits = TH/30 Assessment Pattern and Marks Total Marks Theory Tutorial / Practical ESE (E) PA (M) PA (I) PBL (I) ESE (V) 03 70 30 20 30 50 200 Unit No. Content 1 Overview of System Software Introduction, Software, Software Hierarchy, Systems Programming, Machine Structure, Interfaces, Address Space, Computer Languages, Tools, Life Cycle of a Source Program, Different Views on the Meaning of a Program, System Software Development, Recent Trends in Software, Development, Levels of System Software. (Chapter - 1) 2 Overview of Language Processors Programming Languages and Language Processors, Language Processing Activities, Program Execution, Fundamental of Language Processing, Symbol Tables Data Structures for Language Processing : Search Data structures, Allocation Data Structures. (Chapter - 2) 3 Assemblers Elements of Assembly Language Programming, Design of the Assembler, Assembler Design Criteria, Types of Assemblers, Two-Pass Assemblers, One-Pass Assemblers, Single pass Assembler for Intel x86, Algorithm of Single Pass Assembler, Multi-Pass Assemblers, Advanced Assembly Process, Variants of Assemblers Design of two pass assembler. (Chapter - 3) 4 Macro and Macro Processors Introduction, Macro Definition and Call, Macro Expansion, Nested Macro Calls, Advanced Macro Facilities, Design of a Macro Pre- processor, Design of a Macro Assembler, Functions of a Macro Processor, Basic Tasks of a Macro Processor, Design Issues of Macro Processors, Features, Macro Processor Design Options, Two-Pass Macro Processors, One-Pass Macro Processors. (Chapter - 4) 5 Linkers and Loaders Introduction, Relocation of Linking Concept, Design of a Linker, Self- Relocating Programs, Linking in MSDOS, Linking of Overlay Structured Programs, Dynamic Linking, Loaders, Different Loading Schemes, Sequential and Direct Loaders, Compile-and-Go Loaders, General Loader Schemes, Absolute Loaders, Relocating Loaders, Practical Relocating Loaders, Linking Loaders, Relocating Linking Loaders, Linker’s v/s Loaders. (Chapter - 5) 6 Scanning and Parsing Programming Language Grammars, Classification of Grammar, Ambiguity in Grammatic Specification, Scanning, Parsing, Top-Down Parsing, Bottom-up Parsing, Language Processor Development Tools, LEX, YACC. (Chapter - 6) 7 Compilers Causes of Large Semantic Gap, Binding and Binding Times, Data Structure used in Compiling, Scope Rules, Memory Allocation, Compilation of Expression, Compilation of Control Structure, Code Optimization. (Chapter - 7) 8 Interpreters & Debuggers Benefits of Interpretation, Overview of Interpretation, The Java Language Environment, Java Virtual Machine, Types of Errors, Debugging Procedures, Classification of Debuggers, Dynamic / Interactive Debugger. (Chapter - 8) 9 Programming Languages : Importance of High-Level Languages, Features of a High-Level Language, Data Types and Data Structures, Storage allocation and scope of Names, Accessing Flexibility, Functional Modularity, Asynchronous, Operation, Extensibility and compile Time. (Chapter - 9)
Read More