Il est aussi possible d'allouer la pile de façon dynamique: on mappe 4Ko au départ, et juste au-dessus, une page interdite d'accès pour le thread en question. Quand le thread utilise ses 4Ko, il finit par essayer d'écrire dans ce bloc protégé. Cela déclenche une exception (segmentation fault) qui est interceptée, le noyau peut alors ajouter 4Ko de mémoire supplémentaire, et ainsi de suite.
Il me semble que cette stratégie est utilisé par iOS, entre autres.
[^] # Re: What you see is not what you get
Posté par pulkomandy (site web personnel, Mastodon) . En réponse à la dépêche C++ se court-circuite le constructeur de copie. Évalué à 2.
Il est aussi possible d'allouer la pile de façon dynamique: on mappe 4Ko au départ, et juste au-dessus, une page interdite d'accès pour le thread en question. Quand le thread utilise ses 4Ko, il finit par essayer d'écrire dans ce bloc protégé. Cela déclenche une exception (segmentation fault) qui est interceptée, le noyau peut alors ajouter 4Ko de mémoire supplémentaire, et ainsi de suite.
Il me semble que cette stratégie est utilisé par iOS, entre autres.