V IT4Innovations národním superpočítačovém centru byl dnes slavnostně spuštěn první český kvantový počítač VLQ disponující 24 fyzickými qubity s unikátní hvězdicovou topologií. Systém dodala společnost IQM Quantum Computers a jeho celková pořizovací cena činila přibližně 125 milionů korun.
Výrobce čipů Nvidia chce investovat až 100 miliard dolarů (přes dva biliony Kč) do společnosti zaměřené na umělou inteligenci OpenAI. Firmy o tom informují v tiskové zprávě. Oznámené partnerství přichází v době, kdy se mezi technologickými giganty a start-upy zostřuje konkurence o zajištění přístupu k energii a čipům potřebným pro rozvoj umělé inteligence (AI).
Nové číslo časopisu Raspberry Pi zdarma ke čtení: Raspberry Pi Official Magazine 157 (pdf).
Společnost Cloudflare oznámila, že sponzoruje nezávislý webový prohlížeč Ladybird a linuxovou distribuci pro vývojáře Omarchy (Arch Linux s dlaždicovým správcem oken Hyprland).
Společnost XTX Markets zabývající se algoritmickým obchodováním pro své potřeby vyvinula a dnes představila a otevřela souborový systém TernFS. Zdrojové kódy jsou k dispozici na GitHubu. Vývoj TernFS začal počátkem roku 2022. Od léta 2023 jej XTX Markets používá v produkčním prostředí.
Byl spuštěn předprodej linuxového telefonu FLX1s od Furi Labs. Výroba by měla být dokončena ke konci října.
V Nepálu zakázali sociální sítě poté, co se na nich začala šířit kampaň "nepo kid" upozorňující na okázalý životní styl dětí politiků a korupci. Tím vláda vyvolal obří protikorupční protesty. Převážně mladí lidé původně poklidně protestovali, následně protesty eskalovaly až k útoku na parlament a násilnostem.
… více »Byla představena oficiální rozšiřující deska Raspberry Pi M.2 HAT+ Compact pro připojování M.2 periferii jako jsou NVMe disky k Raspberry Pi 5. Cena je 15 dolarů.
Byla vydána nová verze 9.17 z Debianu vycházející linuxové distribuce DietPi pro (nejenom) jednodeskové počítače. Přehled novinek v poznámkách k vydání.
Je třetí sobota v září a proto vše nejlepší k dnešnímu Software Freedom Day (SFD, Wikipedie).
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á.
Jako vedlejší efekt jednoho projektu, na kterém pracuji, vzniká i jednoduché C++ rozhraní k technologii inotify. Pro ty, kdo o inotify ještě neslyšeli: umožňuje sledovat události ve filesystému. Rozhraní pro C++ si nyní můžete stáhnout a použít ho pro své potřeby.
Nejdřív bych chtěl říct pár slov o tom, co vůbec je inotify. Je to technologie (umístěná v jádře), která umožňuje sledovat události, které nastanou v souborovém systému. Lze tak např. zjistit, že nám někdo "pod rukama" změnil soubor, že vytvořil nebo zrušil adresář, odpojil filesystém apod. Funguje tak, že se "pověsí" na inode a sleduje, co se tam děje.
Donedávna se v Linuxu k tomuto účelu používala technologie dnotify. Ta má však různé nepříjemné vlastnosti. Nejhorší z nich je nutnost mít na každý sledovaný adresář samostatný souborový deskriptor. Jednak je počet deskriptorů omezený, a také sledování je trochu problém - buď se musí sledovat každý deskriptor zvlášť (při větším počtu problém), nebo používat epoll()
, poll()
, anebo select()
, základním prostředkem byl však signál SIGIO
. Při větším počtu sledovaných adresářů si tento mechanismus vezme poměrně dost paměti v jádře. Navíc jsou problémy s výměnnými médii atd.
inotify většinu problémů odstraňuje. Souborový deskriptor stačí jeden, přes něj se pak aktivuje libovolný počet (do výše limitu) sledovaných cest (adresářů i souborů), klidně každá s jinou maskou (filtrem). Události se ukládají do fronty (společné pro souborový deskriptor), odkud je lze vybrat voláním read()
. Pro sledování deskriptoru lze použít libovolnou metodu (buď přímo read()
, nebo epoll()
, poll()
, select()
, případně signál).
inotify-cxx je C++ rozhraní, které má za cíl zjednodušit použití inotify v programech psaných v C++. Skládá se ze tří tříd. Základní je Inotify
, která obaluje souborový deskriptor, kromě toho spravuje také sledované cesty (viz dále) a má vlastní frontu událostí. Dále je tam třída InotifyWatch
, představující sledovací "hook". Poslední je pak InotifyEvent
, což je událost přijatá z inotify.
Celé to funguje tak, že si stačí vytvořit instanci (nebo více, podle potřeby) třídy Inotify
. Pak se vytvoří potřebný počet instancí InotifyWatch
a ty se přidají do Inotify
. Pro sledování je zatím k dispozici pouze jediná metoda, a to WaitForEvents()
, která blokuje do okamžiku, než přijdou nějaké události. Mám v plánu přidat tam další mechanismy sledování. Ohlásí-li WaitForEvents()
přijetí událostí, jsou tyto uloženy ve frontě a lze je získávat metodami GetEvent()
. Pro pouhé přečtení události (bez odebrání z fronty) lze použít PeekEvent()
.
V tuto chvíli se jedná o velice časnou verzi rozhraní, kterou budu na základě svých potřeb (a samozřejmě i požadavků jiných uživatelů) dále rozšiřovat a vylepšovat. Nicméně pro odzkoušení to dávám k dispozici již nyní - hlavně proto, že bych chtěl trochu zpopularizovat inotify, což je jedna z moderních věcí, přidaných do jádra teprve nedávno. Račte stahovat.
Rozhraní je k dispozici pod třemi licencemi - GPL, LGPL a X11. Ať si každý zvolí "tu svoji" licenci, pod kterou to bude používat. Ještě upozorním na nutnost mít jednak jádro 2.6.13 a pozdější, a také hlavičkové soubory pro inotify (obsahují rozhraní pro syscall a také definici datové struktury a označení bitů masky událostí).
Tiskni
Sdílej: