Byla vydána nová verze 260 správce systému a služeb systemd (Wikipedie, GitHub). Odstraněna byla podpora skriptů System V. Aktualizovány byly závislosti. Minimální verze Linuxu z 5.4 na 5.10, OpenSSL z 1.1.0 na 3.0.0, Pythonu z 3.7.0 na 3.9.0…
Byla vydána nová verze 5.1 svobodného 3D softwaru Blender. Přehled novinek i s náhledy a videi v poznámkách k vydání. Videopředstavení na YouTube.
Bylo oznámeno vydání nové verze 8.1 "Hoare" kolekce svobodného softwaru umožňujícího nahrávání, konverzi a streamovaní digitálního zvuku a obrazu FFmpeg (Wikipedie). Doprovodný příspěvek na blogu Khronosu rozebírá kódování a dekódování videa pomocí Vulkan Compute Shaders v FFmpeg.
Byl představen open-source a open-hardware prototyp nízkonákladového raketometu kategorie MANPADS, který byl sestaven z běžně dostupné elektroniky a komponent vytištěných na 3D tiskárně. Raketa využívá skládací stabilizační křidélka a canardovou stabilizaci aktivně řízenou palubním letovým počítačem ESP32, vybaveným inerciální měřicí jednotkou MPU6050 (gyroskop a akcelerometr). Přenosné odpalovací zařízení obsahuje GPS,
… více »Vědci z univerzity La Sapienza v Římě vyvinuli systém, který dokáže identifikovat jednotlivce pouze na základě toho, jak narušují signály Wi-Fi. Autoři tuto novou technologii nazvali WhoFi. Na rozdíl od tradičních biometrických systémů, jako jsou skenery otisků prstů a rozpoznávání obličeje, nevyžaduje tato metoda přímý fyzický kontakt ani vizuální vstupy. WhoFi může také sledovat jednotlivce na větší ploše než kamera s pevnou polohou; stačí, je-li k dispozici Wi-Fi síť.
SuperTux (Wikipedie), tj. klasická 2D plošinovka inspirovaná sérií Super Mario, byl vydán v nové verzi 0.7.0. Videoukázka na YouTube. Hrát lze i ve webovém prohlížeči.
Ageless Linux je linuxová distribuce vytvořená jako politický protest proti kalifornskému zákonu o věkovém ověřování uživatelů na úrovni OS (AB 1043). Kromě běžného instalačního obrazu je k dispozici i konverzní skript, který kompatibilní systém označí za Ageless Linux a levné jednodeskové počítače v ceně 12$ s předinstalovaným Ageless Linuxem, které se chystají autoři projektu dávat dětem. Ageless Linux je registrován jako operační
… více »PimpMyGRC upravuje vzhled toolkitu GNU Radio a přidává alternativní barevná témata. Primárním cílem autora bylo pouze vytvořit tmavé prostředí vhodné pro noční práci, nicméně k dispozici je nakonec celá škála barevných schémat včetně možností různých animací a vizuálních efektů (plameny, matrix, bubliny...), které nepochybně posunou uživatelský zážitek na zcela jinou úroveň. Témata jsou skripty v jazyce Python, které nahrazují
… více »GIMP 3.2 byl oficiálně vydán (Mastodon, 𝕏). Přehled novinek v poznámkách k vydání.
FRANK OS je open-source operační systém pro mikrokontrolér RP2350 (s FRANK M2 board) postavený na FreeRTOS, který přetváří tento levný čip na plně funkční počítač s desktopovým uživatelským rozhraním ve stylu Windows 95 se správcem oken, terminálem, prohlížečem souborů a knihovnou aplikací, ovládaný PS/2 myší a klávesnicí, s DVI video výstupem. Otázkou zůstává, zda by 520 KB SRAM stačilo každému 😅.
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.