Ver Mensaje Individual
  #5 (permalink)  
Antiguo 25/06/2013, 00:23
Avatar de dontexplain
dontexplain
 
Fecha de Ingreso: junio-2012
Mensajes: 536
Antigüedad: 11 años, 10 meses
Puntos: 127
Respuesta: Duda zona de memoria puntero

Explico brevemente. La mayoría de compiladores sitúan las cadenas en secciones de sólo lectura, en el caso de de ejecutables portables de Windows (PE): [1]
  1. .data que contiene los datos inicializados. Es de lectura y escritura.
  2. .idata que contiene datos importados. Es evidentemente de lectura y escritura.
  3. .edata que contiene datos para exportar. Sólo es de lectura.
  4. .rdata que contiene datos inicializados de sólo lectura. Aquí es donde se introducen las cadenas que no se modifican en tiempo de ejecución, como la de tu ejemplo.
  5. .pdata que contiene datos de excepción. Sólo lectura.
  6. .rsrc que contiene datos de recursos de diversa índole. Es de sólo lectura.

En el caso de ejecutables ELF de unix: [2]
  1. .data y .data1 que contiene datos inicializados. Escritura y lectura.
  2. .rodata y .rodata1 que contiene datos inicializados. Sólo lectura. Aquí se suelen colocar las cadenas.

Esto es un ejecutable PE y las secciones de las cadenas, hay algunas que se observan en la sección de sólo lectura .rdata y otras en .data.



Un saludo.
__________________
21añero.
HTML/CSS, PHP, JS/jQuery, Mysql; NodeJS/Socket.io (& V8); C++ ; Python (wxpy); Ensamblador.
Músico (clarinetista/pianista) y compositor

Última edición por dontexplain; 25/06/2013 a las 00:43