Código PHP:
#include <sys/types.h>
#include <sys/resource.h>
#include <sys/time.h>
#include <math.h>
#include <unistd.h>
#include <stdio.h>
void work ()
{
FILE *f;
int i;
double x = 4.5;
f = tmpfile();
for (i=0; i < 10000; i++){
fprintf(f,"Do some output\n");
if(ferror(f)){
fprintf(stderr,"Error writing temporary files\n");
exit(1);
}
}
for(i=0; i < 1000000; i++)
x = log(x*x + 3.21);
}
int main()
{
struct rusage r_usage;
struct rlimit r_limit;
int priority;
work();
getrusage (RUSAGE_SELF, &r_usage);
printf ("CPU Usage: User = %ld.%06ld, System = %ld.%06ld\n",
r_usage.ru_utime.tv_sec, r_usage.ru_utime.tv_usec,
r_usage.ru_stime.tv_sec, r_usage.ru_utime.tv_usec);
priority = getpriority(PRIO_PROCESS, getpid());
printf("Current priority = %d\n", priority);
getrlimit(RLIMIT_FSIZE, &r_limit);
printf("Current FSIZE limit: soft = %ld, hard = %ld\n", r_limit.rlim_cur,r_limit.rlim_max);
r_limit.rlim_cur = 2048;
r_limit.rlim_max = 4096;
printf("Setting a 2K size limit\n");
setrlimit(RLIMIT_FSIZE, &r_limit);
work();
exit(0);
}
Me da este error
Cita:
[koven@koven programas]$ gcc -o limits limits.c
limits.c: En la función âworkâ:
limits.c:19: aviso: declaración implÃ*cita incompatible de la función interna âexitâ
limits.c: En la función âmainâ:
limits.c:48: aviso: declaración implÃ*cita incompatible de la función interna âexitâ
/tmp/ccyqMKyZ.o: En la función `work':
limits.c:(.text+0xaa): referencia a `log' sin definir
collect2: ld devolvió el estado de salida 1
limits.c: En la función âworkâ:
limits.c:19: aviso: declaración implÃ*cita incompatible de la función interna âexitâ
limits.c: En la función âmainâ:
limits.c:48: aviso: declaración implÃ*cita incompatible de la función interna âexitâ
/tmp/ccyqMKyZ.o: En la función `work':
limits.c:(.text+0xaa): referencia a `log' sin definir
collect2: ld devolvió el estado de salida 1
Saludos