Algorithm currently uses "MemFree" + "Inactive" from /proc/meminfo
"Inactive" may not be a very good indication of how much memory can be readily freed because it contains both:
- Pages mapped with MAP_SHARED|MAP_ANONYMOUS (regardless of whether they're being actively accessed or not. Unclear to me why this is the case...)
- Pages mapped MAP_PRIVATE|MAP_ANONYMOUS that have not been accessed recently
Both of these types of pages probably shouldn't be considered "Available".
"Inactive(file)" would seem more accurate but it's not available in all kernel versions. To keep things simple, maybe just use "Inactive(file)" if available, otherwise fallback to "Inactive".