Byla vydána nová verze 10.2 z Debianu vycházející linuxové distribuce DietPi pro (nejenom) jednodeskové počítače. Přehled novinek v poznámkách k vydání. Vypíchnout lze nové balíčky Immich, Immich Machine Learning, uv a RustDesk Client.
TypeScript (Wikipedie), tj. JavaScript rozšířený o statické typování a další atributy, byl vydán v nové verzi 6.0. Příští verze 7.0 je kvůli výkonu přepisována do programovacího jazyka Go.
Christian Schaller z Red Hatu na svém blogu popsal své zkušenosti s používáním AI při vývoji open source aplikací pro Linux. Pomocí různých AI aktualizoval nebo vytvořil aplikace Elgato Light GNOME Shell extension, Dell Ultrasharp Webcam 4K, Red Hat Planet, WMDock, XMMS resuscitated (aktualizace z GTK 2 a Esound na GTK 4, GStreamer a PipeWire) a Monkey Bubble. SANE ovladač pro skener Plustek OpticFilm 8200i se mu zatím nepovedl.
Americké firmy Tesla a SpaceX postaví v texaském Austinu moderní komplex na výrobu čipů pro umělou inteligenci (AI). Součástí projektu s názvem Terafab budou dvě moderní továrny na výrobu čipů – jedna se zaměří na automobily a humanoidní roboty, druhá na datová centra ve vesmíru. Uvedl to generální ředitel těchto firem Elon Musk. Projekt by podle odhadů měl stát 20 miliard USD (zhruba 425 miliard Kč).
Byla vydána nová stabilní verze 6.11 (YouTube) multiplatformního frameworku a GUI toolkitu Qt. Podrobný přehled novinek v poznámkách k vydání.
Ubuntu 26.04 patrně bude ve výchozím nastavení zobrazovat hvězdičky při zadávání hesla příkazu sudo, změna vychází z nové verze sudo-rs. Ta sice zlepší použitelnost systému pro nové uživatele, na které mohlo 'tiché sudo' působit dojmem, že systém 'zamrzl' a nijak nereaguje na stisky kláves, na druhou stranu se jedná o možnou bezpečnostní slabinu, neboť zobrazování hvězdiček v terminálu odhaluje délku hesla. Původní chování příkazu sudo
… více »Projekt systemd schválil kontroverzní pull request, který do JSON záznamů uživatelů přidává nové pole 'birthDate', datum narození, tedy údaj vyžadovaný zákony o ověřování věku v Kalifornii, Coloradu a Brazílii. Jiný pull request, který tuto změnu napravoval, byl správcem projektu Lennartem Poetteringem zamítnut s následujícím zdůvodněním:
… více »Nové číslo časopisu Raspberry Pi zdarma ke čtení: Raspberry Pi Official Magazine 163 (pdf).
Eric Lengyel dobrovolně uvolnil jako volné dílo svůj patentovaný algoritmus Slug. Algoritmus vykresluje text a vektorovou grafiku na GPU přímo z dat Bézierových křivek, aniž by využíval texturové mapy obsahující jakékoli předem vypočítané nebo uložené obrázky a počítá přesné pokrytí pro ostré a škálovatelné zobrazení písma, referenční ukázka implementace v HLSL shaderech je na GitHubu. Slug je volným dílem od 17. března letošního
… více »Sashiko (GitHub) je open source automatizovaný systém pro revizi kódu linuxového jádra. Monitoruje veřejné mailing listy a hodnotí navrhované změny pomocí umělé inteligence. Výpočetní zdroje a LLM tokeny poskytuje Google.
Současné vývojové jádro je stále 2.6.37-rc5; minulý týden nevyšly žádné předverze. Linus se vrátil z cest a začal znovu začleňovat patche, takže novou verzi lze očekávat v blízké budoucnosti.
Stabilní aktualizace: 9. prosince vyšly aktualizace 2.6.27.57, 2.6.32.27 a 2.6.36.2. Greg Kroah-Hartman poznamenává, že to je poslední jádro 2.6.27, které vydal, a že jej k dlouhodobé údržbě předává Willymu Tareauovi (ve shodě se změnami ve stabilních stromech, které oznámil 3. prosince.) 57 verzí za 791 dní, obsahovalo 1596 patchů (což není nejvíce pro stabilní řady, .32 to již překonalo.) [...] Když mluvíme o .32, silně doporučuji všem uživatelům .27 přechod ke stromu .32.
Aktualizace 2.6.35.10 byla svým novým správcem Andi Kleenem vydána - s více než 200 patchi - 15. prosince. Andi říká: Tato verze obsahuje bezpečnostní opravy a všem uživatelům je doporučeno aktualizovat.
-- Linus Torvalds potřebuje port gitu na Android
napsal Jonathan Corbet, 15 prosince 2010
Současná CPU mají zajímavou vlastnost: dokáží poznat, že virtualizovaný host čeká ve smyčce na zámek, a předat tuto informaci jádru hostitele. Účelem je zajistit, aby hostitel mohl najít něco lepšího, co by procesor mohl dělat. KVM na to v současnosti zareaguje tím, že se na chvíli uspí, což umožňuje běh procesů mimo virtualizovaný systém. Jak ale upozornil Rik van Riel, to nemusí být správně.
Jestliže jedno vlákno ve virtualizovaném systému čeká na zámek, pak jiné vlákno v tomto systému musí ten zámek držet. Místo pozastavení celého hosta je lepší spustit vlákno, které drží zámek, aby ho bylo možné uvolnit. Pozastavení hosta jenom zpozdí uvolnění zámku, takže virtuální stroj jako celek je penalizován; to, jak říká Rik, vede k situaci, kdy hostu s Windows a 64 VCPU trvá věčnost a ještě něco k tomu, než nabootuje. Můžeme být v pokušení prostě obvinit Windows, ale pravděpodobně bude lepší problém opravit.
Rik mění to, jak se obsluha zachycené události [trap handler] chová; místo toho, aby se CPU vzdala úplně, vezme časový podíl vlákna čekajícího v cyklu a předá ho procesu na jiném CPU. Doufá se, že příjemce tohoto daru (efektivně se jedná o zvýšení priority) bude ten, kdo drží zámek, ale v současnosti to není nijak garantováno. Tato funkce je implementována novou funkcí yield_to(), o které Rik říká, že by ji bylo možné změnit na systémové volání, pokud by se ukázalo, že to bude užitečné.
Patch prošel několika koly revizí a možná si najde cestu do 2.6.38.
napsal Jonathan Corbet, 13 prosince 2010
Virtualizace na hostitelský systém přináší nějaké zajímavé požadavky, mnoho z nich se týká správy paměti. Když dva prvky na stejném systému věří, že mají paměť na povel, musí nastat zajímavé konflikty. Nedávný patch, jehož autorem je Balbir Singh, ukazuje snahu na tyto konflikty reagovat, ale také naznačuje mnohem ambicióznější snahu o to, jak problém vyřešit.
Cache stránek v Linuxu udržuje v hlavní paměti kopie stránek a doufá, že se vyhne I/O operacím, když se k těmto stránkám přistupuje. Ve většině situací si cache stránek může snadno vzít více než polovinu z celkové paměti systému. Skutečná velikost cache stránek se postupem času mění; když narůstá objem paměti využité jinak (paměť jádra, anonymní stránky), cache stránek se zmenší, aby udělala místo. Balancování mezi požadavky cache stránek a ostatními uživateli paměti může být náročné, ale Linux to většinou dělá skoro správně.
Balbirův patch má správci systému dát o něco větší kontrolu nad využíváním cache stránek; za tímto účelem poskytuje nový parametr předávaný při bootu (unmapped_page_control), který nastavuje horní hranici počtu odmapovaných stránek v cache. „Odmapované“ [unmapped] stránky jsou takové, které nejsou namapovány do adresového prostoru žádného procesu – neobjevují se v žádné tabulce stránek [page table]. Odmapované stránky mají menší šanci, že je někdo bude v nejbližší budoucnosti potřebovat; systém se jich také může snáze zbavit. Tento patch tedy správci systému umožňuje relativně snadno minimalizovat spotřebu paměti cachí stránek.
Zjevná otázka: proč? Když systém bude potřebovat paměť jinde, stránky z cache stránek se uklidí i tak, takže se nezdá, že by mělo smysl ji zmenšovat předčasně. Problém je, zdá se, virtualizace. Když proces na virtualizovaném systému načte stránku ze souboru, operační systém hosta uloží kopii ve své cache stránek. Skutečné čtení nicméně bude předáno (a vykonáno) hostitelem, který si také uloží kopii do cache stránek. Jedna stránka se tedy cachuje dvakrát – nebo také vícekrát, pokud ji používá více virtuálních strojů. Cachovat stránku může být dobré, ale cachovat několik kopií je dobré až moc.
To, co dělá Balbirův patch, by se dalo vysvětlit takto: vynutí vyklizení kopií stránek z cache stránek hosta, aby se minimalizovaly duplikátní kopie. Paměť, která se takto uvolní, může být zabrána balónovým ovladačem a vrácena hostiteli k produktivnějšímu použití někde jinde.
Taková technika by situaci mohla zjevně zlepšit. Menší duplikace je dobrá a když host bude některé z uvolněných stránek potřebovat, pravděpodobně se najdou v cache stránek hostitele. Nelze se nicméně nepozastavit nad tím, jestli tento přístup není až příliš nepřímý. Než vynuceně uvolňovat stránky z cachí hostitelů, nebylo by lepší, kdyby všechny systémy sdílely stejnou cache stránek? Jednu unifikovanou cache by bylo možné spravovat tak, aby se maximalizovala výkonnost celého systému; to by mělo vést k lepšímu výsledkům, než spravovat několik zdánlivě nezávislých cachí stránek.
Virtualizace založená na kontejnerech má přesně takový typ sjednocené cache, protože všechny kontejnery běží na stejném jádře. To může být jeden z důvodů, proč se kontejnery považují za výkonnější než plně virtualizované systémy. Dostat sdílenou cache do světa virtualizace by nicméně mohlo být poněkud náročné, což je pravděpodobně hlavní důvod, proč to nikdo ještě neudělal.
Pro začátek jsou tu jasné záležitosti spojené s bezpečností. Virtualizovaný systém by neměl mít možnost přistupovat ke zdrojům, které mu nebyly přiřazeny. Jakákoliv sdílená cache stránek by se musela navrhnout tak, aby hostitel měl kontrolu nad tím, které stránky který host vidí. Prakticky by to znamenalo používat virtualizované blokové oladače, které nyní virtualizovaným hostům zpřístupňují souborové systémy. Místo „načtení“ stránky do stránky pod kontrolou hosta by ovladač mohl nějak namapovat kopii hostitele do adresového prostoru hosta.
Aby to fungovalo správně, muselo by se přidat nové, linuxové API mezi hostem a hostitelem. Bylo by těžké udělat to tak, aby se udržovala iluze, že host běží na vlastním hardwaru. Takovéto schéma by zkomplikovalo správu paměti hosta – hardware je sice čím dál tím dynamičtější, ale jednotlivé stránky ještě pořád nepřicházejí a nemizí spontánně. Sdílená cache stránek by také překážela pokusům používat pro paměť hosta obrovské stránky.
Jinými slovy potíže spojené se sdílením cache stránek mezi hostem a hostitelem rozhodně nevypadají triviálně. Není překvapením, že stále žijeme ve světě, kde se vzácné stránky v paměti plní duplikovanými kopiemi dat. Dokud se tato situace nezmění, bude tu místo pro patche, díky kterým se hosté budou chovat přátelštěji k systému jako celku.
Nástroje: Tisk bez diskuse
Tiskni
Sdílej:
.