Byl vydán Debian 13 s kódovým názvem Trixie. Přehled novinek v poznámkách k vydání.
WLED je open-source firmware pro ESP8266/ESP32, který umožňuje Wi-Fi ovládání adresovatelných LED pásků se stovkami efektů, synchronizací, audioreaktivním módem a Home-Assistant integrací. Je založen na Arduino frameworku.
Open source platforma Home Assistant (Demo, GitHub, Wikipedie) pro monitorování a řízení inteligentní domácnosti byla vydána v nové verzi 2025.8.
Herní studio Hangar 13 vydalo novou Mafii. Mafia: Domovina je zasazena do krutého sicilského podsvětí na začátku 20. století. Na ProtonDB je zatím bez záznamu.
Operátor O2 má opět problémy. Jako omluvu za pondělní zhoršenou dostupnost služeb dal všem zákazníkům poukaz v hodnotě 300 Kč na nákup telefonu nebo příslušenství.
Společnost OpenAI představila GPT-5 (YouTube).
Byla vydána (𝕏) červencová aktualizace aneb nová verze 1.103 editoru zdrojových kódů Visual Studio Code (Wikipedie). Přehled novinek i s náhledy a videi v poznámkách k vydání. Ve verzi 1.103 vyjde také VSCodium, tj. komunitní sestavení Visual Studia Code bez telemetrie a licenčních podmínek Microsoftu.
Americký prezident Donald Trump vyzval nového generálního ředitele firmy na výrobu čipů Intel, aby odstoupil. Prezident to zdůvodnil vazbami nového šéfa Lip-Bu Tana na čínské firmy.
Bylo vydáno Ubuntu 24.04.3 LTS, tj. třetí opravné vydání Ubuntu 24.04 LTS s kódovým názvem Noble Numbat. Přehled novinek a oprav na Discourse.
Byla vydána verze 1.89.0 programovacího jazyka Rust (Wikipedie). Podrobnosti v poznámkách k vydání. Vyzkoušet Rust lze například na stránce Rust by Example.
free
", resp. podrobnějších informací z "/proc/meminfo
".
Na stroji běží: apache2, fastcgi PHP (kolem 40 procesů), postgresql, mysql (prakticky nepoužívaná), bind (jen jako resolver pro tento server), dovecot, exim, slapd (OpenLDAP). Je tam Debian Lenny, i686-bigmem jádro, 7 GB RAM.
Maximum využití RAM vč. buffers+caches je tak 5.5 GB (tj. RAM se nikdy nezaplní), free
ukazuje:
xxx:~# free total used free shared buffers cached Mem: 7143588 4175068 2968520 0 359468 1619384 -/+ buffers/cache: 2196216 4947372 Swap: 1998840 5428 1993412
/proc/meminfo
:
MemTotal: 7143588 kB MemFree: 2969868 kB Buffers: 359224 kB Cached: 1618356 kB SwapCached: 100 kB Active: 1051652 kB Inactive: 2852644 kB HighTotal: 6289984 kB HighFree: 2740520 kB LowTotal: 853604 kB LowFree: 229348 kB SwapTotal: 1998840 kB SwapFree: 1993412 kB Dirty: 4676 kB Writeback: 0 kB AnonPages: 339204 kB Mapped: 316664 kB Slab: 251560 kB SReclaimable: 235796 kB SUnreclaim: 15764 kB PageTables: 5904 kB NFS_Unstable: 0 kB Bounce: 600 kB WritebackTmp: 0 kB CommitLimit: 5570632 kB Committed_AS: 2483508 kB VmallocTotal: 116728 kB VmallocUsed: 3336 kB VmallocChunk: 113192 kB HugePages_Total: 0 HugePages_Free: 0 HugePages_Rsvd: 0 HugePages_Surp: 0 Hugepagesize: 2048 kBProtože je RAM dost, do teď jsem to nezkoumal. Dělal jsem ale nějaké úpravy, kde jsem očekával snížení využití RAM (redukce PHP procesů ze 120 na cca 40). Navíc jsem potřeboval odhad využití RAM při dalším využívání serveru. Bylo mi divné, že po zrušení 80 PHP procesů využití RAM (podle výpisu
free
a podle grafů z nástroje munin
) vůbec nekleslo, což jsem přikládal nějaké sdílené paměti a podobně.
Začal jsem to zkoumat víc - které procesy spotřebovávají nejvíc paměti. Bohužel to skoro není možné - nástroje jako ps
a top
vzhledem ke sdílené paměti moc informací nedají. Hrubým odhadem mi ale vycházelo, že může být využit tak 1GB, ale free
ukazuje cca 2 GB.
Použil jsem skript: ps_mem.py [ http://www.pixelbeat.org/scripts/ps_mem.py ] který umí vypsat, kolik který program skutečně spotřebovává (využitím informací z /proc
). Samozřejmě je otázka, jak přesně to funguje:
xxx:~# python ps_mem.py Private + Shared = RAM used Program 80.0 KiB + 19.0 KiB = 99.0 KiB logger 100.0 KiB + 22.5 KiB = 122.5 KiB portmap 92.0 KiB + 38.5 KiB = 130.5 KiB acpid 140.0 KiB + 31.0 KiB = 171.0 KiB init 176.0 KiB + 14.5 KiB = 190.5 KiB mdadm 220.0 KiB + 48.0 KiB = 268.0 KiB famd 264.0 KiB + 15.0 KiB = 279.0 KiB dovecot 208.0 KiB + 76.5 KiB = 284.5 KiB cron 304.0 KiB + 21.0 KiB = 325.0 KiB udevd 228.0 KiB + 140.5 KiB = 368.5 KiB mysqld_safe 364.0 KiB + 84.0 KiB = 448.0 KiB getty (6) 516.0 KiB + 36.5 KiB = 552.5 KiB ntpd 580.0 KiB + 92.0 KiB = 672.0 KiB nslcd 752.0 KiB + 54.0 KiB = 806.0 KiB exim4 744.0 KiB + 160.5 KiB = 904.5 KiB pop3-login (3) 1.0 MiB + 37.0 KiB = 1.1 MiB lighttpd 1.1 MiB + 42.0 KiB = 1.1 MiB rsyslogd 1.2 MiB + 23.5 KiB = 1.2 MiB screen 1.2 MiB + 252.0 KiB = 1.4 MiB sshd (2) 1.5 MiB + 76.0 KiB = 1.6 MiB mc 1.2 MiB + 613.5 KiB = 1.8 MiB bash (3) 1.9 MiB + 102.0 KiB = 2.0 MiB dovecot-auth 2.6 MiB + 303.5 KiB = 2.9 MiB imap-login (9) 3.1 MiB + 352.5 KiB = 3.4 MiB munin-node 3.9 MiB + 642.0 KiB = 4.5 MiB imap (6) 4.6 MiB + 94.5 KiB = 4.7 MiB slapd 14.9 MiB + 3.7 MiB = 18.6 MiB perl (5) 25.4 MiB + 80.0 KiB = 25.5 MiB named 27.9 MiB + 74.0 KiB = 28.0 MiB mysqld 35.1 MiB + 1.4 MiB = 36.5 MiB postgres (5) 20.3 MiB + 56.4 MiB = 76.7 MiB apache2 (6) 364.6 MiB + 7.9 MiB = 372.5 MiB php5-cgi (32) --------------------------------- 589.1 MiB ================================= Private + Shared = RAM used ProgramTady vychází využití RAM na 600 MB, což je ještě divnější. Jde o produkční stroj, tak s tím nemůžu moc experimentovat. Ale zkoušel jsem zastavit jednotlivé služby (apache+php, postgres, ...) a sledoval, o kolik klesne využití paměti podle
free
. A pokles byl vždy cca stejný nebo menší než kolik je uvedeno ve výpisu ps_mem.py
Je možné tohle: pokud má kernel úplně volnou RAM, tak i po ukončení procesů, které zabírají nějakou RAM, se tato "neodečte" ve výpisu free
?
Zkoušel jsem ještě jednu věc: python skriptem jsem si naalokoval 2×2 GB RAM (takže v té chvíli se muselo sáhnout na buffers+caches) a skript hned ukončil. Pak využití paměti podle free
kleslo o asi 300 MB! (ve grafu z munin-u vidím ještě slab_cache
, to se nezměnilo). Využití paměti tedy kleslo, ale žádný proces se neukončil, z čeho se uvolnila?
Tiskni
Sdílej: