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í
×
    včera 15:00 | Nová verze

    Všem vše nejlepší do nového roku 2026.

    Ladislav Hagara | Komentářů: 8
    včera 13:33 | Zajímavý software

    Crown je multiplatformní open source herní engine. Zdrojové kódy jsou k dispozici na GitHubu pod licencí MIT a GPLv3+. Byla vydána nová verze 0.60. Vyzkoušet lze online demo.

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

    Daniel Stenberg na svém blogu informuje, že po strncpy() byla ze zdrojových kódů curlu odstraněna také všechna volání funkce strcpy(). Funkci strcpy() nahradili vlastní funkcí curlx_strcopy().

    Ladislav Hagara | Komentářů: 5
    včera 03:00 | Nová verze

    Byla vydána nová verze 25.12.30 svobodného multiplatformního video editoru Shotcut (Wikipedie) postaveného nad multimediálním frameworkem MLT. Shotcut je vedle zdrojových kódů k dispozici také ve formátech AppImage, Flatpak a Snap.

    Ladislav Hagara | Komentářů: 0
    30.12. 18:55 | IT novinky

    Společnost Valve publikovala přehled To nej roku 2025 ve službě Steam aneb ohlédnutí za nejprodávanějšími, nejhranějšími a dalšími nej hrami roku 2025.

    Ladislav Hagara | Komentářů: 0
    30.12. 16:11 | Komunita

    Byly publikovány výsledky průzkumu mezi uživateli Blenderu uskutečněného v říjnu a listopadu 2025. Zúčastnilo se více než 5000 uživatelů.

    Ladislav Hagara | Komentářů: 0
    30.12. 03:33 | Bezpečnostní upozornění

    V dokumentově orientované databázi MongoDB byla nalezena a v upstreamu již opravena kritická bezpečností chyba CVE-2025-14847 aneb MongoBleed.

    Ladislav Hagara | Komentářů: 0
    29.12. 23:11 | IT novinky

    Při úklidu na Utažské univerzitě se ve skladovacích prostorách náhodou podařilo nalézt magnetickou pásku s kopií Unixu V4. Páska byla zaslána do počítačového muzea, kde se z pásky úspěšně podařilo extrahovat data a Unix spustit. Je to patrně jediný známý dochovaný exemplář tohoto 52 let starého Unixu, prvního vůbec programovaného v jazyce C.

    NUKE GAZA! 🎆 | Komentářů: 16
    29.12. 15:55 | Komunita

    FFmpeg nechal kvůli porušení autorských práv odstranit z GitHubu jeden z repozitářů patřících čínské technologické firmě Rockchip. Důvodem bylo porušení LGPL ze strany Rockchipu. Rockchip byl FFmpegem na porušování LGPL upozorněn již téměř před dvěma roky.

    NUKE GAZA! 🎆 | Komentářů: 7
    29.12. 15:44 | Zajímavý software

    K dispozici je nový CLI nástroj witr sloužící k analýze běžících procesů. Název je zkratkou slov why-is-this-running, 'proč tohle běží'. Klade si za cíl v 'jediném, lidsky čitelném, výstupu vysvětlit odkud daný spuštěný proces pochází, jak byl spuštěn a jaký řetězec systémů je zodpovědný za to, že tento proces právě teď běží'. Witr je napsán v jazyce Go.

    NUKE GAZA! 🎆 | Komentářů: 1
    Kdo vám letos nadělí dárek?
     (30%)
     (1%)
     (28%)
     (1%)
     (1%)
     (1%)
     (10%)
     (10%)
     (18%)
    Celkem 226 hlasů
     Komentářů: 22, poslední včera 15:34
    Rozcestník

    Dotaz: jednoduche forkovani

    16.5.2007 23:57 Michael26100
    jednoduche forkovani
    Přečteno: 178×
    Zdravim Vas, mam jednoduchy dotaz:

    Pokud potrebuji n procesů, ktere budou pristupovat ke sdilene strukture, pravdepodobne musim pouzit forkovani kde bude pouze jeden rodic a n potomku. Zajimalo by me:

    1) Muzu to udelat tak, ze: udelam for kde budu forkovat pouze pokud pid > 0, == 0 volat exit? Tim bych mel mit jednoho rodice a n potomku...

    2) Sdilenou strukturu mam pripojit jeste pred forkovanim a tim budou mit pristup vsichni ostatni? Nebo ji musim pripojit po kazdem forku?

    3) Az provedu forkovani a potrebuji aby procesy byli ve funkci s nekonecnym cyklem, mam ji volat hned po forkovani?

    4) Nevite o odkazu, kde by byla dobre popsana problematika procesu? Mockrat dekuji za odpovedi na jednotlive otazky

    Odpovědi

    17.5.2007 00:37 Lu-Tze | skóre: 15 | blog: Lu-Tzeho blog
    Rozbalit Rozbalit vše Re: jednoduche forkovani
    Podle mě nemá smysl ti na to odpovídat. Jestli chceš naprogramovat seriózní program, tak musíš vycházet ze znalostí a ne domněnek a náhodně posbíraných faktů z diskuze. Za vhodný a rychlý úvod do problematiky bych považoval slajdy Martina Berana (http://www.ms.mff.cuni.cz/~beran/vyuka/UNIX/.cs#materialy), studiem a ošaháním si příkladů, které jsou na té samé stránce určitě taky nic nezkazíš :-)

    man fork, man shmget, man shmat atd. :-)
    17.5.2007 00:44 Lu-Tze | skóre: 15 | blog: Lu-Tzeho blog
    Rozbalit Rozbalit vše Re: jednoduche forkovani
    A nezapomeň na synchronizaci přístupu ke sdílené paměti :-)
    17.5.2007 12:37 Michael26100
    Rozbalit Rozbalit vše Re: jednoduche forkovani
    Diky za odkaz, na slidech jsou ale asi jen tri o procesech a jestly jsem se dobre dival tak jen tri zdrojove texty ke procesum, nenasel jsem tam vsechno co jsem hledal, ale i tak moc diky...
    17.5.2007 00:43 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: jednoduche forkovani
    Pokud mají jednotlivé instance ve větší míře pracovat se sdílenými daty, stálo by za zvážení, zda místo procesů nepoužít thready.
    17.5.2007 01:09 Michael26100
    Rozbalit Rozbalit vše Re: jednoduche forkovani
    Pomoci vlaken jsem uz ulohu resil, ale ted musim pouzit procesy...
    17.5.2007 11:07 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: jednoduche forkovani
    Musíte z technických důvodů (jakých?) nebo proto, že je to domácí úkol?
    17.5.2007 12:00 Michael26100
    Rozbalit Rozbalit vše Re: jednoduche forkovani
    Je to sem. uloha...
    17.5.2007 12:03 outsider
    Rozbalit Rozbalit vše Re: jednoduche forkovani
    Tak ty otazky konzultujte s vyucujim, ne s nama... Domaci ukoly za vas nikdo resit nebude :-)
    17.5.2007 00:52 Michael26100
    Rozbalit Rozbalit vše Re: jednoduche forkovani
    1) To asi (ne)funguje, v poli mam ulozeny pid child procesů, ale jak se k nim ted mam dostat?(ale ps hlasi 10 defunct, coz asi neni dobre)

    while(i<10){ switch(pid=fork()) { case -1: exit(1);

    case 0: exit(2);

    default: {a[i]=pid;i++;} } } }
    michich avatar 17.5.2007 08:04 michich | skóre: 51 | blog: ohrivane_parky
    Rozbalit Rozbalit vše Re: jednoduche forkovani
    Vzhledem k tomu, že se ti tví potomci okamžitě ukončují tím exit(2), tak z nich máš zombíky.
    17.5.2007 11:08 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: jednoduche forkovani
    Nepletete si exit a break?
    17.5.2007 12:23 Michael26100
    Rozbalit Rozbalit vše Re: jednoduche forkovani
    Melo by to tedy vypadat tak, ze budu mit jeste jeden zdrojovy text .c ve kterem bude funkce s nekonecnym cyklem pro pristup ke sdilene strukture(se synchonizaci), misto exit bude fce exec s cestou k zdr.t. a ve vetvi pro rodice bude wait(na vytvoreneho potomka)?

    Bude se pak dedit pouze puvodni rodic(bez vytvorenych potomku)?
    17.5.2007 12:32 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: jednoduche forkovani
    Obávám se, že nemá smysl odpovídat na takovéto jednotlivé dotazy, když je patrné, že vám chybí pochopení základních principů. Nejdřív si o problematice něco přečtěte, určitě jste na přednáškách dostali doporučenou nějakou literaturu, případně se podívejte na texty, na které vás odkazovali kolegové.
    multi avatar 17.5.2007 12:05 multi | skóre: 38 | blog: JaNejsemOdsut
    Rozbalit Rozbalit vše Re: jednoduche forkovani
    asi nebude optimalni koncit proces kdyz jich chces mit jeste vice
    root c21 root c22
    17.5.2007 12:34 Michael26100
    Rozbalit Rozbalit vše Re: jednoduche forkovani
    Díky za odkaz, obsah vypada dost zajimave...

    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.