Kromě toho, co yu bylo řečeno může k nedostatku RAM přispět i její fragmentace.
Program, když potřebuje paměť, tak si o ni požádá. OS mu přidělí nejbližší celý úsek paměti. Po uvolnění je pak úsek paměti opět k dispozici, ale za timto usekem je paměť zabraná dalšími procesy. Systém by si s tím měl poradit, ale ne vždy se to daří. Paměť není disk, takže se data nerozdeli do několika úseků, ale potřebují celý usek. Pokud není úsek v požadované velikosti k dispozici, je problem.
Pokud program paměť nevolní a stále běží, paměť zůstane zabraná (memory leaks) Uvolní se až v okamžiku ukončení programu, k čemuž nedojde u služeb a systémových procesů, které běží po celou dobu chodu OS. Tím se spotřeba paměti procesem zvyšuje a zvyšuje.