My slstatus configuration
Não pode escolher mais do que 25 tópicos Os tópicos devem começar com uma letra ou um número, podem incluir traços ('-') e podem ter até 35 caracteres.

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. #include <stdio.h>
  2. #include "util.h"
  3. const char *
  4. ram_free(void)
  5. {
  6. long free;
  7. return (pscanf("/proc/meminfo", "MemFree: %ld kB\n", &free) == 1) ?
  8. bprintf("%f", (float)free / 1024 / 1024) : NULL;
  9. }
  10. const char *
  11. ram_perc(void)
  12. {
  13. long total, free, buffers, cached;
  14. return (pscanf("/proc/meminfo",
  15. "MemTotal: %ld kB\n"
  16. "MemFree: %ld kB\n"
  17. "MemAvailable: %ld kB\nBuffers: %ld kB\n"
  18. "Cached: %ld kB\n",
  19. &total, &free, &buffers, &buffers, &cached) == 5) ?
  20. bprintf("%d", 100 * ((total - free) - (buffers + cached)) / total) :
  21. NULL;
  22. }
  23. const char *
  24. ram_total(void)
  25. {
  26. long total;
  27. return (pscanf("/proc/meminfo", "MemTotal: %ld kB\n", &total) == 1) ?
  28. bprintf("%f", (float)total / 1024 / 1024) : NULL;
  29. }
  30. const char *
  31. ram_used(void)
  32. {
  33. long total, free, buffers, cached;
  34. return (pscanf("/proc/meminfo",
  35. "MemTotal: %ld kB\n"
  36. "MemFree: %ld kB\n"
  37. "MemAvailable: %ld kB\nBuffers: %ld kB\n"
  38. "Cached: %ld kB\n",
  39. &total, &free, &buffers, &buffers, &cached) == 5) ?
  40. bprintf("%f", (float)(total - free - buffers - cached) / 1024 / 1024) :
  41. NULL;
  42. }