Ho una domanda sulla dimensione dello stack di un processo su Linux. Questa dimensione dello stack è determinata al momento del collegamento ed è codificata nel file ELF?Come sono le dimensioni dello stack del processo su linux relative a pthread, fork ed exec
Ho scritto un programma che stampa le dimensioni dello stack per pthread_attr_getstacksize(&attr, &stacksize);
. E se eseguo questo programma direttamente da una shell, dà un valore di circa 10 MB. Ma quando I exec
da una discussione che appartiene a un programma multi-thread, dà un valore di circa 2 MB.
Quindi voglio sapere quali fattori influenzano la dimensione dello stack di un processo che è fork and exec
-ed da qualche processo padre. Ed è possibile impostare la dimensione dello stack di un processo nel suo genitore in fase di esecuzione prima del fork and exec
figlio?
Grazie in anticipo.
In aggiunta a questo, Linux aumenta automaticamente lo stack quando necessario, ma siete naturalmente limitati a questi limiti, oltre ai limiti dello spazio di indirizzi disponibili nelle aree coltivabili. – nos
nos, solo per thread principale, no? – osgx