abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×

    dnes 12:44 | IT novinky

    Nizozemská vláda ve snaze šetřit a zvyšovat efektivitu s využitím umělé inteligence (AI) hodlá zrušit asi 25.000 pracovních míst ve státní správě. Cílem je postupně dosáhnout ročních úspor až 3,5 miliardy eur (85,2 miliardy Kč). Na konci loňského roku ve státní správě pracovalo rekordních 160.000 lidí. „Nemůžeme pokračovat v tom, co jsme dělali dosud,“ uvedl státní tajemník pro efektivní fungování vlády Eric van den Burg. „Proto

    … více »
    Ladislav Hagara | Komentářů: 8
    dnes 12:00 | IT novinky

    Příspěvek na blogu PRUSA 3D představuje fotoaparát CAIM1 (Counter Artificial Intelligence Machine 1). Uměle vytvořený obsah je každým dnem těžší rozeznat od skutečných záběrů či fotografií, což podrývá důvěryhodnost žurnalistiky, archivních materiálů i každodenní tvorby obsahu. Fotoaparát CAIM1 byl vyvinut právě k tomu, aby ověřoval původ fotografií a videí přímo během jejich pořizování. Uvnitř fotoaparátu se nachází hardwarová Web3 peněženka se zabezpečovacím čipem Tropic Square TROPIC01.

    Ladislav Hagara | Komentářů: 3
    dnes 00:11 | Nová verze

    Jonathan Thomas oznámil vydání nové verze 4.1 video editoru OpenShot (Wikipedie). Zdrojové kódy OpenShotu jsou k dispozici na GitHubu. Ke stažení je i balíček ve formátu AppImage. Stačí jej stáhnout, nastavit právo na spouštění a spustit.

    Ladislav Hagara | Komentářů: 0
    včera 23:33 | Zajímavý článek

    Při běžné migraci virtuálního stroje mezi hypervizory se jeho MAC adresa přesune na jiný leaf switch. EVPN tuto změnu distribuuje pomocí BGP Type-2 route a MAC mobility sequence number. Problém nastává, pokud útočník podvrhne zdrojovou MAC adresu jiného zařízení. Leaf může změnu interpretovat jako legitimní přesun MAC a rozšířit ji přes BGP do celé fabric. Výsledkem může být přesměrování provozu určeného původnímu zařízení. Autor článku rozebírá možnosti detekce pomocí sledování MAC moves, BGP route reflektorů a kontroly na přístupové vrstvě.

    vencour | Komentářů: 0
    včera 15:11 | Nová verze

    Vývojáři desktopového prostředí Enlightenment (Wikipedie) a souvisejících knihoven Enlightenment Foundation Libraries (EFL) vydali nové verze. Enlightenment byl vydán ve verzi 0.28.0 a Enlightenment Foundation Libraries ve verzi 1.29.

    Ladislav Hagara | Komentářů: 4
    včera 13:55 | Zajímavý článek

    Cloudflare zjistil, že některé odpovědi modelu GLM-5.3 obsahovaly části dat z předchozích požadavků jiných zákazníků. Příčinou byla kombinace chybné konfigurace a chyby v inference enginu SGLang. Model podporoval kontextové okno 1 048 576 tokenů, ale GPU KV cache pool měl kapacitu pouze 681 280 tokenů. Při překročení kapacity docházelo k nesprávnému zpracování odmítnutého požadavku. Decode část systému následně pracovala se starými

    … více »
    vencour | Komentářů: 1
    včera 13:00 | Zajímavý článek

    Vývojáři Knot Resolver vysvětlují, jak změnili rozhodování o tom, které DNS záznamy ponechat v cache a které odstranit. Článek obsahuje skutečná měření: devět hodin DNS provozu při 2 000 QPS, srovnání cache o velikosti 25 MB a 40 GB a také porovnání s BIND 9, kromě algoritmů obsahuje konkrétní doporučení pro konfiguraci a diagnostiku.

    vencour | Komentářů: 0
    30.10. 13:44 | IT novinky

    Největší kryptoměnová burza světa Binance se stala terčem útoku, při kterém podvodníci odcizili během několika minut kryptoměny v hodnotě přibližně 6,3 miliardy dolarů. Jedná se o největší kryptoměnovou krádež v historii, přibližně čtyřikrát větší než loňský útok na burzu Bybit. Binance se podařilo ve spolupráci s partnery zmrazit aspoň aktiva v hodnotě zhruba 3 miliard dolarů a slíbila, že veškeré ztráty pokryje z vlastních prostředků.

    Ladislav Hagara | Komentářů: 16
    30.10. 02:16 | Bezpečnostní upozornění

    Zranitelnost CVE-2026-98432 s CVSS 9.8 odhalila AI od společnosti Anthropic. Jedná se o kritickou chybu v implementaci MPTCP (multipath TCP). Debian vydal patche 16.10. a 22.10., ale např. Ubuntu je zatím bez opravy. Více informací na The Hacker News.

    Max | Komentářů: 20
    29.10. 23:22 | Zajímavý software

    Na Slovensku vznikla úplne nová rally hra, ktorá je zadarmo a funguje vo Windowse, Linuxe či na Macu. Greenie Rally má viac ako 50 tratí a vozidiel, šampionáty či turnaje. Má retro feeling a imituje automobilové hry z prelomu tisícročí. Vyskúšate prejsť všetky mapy na Škode 130RS?

    Stanislav Hoferek | Komentářů: 14
    Které desktopové prostředí na Linuxu používáte?
     (9%)
     (7%)
     (4%)
     (20%)
     (30%)
     (9%)
     (5%)
     (2%)
     (14%)
     (20%)
    Celkem 2962 hlasů
     Komentářů: 34, poslední 26.10. 08:24
    Rozcestník

    Dotaz: Zapisovanie do pamate

    12.8.2019 19:24 mates
    Zapisovanie do pamate
    Přečteno: 609×
    Ahojte potreboval by som v C / C++ daco zapisat na adresu v pamati

    V Basicu na to boli funckie

    PEEK(ADRESA%) - funkcia precitala hodnotu zo zadanej adresy
    POKE ADRESA%, hodnota% - procedura zapisala hodnotu na zadanu adresu ak sme chceli zapisat znak bolo ho potrebne previest na cislo

    A k tymto funkciam bola este prikaz:
    DEF SEG, ktorym sa prepinali segmenty.

    Ako sa tieto funkcie a prikazy volaju v C++ resp C? Alebo vedeli by ste mi poradit ako tento priklad z basicu prepisat do C++?
    DIM a%(2)
    DEF SEG = VARSEG(a%(0))
    FOR i% = 0 TO 2
      READ d%
      POKE VARPTR(a%(0)) + i%, d%
    NEXT i%
    DATA 205, 5, 203
    
    CALL ABSOLUTE(VARPTR(a%(0)))
    DEF SEG
    

    Řešení dotazu:


    Odpovědi

    12.8.2019 21:33 debian+
    Rozbalit Rozbalit vše Re: Zapisovanie do pamate
    9 Smerniky

    V C neprepinaju pametove segmenty.
    xkucf03 avatar 12.8.2019 21:40 xkucf03 | skóre: 50 | blog: xkucf03
    Rozbalit Rozbalit vše Re: Zapisovanie do pamate

    Zapisovat můžeš pomocí funkce outb():

    outb(0b00000001, addr);

    (celý příklad)

    Nebo si ukazatel mířící na dané místo v paměti přetypovat na datový typ, který chceš zapsat a pak normálně přiřadit pomocí =.

    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-DK, Relational pipes
    13.8.2019 10:26 R
    Rozbalit Rozbalit vše Re: Zapisovanie do pamate
    out zapisuje na I/O port, nie do pamati.
    13.8.2019 11:45 Rezervní Polská Kotace
    Rozbalit Rozbalit vše Re: Zapisovanie do pamate
    Je sice pravda, že na x86 jsou to oddělené adresní prostory, ale v první řadě by to chtělo vědět, co je cílem tazatele. Dost možná totiž přímo do paměti zapisovat nepotřebuje...
    13.8.2019 18:56 petr_p | skóre: 59 | blog: pb
    Rozbalit Rozbalit vše Re: Zapisovanie do pamate

    Cílem je kopírovat příklady z Dokumentace QBasicu poplatné reálnému režimu x86.

    Ne že by ho jazyk C omezoval v zapisování do paměti. Ale skok na konkrétní adresu už problém bude. Předně C bude očekávat platformě závislou volací konvenci, takže autor bude muset ty tři bajty kódu obalit nějakou hlavičkou. A pak bude muset najít operační systém, který mu dovolí spustit kód z adresy, kam má právo zapisovat. Řada moderních systémů takovému mapování paměti brání. Nehledě na to, že volání BIOSu mu z uživatelského ringu opět fungovat nebude. Ale je docela možné, že tazatel stále používá DOS a jen vyměnil QBasic za C.

    13.8.2019 20:07 debian+
    Rozbalit Rozbalit vše Re: Zapisovanie do pamate
    Ako skakanie v Cecku funguje. Pouziva sa goto. Ale nikto ti negarantuje, ze sa neposkodi zasobnik. C je cecko.
    Předně C bude očekávat platformě závislou volací konvenci, takže autor bude muset ty tři bajty kódu obalit nějakou hlavičkou. A pak bude muset najít operační systém, který mu dovolí spustit kód z adresy, kam má právo zapisovat. Řada moderních systémů takovému mapování paměti brání. Nehledě na to, že volání BIOSu mu z uživatelského ringu opět fungovat nebude. Ale je docela možné, že tazatel stále používá DOS a jen vyměnil QBasic za C.
    Ak on mysli na skok na nejaku funkciu z adresa, da sa to. Zavolat funkciu cez smernik na funkciu. Ale nechod tak LOW ak nemusis a nechod az tak LOW ako pascal resp. assambler. Ano, ma pravdu, ze existuje nejake standart, ako sa predavaju data medzi OS a programom. A je to v C osetrene aj platformove veci - napr. big/little endian. Pokial sa bavime o OS s Linuxom. Ak to zariadenie nema OS. Tak volas funkcie alebo funkcie cez smernik na funkcie, pouzitie goto alebo inline assambler v C.
    13.8.2019 20:13 debian+
    Rozbalit Rozbalit vše Re: Zapisovanie do pamate
    Hm, este tu mame setjmp() a longjmp(), pre "goto" nie len v prave lokalnom ("static") .c subore.
    Jendа avatar 14.8.2019 01:16 Jendа | skóre: 78 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: Zapisovanie do pamate
    Ale skok na konkrétní adresu už problém bude. Předně C bude očekávat platformě závislou volací konvenci, takže autor bude muset ty tři bajty kódu obalit nějakou hlavičkou.
    A pokud se bude chtít vrátit, tak bude muset vědět, co ten kód udělal, a jak po něm uklidit. Ale to mu neporadíme dokud nebudeme vědět o co se snaží.

    (pokud to má správnou konvenci tak teoreticky chce udělat to co dělá dlopen/dlsym, ne?)
    A pak bude muset najít operační systém, který mu dovolí spustit kód z adresy, kam má právo zapisovat. Řada moderních systémů takovému mapování paměti brání.
    AFAIK to jde třeba na Linuxu dost snadno vypnout (viz mprotect) a i takový non-executable stack se teprve nedávno řešil že by měl být všude defaultně zapnutý.
    13.8.2019 09:35 rastos | skóre: 63 | blog: rastos
    Rozbalit Rozbalit vše Re: Zapisovanie do pamate
    Toto bude prča.

    /me clicks "Začni sledovat"
    13.8.2019 11:40 Rezervní Polská Kotace
    Rozbalit Rozbalit vše Re: Zapisovanie do pamate
    Co je špatného na tom, že odložil svůj Commodore 64 na půdu a pořídil si modernější systém?
    13.8.2019 12:13 rastos | skóre: 63 | blog: rastos
    Rozbalit Rozbalit vše Re: Zapisovanie do pamate
    Špatné absolutne nic. Ale občas je zábavné sledovať ľudí zažívajúcich kultúrny šok ;-)
    Řešení 1× (xkucf03)
    Jendа avatar 13.8.2019 17:06 Jendа | skóre: 78 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: Zapisovanie do pamate
    Příklad z Arduína, zapíše 0x7777 na adresu 0x0300
    volatile uint16_t *const bootKeyPtr = (volatile uint16_t *)0x0300;
    *bootKeyPtr = 0x7777;
    
    Samozřejmě pokud je to na nějakém operačním systému a ne přímo bare-metal, tak jde o virtuální paměť, kterou tvému programu poskytl operační systém. Pokud chceš přímo zapisovat do fyzické paměti (například máš v paměti namapované nějaké zařízení, které se pomocí zápisů ovládá), musíš si (na Linuxu) zkompilovat podporu pro zařízení /dev/mem. Následně toto zařízení otevřeš, pomocí lseek dojedeš na danou pozici a pomocí read přečteš (případně je možné namapovat kousek tohoto souboru pomocí mmap do tvého virtuálního prostoru a zápisy jsou pak překládány jak by člověk čekal).
    15.8.2019 17:31 Jindřich Makovička | skóre: 17
    Rozbalit Rozbalit vše Re: Zapisovanie do pamate
    Pokud opravdu chcete ekvivalent uvedeného kódu, tak tady. (v DOSu by to mohlo tu obrazovku na tiskárně vyjet, v Linuxu to pochopitelně spadne na segfault)
    #include <stdlib.h>
    
    void int5() {
        asm volatile("int $5" : : : "memory");
    }
    
    
    int main(int argc, char **argv) {
        int5();
    
        return EXIT_SUCCESS;
    }
    
    15.8.2019 20:36 debian+
    Rozbalit Rozbalit vše Re: Zapisovanie do pamate
    gcc pouzi AT/X syntax. Zaujimavostou je, ze mozte v tom asm pouzivat premenne z C prostredia a prekladat ich nahradi, za realne hodnoty pri preklade.

    Založit nové vlákno • Nahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.