elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Sigue las noticias más importantes de seguridad informática en el Twitter! de elhacker.NET


  Mostrar Mensajes
Páginas: [1]
1  Programación / ASM / ImageBase de ejecutables y de librerías de enlace dinámico en: 18 Abril 2012, 02:20 am
Buenas!

Tengo entendido que en Windows, en lo que respecta a los ejecutables en formato PE, la ImageBase suele ser 4000000h y a partir de ahí se cargan en memoria.
En las DLL puede ocurrir que cuando tu programa intenta cargar una, y esta intenta cargarse desde la ImageBase especificada en su Header, esta parte de la memoria ya esté ocupada, y de ahí surge el tema de las relocaciones de las DLL.

La pregunta es... ¿cómo es que la ImageBase de los ejecutables siempre hace referencia a una zona de memoria libre?
Si todos los programas se cargan a partir de esa dirección, debería de estar ocupada si hay unos cuantos cargados en memoria.

Todo esto es lo que me pareció entender... si me equivoco en todo lo que digo corregidme por favor  :silbar:

Gracias a todos.
2  Programación / Programación General / Re: Las API siempre estan cargadas en memoria? en: 4 Julio 2011, 22:11 pm
Entiendo... y la posicion donde se carguen esas API dependera de su ImageBase

Gracias por sus respuestas  ;-)
3  Programación / Programación General / Las API siempre estan cargadas en memoria? en: 2 Julio 2011, 20:47 pm
Siempre que abro un fichero con el Olly y miro el volcado de memoria veo que por ejemplo la direccion donde comienza el kernel32.dll (que incorpora muchas API) es siempre la misma.
Eso quiere decir que siempre estan cargadas en memoria y lo unico que hacen los programas es llamarlas?
4  Informática / Electrónica / Re: ¿Cómo opera el procesador con los puertos? en: 6 Junio 2011, 23:24 pm
Encontré estaa páginas (y más) acorde a lo que me dijiste: http://www.mitecnologico.com/Main/InterrupcionesPuertos
http://www.zator.com/Hardware/H2_4.htm

Muchas gracias, me quedó todo más claro  :P

PD: Por cierto, tengo una duda más:

Tengo entendido que existe una memoria ajena a la principal que es la responsable de los puertos. En una dirección de esa memoria se escriben los datos que un periférico lee. ¿Existe? ¿Cuál es el nombre de esa memoria?
5  Informática / Electrónica / ¿Cómo opera el procesador con los puertos? en: 6 Junio 2011, 01:06 am
Pongamos cualquier procesador de la familia x86.
Se coloca la dirección en el bus de direcciones, el bus de control indica que se va a realizar una operación de lectura/escritura de un puerto, y el bus de datos está listo para enviar o recibir información.

¿Y entonces? ¿Qué sucede?

Tengo entendido que el periférico al que se va a acceder lo detecta y responde a la llamada, pero eso es con términos muy generales.

¿Alguien me lo podría explicar más en detalle?

Gracias  :)
Páginas: [1]
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines