SlideShare a Scribd company logo
4
Most read
6
Most read
13
Most read
O r g a n i za t i o n n a m e
:: Prepared By ::
Adarsh Patel
:: Submit To ::
Prof. xyz
Overview
 Introduction of Loader
 Compile-Go Loader
 General Loader
 Absolute Loader
 Relocating Loader
 Practical Relocating Loader
 Linking Loader
 Linker Vs. Loader
Reference :: -System Programming by Srimanta Pal OXFORD Publication
-web.thu.edu.tw/ctyang/www/files/sp_chap3
2Loaders
Source
Program
Pre-processed
source code
Assembly
code
Object code
Executable code
Program stored in
secondary memory
as executable image
Process
Address
Space
Main Memory
Loader
Pre-processor
Compiler Assembler
Linker
3Loaders
 A loader is a system software program that performs the
loading function.
 Loading is the process of placing the program into memory
for execution.
 Loader is responsible for initiating the execution of the
process.
4Loaders
 Compile-Go Loader
 General Loader
 Absolute Loader
 Relocating Loader
 Practical Relocating Loader
 Linking Loader
5Loaders
 In compile and go loader is a link editor/program loader in
which the assembler itself places the assembled instruction
directly into the designated memory locations for execution.
 The instruction are read line by line, its machine code is
obtained and it is directly put in the main memory at some
known address.
 After completion of assembly process, it assigns the starting
address of the program to the location counter.
6Loaders
 The assembler is first executed and it, when it is finished,
causes a branch straight to the first instruction of the
program.
 There is no stop between the compilation, link editing,
loading, and execution of the program.
 It is also called an assemble-and-go or a load-and-go system.
7Loaders
 They are simple and easier to implement.
 No additional routines are required to load the compiled code
into the memory.
8Loaders
:: ::
 There is wastage in memory space due to the presence of the
assembler.
 There is no production of object file, the source code is
directly converted to executable form. Hence even though
there is no modification in the source program it needs to be
assembled and executed each time.
9Loaders
:: ::
 In Compile-and-Go the outputting instruction and data are
assembled. In which assembler is placed in main memory that
results in wastage of memory.
 To overcome that we requires the addition of the new
program of the system, a loader.
 Generally the size of loader is less than that of assembler.
10Loaders
 Reassembly of program is not needed
 The translator of the source program produce compatible
object program files
 More memory is available to the user
11Loaders
:: ::
 The loader cannot handle different object Module Obtained
from different kinds of computers
:: ::
 In this scheme the assembler outputs the machine language
translation of the source program in almost the same form as
in the “Compile and go” , except that the data is punched on
cards. Here it will directly placed in memory .
 The loader in turn simply accepts the machine language text
and places it into core at the location prescribed by the
assembler.
12Loaders
 The MAIN program is assigned to locations 100-247 and the
SQRT subroutine is assigned locations 400-477. if changes
were made to MAIN that increasing length to more than 300
bytes.
13Loaders
MAIN
SQRT
Absolute
loader
SQRT
MAIN
 The end of MAIN is overlap with the start of SQRT. It would
then necessary to assign SQRT to a new location by changing
its START.
 There are four functions involving in the Absolute loading
• Allocation
• Linking
• Relocation
• Loading
14Loaders
 Simple and efficient.
15Loaders
:: ::
 The programmer must specify to the assembler the address
where the program is to be loaded.
 If there are multiple subroutines , the programmer must
remember the address of each.
:: ::
 To avoid possible reassembling of all subroutines when a
single subroutine is changed and to perform the tasks of
allocation and linking for the programmer the relocating
loaders is introduced.
 The execution of the object program is done using any part of
the available & sufficient memory.
 The object program is loaded into memory wherever there
is room for it.
16Loaders
 The assembler assembles each procedures segment
independently and passes to loader the text and information
as to relocation and intersegment references.
 The assembler would also provide the loader with additional
information, such as the length of the entire program and the
length of the transfer vector.
17Loaders
 BINARY SYMBOLIC SUBROUTINE ( ) loader such as used in
the IBM 7094,IBM 1130,GE 635.
 The output of the relocating assembler using a BINARY
SYMBOLIC SUBROUTINE(BSS) scheme is the Object program
and information about all other program its references.
 The BSS loader allows many procedure segments but only
one data (common)segment.
 The BSS loader scheme is often used on computers with a
fixed-length direct address instruction format.
18Loaders
:: ::
 Avoids possible reassembling of all Subroutines when a single
Subroutine is changed
 Perform the tasks of allocation and linking for the programmer.
