Enlace de direcciones y sus tipos

En este artículo, vamos a cubrir el enlace de direcciones con la ayuda de un ejemplo y sus tipos, como el tiempo de compilación, el tiempo de carga y el enlace de direcciones en tiempo de ejecución. Vamos a discutir uno por uno.

Vinculación de direcciones:
la asociación de la instrucción del programa y los datos con las ubicaciones reales de la memoria física se denomina vinculación de direcciones. Consideremos el siguiente ejemplo dado a continuación para una mejor comprensión.

Considere que un programa P1 tiene el conjunto de instrucciones tal que I1, I2, I3, I4 y el valor del contador del programa es 10, 20, 30, 40 respectivamente.

Program P1
I1 --> 10 
I2 --> 20 
I3 --> 30 
I4 --> 40

Program Counter = 10, 20, 30, 40

Tipos de enlace de dirección:

Enlace de direcciones dividido en tres tipos de la siguiente manera.

  1. Enlace de direcciones en tiempo de compilación
  2. Enlace de dirección de tiempo de carga
  3. Tiempo de ejecución Vinculación de direcciones

Enlace de direcciones en tiempo de compilación:

  • Si el compilador es responsable de realizar el enlace de direcciones, se denomina enlace de direcciones en tiempo de compilación.
  • Se hará antes de cargar el programa en memoria.
  • El compilador requiere que interactúe con un administrador de memoria del sistema operativo para realizar el enlace de direcciones en tiempo de compilación.

Enlace de dirección de tiempo de carga:

  • Se hará después de cargar el programa en memoria.
  • Este tipo de vinculación de direcciones lo realizará el administrador de memoria del sistema operativo, es decir, el cargador.

Tiempo de ejecución o vinculación de dirección dinámica:

  • Se pospondrá incluso después de cargar el programa en la memoria.
  • El programa se mantendrá cambiando las ubicaciones en la memoria hasta el momento de la ejecución del programa.
  • El tipo dinámico de vinculación de direcciones realizada por el procesador en el momento de la ejecución del programa.

Nota:
la mayoría de los sistemas operativos prácticamente implementan carga dinámica, vinculación dinámica, vinculación de direcciones dinámicas. Por ejemplo: Windows, Linux, Unix, todos los sistemas operativos populares.

Publicación traducida automáticamente

Artículo escrito por Ashish_rana y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *