vshost-util-vserver

Build script and sources for util-vserver.
git clone https://ccx.te2000.cz/git/vshost-util-vserver
Log | Files | Refs

testlimit.c (1473B)


      1 // $Id$
      2 
      3 // Copyright (C) 2003 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de>
      4 // based on tests/testlimit.cc by Jacques Gelinas
      5 //  
      6 // This program is free software; you can redistribute it and/or modify
      7 // it under the terms of the GNU General Public License as published by
      8 // the Free Software Foundation; either version 2, or (at your option)
      9 // any later version.
     10 //  
     11 // This program is distributed in the hope that it will be useful,
     12 // but WITHOUT ANY WARRANTY; without even the implied warranty of
     13 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
     14 // GNU General Public License for more details.
     15 //  
     16 // You should have received a copy of the GNU General Public License
     17 // along with this program; if not, write to the Free Software
     18 // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
     19 
     20 #include <stdio.h>
     21 #include <stdlib.h>
     22 #include <sys/wait.h>
     23 #include <string.h>
     24 #include <errno.h>
     25 #include <unistd.h>
     26 
     27 int main (int argc, char *argv[])
     28 {
     29 	if (argc != 3){
     30 		fprintf (stderr,"testlimit nbprocess malloc_size\n");
     31 	}else{
     32 		int nbproc = atoi(argv[1]);
     33 		int size   = atoi(argv[2]);
     34 		int i;
     35 		int status;
     36 		for (i=0; i<nbproc; i++){
     37 			if (fork()==0){
     38 				void *pt = malloc(size);
     39 				if (pt == NULL){
     40 					fprintf (stderr,"Child %d: can't malloc (%s)\n"
     41 						,i,strerror(errno));
     42 				}else{
     43 					memset (pt,1,size);
     44 				}
     45 				sleep (100);
     46 				_exit (0);
     47 			}
     48 		}
     49 		while (wait(&status)!=-1);
     50 	}
     51 	return 0;
     52 }
     53