0% found this document useful (0 votes)
58 views

SS&CD Lab Syllabus

This document outlines the course details for a Systems Software and Operating Systems lab, including 9 experiments covering topics like lexical analysis, parsing, scheduling algorithms, and memory management techniques to implement using tools like Lex, Yacc, and programming languages like C/C++. Students will be evaluated on their ability to implement lexers, parsers, and algorithms for operating systems. Exams will involve conducting one selected experiment with marks distributed for the procedure, conduction, and viva voce sections.

Uploaded by

Prakhyath Jain
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
58 views

SS&CD Lab Syllabus

This document outlines the course details for a Systems Software and Operating Systems lab, including 9 experiments covering topics like lexical analysis, parsing, scheduling algorithms, and memory management techniques to implement using tools like Lex, Yacc, and programming languages like C/C++. Students will be evaluated on their ability to implement lexers, parsers, and algorithms for operating systems. Exams will involve conducting one selected experiment with marks distributed for the procedure, conduction, and viva voce sections.

Uploaded by

Prakhyath Jain
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 2

SYSTEM SOFTWARE AND OPERATING SYSTEM LABORATORY

[As per Choice Based Credit System (CBCS) scheme]


(Effective from the academic year 2017 - 2018)
SEMESTER – VI
Subject Code 17CSL67 IA Marks 40
Number of Lecture Hours/Week 01I + 02P Exam Marks 60
Total Number of Lecture Hours 40 Exam Hours 03
CREDITS – 02
Description (If any):
Exercises to be prepared with minimum three files (Where ever necessary):
i. Header file.
ii. Implementation file.
iii. Application file where main function will be present.
The idea behind using three files is to differentiate between the developer and user sides. In
the developer side, all the three files could be made visible. For the user side only header file
and application files could be made visible, which means that the object code of the
implementation file could be given to the user along with the interface given in the header
file, hiding the source file, if required. Avoid I/O operations (printf/scanf) and use data input
file where ever it is possible
Lab Experiments:
1.
a) Write a LEX program to recognize valid arithmetic expression. Identifiers in the
expression could be only integers and operators could be + and *. Count the
identifiers & operators present and print them separately.

b) Write YACC program to evaluate arithmetic expression involving operators: +, -,


*, and /

2. Develop, Implement and Execute a program using YACC tool to recognize all strings
ending with b preceded by na’s using the grammar an b (note: input n value)

3. Design, develop and implement YACC/C program to construct Predictive / LL(1)


Parsing Table for the grammar rules: A →aBa , B →bB | ε. Use this table to parse
the sentence: abba$
4. Design, develop and implement YACC/C program to demonstrate Shift Reduce
Parsing techniquefor the grammar rules: E →E+T | T, T →T*F | F, F →(E) | id
and parse the sentence: id + id * id.
5. Design, develop and implement a C/Java program to generate the machine code using
Triples for the statement A = -B * (C +D) whose intermediate code in three-address
form:
T1 = -B
T2 = C + D
T3 = T1 + T2
A = T3
6. a) Write a LEX program to eliminate comment lines in a C program and copy the
resulting program into a separate file.
b) Write YACC program to recognize valid identifier, operators and keywords in the
given text (C program) file.
7. Design, develop and implement a C/C++/Java program to simulate the working of
Shortest remaining time and Round Robin (RR) scheduling algorithms. Experiment
with different quantum sizes for RR algorithm.
8. Design, develop and implement a C/C++/Java program to implement Banker’s
algorithm. Assume suitable input required to demonstrate the results.
9. Design, develop and implement a C/C++/Java program to implement page
replacement algorithms LRU and FIFO. Assume suitable input required to
demonstrate the results.

Study Experiment / Project:


NIL
Course outcomes: The students should be able to:
• Implement and demonstrate Lexer’s and Parser’s
• Implement different algorithms required for management, scheduling, allocation and
communication used in operating system.
Conduction of Practical Examination:
• All laboratory experiments are to be included for practical examination.
• Students are allowed to pick one experiment from the lot.
• Strictly follow the instructions as printed on the cover page of answer script
• Marks distribution: Procedure + Conduction + Viva:15 + 70 +15 (100)
• Change of experiment is allowed only once and marks allotted to the procedure
part to be made zero

You might also like