SPCC Viva
SPCC Viva
SPCC Viva
Chapter 01
1. What is system program?
The system programs are used to program the operating system software. While application
programs provide software that is used directly by the user, system programs provide software that
are used by other systems such as SaaS applications, computational science applications etc.
Interpreter –The translation of single statement of source program into machine code
is done by language processor and executes it immediately before moving on to the
next line is called an interpreter
Linker – A linker is special program that combines the object files, generated by
compiler/assembler, and other pieces of codes to originate an executable file have.
exe extension. In the object file, linker searches and append all libraries needed for
execution of file. It regulates memory space that code from each module will hold. It
also merges two or more separate object programs and establishes link among them.
Loader – The loader is special program that takes input of object code from linker,
loads it to main memory, and prepares this code for execution by computer. Loader
allocates memory space to program. Even it settles down symbolic reference between
objects. It in charge of loading programs and libraries in operating system. The
embedded computer systems don’t have loaders. In them, code is executed through
ROM.
Editor – Editors or text editors are software programs that enable the user to create
and edit text files. In the field of programming, the term editor usually refers to
source code editors that include many special features for writing and editing code.
3. Differentiate Application program and system program.
27.What is DAG?
Directed Acyclic Graph (DAG) is a tool that depicts the structure of basic blocks, helps
to see the flow of values flowing among the basic blocks, and offers optimization too.
DAG provides easy transformation on basic blocks. DAG can be understood here:
Leaf nodes represent identifiers, names or constants.
Interior nodes represent operators.
Interior nodes also represent the results of expressions or the identifiers/name
where the values are to be stored or assigned.
Chapter 02
34.Forward reference problem
When a symbol is referred before it is defined, it is called a forward reference. The
function of the assembler is to replace each symbol by its machine address and if we
refer to that symbol before it is defined its address is not known by the assembler
such a problem is called forward reference problem Forward reference is solved by
making different passes (i.e., One Pass, Two Pass, and Multi-Pass) over the assembly
code.
• RX: The first operand is register and second operator is an address. The address is
generated by considering Base + index + displacement.
| Opcode | Operand1 | Operand2 | |--------|----------|----------|
Address = (Base + index + displacement)
Chapter 03
37. Macro and Macro processor
Chapter 04
40.What is linker
Linker is a program in a system which helps to link an object module of program into a
single object file. It performs the process of linking. Linker are also called link editors.
Linking is process of collecting and maintaining piece of code and data into a single
file. Linker also link a particular module into system library. It takes object modules
from assembler as input and forms an executable file as output for loader.
41.What is loader
A loader is a system program, which takes the object code of a program as input and
prepares it for execution. Programmers usually define the Program to be loaded at
some predefined location in the memory. But this loading address given by the
programmer is not be coordinated with the OS. The loader does the job of
coordinating with the OS to get initial loading address for the .EXE file and load it into
the memory.
43.functions of loader
Allocation: Allocate space in memory for the Programs
Linking: Resolve symbolic references between object decks.
Relocation: Adjust all address dependent locations, such as address constants, to
correspond to the allocated space.
Loading: Physically place the machine instructions and data into memory