abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 04:55 | Nová verze

    OpenJS Foundation, oficiální projekt konsorcia Linux Foundation, oznámila vydání verze 22 otevřeného multiplatformního prostředí pro vývoj a běh síťových aplikací napsaných v JavaScriptu Node.js (Wikipedie). V říjnu se verze 22 stane novou aktivní LTS verzí. Podpora je plánována do dubna 2027.

    Ladislav Hagara | Komentářů: 0
    dnes 04:22 | Nová verze

    Byla vydána verze 8.2 open source virtualizační platformy Proxmox VE (Proxmox Virtual Environment, Wikipedie) založené na Debianu. Přehled novinek v poznámkách k vydání a v informačním videu. Zdůrazněn je průvodce migrací hostů z VMware ESXi do Proxmoxu.

    Ladislav Hagara | Komentářů: 0
    dnes 04:11 | Nová verze

    R (Wikipedie), programovací jazyk a prostředí určené pro statistickou analýzu dat a jejich grafické zobrazení, bylo vydáno ve verzi 4.4.0. Její kódové jméno je Puppy Cup.

    Ladislav Hagara | Komentářů: 0
    včera 22:44 | IT novinky

    IBM kupuje společnost HashiCorp (Terraform, Packer, Vault, Boundary, Consul, Nomad, Waypoint, Vagrant, …) za 6,4 miliardy dolarů, tj. 35 dolarů za akcii.

    Ladislav Hagara | Komentářů: 7
    včera 15:55 | Nová verze

    Byl vydán TrueNAS SCALE 24.04 “Dragonfish”. Přehled novinek této open source storage platformy postavené na Debianu v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    včera 13:44 | IT novinky

    Oznámeny byly nové Raspberry Pi Compute Module 4S. Vedle původní 1 GB varianty jsou nově k dispozici také varianty s 2 GB, 4 GB a 8 GB paměti. Compute Modules 4S mají na rozdíl od Compute Module 4 tvar a velikost Compute Module 3+ a předchozích. Lze tak provést snadný upgrade.

    Ladislav Hagara | Komentářů: 0
    včera 04:44 | Nová verze

    Po roce vývoje od vydání verze 1.24.0 byla vydána nová stabilní verze 1.26.0 webového serveru a reverzní proxy nginx (Wikipedie). Nová verze přináší řadu novinek. Podrobný přehled v souboru CHANGES-1.26.

    Ladislav Hagara | Komentářů: 0
    včera 04:33 | Nová verze

    Byla vydána nová verze 6.2 živé linuxové distribuce Tails (The Amnesic Incognito Live System), jež klade důraz na ochranu soukromí uživatelů a anonymitu. Přehled změn v příslušném seznamu. Tor Browser byl povýšen na verzi 13.0.14.

    Ladislav Hagara | Komentářů: 0
    včera 04:22 | Nová verze

    Byla vydána nová verze 30.0.0 frameworku pro vývoj multiplatformních desktopových aplikací pomocí JavaScriptu, HTML a CSS Electron (Wikipedie, GitHub). Chromium bylo aktualizováno na verzi 124.0.6367.49, V8 na verzi 12.4 a Node.js na verzi 20.11.1. Electron byl původně vyvíjen pro editor Atom pod názvem Atom Shell. Dnes je na Electronu postavena celá řada dalších aplikací.

    Ladislav Hagara | Komentářů: 2
    včera 04:11 | Nová verze

    Byla vydána nová verze 9.0.0 otevřeného emulátoru procesorů a virtualizačního nástroje QEMU (Wikipedie). Přispělo 220 vývojářů. Provedeno bylo více než 2 700 commitů. Přehled úprav a nových vlastností v seznamu změn.

    Ladislav Hagara | Komentářů: 0
    KDE Plasma 6
     (72%)
     (9%)
     (2%)
     (17%)
    Celkem 741 hlasů
     Komentářů: 4, poslední 6.4. 15:51
    Rozcestník
    Štítky: není přiřazen žádný štítek

    Dotaz: Přesměrování výstupu /dev/ttyS0, aby to mohlo číst více aplikací

    23.10.2008 12:56 6
    Přesměrování výstupu /dev/ttyS0, aby to mohlo číst více aplikací
    Přečteno: 503×
    Přemýšlel jsem o vytvoření named pipe, kam bych posílal výstup /dev/ttyS0, ale ta neumožňuje souběžné čtení roury více aplikacemi. Jak mohu docílit toho, aby ttyS0 mohlo číst více aplikací najednou? Přesměrování do textového souboru nepřipadá v úvahu, jedu z CF karty.

    Odpovědi

    23.10.2008 22:58 6
    Rozbalit Rozbalit vše Re: Přesměrování výstupu /dev/ttyS0, aby to mohlo číst více aplikací
    Jde to vůbec?
    23.10.2008 23:08 Bilbo
    Rozbalit Rozbalit vše Re: Přesměrování výstupu /dev/ttyS0, aby to mohlo číst více aplikací
    Kratka odpoved:

    Ano, jde.

    Delsi odpoved:

    Vytvori se X pojmenovanych rour (X = pocet aplikaci, ktere maji zajem ty data cist). Nasadi se program (demon), ktery cte z /dev/ttyS0 a co dostane, zapisuje do vsech rour. Kazdy program si pak cte ze sve vlastni roury svoji kopii.

    Tohle zvlada napr. program "tee", viz. "man tee"

    Ale v tomhle pripade bude pouziti asi takovehle:

    tee </dev/ttyS0 >prvni_roura druha_roura treti_roura .... n-ta_roura
    24.10.2008 00:25 6
    Rozbalit Rozbalit vše Re: Přesměrování výstupu /dev/ttyS0, aby to mohlo číst více aplikací
    No a co kdyz jedna z rour "nebude vyzvednuta"? Potom se to celý sekne?
    25.10.2008 16:48 Bilbo
    Rozbalit Rozbalit vše Re: Přesměrování výstupu /dev/ttyS0, aby to mohlo číst více aplikací
    Bohuzel jo. V praxi ma roura "kapacitu" defaultne 4KB a jakmile mnozstvi neprectenych dat v ni je vyssi, tak zapisovaci proces ceka nez si druha strana obsah vyzvedne.

    Optimalni by bylo napsat si "vlastni tee" (nebo upravit existujici), ktere tohle osetri (zjisti si, jestli se read nezablokuje a pokud ano, tak nebude zapisovat, ale bude si to ukladat do pameti nebo zahazovat ... dokud se ten proces na druhem konci zase neobnovi)

    Coz ale neni zas uplne trivialni reseni
    25.10.2008 17:56 6
    Rozbalit Rozbalit vše Re: Přesměrování výstupu /dev/ttyS0, aby to mohlo číst více aplikací
    Neumim programovat, chtělo by to něco do skriptů.
    27.10.2008 21:22 petr_p | skóre: 59 | blog: pb
    Rozbalit Rozbalit vše Re: Přesměrování výstupu /dev/ttyS0, aby to mohlo číst více aplikací

    Něco jsem vytvořil. Jmenuje se to vee a zatím toho moc neumí. Po vyčerpání vnitřního bufferu se zablokuje.

    Časem zkusím naimplementovat dvě strategie. Jedna bude bude dynamické zvětšování bufferu, druhá bude zahazování dat či zabití líného konzumenta.

    27.10.2008 21:15 petr_p | skóre: 59 | blog: pb
    Rozbalit Rozbalit vše Re: Přesměrování výstupu /dev/ttyS0, aby to mohlo číst více aplikací
    roura "kapacitu" defaultne 4KB

    Hovoříme-li o Linuxu, tak to tak bývalo do verze 2.6.11. Od té doby je kapacita roury 64 KiB. Ty 4 kila je pouze garantovaná atomicita zápisu.

    23.10.2008 23:15 petr_p | skóre: 59 | blog: pb
    Rozbalit Rozbalit vše Re: Přesměrování výstupu /dev/ttyS0, aby to mohlo číst více aplikací

    Podívejte na nástroj socat.

    Skoušel jsem to s ním přes UNIX sockety, ale ve výsledku mi šel první znak prvnímu čtecímu procesu, druhý znak druhému a zase třetí znak prvnímu procesu atd.

    Určitě by to šlo obejít pře multicastové UDP pakety.

    Ale mnohem jednodušší bude si na to napsat vlastní program.

    Problém ale je, co dělat s čtecím procesem, který se zablokuje. Mají se data pozdržet jen pro něj, má se zastavit přeposílání všem procesům, mají se vůbec data bufferovat, nebo se mají nechat propadnout?

    25.10.2008 16:37 6
    Rozbalit Rozbalit vše Re: Přesměrování výstupu /dev/ttyS0, aby to mohlo číst více aplikací
    Tak to tee funguje-nefunguje jak jsem myslel. Čeká to na vyprázdnění všech rour.
    25.10.2008 16:41 6
    Rozbalit Rozbalit vše Re: Přesměrování výstupu /dev/ttyS0, aby to mohlo číst více aplikací
    Anebo to vyřešit jinak, jen nevím jak. Zařízení za sériovým portem dělá to, že monitoruje napětí a posílá hodnoty po sériovém portu. Problém je, že to občas pošle třeba "INPUT: BUTTON1", což je reakce na zmáčknutí 1. tlačítka na zařízení, já ale potřebuju na toto v reálném čase reagovat na pc a zároveň číst hodnoty napětí.
    25.10.2008 19:15 6
    Rozbalit Rozbalit vše Re: Přesměrování výstupu /dev/ttyS0, aby to mohlo číst více aplikací
    Co takhle zapsat data do mysql tabulky typu MEMORY? Jak? Zkoušel jsem to, ale nějak to nestíhá. Jak daný příkaz upravit, aby to stíhalo? Totiž i kdyby to chvíli nestíhalo naprosto, je potřeba aby se to dohnalo, protože data na /dev/ttyS0 neproudí pořád. Tohle nestíhá:
    mysql -uwdog -prur -e "INSERT INTO \`ttyS0\` ( \`id\` , \`timestamp\` , \`text\` ) VALUES  ( NULL , NULL , '`cat /dev/ttyS0 | head -n 1`')" robot
    
    25.10.2008 20:46 6
    Rozbalit Rozbalit vše Re: Přesměrování výstupu /dev/ttyS0, aby to mohlo číst více aplikací
    Tak takhle to jede. Jen si nejsem jistej jestli to pojede i při zatížení systému? Asi by to chtělo buffer. Jak ho vyskriptovat?
    ii=0
    cat /dev/ttyS0 | while read LINE
    do
    ii=$(($ii+1))
      mysql -uwdog -prur -e "INSERT INTO \`ttyS0\` ( \`id\` , \`timestamp\` , \`text\` ) VALUES  ( $ii , NULL , '$LINE')" robot &
    done
    
    27.10.2008 23:43 pamet
    Rozbalit Rozbalit vše Re: Přesměrování výstupu /dev/ttyS0, aby to mohlo číst více aplikací
    Tak jsem to celý změnil a teď to obsluhuje php skript který to hází do databáze. Využití cpu je max 8 procent oproti předchozímu 80 procentnímu a je to rychlejší.

    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.