#36197 [Bgs->Opn]: php does not free script memory when the process alive

From: Date: Mon, 30 Jan 2006 11:24:35 +0000
Subject: #36197 [Bgs->Opn]: php does not free script memory when the process alive
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-92633@lists.php.net to get a copy of this message
ID: 36197 User updated by: momo@php.net Reported By: momo@php.net -Status: Bogus +Status: Open Bug Type: Apache related Operating System: gentoo 2005.1 PHP Version: 5.1.2 New Comment: My apology of being nagger but the bellow code, use memory (even without inner free) that become free right after the script execution ending. is there a problem to get back the php varibles memory, just like the efree do? PHP_FUNCTION(momo_test) { char *some_memory; int a; some_memory = (char *) emalloc(0x4000000); for(a=0;a<0x4000000;a++) some_memory[a]=0; //efree(some_memory); } Can you send me more exact reference how the linux memory allocation responsible for this spend memory? Previous Comments: ------------------------------------------------------------------------ [2006-01-29 16:07:05] sniper@php.net Expected behaviour. Search more information how memory allocation and freeing works in Linux from the web..and also 'man ps' ------------------------------------------------------------------------ [2006-01-29 09:08:18] momo@php.net Description: ------------ while playing with big arrays, i see that memory that was used on php with apache 1.3 sapi doesn't became free till the next time apache use *the same* process. here how the memory looks like *after* the scripts have finish to run: momo@(none) htdocs # ps -A v|grep http 27677 ? Ss 0:00 0 4188 8875 4532 0.8 /www5/bin/httpd 27679 ? S 0:00 0 4188 8875 3072 0.5 /www5/bin/httpd 27680 ? S 0:03 1 4188 31759 26580 5.1 /www5/bin/httpd 27681 ? S 0:00 0 4188 54019 48740 9.4 /www5/bin/httpd 27682 ? S 0:00 0 4188 8875 2532 0.4 /www5/bin/httpd 27683 ? S 0:00 0 4188 8875 2536 0.4 /www5/bin/httpd 27716 ? S 0:00 0 4188 8875 2536 0.4 /www5/bin/httpd 27764 pts/0 R+ 0:00 0 57 1406 436 0.0 grep http Reproduce code: --------------- for($a=0;$a<1024*512;$a++) { $ret[] = 1.1; } ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=36197&edit=1

« previous php.bugs (#92633) next »