summaryrefslogtreecommitdiff
path: root/components/ram.c
AgeCommit message (Collapse)Author
2022-10-28radical re-formatting 2/3: Fix blocksdrkhsh
Fixes coding style. Formatting commits suck, incoherent coding style sucks more. https://suckless.org/coding_style/
2022-10-28radical re-formatting 3/3: Error checksdrkhsh
Check for `< 0` instead of `== -1`. Fixes coding style. Formatting commits suck, incoherent coding style sucks more. https://suckless.org/coding_style/
2022-10-28ram: Refactor on OpenBSDdrkhsh
Fixes up overly complicated lines, by splitting up logic
2022-10-28ram: Refactor Linux perc/useddrkhsh
Fixes up overly complicated line, by splitting up logic
2022-10-28radical re-formatting 0/3: Alphabetic headersdrkhsh
Except stated otherwise in comment. Fixes coding style. Formatting commits suck, incoherent coding style sucks more. https://suckless.org/coding_style/
2022-10-27do not rely on obsolete featureNRK
function prototype with unspecified argument is obsolete since c99. additionally some of these function which don't take any argument were being called with a `const char *` arg, which is UB. fix both these issues by declararing ALL the components to accept a `const char *`, and name the arg "unused" if it's meant to be ignored.
2022-10-27components/*.c: include slstatus.hNRK
this gives the compiler a chance to check weather the prototype and definiton matches or not, which would catch issues like 3c47701.
2022-10-27Fix RAM component on FreeBSDmichaelbuch12@gmail.com
The current implementation uses the wrong type for given sysctl calls leading to overflow and incorrectly reported RAM usage. The fix is to use 'unsigned int' which is what FreeBSD expects.
2019-02-16Add ram and swap components on FreeBSDMichael Buch
2018-07-08ram: Consistency with line breaksAaron Marcher
2018-07-08Fix whitespaceAaron Marcher
2018-07-08Consistency with 80 char limit and breaksAaron Marcher
2018-07-07Simplify format specifiers for uintmax_tAaron Marcher
2018-07-07Change uint64_t to uintmax_tAaron Marcher
2018-07-06ram: Check for theoretical division by zeroAaron Marcher
2018-07-06ram: Use POSIX typesAaron Marcher
2018-05-24ram: fixed int overflow on pagetok macroTobias Tschinkowitz
2018-05-21Merge fmt_human_2 and fmt_human_10 to one functionAaron Marcher
Now only one function, fmt_human, takes an additional argument "base".
2018-05-21Increase readability for load_uvmexp returnAaron Marcher
2018-05-21Remove units from numbersAaron Marcher
This is a first step to decouple formatting from information because of two reasons: 1. The components should only gather and return the values by design 2. Fine grained user control should be a focus Scaling will be implemented in a different way in a later commit.
2018-05-20Refactor ram.cAaron Marcher
2018-05-19Implement fmt_human_2() and fmt_human_10()Laslo Hunhold
These functions take the raw number and a unit and automatically print it out "scaled down" to a proper SI-prefix, for powers of 2 and 10 respectively. Apply them to the 2-power cases and keep the 10-power for a later commit.
2018-05-19Add the percent sign to *_perc functionsAaron Marcher
Units should be added to the corresponding numbers
2018-05-18Implement fmt_scaled for ram_* functionsAaron Marcher
2018-05-18Fix ram_free for LinuxAaron Marcher
2018-05-16consistent calculation of ram_* on openbsdTobias Tschinkowitz
2018-05-16updated ram_total and ram_free (obsd)Tobias Tschinkowitz
2018-05-07Unify header includesAaron Marcher
- Sort Alphabetically - Same indentation for preprocessor clauses
2018-05-01Use indentation to increase readabilityLaslo Hunhold
Granted, this style is definitely not common, but for the short utility-functions of this program it's just the right choice. This provides great flexibility, such that in the long run, it will be possible to also share code between the OS-implementations. This also keeps the state-keeping at a minimum and makes it clearer which functions are implemented on which OS without having to jiggle around with too many files in the process.
2018-05-01Revert component-splitLaslo Hunhold
this reverts the commits from 92ab9ef52ebcb097add97d9f78e67ad1c1d6a6ec up to d42870d6ca7fb587b38f8cf6d6821ae33a53a696. After heavy consideration, the component split has more disadvantages than advantages, especially given there will be utility-functions sharing quite a lot of code that would then need to be duplicated, as it does not fit into the util.c due to its speciality. One big advantage of the component-wise build is readability, and without doubt, this was achieved here. This point will be addressed with a different approach that will be visible in the upcoming commits. One big disadvantage of the component build is the fact that it introduces state to the build process which is not necessary. Before its introduction, the only influencing factors where the system-defines __linux__ and __OpenBSD__. With the components, we are also relying on the output of uname(1). Additionally, if the os.mk is not present, make gives the output $ make Makefile:5: os.mk: No such file or directory make: *** No rule to make target 'os.mk'. Stop. This could easily be fixed by providing some sort of meta-rule for this file, however, it indicates the problem we have here, and this entire statefulness will heavily complicate packaging of this tool and makes the build process much more complex than it actually has to be.
2018-04-30ram: OS splitQuentin Rameau
2018-04-29ram: Move up includesAaron Marcher
2018-04-14Add OpenBSD RAM statsDarron Anderson
2018-03-21More robust preprocessor switchesAaron Marcher
Replace #ifdef with #if defined() and #elif with #elif defined() as it should only test if it is defined or not.
2018-03-18Build Linux-only functions only on LinuxAaron Marcher
2017-09-24Move components into dedicated subdirectoryLaslo Hunhold
This brings us a lot more tidiness.