Pregunta

¿Cuál es la diferencia entre " texto de biblioteca compartida " y "datos de biblioteca compartida" Además, ¿qué significa que los datos compartidos de la biblioteca sean "reubicados previamente"? Esta pregunta hace referencia a un par de características específicas de AIX que involucran bibliotecas compartidas.

¿Fue útil?

Solución

Ah, esa es una pregunta difícil.

Muy bien, así que para responderlo, debes saber que un archivo ejecutable tiene dos * segmentos: un " texto " sección y un " datos " sección.

Los "datos" El segmento contiene cosas que no se ejecutarán. Por ejemplo, cadenas en el programa (por ejemplo, la cadena " Comando no encontrado " estaría en el segmento de datos del binario / bin / sh ).

El " texto " el segmento contiene "cosas que se ejecutarán" - las instrucciones de la máquina.

Y, el " pre-reubicado " ... Aquí hay una explicación bastante buena de por qué se necesita la reubicación: http://people.redhat.com/drepper/textrelocs.html y lo que está involucrado aquí: http://en.wikipedia.org/wiki/Relocation_ (computer_science) .

¿Eso ayuda?

*: nota de nitpicker: tiene más de dos, pero eso no es importante en este momento

Otros consejos

La memoria se divide en 4 segmentos: código, datos, pila y amp; montón.

El " texto de la biblioteca compartida " es la parte del código de la biblioteca compartida: las instrucciones reales que implementan la funcionalidad en la biblioteca.

Los "datos de la biblioteca compartida" es la parte de datos de la biblioteca compartida: variables globales, constantes, material estático, etc. que se asigna inmediatamente cuando se carga la biblioteca.

En cuanto a " preubicado " bibliotecas, aquí está el concepto. Cuando se carga una biblioteca compartida, se asigna a un espacio de direcciones compartido. A " reubicado previamente " la biblioteca está construida con una "pista" indicando al sistema operativo en qué lugar de ese espacio de direcciones compartido debe cargarse Por razones más allá de mi comprensión, se supone que eso mejora el rendimiento.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top