I am not sure about x86, but on ia64, you would be very hard pressed for this application to actually run you out of memory. With the memset commented out, you would be allocating vmas, etc, but you would not be actually putting pages behind those virtual addresses. --------------------------- test1.c ---------------------------------- #include<stdio.h> #include<string.h> main() { char* buff; int count; count=0; while(1) { printf("\nOOM Test: Counter = %d", count); buff = (char*) malloc(1024); // memset(buff,'\0',1024); count++; if (buff==NULL) { printf("\nOOM Test: Memory allocation error"); } } } --------------------------- test1.c ---------------------------------- >The funniest part is that with memset commented out_of_memory observed, contrary to my expectation. > >I don't know why. It shouldn't have. I am running the application on an ARM target. >Regards, >Abu. I fail to understand that why the OS doesn't return NULL as per man pages of malloc. It insteat results in OOM. ~Abu. - To unsubscribe from this list: send the line "unsubscribe linux-newbie" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.linux-learn.org/faqs