<div dir="ltr"><div><div><div><div><div><div><div><div><div>Hi,<br><br></div>I'm trying to understand how the shared memory pool works inside the Nginx.<br></div>To do that, I made a very small module which create a shared memory zone with 2097152 bytes, <br>

and allocating and freeing blocks of memory, starting from 0 and increasing by 1kb until the allocation fails.<br><br></div>The strange parts to me were:<br></div>- the maximum block I could allocate was 128000 bytes<br>
</div>
- each time the allocation fails, I started again from 0, but the maximum allocated block changed with the following profile<br>128000<br>87040<br>70656<br>62464<br>58368<br>54272<br>50176<br>46080<br>41984<br>37888<br>33792<br>

29696<br><br></div>This is the expected behavior? <br>Can anyone help me explaining how shared memory works?<br></div><div>I have another module which do an intensive shared memory usage, and understanding this can help me improve it solving some "no memory" messages.<br>

</div><div><br></div>I put the code in attach.<br><br></div>Thanks,<br></div>Wandenberg<br><div><div><div><div><div><br></div></div></div></div></div></div>