19Loaders
:: ::
 Difficult to implement
 Algorithm is depends on File structure of the object program.
 Slower than Absolute loader
:: ::
 In this type of loaders first load , links and then Relocates
segments.
 Complete freedom in referencing data or instructions
contained in other segments
 Perform all linking and relocation at load time.
 A linking loader is known as general relocatable loader or
direct-linking loader.
20Loaders
 PASS-ONE : accepts object file and produces Global external
symbol table (GEST) and copies of the object programs as O/P.
 PASS-TWO : object programs are loaded to the primary memory
after proper translation of address .
21Loaders
 One pass linking loader performs all operations that are
specified in a two-pass linking loaders
 It allows multiple procedure and data segment.
 It provides flexible inter-segment referencing and Accessing
ability, at same time independent translation of programs.
22Loaders
:: ::
 It is necessary for allocation, relocation, linking and loading.
 All the subroutine are required each time in order to execute
a program .
 It is time consuming.
:: ::
Linkers Loaders
Combine the target code with the code
of other programs and library routines
in order to generate a binary program.
Load executable code into the memory.
Carried out with the help of compiler Part of operating system
The execution of linking can be during
compilation or during execution of the
program
The loads the program into the
memory when it is scheduled for
execution.
23Loaders
 What is Loader
 Use of Loader
 Types of Loader
 Linkers vs. Loader
24Loaders
Reference :: -System Programming by Srimanta Pal OXFORD Publication
-web.thu.edu.tw/ctyang/www/files/sp_chap3

More Related Content

What's hot (20)

PPTX
Unit 4 sp macro
Deepmala Sharma
 
PPTX
Assemblers
Dattatray Gandhmal
 
PPTX
Ch 4 linker loader
Malek Sumaiya
 
PPTX
Two pass Assembler
Satyamevjayte Haxor
 
PPTX
Single pass assembler
Bansari Shah
 
PPTX
System Programing Unit 1
Manoj Patil
 
PDF
loaders and linkers
Temesgen Molla
 
PPTX
Unit 3 sp assembler
Deepmala Sharma
 
PDF
Unit 3
pm_ghate
 
PPTX
Linker and Loader
sonalikharade3
 
PPTX
Direct linking loaders
Satyamevjayte Haxor
 
PPTX
Language processing activity
Dhruv Sabalpara
 
PPTX
Fundamentals of Language Processing
Hemant Sharma
 
PPTX
Phases of Compiler
Tanzeela_Hussain
 
PPTX
System Programming Unit II
Manoj Patil
 
PPTX
Direct linking loader
babyparul
 
PPTX
Design of a two pass assembler
Dhananjaysinh Jhala
 
PPT
Introduction to Compiler design
Dr. C.V. Suresh Babu
 
PPTX
Introduction to loaders
Tech_MX
 
PPTX
System software - macro expansion,nested macro calls
SARASWATHI S
 
Unit 4 sp macro
Deepmala Sharma
 
Assemblers
Dattatray Gandhmal
 
Ch 4 linker loader
Malek Sumaiya
 
Two pass Assembler
Satyamevjayte Haxor
 
Single pass assembler
Bansari Shah
 
System Programing Unit 1
Manoj Patil
 
loaders and linkers
Temesgen Molla
 
Unit 3 sp assembler
Deepmala Sharma
 
Unit 3
pm_ghate
 
Linker and Loader
sonalikharade3
 
Direct linking loaders
Satyamevjayte Haxor
 
Language processing activity
Dhruv Sabalpara
 
Fundamentals of Language Processing
Hemant Sharma
 
Phases of Compiler
Tanzeela_Hussain
 
System Programming Unit II
Manoj Patil
 
Direct linking loader
babyparul
 
Design of a two pass assembler
Dhananjaysinh Jhala
 
Introduction to Compiler design
Dr. C.V. Suresh Babu
 
Introduction to loaders
Tech_MX
 
System software - macro expansion,nested macro calls
SARASWATHI S
 

Similar to Loaders ( system programming ) (20)

PPTX
Loaders
Koganti Ravikumar
 
PPTX
linker & loader presentation in Compiler Design
AbhishekKumar117405
 
PPTX
Loader and Its types
Parth Dodiya
 
PPTX
SPOS UNIT 3 notes SPOS UNIT 3 notes SPOS UNIT 3 notes
22510707dypit
 
PDF
system prgramming - loaders-linkers.pdf
SATHYABAMAMADHANKUMA
 
PPTX
System software module 3 presentation file
jithujithin657
 
DOCX
Loaders
Sona Endow
 
