Byla vydána verze 1.91.0 programovacího jazyka Rust (Wikipedie). Podrobnosti v poznámkách k vydání. Vyzkoušet Rust lze například na stránce Rust by Example.
Ministerstvo průmyslu a obchodu vyhlásilo druhou veřejnou soutěž v programu TWIST, který podporuje výzkum, vývoj a využití umělé inteligence v podnikání. Firmy mohou získat až 30 milionů korun na jeden projekt zaměřený na nové produkty či inovaci podnikových procesů. Návrhy projektů lze podávat od 31. října do 17. prosince 2025. Celková alokace výzvy činí 800 milionů korun.
Google v srpnu oznámil, ž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. Iniciativa Keep Android Open se to snaží zvrátit. Podepsat lze otevřený dopis adresovaný Googlu nebo petici na Change.org.
Byla vydána nová verze 18 integrovaného vývojového prostředí (IDE) Qt Creator. S podporou Development Containers. Podrobný přehled novinek v changelogu.
Cursor (Wikipedie) od společnosti Anysphere byl vydán ve verzi 2.0. Jedná se o multiplatformní proprietární editor kódů s podporou AI (vibe coding).
Google Chrome 142 byl prohlášen za stabilní. Nejnovější stabilní verze 142.0.7444.59 přináší řadu novinek z hlediska uživatelů i vývojářů. Podrobný přehled v poznámkách k vydání. Opraveno bylo 20 bezpečnostních chyb. Za nejvážnější z nich bylo vyplaceno 50 000 dolarů. Vylepšeny byly také nástroje pro vývojáře.
Pro moddery Minecraftu: Java edice Minecraftu bude bez obfuskace.
Národní identitní autorita, tedy NIA ID, MeG a eOP jsou nedostupné. Na nápravě se pracuje [𝕏].
Americký výrobce čipů Nvidia se stal první firmou na světě, jejíž tržní hodnota dosáhla pěti bilionů USD (104,5 bilionu Kč). Nvidia stojí v čele světového trhu s čipy pro umělou inteligenci (AI) a výrazně těží z prudkého růstu zájmu o tuto technologii. Nvidia již byla první firmou, která překonala hranici čtyř bilionů USD, a to letos v červenci.
Po Canonicalu a SUSE oznámil také Red Hat, že bude podporovat a distribuovat toolkit NVIDIA CUDA (Wikipedie).
Byla přidána podpora pro hostitelské řadiče USB3.0/xHCI, žádný však ještě není k dispozici.
Jsem rád, že je Linux připraven i když skutečných zařízení se stejně dočkáme tak nejdřív za rok.
 17.7.2009 10:18
Petr Tomášek             | skóre: 39
             | blog: Vejšplechty
        17.7.2009 10:18
Petr Tomášek             | skóre: 39
             | blog: Vejšplechty
            
        To by mě teda zajímalo, jak takovou věc testovali :=ooo
 17.7.2009 08:46
Nikola Ciprich             | skóre: 23
             | blog: NiX_blog
             | Palkovice
        17.7.2009 08:46
Nikola Ciprich             | skóre: 23
             | blog: NiX_blog
             | Palkovice
        čipová sada AMD r60 čipová sada Intel IGDNG
asi chybi odrazka. jinak jako vzdy skvele pocteni!
asi chybi odrazkaDík, opraveno.
 Nejak nerozumiem tomu konceptu "kotvy"; nemate niekto nejaky link kde je opisany?
Nejak nerozumiem tomu konceptu "kotvy"; nemate niekto nejaky link kde je opisany? 
            Představte si, že máte struct, který obsahuje několik proměnných (memberů) různých typů - například další vnořené structy.
