00001 #include <sys/types.h> 00002 #if !defined(_WIN32) || defined(__NUTC__) 00003 #include <sys/times.h> 00004 #endif 00005 #include <sys/stat.h> 00006 #include <time.h> 00007 #ifndef CLK_TCK 00008 # define CLK_TCK CLOCKS_PER_SEC 00009 #endif 00010 00011 double elapsed_time (void) 00012 { 00013 #if defined(_WIN32) && !defined(__NUTC__) 00014 return (double)clock() / (double)CLK_TCK; 00015 #else 00016 struct tms clock; 00017 double usrtime; 00018 double systime; 00019 00020 times(&clock); 00021 usrtime = (double) clock.tms_utime / (double)CLK_TCK; 00022 systime = (double) clock.tms_stime / (double)CLK_TCK; 00023 return (usrtime + systime); 00024 #endif 00025 } 00026 00027 double file_size (char *fname) 00028 { 00029 struct stat st; 00030 00031 if (stat (fname, &st)) return 0.0; 00032 return (double)st.st_size / 1048576.0; 00033 } 00034