Gujarat Technological University: System Software 6 Semester

Download as pdf or txt
Download as pdf or txt
You are on page 1of 3

GUJARAT TECHNOLOGICAL UNIVERSITY

Bachelor of Engineering
Subject Code: 3160715
SYSTEM SOFTWARE
6th SEMESTER

Type of course: Elective

Prerequisite: Data Structures, Operating Systems, Microprocessor & Interfacing

Rationale: NA

Teaching and Examination Scheme:


Teaching Scheme Credits Examination Marks Total
L T P C Theory Marks Practical Marks Marks
ESE (E) PA (M) ESE (V) PA (I)
3 0 2 4 70 30 30 20 150

Content:

Sr. No. Content Total %


Hrs Weightage

1 Overview of System Software 04 10%


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
2 Overview of Language Processors 04 10%
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.
3 Assemblers 05 15%
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,
4 Macro and Macro Processors 07 20%
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
5 Linkers and Loaders 06 20%

Page 1 of 3
w.e.f. AY 2018-19
GUJARAT TECHNOLOGICAL UNIVERSITY
Bachelor of Engineering
Subject Code: 3160715
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,
Linkers v/s Loaders
6 Scanning and Parsing 04 10%
Programming Language Grammars, Classification of Grammar,
Ambiguity in Grammatic Specification, Scanning, Parsing, Top Down
Parsing, Bottom up Parsing, Language Processor Development Tools,
LEX, YACC
7 Compilers 03 8%
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
8 Interpreters & Debuggers 03 7%
Benefits of Interpretation, Overview of Interpretation, The Java
Language Environment, Java Virtual Machine,
Types of Errors, Debugging Procedures, Classification of Debuggers,
Dynamic/Interactive Debugger

Suggested Specification table with Marks (Theory):

Distribution of Theory Marks

R Level U Level A Level N Level E Level C Level


7 30 33 - - -

Legends: R: Remembrance; U: Understanding; A: Application, N: Analyze and E: Evaluate C:


Create and above Levels (Revised Bloom’s Taxonomy)

Note: This specification table shall be treated as a general guideline for students and teachers. The actual
distribution of marks in the question paper may vary slightly from above table.

Reference Books:

1) System Programming by D M Dhamdhere, McGraw Hill Publication


2) System Programming by Srimanta Pal, OXFORD Publication
3) System Programming and Compiler Construction by R.K. Maurya & A. Godbole.
4) System Software – An Introduction to Systems Programming by Leland L. Beck, 3rd Edition,
Pearson Education Asia, 2000
5) System Software by Santanu Chattopadhyay, Prentice-Hall India,2007

Course Outcome:

After learning the course the students should be able to:


Page 2 of 3
w.e.f. AY 2018-19
GUJARAT TECHNOLOGICAL UNIVERSITY
Bachelor of Engineering
Subject Code: 3160715
Marks %
Sr. No. CO statement
weightage

CO-1 Explain and classify different methodologies, concepts and approaches 15%
to System Software Programming.

CO-2 Identify elements of language processors with various data structures 25%
used in development of one-pass and multi-pass assemblers.

CO-3 Examine macro processor, its usage and compare various loading and 25%
linking schemes.

CO-4 Build various system programs using language processor development 15%
tools such as YACC and Lex.

Design code optimization based solution for the given system


CO-5 problems by applying various techniques of compiler, interpreter and 20%
debugger.

List of Experiments and Design based Problems (DP)/Open Ended Problem:

(Pl. Note: List of Experiments should be as per theory covered in the class, below mentioned practical
are just for the reference purpose)

1. Write a program to implement the lexical analyzer.


2. Write a Lexical Analyzer (using lex utility for UNIX).
3. Write a program to left factor the given grammar.
4. Write a program to remove the Left Recursion from a given grammar.
5. Aim: Implement Recursive Descendent Parsing for the given Grammar.
E -> T + E / T
T -> F * T / F
F -> ( E ) / i
6. Implement Predictive Parser for the given grammar.
E -> T + E / T
T -> F * T / F
F -> ( E ) / i
7. Write a SAL program in text file and generate SYMTAB and LITTAB
8. Use macro features of C language
9. Write a program which generates Quadruple Table for the given postfix String
10. Write a C program to parse a given string using Predictive parsing for given
grammar.
type → simple | ↑id | array [ simple ] of type
simple → integer | char | num dotdot num

List of Open Source Software/learning website:

 www.cs.jhu.edu/~scott/pl/lectures/parsing.html
 www.en.wikipedia.org/wiki/System_programming
 https://www.isi.edu/~pedro/Teaching/CSCI565-Fall15/Materials/LexAndYaccTutorial.pdf
 https://developer.ibm.com/technologies/systems/tutorials/au-lexyacc/
Page 3 of 3
w.e.f. AY 2018-19

You might also like