No a dostanete se ve zdrojáku do situace, kdy máte pointer na ten vnořený struct, a potřebujete zjistit pointer na ten větší struct, který ho obaluje. Vlastně jde o to, zjistit ofset vnořeného structu v tom obalovém structu (operace na úrovni statických typů, čili ta informace je k dispozici už při kompilaci) a odečíst ho od známého pointeru na vnořený struct.
Všiml jsem si, že to kernel umí řešit nějakými makry - patrně zmiňovaným container_of().
Omlouvám se, pokud tohle všechno je jasné  Dál to z hlavy dopodrobna neznám. Čili nevím přesně, jak "kotva" funguje.
 Dál to z hlavy dopodrobna neznám. Čili nevím přesně, jak "kotva" funguje.
Tuším že jsem to viděl v klasické kernelové knihovničce pro vytváření "spojových seznamů", kde "struct list_head" je vnořený do Vašeho uživatelského structu. No a při procházení seznamem pracujete s pointery na ten vnořený list_head, ale cílem je, dostat pointer na ten Váš uživatelský struct.
 17.7.2009 10:26
alblaho             | skóre: 17
             | blog: alblog
        17.7.2009 10:26
alblaho             | skóre: 17
             | blog: alblog
            
        ListNode, která vypadá zhruba takhle (pseudokód!):
class ListNode<T> {
  ListNode<T> next;
  T data;
}
Šikulové od jádra to převrátili vzhůru nohama a vymysleli asi tohle:
class ListNode {
  ListNode next;
}
class MyData {
  ...
  ListNode node;
}
Implementace seznamu pracuje s ListNode, ale navenek umí poskytnout přímo objekty dat. Představuju si to asi takhle nějak:
void forEach(ListNode head, {T -> void} callback) {
  ListNode curr = head;
  while (curr != null) {
    callback.invoke(CONTAINER_OF(curr)); // !!!
    curr = curr.next;
  }
}
MyData a = new MyData(...); a.node = new ListNode();
MyData b = new MyData(...); b.node = new ListNode(); b.node.next = a.node;
forEach(a) { MyData data -> ... }
Pochopitelně tohle je extrémně zjednodušené, ale myslím, že princip je správný. Pokud se pletu, někdo mne prosím opravte  
             17.7.2009 13:45
alblaho             | skóre: 17
             | blog: alblog
        17.7.2009 13:45
alblaho             | skóre: 17
             | blog: alblog
            
         17.7.2009 14:35
alblaho             | skóre: 17
             | blog: alblog
        17.7.2009 14:35
alblaho             | skóre: 17
             | blog: alblog
            
        /**
 * container_of - cast a member of a structure out to the containing structure
 * @ptr:	the pointer to the member.
 * @type:	the type of the container struct this is embedded in.
 * @member:	the name of the member within the struct.
 *
 */
#define container_of(ptr, type, member) ({			\
	const typeof( ((type *)0)->member ) *__mptr = (ptr);	\
	(type *)( (char *)__mptr - offsetof(type,member) );})
            
struct parent { ... };
struct s {
    struct parent; // prvni prvek ve strukture
    ...
};
s pak muzes pouzivat vsechny funkce (samozrejme s pretypovanim - coz ale za tebe muze delat nejake makro), ktere lze pouzit na strukturu parent bez pouziti maker typu container_of() nebo offset().
             
             
            Na strukturu s pak muzes pouzivat vsechny funkce (samozrejme s pretypovanim - coz ale za tebe muze delat nejake makro), ktere lze pouzit na strukturu parentTyvado tak to je fikaný, by mě nenapadlo, ale to skutečně tak je. Akorát musí člověk pamatovat, že je potřeba alokovat/uvolnit víc paměti pro potomka, aby to nezatejkalo...
To je taka ta vec ktoru maju lode a ked sa chcu urzat na mieste vypustia kotvu...
Keby si furt nieco nekopiloval a nepisal v terminale a namiesto to si dal Vistu, mal by si cas aj na vseobecne vzdelavanie :p
        Tiskni
            
                Sdílej:
                 
                 
                 
                 
                 
                