Společnost OpenAI představila GPT-5 (YouTube).
Byla vydána (𝕏) červencová aktualizace aneb nová verze 1.103 editoru zdrojových kódů Visual Studio Code (Wikipedie). Přehled novinek i s náhledy a videi v poznámkách k vydání. Ve verzi 1.103 vyjde také VSCodium, tj. komunitní sestavení Visual Studia Code bez telemetrie a licenčních podmínek Microsoftu.
Americký prezident Donald Trump vyzval nového generálního ředitele firmy na výrobu čipů Intel, aby odstoupil. Prezident to zdůvodnil vazbami nového šéfa Lip-Bu Tana na čínské firmy.
Bylo vydáno Ubuntu 24.04.3 LTS, tj. třetí opravné vydání Ubuntu 24.04 LTS s kódovým názvem Noble Numbat. Přehled novinek a oprav na Discourse.
Byla vydána verze 1.89.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.
Americká technologická společnost Apple uskuteční v USA další investice ve výši sta miliard dolarů (2,1 bilionu korun). Oznámil to ve středu šéf firmy Tim Cook při setkání v Bílém domě s americkým prezidentem Donaldem Trumpem. Trump zároveň oznámil záměr zavést stoprocentní clo na polovodiče z dovozu.
Zálohovací server Proxmox Backup Server byl vydán v nové stabilní verzi 4.0. Založen je na Debianu 13 Trixie.
Byla vydána nová verze 1.54.0 sady nástrojů pro správu síťových připojení NetworkManager. Novinkám se v příspěvku na blogu NetworkManageru věnuje Jan Václav.
Knižní edice správce české národní domény přináší novou knihu zkušeného programátora Pavla Tišnovského s názvem Programovací jazyk Go. Publikace nabízí srozumitelný a prakticky zaměřený pohled na programování v tomto moderním jazyce. Nejedná se však o klasickou učebnici, ale spíše o průvodce pro vývojáře, kteří s Go začínají, nebo pro ty, kdo hledají odpovědi na konkrétní otázky či inspiraci k dalšímu objevování. Tištěná i digitální verze knihy je již nyní k dispozici u většiny knihkupců.
OpenAI zpřístupnila (en) nové nenáročné otevřené jazykové modely gpt-oss (gpt-oss-120b a gpt-oss-20b). Přístupné jsou pod licencí Apache 2.0.
The framebuffer device was opened successfully. 1366x768, 32bpp The framebuffer device was mapped to memory successfully. Neoprávněný přístup do paměti (SIGSEGV) (core dumped [obraz paměti uložen])Ale když v funkci nebudu chtít smazat posledních 6 řádků "vinfo.yres-6" tak to funguje OK.
void clear_fb(int r, int g, int b) { int y_pom; int x_pom; for ( y_pom = 0; y_pom < vinfo.yres-6; y_pom++ ) for ( x_pom = 0; x_pom < vinfo.xres; x_pom++ ) { location = (x_pom+vinfo.xoffset) * (vinfo.bits_per_pixel/8) + (y_pom+vinfo.yoffset) * finfo.line_length; if ( vinfo.bits_per_pixel == 32 ) { *(fbp + location) = b; // Some blue *(fbp + location + 1) = g; // A little green *(fbp + location + 2) = r; // A lot of red *(fbp + location + 3) = 0; // No transparency } else { //assume 16bpp unsigned short int t = r<<11 | g << 5 | b; *((unsigned short int*)(fbp + location)) = t; } } }Někde mám nějakou chybičku neporadíte kde? Celý program v příloze.
Řešení dotazu:
Vypadá to, že zapisuješ do paměti, která ti nepatří
já bych asi hledal kolem finfo.line_length (vypsat si), když mmapuješ, používáš screensize, který počítáš jinak než pak location v clear_fb a to může pak zapisovat do nemmapované paměti.
Tzn. vypsat si celkový screensize a kontrolovat, že location ve funkcích není větší než... a když jo případně vypsat a nezapisovat do té paměti a hledat proč. Rozhodně počítat pokud možno stejným způsobem location a screensize
screensize = finfo.smem_len;Jo třeba projít proměnné a použít správné
unsigned short int t = r<<11 | g << 5 | b;
*((unsigned short int*)(fbp + location)) = t;
Ide mimo rozsah, lebo tam bude dany pocet unsigned short int-ov.
fpb + location
sa posunie na lokalitu o location int-ov dalej.
takze by som spravil na zaciatku premennu ( kvoli rychlosti ):
unsigned short int *fbp_us = (unsigned short int*)fbp;
a potom pouzival ju takto:
*(fbp_us + location) = t;
alebo iba jednoducho pretypovat na (unsinged short int*) pred operaciou + location;
Tiskni
Sdílej: