getrlimit (2) tiene la siguiente definición en las páginas del manual:
RLIMIT_AS El tamaño máximo de la memoria virtual del proceso (espacio de direcciones) en bytes. Este límite afecta las llamadas a brk (2), mmap (2) y mremap (2), que fallan con el error ENOMEM al exceder este límite. También la expansión automática de la pila fallará (y generará un SIGSEGV que mata el proceso si no se ha puesto a disposición una pila alternativa a través de sigaltstack (2)). Como el valor es largo, en máquinas con una longitud de 32 bits, este límite es como máximo 2 GiB o este recurso es ilimitado.
¿Qué se entiende por "expansión automática de pila" aquí? ¿La pila en un entorno Linux / UNIX crece según sea necesario? En caso afirmativo, ¿cuál es el mecanismo exacto?
ulimit -s
).