Вы находитесь на странице: 1из 5

SYSTEM SOFTWARE

Unit 4: LOADERS AND LINKERS


Book: System Softw!e" #
!$
E$ition" %e!son E$&'tion
By Le(n$ L) Be'k * D+n,('+n$!n Mn-&(
1. Explain the design of Absolute loader.
Define absolute loader.
Give algorithm and explain.
Give an example (An object program and loading it into memory).
. !hat is the difference in the representation of the assembled code and the code
during loading" !hich other representations can be used to store object program"
Difference# $n object program% hexadecimal representation in character
form (i.e.% characters 1& occupy t'o bytes).
$n the code during loading% each printed character represents one hex
digit in memory i.e.% a half byte. (i.e.% characters 1& occupy one byte).
(ther representation available is binary form
)onclude 'hich representation is efficient. (*efer page 1+)
+. ,o' does an absolute loader handle the modification records in an object
program"
-uch loader is used only 'hen there is no need of relocation or the
exact address for loading the object program is .no'n. ,ence no
/uestion of modification record.
&. ,o' many passes does an absolute loader re/uire to load an object program into
the memory"
0. $f operating system is the first program to be run by the computer% 'hich loader is
needed to load the operating system" Explain the loader 'ith its source code for
-$)12E machine
3oot strap loader
Give source code
Explain source code
i. 4he main routine and the program to be loaded.
ii. GE4) sub5routine ( )onversion of byte representation in
object program into 1 byte during loading )
6. ,o' does a bootstrap loader differentiate bet'een control bytes (such as end5of5
line) and valid characters to be loaded into memory"

Explain GE4) subroutine 'here all codes less than hex +7 are s.ipped
and values above hex +7 are considered valid characters

8. $s 9rogram lin.ing a machine dependent feature of loaders" :ustify your ans'er.
9rogram lin.ing is not a machine dependent feature as it is independent of
machine architecture. ,o'ever% lin.ing usually involves relocation of
some of the routines to be lin.ed together and relocation is a machine
dependent feature of loaders.
;. Give the machine dependent feature of loaders.
*elocation
<. Explain relocation as a machine dependent feature of loaders.
=eed for relocation of object program.
Give t'o methods for specifying relocation and briefly explain
i. >sing modification record ( -$)12E ).
ii. >sing bit mas. techni/ue ( -$) ).
Explain the need of t'o different methods because of different machine
architectures.
17. !hich relocation method is used for specifying relocation as a part of -$)12E
object program during loading" Give the -$)12E relocation loader algorithm and
explain the same.
A modification record is used to describe each part of the object code that
must be changed 'hen the program is relocated.(*efer page 1+6 and fig
+.0)
Give algorithm and explain

11. !hich relocation method is used for specifying relocation as a part of -$) object
program during loading" Give the -$) relocation loader algorithm and explain the
same. :ustify the reason for choosing this method for specifying relocation in -$)
object programs during loading.
=o modification record is used. Each text record is associated 'ith a
relocation bit (bit mas.ing techni/ue). (*efer page 1+; and fig +.;)
Give algorithm and explain

1. !hat is a relative loader" Explain the t'o methods of specifying relocation as a
part of object program.
Define relocating loader.
Explain modification record method and bit mas.ing method 'ith
algorithms ( depending on mar.s allotted)
1+. Explain the procedure of program lin.ing 'hen sub5programs use external
reference.
Define program lin.ing and say 'hy it is re/uired.
4a.e an example 'ith at least t'o programs% separately compiled 'ith
external reference and explain ho' they are lin.ed.
1&. ,o' are external definition and external reference specified in an object
program" Explain ho' actual address is calculated during loading"
>sing D and * records (see fig. +.11) and also explain ho' they are
specified in modification record
Explain the calculation of actual address of a label externally referred.
(see fig. +.1(b))
10. !hat is a lin.ing loader" :ustify 'hy it is a t'o pass loader.
Define lin.ing loader
*efer page 1&; for justification.
16. Explain the data structures used in lin.ing loader.
18. Explain the pass 1 of lin.ing loader. !hat does E-4A3 contain at the end of pass
1"
1;. !hat is a load map and 'here is it used" Give an example of a load map.
Define load map.
$ts is used in program debugging
*efer page 1&<
1<. $s the algorithm for lin.ing loader completely efficient" :ustify your ans'er.
$ts not very efficient algorithm. ,o'ever a slight change to object
program format 'ill ma.e the algorithm more efficient.
$t is because in object program 'e use names of symbols referenced
externally in object code.
7. $s it possible to increase the efficiency of the lin.ing loader algorithm" $f so% ho'
can it be done"
?es.
$t can be done using reference numbers. (@or explanation refer page 10
n10+)
1. Explain the use of reference numbers in modification record. ,o' does it change
the object program format" Explain 'ith an example.
-ay 'hat reference numbers are and 'hy they are used.
4a.e an example and sho' the object code format used.
Also explain ho' it 'ill affect the efficiency of the lin.ing loader
algorithm
. Explain automatic library search1 automatic library call. Give the role of E-4A3
in automatic library search.
+. ,o' can 'e override the standard sub routines in library" Explain 'ith an
example.
&. $n 'hich case library search can be inefficient" Explain ho' this inefficiency can
be overcome.
0. Explain the loader options 'ith example.
6. )an a programmer specify his o'n library" $f yes% ho' can it be done"
8. !ith an example explain ho' a loader can be instructed not to resolve references
to some sub5routines during library search.
;. !hat is a load module or an executable image" ,o' is it produced"
Aoad module or Executable image is the lin.ed version of the program
'hich is 'ritten to a file or library. A lin.age editor produces a load
module.
<. Explain the difference bet'een the lin.ing loader and lin.age editor. AnalyBe
'hich one is more efficient.
+7. Explain 'ith examples ho' the loader options can be used in a load module or
executable image to replace a lin.ed subroutine.
+1. !hat is dynamic lin.ing1dynamic loading1load on call" !hat are the advantages
of dynamic lin.ing" Explain 'ith example.
+. 3ootstrap loader is the first program to be executed on start up in a machine.
!hat are the different 'ays of accomplishing this"
++. Explain the C-5D(- lin.er for 9entium and other x;6 systems.
+&. Explain the C-5D(- object module. ,o' does C-5D(- A$=D combine t'o or
more object modules to produce a complete executable program"
Give C-5D(- object module in @ig +.18 and explain
Explain pass 1 and pass of A$=D to produce the executable.
+0. !hat are the different types of lin.ers provided by -un(-" Explain the different
types of lin.ers.
+6. Explain the )ray C99 lin.er.

Вам также может понравиться