V čom sa programujú real-time aplikácie?

Re:V čom sa programujú real-time aplikácie?
« Odpověď #45 kdy: 08. 02. 2013, 11:49:46 »
V Erlangu.
Jak už tady zaznělo, Erlang je jenom soft-realtime.


Franta <xkucf03/>

Re:V čom sa programujú real-time aplikácie? Ada?
« Odpověď #46 kdy: 08. 02. 2013, 19:48:41 »
Znám několik bank, které to používají, ale máte pravdu, že moc rozšířené to není

Java se v bankách používá hodně, ale co to má společného s real-time? V bankách jde v první řadě o spolehlivost/bezchybnost a běžně se používá dávkové zpracování – „reálný čas“ tam znamená, že platba proběhne zhruba teď nebo za pět minut (oboje je velký úspěch oproti zpracování které probíhá jednou denně a ještě se čeká na podobnou smyčku v jedné nebo dvou dalších institucích, takže nakonec to trvá tak dva dny).

Rax

Re:V čom sa programujú real-time aplikácie? Ada?
« Odpověď #47 kdy: 09. 02. 2013, 00:45:06 »
Java se v bankách používá hodně, ale co to má společného s real-time?
a ještě se čeká na podobnou smyčku v jedné nebo dvou dalších institucích, takže nakonec to trvá tak dva dny).

Java ani běžné bankovnictví nemá s realtime společného vůbec nic a 2 dny to trvá protože banky chtějí aby to tak dlouho trvalo, i Java by zvládla převést prachy z Estonska do Portugalska do dvou minut.

zzz

Re:V čom sa programujú real-time aplikácie? Ada?
« Odpověď #48 kdy: 09. 02. 2013, 04:35:26 »
Java ani běžné bankovnictví nemá s realtime společného vůbec nic a 2 dny to trvá protože banky chtějí aby to tak dlouho trvalo, i Java by zvládla převést prachy z Estonska do Portugalska do dvou minut.

Proc to tak chteji ty banky? Ja bych to chtel mit ASAP.

Re:V čom sa programujú real-time aplikácie? Ada?
« Odpověď #49 kdy: 09. 02. 2013, 06:59:57 »
Proc to tak chteji ty banky? Ja bych to chtel mit ASAP.
To by mě taky zajímalo. Chápu, že to musí projít přes clearing, takže jednou za čas potřebují vypočítat celkovou sumu vzájemných transakcí, ale proč to v dnešní době musí dělat jednou za den a ne třeba jednou za hodinu, to by mě fakt zajímalo.


sbs

Re:V čom sa programujú real-time aplikácie?
« Odpověď #50 kdy: 09. 02. 2013, 09:09:58 »
IMHO čím déle u nich peníze zůstanou, tím více penězi disponují v jednom časovém okamžiku a mohou je investovat atd...

Re:V čom sa programujú real-time aplikácie?
« Odpověď #51 kdy: 09. 02. 2013, 10:05:10 »
IMHO čím déle u nich peníze zůstanou, tím více penězi disponují v jednom časovém okamžiku a mohou je investovat atd...
To by ale platilo jenom v případě, že by výrazně převažovaly toky jedním směrem, což bych ani moc nepředpokládal (ale nic o tom nevím, bylo by zajímavý, kdyby se k tomu mohl vyjádřit někdo, kdo tohle prostředí zná).

#

Re:V čom sa programujú real-time aplikácie?
« Odpověď #52 kdy: 09. 02. 2013, 10:36:16 »
Protoze financni bilance se vztahuji k pulnoci, teda pokud si napr pucim kazdej den v 23:55 1 bilion dolaru od centralni banky a v 0:05 ji vratim, tak bilancni suma teto banky je + 1 bilion. Toto se i v praxi vyuziva k manipulovani stavu. Netvrdim, ze to je primarni duvod a nevim jestli to plati pro "nase" banky, ale v praxi se to uz vicekrat zneuzivalo k vylepseni cisel (a ano, v tomto pripade to lze opravdu prevadet promptne, zvlastni, ze).

student

Re:V čom sa programujú real-time aplikácie?
« Odpověď #53 kdy: 09. 02. 2013, 12:30:50 »
To by ale platilo jenom v případě, že by výrazně převažovaly toky jedním směrem, což bych ani moc nepředpokládal (ale nic o tom nevím, bylo by zajímavý, kdyby se k tomu mohl vyjádřit někdo, kdo tohle prostředí zná).
Ja to nepoznam, ale sedi mi to tak:
Predstav si, ze ty by si posielal ostatnym peniaze hned a oni tebe az za dlhsiu dobu a skus si spocitat, ako by si na tom bol vacsinu casu (preto 1 banka tak lahko nezavedie rychle prevody - musi ich k tomu hromadne dotlacit zakon).
Druha vec je, ze aj v ramci 1 banky sa im oplati, aby prevod trval dlhsie. Ide o to, ze pocas prevadzania su peniaze "nikoho" (teda len banky) - nemusi z toho davat uroky a prakticky ich nemusi mat ani ziadnym sposobom k dispozicii (=moze ich investovat); suma takychto transakcii za dobu prevodu moze byt pomerne zaujimava.

