language-agnostic - memory-management - c# process memory usage - ¿Qué y dónde están la pila y el montón?

c# get system memory usage / memory-management / stack / heap / dynamic-memory-allocation

Los libros de lenguaje de programación explican que los tipos de valor se crean en la pila y los tipos de referencia se crean en el montón , sin explicar cuáles son estas dos cosas. No he leído una explicación clara de esto. Entiendo lo que es una pila . Pero,

RajeshKdev



Answer #1

La pila y el montón se encuentran tradicionalmente en extremos opuestos del espacio de direcciones virtuales del proceso. La pila crece automáticamente cuando se accede a ella, hasta un tamaño establecido por el kernel (que se puede ajustar con setrlimit(RLIMIT_STACK, ...) ). El montón crece cuando el asignador de memoria invoca la brk() al sistema brk () o sbrk() , mapeando más páginas de memoria física en el espacio de direcciones virtuales del proceso.