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.
Cambalache, tj. RAD (rapid application development) nástroj pro GTK 4 a GTK 3, dospěl po pěti letech vývoje do verze 1.0. Instalovat jej lze i z Flathubu.
KiCad (Wikipedie), sada svobodných softwarových nástrojů pro počítačový návrh elektronických zařízení (EDA), byl vydán v nové major verzi 10.0.0 (𝕏). Přehled novinek v příspěvku na blogu.
Letošní Turingovou cenu (2025 ACM A.M. Turing Award, Nobelova cena informatiky) získali Charles H. Bennett a Gilles Brassard za základní přínosy do oboru kvantové informatiky, které převrátily pojetí bezpečné neprolomitelné komunikace a výpočetní techniky. Jejich protokol BB84 z roku 1984 umožnil fyzikálně zaručený bezpečný přenos šifrovacích klíčů, zatímco jejich práce o kvantové teleportaci položila teoretické základy pro budoucí kvantový internet. Jejich práce spojila fyziku s informatikou a ovlivnila celou generaci vědců.
Firefox 149 dostupný od 24. března přinese bezplatnou vestavěnou VPN s 50 GB přenesených dat měsíčně (s CZ a SK se zatím nepočítá) a zobrazení dvou webových stránek vedle sebe v jednom panelu (split view). Firefox Labs 149 umožní přidat poznámky k panelům (tab notes, videoukázka).
Byla vydána nová stabilní verze 7.9 webového prohlížeče Vivaldi (Wikipedie). Postavena je na Chromiu 146. Přehled novinek i s náhledy v příspěvku na blogu.
Dle plánu byla vydána Opera GX pro Linux. Ke stažení je .deb i .rpm. V plánu je flatpak. Opera GX je webový prohlížeč zaměřený na hráče počítačových her.
GNUnet (Wikipedie) byl vydán v nové major verzi 0.27.0. Jedná se o framework pro decentralizované peer-to-peer síťování, na kterém je postavena řada aplikací.
Občas není od věci vyslovit něco, za co se upaluje nebo ukamenovává. Nic není totiž tak jednoduché, aby byla pravda vždy jediná a na první pohled zřejmá.
Osud tomu chtěl, že jsem byl nucen se poněkud důkladněji zabývat problematikou AIO na Linuxu. A tak mě nevyhnutelně napadlo, jestli to vůbec někdo v praxi používá.
AIO je zkratka pro Asynchronous Input/Output. Tedy pro asynchronní řešení operací souvisejících se čtením a zápisem dat. Operace se naplánují, a když nějaká skončí, proces to dostane na vědomí (většinou signálem). Lze startovat čtení i zápis napřeskáčku, páté přes deváté, na různých místech souboru, ať si plánovač poradí.
Na jednu stranu je to velice lákavé - není potřeba nikde složitě čekat, prostě se to spustí a až to doběhne, dá to o sobě vědět. Jenže ono to tak jednoduché není. Jednak se to docela obtížně kombinuje s klasickým synchronním I/O (které se musí používat přinejmenším pro neseekovatelné soubory), a také není legrace ho implementovat v ovladačích zařízení (kvůli tomu už se v LKML nějakou dobu vede diskuse o lepším řešení).
Když si to tak vezmu, zatím jsem se ještě nesetkal s programem, který by AIO používal, nepočítám-li nějaké ukázkové příklady. Reálný program, kde by se to skutečně používalo (a hlavně, kde by to mělo výhody), jsem dosud neviděl.
Proto otázka zní: setkali jste se někdy s AIO na Linuxu? Odpovídejte prosím v anketě.
Tiskni
Sdílej:
Ne, ted vazne... ...pozuivam vetsinou synchronni, ale s tim, ze z hlediska programu je asynchronni. Jinymi slovy mam v programu vice threadu, kdy jeden (nebo vice) se stara o IO a komunikuje s ostatnimi. Ty pak samozrejme nemuseji cekat...
Skutecne asynchronni IO jsem pouzival skoro vyhradne u socketu (tam jsou ruzne "zaseky" docela caste)...
vcelku je to spíš softwarová emulace než opravdová implementaceV glibc je to bohužel ryze softwarová emulace a s plnohodnotným AIO nemá nic společného. Prostě se vytvoří vlákno a to volá normální synchronní operaci. Navenek se to pak sice tváří jako AIO, ale má to dost podstatnou režii. Měl jsem na mysli opravdové AIO, které ovšem glibc vůbec nijak nepodporuje (musí se použít jiné řešení, např.
libaio).
make menuconfig. Od té doby co je jeho podpora v jádře volitelná je to jedna z prvních věcí kterou nastavuji na ne, děkuji uctivě. AIO je potřeba velmi málo, a když už, forknutí threadu který bude dělat synchronní IO na pozadí je minimálně stejně dobré jako ono asynchronní IO.
forknutí threadu který bude dělat synchronní IO na pozadí je minimálně stejně dobré jako ono asynchronní IOTo není pravda. Vzhledem ke značné režii na systémová volání a na přepínání kontextu tam bude poměrně velký rozdíl ve výkonu. Pravdou ovšem je, že u většiny aplikací to příliš nevadí, protože úzké hrdlo je jinde.