D7VK byl vydán ve verzi 1.2. Jedná se o fork DXVK implementující překlad volání Direct3D 5, 6 a 7 na Vulkan. DXVK zvládá Direct3D 8, 9, 10 a 11.
Byla vydána verze 12.0.0 knihovny libvirt (Wikipedie) zastřešující různé virtualizační technologie a vytvářející jednotné rozhraní pro správu virtuálních strojů. Současně byl ve verzi 12.0.0 vydán související modul pro Python libvirt-python. Přehled novinek v poznámkách k vydání.
CreepyLink.com je nový zkracovač URL adres, 'díky kterému budou vaše odkazy vypadat tak podezřele, jak je to jen možné'. Například odkaz na abclinuxu.cz tento zkracovač převádí do podoby 'https://netflix.web-safe.link/logger_8oIlgs_free_money.php'. Dle prohlášení autora je CreepyLink alternativou ke zkracovači ShadyURL (repozitář na githubu), který dnes již bohužel není v provozu.
Na blogu Raspberry Pi byla představena rozšiřující deska Raspberry Pi AI HAT+ 2 s akcelerátorem Hailo-10 a 8 GB RAM. Na rozdíl od předchozí Raspberry Pi AI HAT+ podporuje generativní AI. Cena desky je 130 dolarů.
Wikipedie slaví 25. výročí svého založení. Vznikla 15. ledna 2001 jako doplňkový projekt k dnes již neexistující encyklopedii Nupedia. Doména wikipedia.org byla zaregistrována 12. ledna 2001. Zítra proběhne v Praze Večer svobodné kultury, který pořádá spolek Wikimedia ČR.
Po více než dvou letech od vydání předchozí verze 2.12 byla vydána nová stabilní verze 2.14 systémového zavaděče GNU GRUB (GRand Unified Bootloader, Wikipedie). Přehled novinek v souboru NEWS a v aktualizované dokumentaci.
Google Chrome 144 byl prohlášen za stabilní. Nejnovější stabilní verze 144.0.7559.59 přináší řadu novinek z hlediska uživatelů i vývojářů. Podrobný přehled v poznámkách k vydání. Opraveno bylo 10 bezpečnostních chyb. Vylepšeny byly také nástroje pro vývojáře (YouTube).
Microsoft zveřejnil zdrojový kód XAML Studia a uvolnil ho pod MIT licencí. XAML Studio je nástroj ze světa Windows, určený pro tvorbu uživatelského rozhraní aplikací pomocí XAML (Extensible Application Markup Language). Stalo se tak zhruba po osmi letech od prvního prohlášení Microsoftu, že se tento kód chystá zveřejnit.
TimeCapsule, 'časová kapsle', je jazykový model trénovaný výhradně na datech z určitých míst a časových období, aby se tak napodobila autentická slovní zásoba, způsob vyjadřování a názory dané doby. Na Hugging face jsou k dispozici modely natrénované na historických textech dostupných v oblasti Londýna mezi lety 1800 až 1875.
Radicle byl vydán ve verzi 1.6.0 s kódovým jménem Amaryllis. Jedná se o distribuovanou alternativu k softwarům pro spolupráci jako např. GitLab.
Současné vývojové jádro je stále 2.6.35-rc6 vydané 22. července. Linus říká:
Tato verze obsahuje většinou opravy, ale také přejmenování subsystému logického bloku paměti [logical memory block, LMB] na „memblock“. Zkrácený changelog vizte v oznámení, všechny detaily vizte v kompletním changelogu.
Aktualizace stabilních jader: Během minulého týdne žádné nevyšly.
-- Ted Ts'o
-- Russel King
Jaderný summit [Kernel summit] 2010 se odehraje v Cambridge ve státě Massachusetts 1. a 2. listopadu, těsně před Konferencí linuxových instalatérů [Linux Plumbers Conference]. Plánování tohoto summitu začalo a výbor pro program hledá nápady, co by mělo být diskutováno a kdo by se měl zúčastnit. Jaderný summit organizuje výbor pro program, ale stejně tak by se snadno dalo říci, že jej organizuje celá komunita vývojářů. Což znamená, že jeho cílem je zajistit, aby vývoj linuxového jádra fungoval plynuleji. To, o čem mluvíme, je určeno tím, na čem se zrovna ve vývojové komunitě pracuje ve velkém měřítku. Proto potřebujeme vaši pomoc.
napsal Jonathan Corbet, 26. července 2010
Linuxové systémy, stejně jako unixy, které přišly před nimi, pro každý soubor udržují tři časové značky. Sémantika těchto značek je ale pro uživatele často překvapující a značky neposkytují ty informace, které by uživatel chtěl znát. Možný přírůstek do jádra v podobě nového systémového volání dává jaderným vývojářům příležitost udělat v této oblasti nějaké změny, ale ještě nedošlo ke konsenzu o tom, jak to udělat.
Unixové časové značky, které kdysi dávno posvětil POSIX, se nazývají „atime“, „ctime“ a „mtime“. Značka atime má zaznamenávat poslední čas, kdy se k souboru přistupovalo. Tato informace ale téměř nikdy není používána a udržovat ji může být poměrně drahé; Ingo Molnár kdysi atime nazval v celé historii Unixu pravděpodobně nejhloupější nápad při jeho návrhu. Atime je tedy často na současných systémech zakazováno nebo alespoň omezeno na nepříliš často aktualizující režim „relatime“. Mtime naopak v podstatě dává smysl; říká uživateli, kdy byl soubor naposledy změněn. Změna souboru vyžaduje zápis tak jako tak, takže aktualizace tohoto času je často zadarmo a informace je často užitečná.
Tím zbývá ctime, což je trochu podivná potvora. Uživatelé, kteří se nepodívají dostatečně důkladně, rádi interpretují ctime jako čas vytvoření [creation time], ale to tam uloženo není; ctime se aktualizuje, když se mění metadata souboru. Hlavním uživatelem této informace je podle všeho prastará utilita dump, která si ráda zjišťuje, že se změnila metadata souboru (a tedy že je zapotřebí uložit je v inkrementální záloze), ale data ne, takže je není potřeba ukládat znova. Počet uživatelů dump během let rozhodně poklesl až do té míry, že největší roli, kterou ctime hraje dneska, je pravděpodobně matení uživatelů, kteří by chtěli znát čas vytvoření souboru.
Kde tedy uživatelé najdou čas vytvoření? Nikde: Linuxové systémy tento čas neukládají a neposkytují žádné rozhraní, kterým by se k němu aplikace mohly dostat.
Tato situace by se ale mohla změnit. Některé novější souborové systémy (například Btrfs a ext4) byly navrženy s prostorem, kam uložit čas vytvoření souboru. Jiné operační systémy tuto informaci poskytují také a některé protokoly pro síťové souborové systémy očekávají, že k této informaci budou mít přístup. Bylo by tedy hezké, kdyby Linux čas vytvoření podporoval správně; navrhované přidání systémového volání xstat() by mohla být vhodná chvíle pro tuto změnu.
Současná implementace xstat() dokonce do struct xstat; přidává pole st_btime; „b“ jako birth (narození), což je konvence, kterou vytvořili v táboře BSD. Tento příspěvek nicméně vyvolal poměrně slušnou diskuzi o pojmenování a sémantice.
O záležitosti s pojmenováním by si jeden myslel, že bude relativně přímočará. Někdo však upozornil, že se v jádře používají i jiná jména. JFS a Btrfs z nějakého důvodu používají „otime“, zatímco ext4 používá „crtime“. A jak se ukázalo, BSD nepoužívá „btime“, ale „birthtime“. Tato diskuze způsobila, že Linus vykřikl:
Poté se však Linus podíval trochu více zblízka na problém, který viděl v tom, že je zapotřebí poskytnout čas vytvoření souboru ve stylu Windows, který by mohla použít Samba. Ukazuje se, že Windows umožňuje modifikovat čas vytvoření, takže ho Linus považuje za variaci unixového ctime. To vedlo k návrhu změnit sémantiku ctime, aby to lépe vyhovovalo příkladu s Windows. Koneckonců téměř nikdo stejně ctime nepoužívá a změna, která by zajistila, že se ctime bude tvářit jako čas vytvoření ve Windows, by byla triviální. Toto chování by šlo specifikovat buď jako příznak procesu, nebo jako připojovací volba; pak by nebylo potřeba přidávat nová pole.
Tento nápad ale nebyl příliš populární; Jeremy Allison řekl, že by to vedlo k ještě hroznějším zmatkům. Pokud by ctime mohlo v různých situacích znamenat různé věci, ještě méně lidí by ho skutečně pochopilo a nástroje jako Samba by se na sémantiku stejně nemohly spoléhat. Jeremy by byl raději, kdyby se prostě přidalo nové pole; zdá se, že asi dojde k tomu.
Je tu však ještě jedna zajímavá otázka: Mělo by jádro povolit změnu času vytvoření? Windows změnu povolují a některé aplikace na této vlastnosti zjevně závisí. Windows také zjevně obsahují hack, který zajišťuje, že když je soubor smazán a na jeho místo nahrán jiný se stejným jménem, použije se starý čas vytvoření. BSD systémy naopak čas vytvoření změnit neumožňují. Když Samba poskytuje soubory z BSD, ukládá „windowsovský čas vytvoření“ [windows creation time] v rozšířeném atributu, takže lze poskytnout obvyklou sémantiku.
Když bude začleněn současný patch xstat(), Linux ve výchozím nastavení nepovolí změny času vytvoření – nebude žádné systémové volání, které by tuto změnu mohlo provést. Poskytnutí této možnosti by znamenalo rozšířit funkci utimes(), která může přijmout dodatečné informace. Umožnit změnu času by znamenalo menší spolehlivost, ale na druhou stranu by to bylo užitečné pro zálohovací programy, které by tak mohly obnovit původní čas vytvoření souboru. K této diskuzi však ještě nedošlo; čas vytvoření prozatím změnit nelze.
napsal Jonathan Corbet, 27. července 2010
Loni Nitin Gupta tlačil do hlavní řady patch compcache, který implementoval swapovací zařízení ukládající komprimované stránky do hlavní paměti. Postupem času se z compcache stal ramzswap, který se dostal do stromu staging. Není jasné, jestli se ramzswap někdy propracuje do hlavní řady, Nitin se tedy znovu snaží s dílem, které nazval zcache. Zcache však jasnou cestu do hlavní řady aktuálně postrádá také.
Jako její předchůdci i zcache žije proto, aby ukládala komprimované kopie stránek do paměti. Už nevypadá jako swapovací zařízení, nyní je to poskytovatel úložiště pro framework cleancache. Cleancache používá sadu háčků v kódu cache stránek a souborového systému; když je z cache vytěsněna stránka, předává se Cleancache, která může (ale nemusí) někam uložit kopii. Když je daná stránka znovu zapotřebí, Cleancache dostane šanci ji obnovit předtím, než se ji jádro pokusí načíst z disku. Jestliže Cleancache (a její úložiště) bude schopna rychle ukládat a obnovovat stránky, existuje tu dobrý potenciál pro zlepšení výkonnosti systému.
Zcache používá LZO, pomocí kterého komprimuje stránky, jež jí předává Cleancache; ukládají se pouze stránky, které se zkomprimují na méně než polovinu původní velikosti. Také je zde zvláštní test na stránky obsahující jenom nuly; ty se komprimují obzvlášť dobře, protože nepotřebují vůbec žádné místo na úložišti. Zatím však neexistuje žádná snaha sjednotit stránky s duplicitním obsahem (jak to dělá KSM).
Při používání mechanismu jako zcache se samozřejmě mění něco za něco: V tomto případě narůstá spotřeba paměti a času CPU. Ohledně paměti Nitin říká:
Současný patch umožňuje správci systému manuálně nastavit velikost oblasti pro zcache, což je začátek. Nebude však asi moc adminů, kteří by chtěli pozorovat počet stránek, které byly nalezeny v cache, a podle toho upravovat nízkoúrovňové parametry správy paměti, aby bylo chování nepřetržitě optimální. Zcache si tedy téměř s určitostí bude muset vypěstovat nějaké samoladění, než se bude moci dostat do hlavní řady.
Další věc, kterou je nutné obětovat, je čas CPU: Komprimovat a dekomprimovat stránky paměti zabírá čas. Tato cena se zvyšuje u všech stránek, které se nepodaří zkomprimovat na méně než 50 % původní velikosti – čas strávený jejich komprimováním je naprostým plýtváním. Jak ale upozorňuje Nitin: S tím, jak jsou čím dál běžnější vícejádra, by měly výhody pocházející z omezení I/O snadno převážit zvýšenou zátěž CPU. Lidé se často ptají, co budeme dělat se zvyšujícím se počtem jader na současných procesorech; zcache je možná součást odpovědi.
Ještě ale zbývá vyřešit jednu záležitost: Zcache závisí na Cleancache, která v současnosti není v hlavní řadě jádra. Proti začlenění Cleancache existuje opozice, hlavně kvůli patchi, který mění jednotlivé souborové systémy a který je považován za příliš rušivý. Také není jisté, že každý chápe hodnotu Cleancache, přestože ji SUSE již nějakou dobu dodává. Dokud nebude osud Cleancache rozhodnut, přídavné patche jako zcache budou čekat mimo hlavní řadu.
Nástroje: Tisk bez diskuse
Tiskni
Sdílej:
Současné vývojové jádro je stále 2.6.35-rc6Ne "stále", minule to bylo -rc5. Copy-paste chyba.