#include #include #include #include #define CPUFREQ_FILE "/sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq" char *estimate_MHz() { FILE *fd = NULL; char buf[512], *ret; if ((fd = fopen(CPUFREQ_FILE, "r")) == NULL) return strdup("???"); if (fgets(buf, sizeof(buf), fd) == NULL) { fclose(fd); return strdup("???"); } fclose(fd); if ((ret = malloc(512)) == NULL) return strdup("???"); snprintf(ret, 512, "%.1fMHz", (double)atoi(buf) / 1000.0); return ret; }