Byla vydána (𝕏) květnová aktualizace aneb nová verze 1.90 editoru zdrojových kódů Visual Studio Code (Wikipedie). Přehled novinek i s náhledy a animovanými gify v poznámkách k vydání. Ve verzi 1.90 vyjde také VSCodium, tj. komunitní sestavení Visual Studia Code bez telemetrie a licenčních podmínek Microsoftu.
Byla vydána (Mastodon, 𝕏) nová verze 2024.2 linuxové distribuce navržené pro digitální forenzní analýzu a penetrační testování Kali Linux (Wikipedie). Přehled novinek se seznamem nových nástrojů v oficiálním oznámení.
Počítačová hra Tetris slaví 40 let. Alexej Pažitnov dokončil první hratelnou verzi 6. června 1984. Mezitím vznikla celá řada variant. Například Peklo nebo Nebe. Loni měl premiéru film Tetris.
MicroPython (Wikipedie), tj. implementace Pythonu 3 optimalizovaná pro jednočipové počítače, byl vydán ve verzi 1.23.0. V přehledu novinek je vypíchnuta podpora dynamických USB zařízení nebo nové moduly openamp, tls a vfs.
Canonical vydal Ubuntu Core 24. Představení na YouTube. Nová verze Ubuntu Core vychází z Ubuntu 24.04 LTS a podporována bude 12 let. Ubuntu Core je určeno pro IoT (internet věcí) a vestavěné systémy.
Databáze DuckDB (Wikipedie) dospěla po 6 letech do verze 1.0.0.
Intel na veletrhu Computex 2024 představil (YouTube) mimo jiné procesory Lunar Lake a Xeon 6.
Na blogu Raspberry Pi byl představen Raspberry Pi AI Kit určený vlastníkům Raspberry Pi 5, kteří na něm chtějí experimentovat se světem neuronových sítí, umělé inteligence a strojového učení. Jedná se o spolupráci se společností Hailo. Cena AI Kitu je 70 dolarů.
Byla vydána nová verze 14.1 svobodného unixového operačního systému FreeBSD. Podrobný přehled novinek v poznámkách k vydání.
Společnost Kaspersky vydala svůj bezplatný Virus Removal Tool (KVRT) také pro Linux.
Teoreticky to může to být i obráceně: systém původně potřeboval něco odswapovat, ale potom se paměť uvolnila. Systém nezačne sám od sebe načítat stránky ze swapu, dokud je nepotřebuje.
Pro tazatele: není vůbec důležité "kolik je toho ve swapu" nebo "kolik mám volné paměti" (ve smyslu hodnoty free). Spíš je důležité, kolik paměti je "k dispozici", to je ta orientační hodnota available na novějších systémech, do které se počítá i např. reclaimable page cache. A také to, jestli se příliš často nestává, že potřebuje-li systém alokovat paměť, musí kvůli tomu čekat na zápis na disk (ať už kvůli uvolnění page cache nebo kvůli odswapování nepoužívaných stránek), případně jestli nemusí příliš často načítat stránky zpátky ze swapu. V tom prvním ohledu může právě "zbytečné" odswapování nepoužívaných stránek pomoci.
Swap se může použít i dřív, než dojde RAM, jak už tu někteří psali.
Ale ještě bych rád upozornil na další možný scénář, při kterém popsaná situace vzniká. Ano, swap se (obecně a zjednodušeně řešeno) začne používat, když systém usoudí, že má nedostatek volných fyzických stránek. Důležitějším faktem ale je, že se swap (obecně) nepřestane používat poté, co se fyzická RAM uvolní. Jediný způsob, jak dostat odswapované stránky zpět do fyzické paměti, je přístup k nim, tedy zápis/čtení na virtuálních adresách, které jsou v té době namapované do swapu. To vyvolá výjimku (protože záznamy o těchto stránkách má pouze kernel ve svých datových strukturách, ale v TLB nebo (v případě Intelu) ve stránkovacích tabulkách o nich záznam není, pochopitelně, protože neexistuje v té chvíli fyzická stránka, na kterou by ukazoval) a přinutí kernel přesunout příslušné stránky zpět do RAM a aktualizovat TLB nebo stránkovací tabulky (aniž by si toho příslušný proces všiml). To se ovšem obecně nebude dít příliš často, protože ve swapu skončí (přednostně, na základě různých hardwarem podporovaných heuristik) málo používané stránky.
Sečteno a podtrženo, je možné, že systém měl v minulosti (během téhož uptime) nedostatek paměti, začal swapovat, ale pak se paměť znovu uvolnila. Data, která skončila ve swapu, ale žádný proces (ani kernel) k nim nepotřeboval znova přistupovat, zůstávají dál ve swapu. (A v podstatě to ničemu nevadí, dlužno dodat.)
Pro Linux existovalo několik generací patch setů pro „unswap“, které by po uvolnění fyzické paměti začaly automaticky (a relativně pomalu) přesouvat + mapovat odswapované stránky zpět do fyzické paměti, aniž by takové stránky musely být nutně potřebné. Ale pokud vím, žádný z těch patch setů se nakonec nedostal do hlavní řady kernelu a většinou debata skončila závěrem typu „než řešit tohle, raději víc RAM“.
Unswap pomáhá, když je dočasný nedostatek paměti ojedinělá a vzácná událost. Unswap naopak škodí, když se dočasný nedostatek paměti dostavuje častěji nebo periodicky. Vše tedy závisí a účelu a způsobu použití příslušného systému a neexistuje žádné one size fits all řešení. Zatím je tedy „řešením“ nedělat nic a docela to funguje.
Tak proto se může stát, že se používá swap, i když (už) v danou chvíli není potřebný.
Nijak.
Pozorností jsem nikdy příliš neoplýval.
swapoff -a && swapon -a
zram
. Je to rýchlejšie ako SSD, ale aj drahšie.
vm.swappiness
na 100.
Samozrejme, aj tu platí pravidlo "Všetko s mierou!" a admin musí byť príčetný.
Tiskni Sdílej: