•Program relocation :
in program instruction and data use some address. Program assumes its
instructions and data to occupy memory words with specific address.
•Such a program is
called an address sensitive program. It contains one or more of the following:
1.An address sensitive
instruction : an instruction which uses an address.
2.An address constant :
a data word which contains an address.
•Definition : program
relocation is the process of modifying the address used in the address
sensitive instructions of a program such that the program can execute correctly
from the designated area of memory.
•In complete process
translation origin and linking are always different. but linking origin and
loading origin may be same or different.
•If loading origin and
linking origin are different this means relocation must be performed by the
loader.
•Linker always
performs relocation. But some loaders do not do this.
•If loaders do not
perform relocation this means load origin and link origin are equal, and this
loader is called absolute loader.
•If loaders perform
relocation then loaders are called relocation loaders.
•Performing relocation
: we can calculate the relocation factor by linking origin and translate
origin. Suppose translated origin and linked origin of program are t_origin and l_origin respectively.
Consider a symbol symb in program P. its translation time address be tsymb and link time address
be lsymb. The relocation
factor of program is defined as
relocation_factor = l_orgin – t_origin
•Relocation factor can
be positive, negative or 0.
•Here symb is working as an operand. The
translator puts the address tsymb in the instruction for it.
• Tsymb = t_origin + dsymb
•where dsymb is the offset of symb in program.
•lsymb = l_origin + dsymb
•lsymb = t_origin +relocation_faction +dsymb
• = t_origin +
dsymb + relocation_factior
• = tsymb + relocation_factor
Good job..!! Understood the relocation concept in simplest words.
ReplyDeleteThis comment has been removed by the author.
ReplyDeletethanks for such kind of articles.....i clearly understand concept of relocation in simple......
ReplyDeletetechno-solution
Code Optimization
ReplyDeleteCode Optimization Technique
IPv6 Datagram Format
Integration Testing and Validation Testing
Goals of Input/Output Software
IEEE 802.11 Medium Access Control
Issues in Designing Human Oriented Names
GUI Architecture of Android Application
GSM Architecture
Hi,
ReplyDeleteThanks for sharing such kind of information, its nice article about relocation. I got clear idea of relocation regarding program relocation.
http://alphasoftglobal.com/mlm-software/mlm-software-company-Pune
Discover the best best tableau courses designed to build real-world data visualization and analytics skills.
ReplyDeleteNice breakdown of training benefits.Hands-on practice matters.Projects improve skills.This iOS app development training focuses on real apps.
ReplyDeleteMaster UI/UX Design ui ux design course online
ReplyDeletewith OnlineITGuru! Learn to create user-friendly and visually appealing designs using tools like Figma, Adobe XD, and Sketch. Start your design journey today and craft amazing user experiences!
Become a skilled Java Developer with OnlineITGuru! Learn Java fundamentals, Spring Boot, Hibernate, and more, and build dynamic web applications with hands-on projects. Start coding your future now!java full course
ReplyDeleteUnlock the power of DevOps devops training online
ReplyDeletewith OnlineITGuru! Learn automation tools like Docker, Kubernetes, and CI/CD pipelines to streamline development and operations. Master DevOps and boost your IT career today!
Learn Data Modelingdatabase modeling course/a>
ReplyDeletewith OnlineITGuru! Understand ER diagrams, normalization, and advanced data design techniques. Build scalable, efficient data structures to improve your database skills and career.