15CSL67 System Software and Operating System Laboratory syllabus for CS



A d v e r t i s e m e n t

Module-1 Lab Experiments 0 hours

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 n a’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 | e. Use this table to parse the sentence: abba$

 

4. Design, develop and implement YACC/C program to demonstrate Shift Reduce Parsing technique for 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.

 

10. a) Design, develop and implement a C/C++/Java program to simulate a numerical calculator b) Design, develop and implement a C/C++/Java program to simulate page replacement technique Note: In Examination, for question No

 

10: Students may be asked to execute any one of the above (10(a) or 10(b)- Examiner choice)

Last Updated: Tuesday, January 24, 2023