Friday, December 17, 2010

System Software 2002


Gujarat University
MCA Semester III
System Software

Date: Friday, 18th January, 2002     Marks:50


Instructions:   1. Answer both section In separate answer-books.
2. If necessary make assumptions and state clearly.
3. Symbols used have their usual meaning.

SECTION I


Q-l.  Attempt any THREE of the following.        [9]
a)  Discuss the problems encountered during single pass assembly. Suggest the alternative method 
clearly.                                                                                               .          
b) What do you mean by system programming? Explain different type system software in brief.
 c) Write the advantages of overlay techniques.
d)     List the differences between character device drivers, and block device drivers.

Q-2  Draw the flowchart or state the algorithm of PASS-I of the assembler and explain it.   [8]

OR

Q-2  Write a macro which takes A,B,C and D as a parameter and calculate D =A*(B+C). By using the macro processor generate all the data structures for it.

Q-3. Attempt any TWO of the following.    [8]
a)  Give your comments on the validity of the following statements.            
·         Self relocating programs are more efficient than relocatable programs in all respects.                  
·         If all programs are coded as self relocating programs, there would be no need of linkage editors.
b) Explain the function of the following command code routines.
Driver initialization ,   Media check ,  BPB,   Generic IOCTL
c) Describe the architecture of 8088 series or microprocessor in detail.

SECTION-II


Q-4. (a)Discuss the problem of deletion of entries in the following symbol table organizations.                [8]
•   sequential search organization.
•  Linked list organization.
(b) Explain the working principle of first pass of linker with example.

Q-5   Build a program flow graph for the following program.
 Z =5;                                                      
. W= z;
for (i =1; i<=100; i++)
{     x=a*b;
y = c+d;
if(y < 0)
                               {
                                    a = 25;
f = c + d;
}
else
{
g = w;
b = a*b + f;
d = z+10;
}                            
   g = c + d;
printf ("g = %d  h " %d d =%d x = %d y = %d ", g, h, d, x, y );
                        }
Apply the following transformation to optimize the program.
(a) Common sub-expression elimination,  (c) Constant propagation.
(b) Dead code elimination,                        (d) Frequency reduction.

OR

Q-5.  What do you understand by operator precedence parsing. Parse the following string giving the        [8]
Diagrammatic trace of the algorithm.
<id> * <id> + <id> * <id>

Q-6   Attempt any THREE of the following.      [9]
a)  Write the classification of grammer.
b)      A compiler typically generates a .OBJ file, which is later convened into .EXE or a .COM File.
Clearly describe the difference between the three files.
c)      Explain the structure of Activation record for dynamic memory allocation.
d)     Write the complete sequence of steps involved in dynamic debugging of a program.