PPT
Mod 5.3 - Linkers & Loaderss Summary.ppt
ssuser1604c0
 
PPT
Loaders and Linkers
kunj desai
 
PPTX
System software module 1 presentation file
jithujithin657
 
PDF
loaders-and-linkers.pdfhhhhhccftyghgfggy
rahulyadav957181
 
PPT
System software-loaders
kitturashmikittu
 
PDF
Handout#12
Sunita Milind Dol
 
PPT
Loader
jayashri kolekar
 
PDF
Hm system programming class 1
Hitesh Mohapatra
 
PPT
loader.ppt
MARADOLORESJUREZMART
 
PDF
Linker and Loader Explained
Adarsh Kr Sinha
 
PPTX
linkerloader ss-2.pptx
SUKHPREET SINGH
 
PPT
loaderfffffffffffffffffffffffffffflinker.ppt
ATHMARANJANBhandary
 
PPT
Loaders
Mohd Arif
 
linker & loader presentation in Compiler Design
AbhishekKumar117405
 
Loader and Its types
Parth Dodiya
 
SPOS UNIT 3 notes SPOS UNIT 3 notes SPOS UNIT 3 notes
22510707dypit
 
system prgramming - loaders-linkers.pdf
SATHYABAMAMADHANKUMA
 
System software module 3 presentation file
jithujithin657
 
Loaders
Sona Endow
 
Mod 5.3 - Linkers & Loaderss Summary.ppt
ssuser1604c0
 
Loaders and Linkers
kunj desai
 
System software module 1 presentation file
jithujithin657
 
loaders-and-linkers.pdfhhhhhccftyghgfggy
rahulyadav957181
 
System software-loaders
kitturashmikittu
 
Handout#12
Sunita Milind Dol
 
Hm system programming class 1
Hitesh Mohapatra
 
Linker and Loader Explained
Adarsh Kr Sinha
 
linkerloader ss-2.pptx
SUKHPREET SINGH
 
loaderfffffffffffffffffffffffffffflinker.ppt
ATHMARANJANBhandary
 
Loaders
Mohd Arif
 
Ad

More from Adarsh Patel (14)

PPTX
CMACs and MACS based on block ciphers, Digital signature
Adarsh Patel
 
PPTX
4G 5G technology
Adarsh Patel
 
PPTX
jstl ( jsp standard tag library )
Adarsh Patel
 
PPTX
Non Linear Data Structures
Adarsh Patel
 
PPTX
8255:ppi & 8259:pic
Adarsh Patel
 
PPTX
case study of curve fitting
Adarsh Patel
 
PPTX
basics of virtual memory
Adarsh Patel
 
PPTX
synchronous state machine design
Adarsh Patel
 
PPTX
projection of solid
Adarsh Patel
 
PPTX
basic electronics, Transmission lines, wave guides And Antenna fundamental
Adarsh Patel
 
PPTX
linear equations
Adarsh Patel
 
PPT
Radioactive pollution
Adarsh Patel
 
PPTX
Perfect Bookreview - you can win
Adarsh Patel
 
PPTX
mechanical engineering transmission of motion and power
Adarsh Patel
 
CMACs and MACS based on block ciphers, Digital signature
Adarsh Patel
 
4G 5G technology
Adarsh Patel
 
jstl ( jsp standard tag library )
Adarsh Patel
 
Non Linear Data Structures
Adarsh Patel
 
8255:ppi & 8259:pic
Adarsh Patel
 
case study of curve fitting
Adarsh Patel
 
basics of virtual memory
Adarsh Patel
 
synchronous state machine design
Adarsh Patel
 
projection of solid
Adarsh Patel
 
basic electronics, Transmission lines, wave guides And Antenna fundamental
Adarsh Patel
 
linear equations
Adarsh Patel
 
Radioactive pollution
Adarsh Patel
 
Perfect Bookreview - you can win
Adarsh Patel
 
mechanical engineering transmission of motion and power
Adarsh Patel
 
Ad

Recently uploaded (20)

DOC
MRRS Strength and Durability of Concrete
CivilMythili
 
PPTX
Solar Thermal Energy System Seminar.pptx
Gpc Purapuza
 
DOCX
CS-802 (A) BDH Lab manual IPS Academy Indore
thegodhimself05
 
PPTX
Evaluation and thermal analysis of shell and tube heat exchanger as per requi...
shahveer210504
 
PPTX
What is Shot Peening | Shot Peening is a Surface Treatment Process
Vibra Finish
 
PPTX
Arduino Based Gas Leakage Detector Project
CircuitDigest
 
