Národní úřad pro kybernetickou a informační bezpečnost (NÚKIB) spolu s NSA a dalšími americkými úřady upozorňuje (en) na čínského aktéra Salt Typhoon, který kompromituje sítě po celém světě.
Společnost Framework Computer představila (YouTube) nový výkonnější Framework Laptop 16. Rozhodnou se lze například pro procesor Ryzen AI 9 HX 370 a grafickou kartu NVIDIA GeForce RTX 5070.
Google oznamuje, že na „certifikovaných“ zařízeních s Androidem omezí instalaci aplikací (včetně „sideloadingu“) tak, že bude vyžadovat, aby aplikace byly podepsány centrálně registrovanými vývojáři s ověřenou identitou. Tato politika bude implementována během roku 2026 ve vybraných zemích (jihovýchodní Asie, Brazílie) a od roku 2027 celosvětově.
Byla vydána nová verze 21.1.0, tj. první stabilní verze z nové řady 21.1.x, překladačové infrastruktury LLVM (Wikipedie). Přehled novinek v poznámkách k vydání: LLVM, Clang, LLD, Extra Clang Tools a Libc++.
Alyssa Anne Rosenzweig v příspěvku na svém blogu oznámila, že opustila Asahi Linux a nastoupila do Intelu. Místo Apple M1 a M2 se bude věnovat architektuře Intel Xe-HPG.
EU chce (pořád) skenovat soukromé zprávy a fotografie. Návrh "Chat Control" by nařídil skenování všech soukromých digitálních komunikací, včetně šifrovaných zpráv a fotografií.
Byly publikovány fotografie a všechny videozáznamy z Python konference PyCon US 2025 proběhlé v květnu.
Společnost xAI a sociální síť X amerického miliardáře Elona Muska zažalovaly firmy Apple a OpenAI. Viní je z nezákonné konspirace s cílem potlačit konkurenci v oblasti umělé inteligence (AI).
Byla vydána nová verze 9.16 z Debianu vycházející linuxové distribuce DietPi pro (nejenom) jednodeskové počítače. Přehled novinek v poznámkách k vydání.
Americká vláda se po převzetí zhruba desetiprocentního podílu ve výrobci čipů Intel chystá na další investice do vybraných firem. Na sociální síti Truth Social to napsal prezident Donald Trump. Jeho ekonomický poradce Kevin Hassett v rozhovoru v televizi CNBC řekl, že nemusí jít pouze o firmy z technologického sektoru, ale i z jiných odvětví.
Aktuální vývojová verze jádra je nadále 3.3-rc2; během uplynulého týdne žádné předverze v řadě 3.3 nevyšly.
Se stabilními aktualizacemi je to trochu složitější. Verze 2.6.32.56, 3.0.19 a 3.2.3 vyšly 3. února se dlouhým seznamem patchů. Verze 3.2.4 následovala krátce poté kvůli chybě při sestavování, která byla zanesena do verze 3.2.3.
6. února vyšly verze 3.0.20 a 3.2.5. V těchto aktualizacích šlo jen o jeden patch, který opravoval problém související s ASPM, jenž by na některých systémech značně zvýšil spotřebu energie. Tomuto patchi bylo věnováno jen omezené množství péče; vypadá to, že funguje, ale nikdo neví, zda nemůže na nějakém obskurním hardwaru způsobit problémy s chováním. Tak či tak ale vypadal dostatečně bezpečně na to, aby se dostal do stabilní aktualizace.
Upozorňuji, že jsem současně odstranil i řádek v souboru unusedcode.easy, pokud jsem to neměl udělat, tak mi dejte vědět a patch předělám.
Pokud jsem něco pokazil nebo je k patchi třeba víc informací v seznamu změn, dejte mi vědět a napravím to.
-- Greg Kroah-Hartman se stal vývojářem LibreOffice
Pokud chceme opravdu vylepšit svět, měli bychom skočit do stroje času a nastavit tabstop na 4.
10? Máme tu několik proměnných s délkou přes 100 znaků (nevím, jak s nimi máte pracovat při maximální délce řádku 80 znaků). Současná nejdelší je:
eOpenLogicalChannelAck_reverseLogicalChannelParameters_multiplexParameters_h2250LogicalChannelParameters
se 104 znaky.
-- Tony Luck (vizte include/linux/netfilter/nf_conntrack_h323_types.h)
V jádře 3.1 Cristoph odstranil i_alloc_sem a nahradil je voláními (jmenovitě inode_dio_wait() a inode_dio_done()), která jsou pod EXPORT_SYMBOL_GPL(), a proto nemohou být používána souborovými systémy, co nejsou pod GPL, navíc bylo inode_dio_wait() přesunuto z notify_change() do metody ->setattr() souborového systému, ale žádný ne-GPL souborový systém toto volání nemůže udělat.
To znamená, že souborové systémy, co nejsou pod GPL, nemohou existovat, leda by nepoužívaly žádnou funkčnost VFS kolem čtení a zápisu nebo dokud chtějí implementovat přímé I/O.
Co teď mají komerční souborové systémy dělat?
Zde naleznete text na Intel software network, kde je popisována funkčnost „rozšíření pro transakční synchronizaci“, která bude v budoucích procesorech „Haswell“.
S transakční synchronizací může hardware dynamicky dělat rozhodnutí, zda musejí být vlákna serializována přes zámkem chráněné kritické sekce, a dělat serializaci, jen pokud je to nutné. Toto umožňuje procesoru vystavovat a využívat concurrency, které by jinak bylo skryté kvůli dynamicky nepotřebné synchronizaci. Na nejnižších úrovních jsou programátorem určené oblasti kódu (také označované jako transakční oblasti) pomocí Intel TSX spouštěny transakčně. Pokud je transakční spuštění dokončeno úspěšně, pak se všechny paměťové operace vykonané v rámci transakční oblasti z pohledu ostatních logických procesorů zdánlivě objeví okamžitě. Procesor zviditelňuje aktualizace vykonané v rámci oblasti ostatním logickým procesorům pouze při úspěšném commitu, což je proces označovaný jako atomický commit.
Není snad ani potřeba dodávat, že by tuto funkci šlo zajímavě využít v jádře, pokud bude fungovat dobře, ale i jiné projekty (například PyPy) rovněž projevily o transakční paměť zájem.
Na LWN se o POHMELFS zběžně psalo začátkem roku 2008; od té doby se POHMELFS povaloval ve staging stromu, aniž by se mu někdo moc věnoval nebo se o něj zajímal. Vývojář POHMELFS Evgeniy Polyakov vyjádřil svou nespokojenost s vývojovým procesem a z jaderné komunity na nějaký čas zmizel.
Teď se ale Evgeniy vrátil a hned s novou verzí. Napsal k tomu:
Od paralelního návrhu NFS, který přežíval v drivers/staging/pohmelfs roky bez rozumného využití, urazil kus cesty – tento návrh byl mrtvý.
Nový pohmelfs využívá eliptickou síť jako úložiště, ukázalo se to jako efektivní distribuovaný systém. Eliptika je produkčně používána ve vyhledávací společnosti Yandex už několik let a dobře škáluje (od 6 nodů v 3 datacentrech pro hostování 15 miliard malých souborů po stovky nodů s 1 PB dat pro streamování).
Tentokrát by chtěl zařazení souborového systému přímo do hlavní řady bez mezizastávky ve staging stromu. Jenže začleňování souborových systémů je bez posudků za strany správců VFS těžké a zatím to ještě nikdo nezhlédl. Takže Evgeniy si asi bude muset počkat.
Významnou událostí prosince roku 2011 bylo oznámení projektu začleňování Androidu a návrat řady ovladačů z Androidu do staging stromu. Ta nejkontroverznější odlišnost Androidu – probouzecí zámky [wake locks] nebo blokátory uspání [suspend blockers] – součástí tohoto úsilí ale nejsou. Tento kód je dostatečně intruzivní a dostatečně kontroverzní na to, aby se k tomu nechtěl nikdo vracet. Jenže jak to tak vypadá, někdo se o to přesto snaží. Sada patchů pro automatické uspávání a probouzecí zámky od Rafaela Wysockého je dalším pokusem o podporu oportunistického uspávacího mechanismu z Androidu v hlavní řadě jádra.
"Oportunistické uspávání" je drsný přístup ke správě výkonu. Ve zkratce jde o to, že když se neděje nic zajímavého, tak se celý systém prostě uspí. Na zařízeních s Androidem to je nepochybně efektivní; zejména to brání mizerně napsaným aplikacím v tom, aby udržovaly systém vzhůru a vysávaly baterii. Obtížnější částí je rozhodování, zda se opravdu neděje nic zajímavého; to má za úkol androidí mechanismus s probouzecími zámky/blokátory uspání. S blokátory uspání jaderný i vhodně privilegovaný kód v uživatelském prostoru mohou zablokovat běžné uspávání systému a udržet jej vzhůru, ať už potřebují udělat cokoliv.
Vzhledem k tomu, že se blokátory uspání do hlavní řady jádra asi brzy nedostanou, je nutné zavést alternativní mechanismus, aby bylo oportunistické uspávání umožněno. Čistě náhodou už nějakou chvíli dílky nezbytné skládačky v jádře jsou; infrastruktura probouzecích událostí [wakeup events] byla začleněna ve verzi 2.6.36. Probouzecí události sledují události (například stisk tlačítka), které mohou systém probudit nebo jej udržet vzhůru. „Zdroje probouzení“, které sledují zdroje probouzecích událostí, byly začleněny v jádře 2.6.37. Zatím je ale tento subsystém používán dost málo; jen málo ovladačů ve skutečnosti posílá takové události. Zdroje probouzení nejsou skoro vůbec používány.
Rafaelův patch dělá velké změny, které používají tuto infrastrukturu pro podporu „automatického uspávání“, což je jen jiný obrat pro „oportunistické uspávání“. (Rafael říká: Tyto patche slouží k ověření teorie, že nejsnazším způsobem, jak udat funkci, která už byla jednou odmítnuta, je představit ji pod jiným názvem.) První přidanou věcí je nový soubor v sysfs nazvaný /sys/power/autosleep; zapsání „mem“ do tohoto souboru způsobí uspání systému, kdykoliv není žádný zdroj probouzení aktivní. Je možné napsat i „disk“, což způsobí oportunistickou hibernaci; tato funkce asi nenajde zrovna moc využití, ale bylo snadné ji přidat.
Android sleduje, jak dlouho blokátory uspání brání uspání systému; tato informace je zobrazována na obrazovce „Využití baterie“. Rafaelův patch přidává podobnou sledovací funkci a tento čas zveřejňuje (jako prevent_sleep_time) v /sys/kernel/debug/wakeup_sources.
Je tu ale jeden malý problém: zdroje probouzení jsou dobré pro sledování událostí s původem v jádře, ale uživatelskému prostoru nedávají žádný způsob, jak dát najevo, že by systém neměl být uspán. Zjevně je nutné přidat mechanismus, pomocí kterého by uživatelský prostor mohl vytvářet vlastní zdroje probouzení. Poslední patch v Rafaelově řadě právě toto přidává. Aplikace může zapsat název (a volitelně i časový limit) do /sys/power/wake_lock pro vytvoření nového, aktivního zdroje probouzení. Tento zdroj zabrání systému v uspání, dokud neuběhne časový limit nebo dokud není stejné jméno zapsáno do /sys/power/wake_unlock.
Je na první pohled vidět, že tento mechanismus může být použit k implementaci androidího oportunistického uspávání. Ovladač, který obdrží probouzecí událost, označí související zdroj probouzení jako aktivní, což udrží systém vzhůru. Tento zdroj zůstane aktivní, dokud uživatelský prostor tuto událost nevyčerpá. Ale ještě než se tak stane, aplikace v uživatelském prostoru získá svůj vlastní „probouzecí zámek“, čímž zajistí, že bude moci dokončit svou práci, než se systém zase uspí.
Ti z vás, kteří pozorněji sledovali celou kontroverzi kolem této funkčnosti, si jistě všimnou, že API pro tuto funkčnost je nápadně podobné nativnímu androidímu API. Samozřejmě to není náhoda; smyslem je co nejvíce usnadnit přechod na nový mechanismus, aniž by androidí systémy byly tímto nějak porouchány. Pokud se toho podaří dosáhnout, tak i kdyby samotný Android na tuto implementaci nikdy nepřešel, mělo by být mnohem snazší provozovat uživatelský prostor Androidu na jádře hlavní řady.
A to je samozřejmě nejsilnější možný argument pro tuto sadu patchů. Pokud se někomu podaří předvést androidí systém s nativním oportunistickým uspáváním, který bude mít spotřebu energie podobnou originálu, tak bude mnohem pravděpodobnější, že se tomuto patchi podaří uspět, i když ostatní selhali. Nebude úplně snadné připravit takovou předváděčku, ale na vhodném hardwaru to samozřejmě půjde. Jako dobrý základ může posloužit postup od Linara. Než se to někomu povede, tak bude asi trochu problém do jádra oportunistické uspávání kompatibilní s Androidem dostat.
Nástroje: Tisk bez diskuse
Tiskni
Sdílej:
To už se jádru věnovat nebude? Není to nějaká chyba v článku?To je myšleno jako humor
Pise, ze TAKE zrusil jeden radek v unusedcode.easy.A jak se to vylučuje s tím, co píšu? Smazal nepotřebný kód a odstranil ho ze seznamu nepoužívaného kódu.
Myslim ze jednoduchym zahazovanim nepotrebneho kodu by se neobtezoval.Uff
Máme tu několik proměnných s délkou přes 100 znaků (nevím, jak s nimi máte pracovat při maximální délce řádku 80 znaků). Současná nejdelší je: eOpenLogicalChannelAck_reverseLogicalChannelParameters_multiplexParameters_h2250LogicalChannelParameters se 104 znaky.pripomelo mi to legendarni kod noveho hlodace. :-]]