Relocation in Memory Management based Computer Science Study Material for Gate

This tutorial covers the concepts of dynamic memory management or relocation in memory management such as introduction to static and dynamic relocation and differences between them

What is Relocation in Operating System?

In this Study Material for Gate Computer Science today we are going to tell about the relocation concept in Operating System. Here in this post today we will learn what is relocation ? different types of relocation like static relocation and dynamic relocation. Let's start with the definition of relocation.

Most of the time we hear the word program relocatability in memory management. what does it mean ? The term program relocatability refers to the ability to load and execute a given program into memory. In reality, the program may be loaded at different memory locations, which are called physical addresses

Relocation is to find a way to map virtual addresses into physical addresses. Depending on when and how the mapping from the virtual address space to the physical address space takes place in a given relocation scheme. 

When a process is loaded in main memory, since there are several instructions inside the process so here address of these different instructions inside the process are relocatable addresses. which are converted into actual addresses by the loader by the loader in software approach. But there is some problem with this approach suppose if a process is first loaded then remove and then after loaded again so in this situation loader will get confused.

 So to avoid this problem operating system use another method for relocation. Instead of using this load time binding operating system used runtime binding. Here runtime binding means it leaves these relocatable addresses as it is it does not convert these relocatable addresses into absolute addresses but when CPU generate any logical or virtual address then this logical address you can be considered this logical address as the relocatble address which is going to map its corresponding physical address by memory management unit.

Types of Relocation in Operating System

Generally, there are two types of relocation

      Static Relocation

The first basic method of relocation is static relocation. Static relocation is performed before or during the loading of the program into memory, by a relocating linker/ loader. In systems with static relocation, a swapped-out process must either be swapped back into the same partition from which it was evicted, or software relocation must be repeated whenever the process is to be loaded into a different partition.

Systems with static relocation are practically restricted to supporting only static binding of processes to partitions. This method is the slow process because it involves software translation. It is used only once before the initial loading of the program.

What happens exactly in this approach is that here operating system manages the memory address of a process to reflect its starting position in the memory. Once a process is assigned a starting address in memory it executes within the space it has been allocated. Once static relocation process has been completed operating system can no longer further relocate process until its terminate.  

(          Dynamic Relocation

Another method of relocation is dynamic relocation. In it, mapping from the virtual address space to the physical address space is performed at run-time. This runtime mapping from virtual address to physical address is performed by a hardware device known as memory management unit.

When the program is compiled or when a process is executed by CPU will generate the logical address. Put this address as LA and this logical address can never be less than zero, it has to be zero or more.

So whenever the CPU generates the logical address, you add this logical address with the base register (relocation register ) content and that gives you the physical address in the main memory where the instruction of that data will be found.

operating system study material for gate computer science

Figure 4: Dynamic relocation using relocation register.

It means in dynamic relocation operating system hardware add the relocation register value to the address generated by the compiler. This relocation register allows the translation to a physical address. Main advantage of using dynamic relocation is that operating system can easily move a process if necessary.A disadvantage of dynamic relocation approach is that it slow down due to some extra operation to be performed.

The value in the relocation register is added to every address generated by a user process at the time the address is sent to memory (see Figure 4). For example, if the base(relocation register content)  is at 14000, then an attempt by the user to address location 0 is dynamically relocated to location 14000 and an access to location 346 is mapped to location 14346.

User program deals with the logical address it never sees the physical address.

I hope this gate study material for computer science will be beneficial for computer science students.

Keywords: definition of relocation, what is static relocation, what is dynamic relocation, the difference between static and dynamic relocation, how relocation performs in the operating system? what is relocation register? advantages and disadvantages of dynamic relocation.




addressing modes types,1,advance-java,2,aktu entrance exam,1,aktu exam schedule,1,ASP,1,bare machine,1,base register and limit register,1,C Programming,18,C Plus Plus,1,c programming notes for gate,18,C programming Tutorials,8,Cache Memory,1,Childcare,1,CJ,1,Cloud Computing,1,CN,4,Computer Architecture,2,Computer architecture based questions for gate exam,11,Computer architecture Tutorials,1,Computer Network,3,Computer Network Study Material,2,Computer network study material for gate,1,Computer Networks,10,Computer networks gate questions with answer,3,computer networks notes,1,computer networks tutorial,1,Computer Science Study Material for Gate,13,computer science study material for gate exam,17,contiguous memory allocation,2,Core Java,3,cyber crime report,1,Cyber crime status,1,cybercrime and security,1,cybercrime examples,1,data communications and networking,1,Data Structure,2,Data Structure Questions,1,Data Transmission Architecture,1,Data Transmission in wsn,1,database normalization,1,dbmas study material,1,DBMS,8,dbms gate questions with answer,1,dbms multiple choice questions with answers for gate,1,dbms question paper,1,DE,1,Digital Electronics,1,DS,4,Electroencephalogram,1,ER diagram Tutorial,1,Gate 2017,3,Gate 2017 Admit card,1,GATE 2020,1,gate cse c programming questions,10,gate cse study material,2,gate cse syllabus,2,gate practice set,7,gate questions on c programming,10,gate study material for computer science,14,Gate study material for computer science 2017,1,gate study material for cse,46,General,3,HCL Aptitude Test,1,HR Interview Questions,1,HTML,4,Important Date of Gate 2017 Exam,1,Information Security Policy,1,internal and external fragmentation,1,Java Tutorials,3,JDBC,2,JDBC Tutorial,1,JS,1,memory fragmentation,1,memory management,1,memory management questions and answer in os,1,Motivational,4,NCER,1,Numerical Techniques Lab,1,OOT,1,Operating System,6,Operating System Gate Questions,2,Operating System Objective Questions,4,Operating System Questions Bank,1,operating system study material for gate exam,11,operating system tutorial notes,8,Operating System tutorials resident monitor,1,page swapping,1,paged memory allocation,1,paged memory allocation in operating system,1,Regression testing,1,relocation register,1,routing table,1,Software Engineering,10,Software Engineering baes study material for gate,1,Software Quality Assurance,3,software verification methods,1,Stack,1,Study Material for gate Computer Science,5,swapping in memory management,1,swapping in operating system,1,TCS Code Vita,1,TCS Interview Questions,1,Technical Interview,1,Technical Questions from DBMS,1,Tips to Learn Coding,1,UML,1,Virtualization,1,What is process control block ?,1,what is software testing?,1,Wireless Sensor Network,3,worst fit algorithm for memory allocation,1,XML,2,
Computer Science Junction: Relocation in Memory Management based Computer Science Study Material for Gate
Relocation in Memory Management based Computer Science Study Material for Gate
This tutorial covers the concepts of dynamic memory management or relocation in memory management such as introduction to static and dynamic relocation and differences between them
Computer Science Junction
Loaded All Posts Not found any posts VIEW ALL Readmore Reply Cancel reply Delete By Home PAGES POSTS View All RECOMMENDED FOR YOU LABEL ARCHIVE SEARCH ALL POSTS Not found any post match with your request Back Home Sunday Monday Tuesday Wednesday Thursday Friday Saturday Sun Mon Tue Wed Thu Fri Sat January February March April May June July August September October November December Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec just now 1 minute ago $$1$$ minutes ago 1 hour ago $$1$$ hours ago Yesterday $$1$$ days ago $$1$$ weeks ago more than 5 weeks ago Followers Follow THIS PREMIUM CONTENT IS LOCKED STEP 1: Share. STEP 2: Click the link you shared to unlock Copy All Code Select All Code All codes were copied to your clipboard Can not copy the codes / texts, please press [CTRL]+[C] (or CMD+C with Mac) to copy