PPTX
MATLAB : Introduction , Features , Display Windows, Syntax, Operators, Graph...
Amity University, Patna
 
PDF
Introduction to Productivity and Quality
মোঃ ফুরকান উদ্দিন জুয়েল
 
PPTX
The Role of Information Technology in Environmental Protectio....pptx
nallamillisriram
 
PDF
Pressure Measurement training for engineers and Technicians
AIESOLUTIONS
 
PDF
smart lot access control system with eye
rasabzahra
 
PPTX
Shinkawa Proposal to meet Vibration API670.pptx
AchmadBashori2
 
PDF
MAD Unit - 1 Introduction of Android IT Department
JappanMavani
 
PPTX
Knowledge Representation : Semantic Networks
Amity University, Patna
 
PDF
Viol_Alessandro_Presentazione_prelaurea.pdf
dsecqyvhbowrzxshhf
 
PPT
PPT2_Metal formingMECHANICALENGINEEIRNG .ppt
Praveen Kumar
 
PPTX
美国电子版毕业证南卡罗莱纳大学上州分校水印成绩单USC学费发票定做学位证书编号怎么查
Taqyea
 
PPTX
Big Data and Data Science hype .pptx
SUNEEL37
 
PPTX
Introduction to Design of Machine Elements
PradeepKumarS27
 
PPTX
2025 CGI Congres - Surviving agile v05.pptx
Derk-Jan de Grood
 
MRRS Strength and Durability of Concrete
CivilMythili
 
Solar Thermal Energy System Seminar.pptx
Gpc Purapuza
 
CS-802 (A) BDH Lab manual IPS Academy Indore
thegodhimself05
 
Evaluation and thermal analysis of shell and tube heat exchanger as per requi...
shahveer210504
 
What is Shot Peening | Shot Peening is a Surface Treatment Process
Vibra Finish
 
Arduino Based Gas Leakage Detector Project
CircuitDigest
 
MATLAB : Introduction , Features , Display Windows, Syntax, Operators, Graph...
Amity University, Patna
 
Introduction to Productivity and Quality
মোঃ ফুরকান উদ্দিন জুয়েল
 
The Role of Information Technology in Environmental Protectio....pptx
nallamillisriram
 
Pressure Measurement training for engineers and Technicians
AIESOLUTIONS
 
smart lot access control system with eye
rasabzahra
 
Shinkawa Proposal to meet Vibration API670.pptx
AchmadBashori2
 
MAD Unit - 1 Introduction of Android IT Department
JappanMavani
 
Knowledge Representation : Semantic Networks
Amity University, Patna
 
Viol_Alessandro_Presentazione_prelaurea.pdf
dsecqyvhbowrzxshhf
 
PPT2_Metal formingMECHANICALENGINEEIRNG .ppt
Praveen Kumar
 
美国电子版毕业证南卡罗莱纳大学上州分校水印成绩单USC学费发票定做学位证书编号怎么查
Taqyea
 
Big Data and Data Science hype .pptx
SUNEEL37
 
Introduction to Design of Machine Elements
PradeepKumarS27
 
2025 CGI Congres - Surviving agile v05.pptx
Derk-Jan de Grood
 

