update C snipplets
This commit is contained in:
23
code/C/System/disk_usage.c
Normal file
23
code/C/System/disk_usage.c
Normal file
@@ -0,0 +1,23 @@
|
||||
#include <stdio.h>
|
||||
#include <sys/statvfs.h>
|
||||
|
||||
#define PATH "/media/user/Samsung USB"
|
||||
|
||||
int main(int argc, const char *argv[]) {
|
||||
const unsigned int GB = (1024 * 1024) * 1024;
|
||||
struct statvfs buffer;
|
||||
int ret = statvfs(PATH, &buffer);
|
||||
|
||||
if (!ret) {
|
||||
const double total = (double)(buffer.f_blocks * buffer.f_frsize) / GB;
|
||||
const double available = (double)(buffer.f_bfree * buffer.f_frsize) / GB;
|
||||
const double used = total - available;
|
||||
const double usedPercentage = (double)(used / total) * (double)100;
|
||||
printf("Total: %f --> %.0f\n", total, total);
|
||||
printf("Available: %f --> %.0f\n", available, available);
|
||||
printf("Used: %f --> %.1f\n", used, used);
|
||||
printf("Used Percentage: %f --> %.0f\n", usedPercentage, usedPercentage);
|
||||
}
|
||||
|
||||
return ret;
|
||||
}
|
||||
12
code/C/System/get-pid-by-process-name.c
Normal file
12
code/C/System/get-pid-by-process-name.c
Normal file
@@ -0,0 +1,12 @@
|
||||
pid_t getPIDbyName(char *ps_name) {
|
||||
FILE *fp;
|
||||
char *cmd = (char *)calloc(1, 200);
|
||||
|
||||
sprintf(cmd, "pidof %s", ps_name);
|
||||
|
||||
fp = popen(cmd, "r");
|
||||
fread(cmd, 1, 200, fp);
|
||||
fclose(fp);
|
||||
|
||||
return atoi(cmd);
|
||||
}
|
||||
11
code/C/System/get_ram_usage.c
Normal file
11
code/C/System/get_ram_usage.c
Normal file
@@ -0,0 +1,11 @@
|
||||
#include <sys/resource.h>
|
||||
#include <stdio.h>
|
||||
|
||||
int main() {
|
||||
struct rusage r_usage;
|
||||
getrusage(RUSAGE_SELF, &r_usage);
|
||||
|
||||
printf("Memory usage: %ld kilobytes\n", r_usage.ru_maxrss);
|
||||
|
||||
return 0;
|
||||
}
|
||||
Reference in New Issue
Block a user