Společnost Meta ve spolupráci se společností Oakley oznámila řadu chytrých brýlí Oakley. První Oakley Meta HSTN si lze předobjednat za 499 dolarů.
Ministerstvo průmyslu a obchodu (MPO) vyjádřilo podporu předložení projektu AI Gigafactory CZ, který do veřejné konzultace Evropské komise zaslala společnost České Radiokomunikace (CRA) v rámci iniciativy Project AIGF CZ. Jde o významný krok k rozvoji výpočetní infrastruktury pro umělou inteligenci (AI), která je prioritou resortu. Projekt je v souladu s cíli Národní strategie umělé inteligence ČR 2030 a je již součástí návrhu
… více »Nové číslo časopisu Raspberry Pi zdarma ke čtení: Raspberry Pi Official Magazine 154 (pdf). S podtitulem Automatizace domácnosti.
Americký prezident Donald Trump podepsal exekutivní příkaz, který prodlužuje lhůtu pro prodej amerických aktiv aplikace TikTok vlastněné čínskou společností ByteDance do amerických rukou o dalších 90 dnů. Americký Kongres loni v dubnu kvůli bezpečnostním obavám přijal zákon, podle kterého měl vstoupit v platnost zákaz sítě TikTok v USA v případě, že se prodej neuskuteční do 19. ledna. Trump však v lednu lhůtu pro prodej prodloužil o 75 dnů. V dubnu pak přikročil k prodloužení o dalších 75 dnů, lhůta tak měla vypršet dnešním dnem.
Microsoft hodlá zrušit další tisíce pracovních míst, a to především v obchodních odděleních. Předchozí kolo propouštění se uskutečnilo v květnu a dotklo se 6000 zaměstnanců. Vedení firmy již dříve upozornilo, že vzhledem k rozsáhlým investicím do umělé inteligence (AI) se bude snažit omezovat výdaje v jiných oblastech.
Společnost Murena ve spolupráci se společností Qwant představila vyhledávač Murena Find. Ve výchozím nastavení bude používán v mobilním operačním systému /e/OS a v Murena Workspace.
V mobilní aplikaci Facebooku se lze nově přihlašovat pomocí Passkeys.
Společnost Midjourney představila vlastní generátor videí pomocí umělé inteligence (AI) V1 Video Model.
Editor kódu Zed (Wikipedie) má nově v sobě integrovaný debugger. Podporuje Rust, C/C++, JavaScript, Go, Python a pomocí rozšíření i další programovací jazyky.
Byl publikován aktuální přehled vývoje renderovacího jádra webového prohlížeče Servo (Wikipedie). Servo mimo jiné nově zvládne animované GIFy.
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: