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:22 | Komunita

    Na YouTube lze zhlédnout Godot Engine – 2025 Showreel s ukázkami toho nejlepšího letos vytvořeného v multiplatformním open source herním enginu Godot.

    Ladislav Hagara | Komentářů: 0
    dnes 10:00 | Humor

    Blíží se konec roku a tím i všemožná vyhlášení slov roku 2025. Dle Collins English Dictionary je slovem roku vibe coding, dle Dictionary.com je to 6-7, …

    Ladislav Hagara | Komentářů: 5
    dnes 09:55 | IT novinky

    Cloudflare Radar: podíl Linuxu na desktopu dosáhl v listopadu 6,2 %.

    Ladislav Hagara | Komentářů: 2
    včera 19:22 | Pozvánky

    Chcete vědět, co se odehrálo ve světě techniky za poslední měsíc? Nebo si popovídat o tom, co zrovna bastlíte? Pak doražte na listopadovou Virtuální Bastlírnu s mikrofonem a kamerou, nalijte si něco k pití a ponořte se s strahovskými bastlíři do diskuze u virtuálního piva o technice i všem možném okolo. Mezi nejvýznamnější novinky patří Průšovo oznámení Core One L, zavedení RFID na filamentech, tisk silikonu nebo nový slicer. Dozvíte se ale i

    … více »
    bkralik | Komentářů: 4
    včera 05:00 | Nová verze

    Vývojáři OpenMW (Wikipedie) oznámili vydání verze 0.50.0 této svobodné implementace enginu pro hru The Elder Scrolls III: Morrowind. Přehled novinek i s náhledy obrazovek v oznámení o vydání.

    Ladislav Hagara | Komentářů: 0
    8.11. 23:11 | Zajímavý software

    Komunita kolem Linux Containers po roce vývoje představila (YouTube) neměnný operační systém IncusOS speciálně navržený pro běh Incusu, tj. komunitního forku nástroje pro správu kontejnerů LXD. IncusOS poskytuje atomické aktualizace prostřednictvím mechanismu A/B aktualizací s využitím samostatných oddílů a vynucuje zabezpečení bootování pomocí UEFI Secure Bootu a modulu TPM 2.0. Postaven je na Debianu 13.

    Ladislav Hagara | Komentářů: 18
    8.11. 22:44 | IT novinky

    Mozilla začne od ledna poskytovat komerční podporu Firefoxu pro firmy. Jedná se o podporu nad rámec stávající podpory, která je k dispozici pro všechny zdarma.

    Ladislav Hagara | Komentářů: 0
    8.11. 03:44 | Komunita

    V Bolzanu probíhá konference SFSCON (South Tyrol Free Software Conference). Jean-Baptiste Kempf, zakladatel a prezident VideoLAN a klíčový vývojář VLC media playeru, byl na ní oceněn cenou European SFS Award 2025 udělovanou Free Software Foundation Europe (FSFE) a Linux User Group Bolzano‑Bozen (LUGBZ).

    Ladislav Hagara | Komentářů: 3
    8.11. 02:44 | Zajímavý projekt

    Open-source minimalistický trackball Ploopy Nano byl po modelech modelech Classic a Thumb Trackball také aktualizován. Nová verze Nano 2 používá optický senzor PAW3222 a k původně beztlačítkovému designu přidává jedno tlačítko, které ve výchozí konfiguraci firmwaru QMK přepíná režim posouvání koulí. Sestavený trackball nyní vyjde na 60 kanadských dolarů (bez dopravy a DPH).

    |🇵🇸 | Komentářů: 4
    7.11. 14:22 | Zajímavý článek

    Github publikoval Octoverse 2025 (YouTube), tj. každoroční přehled o stavu open source a veřejných softwarových projektů na GitHubu. Každou sekundu se připojil více než jeden nový vývojář. Nejpoužívanějším programovacím jazykem se stal TypeScript.

    Ladislav Hagara | Komentářů: 0
    Jaké řešení používáte k vývoji / práci?
     (35%)
     (47%)
     (18%)
     (17%)
     (22%)
     (15%)
     (22%)
     (15%)
     (16%)
    Celkem 339 hlasů
     Komentářů: 15, poslední 2.11. 08:25
    Rozcestník

    Dotaz: Spristupnenie pamatovych struktur potomkovi

    16.10.2008 12:37 xsustek | skóre: 6
    Spristupnenie pamatovych struktur potomkovi
    Přečteno: 249×
    Zdravim,

    mam takyto problem. Su dva procesy: rodic a potomok. Rodic sa periodicky budi a ziskava informacie. Potomok caka na UDP a pri dotaze musi nahliadnut do rodicovskych pamatovych strukur resp. musi od neho ziskat nejake info resp. citat jeho pamat.

    Robim to v C-ku a v Linuxe. Nechcem k tomu pouzit vlakna. Zaujima ma ake su moznosti. Nedalo by sa to nejakou rurou? Alebo niecim inym?

    Dakujem

    Odpovědi

    16.10.2008 13:51 Jirka P
    Rozbalit Rozbalit vše Re: Spristupnenie pamatovych struktur potomkovi
    Ta otázka je dost obsáhlá... Dala by se použít roura, unix-domain socket, sdílená paměť, společný soubor... cokoli.
    16.10.2008 14:00 xsustek | skóre: 6
    Rozbalit Rozbalit vše Re: Spristupnenie pamatovych struktur potomkovi
    Co si myslite, ze by bolo najednoduchsie.

    Rodic bude mat staticky alokovanu pamat. Napr. 5 struktur.

    Chcel by som sa ale vyhnut nejakemu binarnemu citaniu. (nieco v tom zmysle, ze by citajuci cital prud dat a nejak ich musel zozpoznavat. Tak isto by som sa chcel vyhnut tomu, aby sa rodic musel prebudit a poskytnut data.

    Viem, ze je to dost nejasne sam v tom nemam uplne jasno. :(

    16.10.2008 14:54 happy barney | skóre: 34 | blog: dont_worry_be_happy
    Rozbalit Rozbalit vše Re: Spristupnenie pamatovych struktur potomkovi
    v tomto prípade by som osobne použil zdieľanú pamäť
    16.10.2008 15:59 xsustek | skóre: 6
    Rozbalit Rozbalit vše Re: Spristupnenie pamatovych struktur potomkovi
    Mohli by ste ma nejako nasmerovat. Su nejane systemove volanie v Linuxe pre to. Ako sa to oficialne vola, aby som si to mohol vyhladat na internete.
    16.10.2008 16:12 Messa | skóre: 39 | blog: Messa
    Rozbalit Rozbalit vše Re: Spristupnenie pamatovych struktur potomkovi
    Buď můžete použít mmap, který by měl přes fork krásně fungovat (man mmap), nebo řekl bych klasičtější System V IPC (viz man shmat).
    16.10.2008 16:07 Messa | skóre: 39 | blog: Messa
    Rozbalit Rozbalit vše Re: Spristupnenie pamatovych struktur potomkovi
    Buď sdílená paměť, nebo rodič po získání informací tyto "natlačí" do potomka, který si je zapamatuje, aby je mohl posílat přes UDP. (Což je v podstatě stejný přístup jako sdílená paměť.) To mi připadají jako jediné možnosti, pokud se chceš vyhnout probouzení rodiče pro poskytnutí dat. Pak by se dal použít ještě trochu úchylnější přístup, a to po získání dat rodičem potomka zabít a znovu forknout s novými daty.

    Jen bych upozornil, že přestože se nejedná o vlákna, při přístupu do sdílené paměti by se AFAIK měla použít nějaká synchronizace, např. mutexy (ty by ve sdílené paměti měly fungovat i mezi procesy).

    Nějak jsem nepochopil, že se chceš vyhnout binárnímu čtení. Číst musíš vždycky :-)
    16.10.2008 16:24 xsustek | skóre: 6
    Rozbalit Rozbalit vše Re: Spristupnenie pamatovych struktur potomkovi
    Nějak jsem nepochopil, že se chceš vyhnout binárnímu čtení.
    Myslel som to tak, ze tie struktury v pamati budem moct citat podobne ako by ich cital proces ktoremu patria. Napr. takto st_rec.name. A nemusel to citat ako nejaky prud dat, kde by som musel vediet kde jedna premenna konci a ina zaciana.

    Takze hovorite, ze zdielana pamat. Tak skusime.
    16.10.2008 16:26 xsustek | skóre: 6
    Rozbalit Rozbalit vše Re: Spristupnenie pamatovych struktur potomkovi
    nebo rodič po získání informací tyto "natlačí" do potomka, který si je zapamatuje
    mohli by ste toto konktretne specifikovat, ako by sa to dalo urobit? Musela by tam byt nejaka aktivita na strane potomka. resp. musel by data nejak spracovavat?
    16.10.2008 16:46 Messa | skóre: 39 | blog: Messa
    Rozbalit Rozbalit vše Re: Spristupnenie pamatovych struktur potomkovi
    Myslel jsem třeba rourou nebo prostě něčím, na co se v rodičovi zavolá write() a v potomkovi read() (nebo samozřejmě fwrite a fread). Přijatá data by se samozřejmě musela zpracovat, ale pokud se to udělá pěkně, nejsou s tím žádné potíže, protože ty data nemusí být multiplatformní (běží to na jednom stroji, že); fread(ptr, sizeof(*ptr), 1, stream); ptr->name není už tak hrozné. Akorát by se v potomkovi muselo zacházet s dvěma vstupy naráz (UDP a tahle roura), a to je trochu složitější - buď přes přes select() nebo neblokující režim. Sdílená paměť bude opravdu lepší řešení, pokud je možné ji použít.
    16.10.2008 17:38 Messa | skóre: 39 | blog: Messa
    Rozbalit Rozbalit vše Re: Spristupnenie pamatovych struktur potomkovi
    Příloha:
    Ještě zpět k těm mutexům - mutex se musí nastavit jako process-shared pomocí (pthread_mutexattr_setpshared(&attr, PTHREAD_PROCESS_SHARED). Do přílohy jsem kdyžtat sesmolil ukázkový program, který dělá zhruba to co xsustek chce (abych si vyzkoušel, že to co radím doopravdy funguje). Dost by mě zajímalo srovnání výkonu oproti jiné meziprocesové synchronizaci...
    16.10.2008 20:32 xsustek | skóre: 6
    Rozbalit Rozbalit vše Re: Spristupnenie pamatovych struktur potomkovi
    Za toto musim fakt podakovat. Este som to neskusal, uz je vecer :). Skusim to cez vikend pripadne odpisem. DIK
    16.10.2008 16:58 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: Spristupnenie pamatovych struktur potomkovi
    Nechcem k tomu pouzit vlakna.

    To je docela chyba, protože právě tohle je jedna z největších výhod threadů. Můžete sice použít sdílenou paměť, ale tím si nepomůžete, stejně budete muset řešit otázku synchronizace (např. pomocí semaforů).

    Založit nové vláknoNahoru

    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.