getrlimit (2) ha la seguente definizione nelle pagine man:
RLIMIT_AS La dimensione massima della memoria virtuale del processo (spazio degli indirizzi) in byte. Questo limite riguarda le chiamate a brk (2), mmap (2) e mremap (2), che falliscono con l'errore ENOMEM al superamento di questo limite. Anche l'espansione automatica dello stack fallirà (e genererà un SIGSEGV che uccide il processo se nessuno stack alternativo è stato reso disponibile tramite sigaltstack (2)). Poiché il valore è lungo, su macchine con una lunghezza di 32 bit o questo limite è al massimo di 2 GiB o questa risorsa è illimitata.
Cosa si intende per "espansione automatica dello stack" qui? Lo stack in un ambiente Linux / UNIX cresce secondo necessità? Se sì, qual è il meccanismo esatto?
ulimit -s
).