Re:V čom sa programujú real-time aplikácie?
« Odpověď #54 kdy: 09. 02. 2013, 14:30:23 »
Druha vec je, ze aj v ramci 1 banky sa im oplati, aby prevod trval dlhsie. Ide o to, ze pocas prevadzania su peniaze "nikoho" (teda len banky) - nemusi z toho davat uroky a prakticky ich nemusi mat ani ziadnym sposobom k dispozicii (=moze ich investovat); suma takychto transakcii za dobu prevodu moze byt pomerne zaujimava.
Nevim, me se to nezda. Uroky se predpokladam pocitaji taky jednou za den, takze to nahraje roli. Navic urok za jeden jeden je tk miziva castka, ze to vubec nestoji za rec. Podle me pokud by se dve banky dohodly, ze prevod mezi nimi bude trvat hodinu, tak by to byla tak velika konkurencni vyhoda, ze by jim to vydelalo daleko vic penez. Predpokladam, ze to spis bude fakt neco s tim clearingem, co ma koreny nekde v Rakousku-Uhersku :) a nikdo se jeste nerozhoupal to zmenit.

OMG

Re:V čom sa programujú real-time aplikácie?
« Odpověď #55 kdy: 09. 02. 2013, 15:48:34 »
Clearing

Clearing v Česku nařizuje centrální banka. Všechny platby mezi bankami musí přes něj. Proč je clearing nařízen? Nevím?
ČNB má během dne různé ceny za clearing - čímž komerční banky motivuje, aby převody rovnoměrně rozkládaly během dne (a nesposílaly velké balíky transakcí naráz).
To je důvod, proč převody peněz mezi bankami trvají. Nemá to nic společného s (ne)realtimovostí bankovních aplikací. Realtimové aplikace se v bankovním světě používají maximálně v pacemakerech jejich zaměstnanců :-)


Real-timové aplikace:
1) Řeší se HW. Pokud je HW PC platforma (což obecně není problém), tak se řeší jaký je použit časovač (případně se použije extra časovací karta).
2) Řeší se OS. OS může běžet přímo na HW, ale v poslední době je celkem oblíbená situace, že realtimový OS běží nad populárním ne-realtimovým OS (např. nad linuxem, nebo windows).
3)  Poté, co mám HW a realtime-OS, tak potom řeším, jaké jazyky tahle kombinace podporuje.

Moje zkušenosti s realtimovými aplikacemi byly všechny v jazyce C. C je určitě typický jazyk v tomhle oboru. Ale určitě to mohou být i jiné jazyky.

Konkrétní příklad:
Průmyslový robot ABB - řídící jednotka je PC s linuxem. Nad linuxem běží RTOS VxWorks. A uživatel píše programy v jazyce RAPID (proprietální věc ABB, syntaxí se nejvíce podobající se asi pascalu).


Konkrétně pro VxWorks se dá programovat v jazyce Ada (historicky se časově kritické aplikace psaly v Adě), nebo v C/C++ (typické) a taky v (pozor!) Javě. Java (a obecně i .NET) nejsou v realtimovém světě úplně mimo, jak by se mohlo zdát. Vtip je v tom, že to pochopitelně neběží na běžném JVM. Googlujte Real-Time Specification for Java.

student

Re:V čom sa programujú real-time aplikácie?
« Odpověď #56 kdy: 09. 02. 2013, 16:02:38 »
Nevim, me se to nezda. Uroky se predpokladam pocitaji taky jednou za den, takze to nahraje roli. Navic urok za jeden jeden je tk miziva castka, ze to vubec nestoji za rec.
Ok, ked to "cucanim z prstu" odhadnem, ze by sa cez banky platili len vyplaty ludom v CR a nic viac:
To mame tusim 26 000 priemerna mzda, krat 10 milionov zamestnanych, co je nieco ako 260 miliard CZK kazdy mesiac na dokopy tusim 2 dni, takze ak su vyplaty rozlozene rovnomerne, tak ide o bezurocnu pozicku niecoho ako je 260/15.2=17 miliard CZK. Samozrejme, rozpocita sa to medzi banky, ale myslim, ze toto ziadna neodmietne. Uroky z tejto sumy by boli potom podla typu uctu prijimatela, ale tam o statistikach nic neviem.

Re:V čom sa programujú real-time aplikácie?
« Odpověď #57 kdy: 09. 02. 2013, 16:10:42 »
Clearing v Česku nařizuje centrální banka. Všechny platby mezi bankami musí přes něj. Proč je clearing nařízen? Nevím?
A tak to já zas chápu - i kdyby to bylo třeba jen proto, aby byl nějaký arbitr, kdo komu a kdy peníze poslal... Nebo proto, aby měla ČNB přehled o tocích alespoň na úrovni mezibankovní.

ČNB má během dne různé ceny za clearing - čímž komerční banky motivuje, aby převody rovnoměrně rozkládaly během dne (a nesposílaly velké balíky transakcí naráz).
To je důvod, proč převody peněz mezi bankami trvají.
Že to zdržuje clearing, to mi bylo celkem jasné, spíš by mě právě zajímalo, proč ten clearing funguje tak pomalu.

Docela zajímavá je diskuse na http://www.mesec.cz/clanky/jak-dlouho-trva-prevod-penez/nazory/
Nejzajímavější je asi http://www.mesec.cz/clanky/jak-dlouho-trva-prevod-penez/nazory/52361/ - hlavně ta pasáž o tom, proč je jenom jeden clearing... I když jinak je ČNB po všech stránkách chválená, tak by mě docela zajímalo, proč ten clearing je tak předpotopní...