V Linuxové konzoli se pracuje na základě jednoůčelných utilit, jako je find, grep, cat, atd. Aplikace pro Linux, narozdíl od Windows, v sobě mají ćasto spletitý strom závislostí. Aplikace v Linuxu závisí nejen na globálních dynamických knihovnách, které mohou být na disku bezbproblému ve více verzích, ale také na aplikacích a tím i na verzích těch aplikací. Tím aplikace v userspace jsou navzájem propojeny a není proto jednoduché u libovolné jen tak přejít na vyšší verzi, protože by se tím tato struktura narušila a ostatní aplikace by nemusely fungovat správně. Proto vychází tak často nové verze Linuxových distribucí, např. v případě Ubuntu, které mimo jiné obsahují aktualizovanou vrstvu/strukturu balíčkového systému.
Proč ve windows takováto věc k vidění není, totiž že aplikace může záviset na globálních knihovnách (standardních pro C/C++), ale zcela minimálně je nějaká aplikace závislá přímo na jiné aplikaci (vybavuje se mi třeba Wireshark, který k chodu potřebuje jště cosi, co si instaluje spolu s hlavní aplikací).
Je to proto, že aplikace v prgramovém kódu nepoužívají jen knihovny (klidně i vytvořených v jiném projektu), ale programátoři si místo toho usnadňují práci a používají proto i přímé volání aplikací, jakoby se tak dělo v konzoli?