Ir al contenido
Menú principal
Menú principal
mover a la barra lateral
ocultar
Navegación
Página principal
Cambios recientes
Página aleatoria
Ayuda sobre MediaWiki
Buscar
Buscar
español
Apariencia
Crear una cuenta
Acceder
Herramientas personales
No has accedido
Discusión
Contribuciones
Crear una cuenta
Acceder
Editando
Portable Executable
(sección)
Página
Discusión
español
Leer
Editar
Editar código
Ver historial
Herramientas
Herramientas
mover a la barra lateral
ocultar
Acciones
Leer
Editar
Editar código
Ver historial
General
Lo que enlaza aquí
Cambios relacionados
Información de la página
Apariencia
mover a la barra lateral
ocultar
Advertencia:
no has iniciado sesión. Tu dirección IP se hará pública si haces cualquier edición. Si
inicias sesión
o
creas una cuenta
, tus ediciones se atribuirán a tu nombre de usuario, además de otros beneficios.
Comprobación antispam. ¡
No
rellenes esto!
=== Relocalizaciones === Los archivos PE no contienen [[código independiente de la posición]]. En su lugar son compilados a una ''dirección base'' preferida, y todas las direcciones emitidas por el compilador/enlazador se fijan previamente. Si un archivo PE no puede ser cargado en su dirección preferida (porque ya fue tomada por algo más), el sistema operativo lo reajustará. Esto implica recalcular cada dirección absoluta y modificar el código para utilizar los nuevos valores. El cargador lo realiza comparando las direcciones de carga actual y preferida, y calculando un valor [[Delta encoding|delta]]. Esto se añade a continuación a la dirección preferida para llegar a la nueva dirección de la localización de memoria. Las relocalizaciones base son almacenadas en una lista y añadidas, cuando sea necesario, a una posición de memoria existente. El código resultante ahora es privado al proceso y no es más compartido, por lo que muchos de los beneficios de ahorro de memoria de las DLLs se pierden en este escenario. También retrasa la carga del módulo de manera significativa. Por esta razón, el reajuste es evitado siempre que sea posible, y las DLL proporcionadas por Microsoft tienen direcciones base pre-calculadas de manera que no se superpongan. Por lo tanto, en el caso de no reajuste, PE ofrece la ventaja de un código muy eficiente, pero en presencia de reajuste, el éxito en el uso de memoria puede ser costoso. Esto contrasta con ELF, que utiliza código totalmente independiente de la posición y una tabla de desplazamiento global, que abandona tiempo en ejecución contra el uso de memoria en favor de estos últimos.
Resumen:
Al guardar los cambios aceptas los
términos de uso
y liberas de forma irrevocable tu contribución conforme a los términos de las licencias
licencia CC BY-SA 4.0
y
GFDL
. Aceptas igualmente que un hipervínculo o URL es atribución suficiente conforme a la licencia Creative Commons.
Cancelar
Ayuda de edición
(se abre en una ventana nueva)
Buscar
Buscar
Editando
Portable Executable
(sección)
Añadir idiomas
Añadir tema