¿Hay alguna forma de encontrar la dirección inicial y final de la memoria del montón?
#include<stdio.h> void main() { printf("Ending address of Heap: %x\n",sbrk(0)); }La codificación anterior muestra la dirección final de la memoria del montón. De esa manera, ¿hay alguna forma de encontrar la dirección inicial del montón?
Producción:
Dirección final de Heap: 8556000
En Linux, puede abrir el archivo /proc/self/maps, por ejemplo con fopen, y leerlo hasta que encuentre una línea como esta:
0060f000-00630000 rw-p 00000000 00:00 0 [montón]
0060f000-00630000 - rango de direcciones del montón