Exercise 1: Why Low "Free" Next to High "buff/cache" Isn't a Shortage — Possible Solution ==================================================================== WHY THE KERNEL FILLS SPARE MEMORY WITH CACHE ------------------------------ Per this chapter, "Linux treats unused RAM as wasted RAM. Rather than leaving memory sitting empty, the kernel fills it with a cache of recently-read disk data - the page cache." A low "free" figure on a machine that's been running for a while is expected behavior, not a sign of trouble, because the kernel deliberately uses spare capacity this way. WHY THE CACHED MEMORY DOESN'T COUNT AS A REAL SHORTAGE ------------------------------ Per this chapter's finding-box, "cached memory can be dropped almost instantly the moment an application actually needs that RAM - there's no cost to reclaiming it, since the same data can simply be re-read from disk later if needed again." Unlike memory actively held by a running process, page cache is available to any application that needs it, essentially for free. WHAT THIS MEANS FOR READING "FREE" AND "BUFF/CACHE" TOGETHER ------------------------------ Per this chapter, "a low 'free' number with a large 'buff/cache' number isn't a shortage at all; it's the kernel using spare capacity productively, exactly as designed." The two numbers together tell a positive story - plenty of memory available for genuine reallocation - rather than the alarming one a bare "free" figure might suggest on its own. WHY THIS WORKS AS AN ANSWER ------------------------------ It explains specifically why the kernel fills unused RAM with cache, why that cache is reclaimable at essentially no cost, and connects both points to why the combination of low free/high buff-cache is normal rather than concerning - rather than treating "free" in isolation.