Prerequisite – Address Binding Methods
Address Binding is the association of program instructions and data to the actual physical memory location. There are various types of address binding in the operating system.
There are 3 types of Address Binding:
- Compile Time Address Binding
- Load Time Address Binding
- Execution Time Address Binding
Here, we compare Compile Time and Execution Time address binding as following below.
Compile Time Address Binding:
If the compiler is responsible of performing address binding then it is called as compile time address binding. This type of address binding will be done before loading the program into memory. The compiler required to interact with the operating system memory manager to perform compile time address binding.
Execution Time or Dynamic Address Binding:
The address binding will be postponed even after loading the program into memory. The program will keep on changing the locations in the memory till the time of program execution. This type of Address binding will be done by the processor at the time of program execution.
Difference between Compile Time and Execution Time address binding:
|Compile Time Address Binding||Execution Time Address Binding|
|Compiler is responsible for the compile time address binding.||Execution time address binding is done by processor.|
|It generates logical address (virtual address).||It generates dynamic absolute address.|
|Compile time address binding is done before loading the program into memory.||Execution time address binding is done at the time of program execution.|
|Instructions are translated into absolute address.||It helps in execution.|
|Code is compiled here.||From memory instructions are executed by CPU.|
|It works with logical address.||It works with dynamic absolute address.|
|It is static address binding.||It is dynamic address binding.|
|Compiler interacts with operating system memory manager to perform it.||It is done by processor at the time of program execution.|
Don’t stop now and take your learning to the next level. Learn all the important concepts of Data Structures and Algorithms with the help of the most trusted course: DSA Self Paced. Become industry ready at a student-friendly price.
- Difference between Compile Time and Load Time address Binding
- Difference between Load Time and Execution Time address binding
- Difference between Compile-time and Run-time Polymorphism in Java
- Difference between Compile Time Errors and Runtime Errors
- Difference between Seek Time and Transfer Time in Disk Scheduling
- Difference between Turn Around Time (TAT) and Waiting Time (WT) in CPU Scheduling
- Difference between Arrival Time and Burst Time in CPU Scheduling
- Difference between Time Sharing OS and Real-Time OS
- Difference between Transfer Time and Disk Access Time in Disk Scheduling
- Difference between Seek Time and Disk Access Time in Disk Scheduling
- Difference between Hard real time and Soft real time system
- Difference between Firm Real-time Tasks and Soft Real-time Tasks
- Difference between Real-time Tasks and Non-Real-time Tasks
- Difference between 3-address instruction and 2-address instructions
- Difference between 2-address instruction and 1-address instructions
- Difference between Sporadic and Aperiodic Real-time Tasks
- Difference between Periodic and Aperiodic Real-time Tasks
- Difference between Periodic and Sporadic Real-time Tasks
- Difference between Delay and Deadline Constraint in Real-time System
- Difference between Rotational Latency and Transfer Time in Disk Scheduling
If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to email@example.com. See your article appearing on the GeeksforGeeks main page and help other Geeks.
Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.