Loaders ( system programming )

  • 1. O r g a n i za t i o n n a m e :: Prepared By :: Adarsh Patel :: Submit To :: Prof. xyz
  • 2. Overview  Introduction of Loader  Compile-Go Loader  General Loader  Absolute Loader  Relocating Loader  Practical Relocating Loader  Linking Loader  Linker Vs. Loader Reference :: -System Programming by Srimanta Pal OXFORD Publication -web.thu.edu.tw/ctyang/www/files/sp_chap3 2Loaders
  • 3. Source Program Pre-processed source code Assembly code Object code Executable code Program stored in secondary memory as executable image Process Address Space Main Memory Loader Pre-processor Compiler Assembler Linker 3Loaders
  • 4.  A loader is a system software program that performs the loading function.  Loading is the process of placing the program into memory for execution.  Loader is responsible for initiating the execution of the process. 4Loaders
  • 5.  Compile-Go Loader  General Loader  Absolute Loader  Relocating Loader  Practical Relocating Loader  Linking Loader 5Loaders
  • 6.  In compile and go loader is a link editor/program loader in which the assembler itself places the assembled instruction directly into the designated memory locations for execution.  The instruction are read line by line, its machine code is obtained and it is directly put in the main memory at some known address.  After completion of assembly process, it assigns the starting address of the program to the location counter. 6Loaders
  • 7.  The assembler is first executed and it, when it is finished, causes a branch straight to the first instruction of the program.  There is no stop between the compilation, link editing, loading, and execution of the program.  It is also called an assemble-and-go or a load-and-go system. 7Loaders
  • 8.  They are simple and easier to implement.  No additional routines are required to load the compiled code into the memory. 8Loaders :: ::
  • 9.  There is wastage in memory space due to the presence of the assembler.  There is no production of object file, the source code is directly converted to executable form. Hence even though there is no modification in the source program it needs to be assembled and executed each time. 9Loaders :: ::
  • 10.  In Compile-and-Go the outputting instruction and data are assembled. In which assembler is placed in main memory that results in wastage of memory.  To overcome that we requires the addition of the new program of the system, a loader.  Generally the size of loader is less than that of assembler. 10Loaders
  • 11.  Reassembly of program is not needed  The translator of the source program produce compatible object program files  More memory is available to the user 11Loaders :: ::  The loader cannot handle different object Module Obtained from different kinds of computers :: ::
  • 12.  In this scheme the assembler outputs the machine language translation of the source program in almost the same form as in the “Compile and go” , except that the data is punched on cards. Here it will directly placed in memory .  The loader in turn simply accepts the machine language text and places it into core at the location prescribed by the assembler. 12Loaders
  • 13.  The MAIN program is assigned to locations 100-247 and the SQRT subroutine is assigned locations 400-477. if changes were made to MAIN that increasing length to more than 300 bytes. 13Loaders MAIN SQRT Absolute loader SQRT MAIN
  • 14.  The end of MAIN is overlap with the start of SQRT. It would then necessary to assign SQRT to a new location by changing its START.  There are four functions involving in the Absolute loading • Allocation • Linking • Relocation • Loading 14Loaders
  • 15.  Simple and efficient. 15Loaders :: ::  The programmer must specify to the assembler the address where the program is to be loaded.  If there are multiple subroutines , the programmer must remember the address of each. :: ::
  • 16.  To avoid possible reassembling of all subroutines when a single subroutine is changed and to perform the tasks of allocation and linking for the programmer the relocating loaders is introduced.  The execution of the object program is done using any part of the available & sufficient memory.  The object program is loaded into memory wherever there is room for it. 16Loaders
  • 17.  The assembler assembles each procedures segment independently and passes to loader the text and information as to relocation and intersegment references.  The assembler would also provide the loader with additional information, such as the length of the entire program and the length of the transfer vector. 17Loaders
  • 18.  BINARY SYMBOLIC SUBROUTINE ( ) loader such as used in the IBM 7094,IBM 1130,GE 635.  The output of the relocating assembler using a BINARY SYMBOLIC SUBROUTINE(BSS) scheme is the Object program and information about all other program its references.  The BSS loader allows many procedure segments but only one data (common)segment.  The BSS loader scheme is often used on computers with a fixed-length direct address instruction format. 18Loaders :: ::
  • 19.  Avoids possible reassembling of all Subroutines when a single Subroutine is changed  Perform the tasks of allocation and linking for the programmer. 19Loaders :: ::  Difficult to implement  Algorithm is depends on File structure of the object program.  Slower than Absolute loader :: ::
  • 20.  In this type of loaders first load , links and then Relocates segments.  Complete freedom in referencing data or instructions contained in other segments  Perform all linking and relocation at load time.  A linking loader is known as general relocatable loader or direct-linking loader. 20Loaders
  • 21.  PASS-ONE : accepts object file and produces Global external symbol table (GEST) and copies of the object programs as O/P.  PASS-TWO : object programs are loaded to the primary memory after proper translation of address . 21Loaders  One pass linking loader performs all operations that are specified in a two-pass linking loaders
  • 22.  It allows multiple procedure and data segment.  It provides flexible inter-segment referencing and Accessing ability, at same time independent translation of programs. 22Loaders :: ::  It is necessary for allocation, relocation, linking and loading.  All the subroutine are required each time in order to execute a program .  It is time consuming. :: ::
  • 23. Linkers Loaders Combine the target code with the code of other programs and library routines in order to generate a binary program. Load executable code into the memory. Carried out with the help of compiler Part of operating system The execution of linking can be during compilation or during execution of the program The loads the program into the memory when it is scheduled for execution. 23Loaders
  • 24.  What is Loader  Use of Loader  Types of Loader  Linkers vs. Loader 24Loaders Reference :: -System Programming by Srimanta Pal OXFORD Publication -web.thu.edu.tw/ctyang/www/files/sp_chap3