Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Erlang

Bb2fd3b5456ad0012799b2045f4cd212?s=47 Miklos V
January 05, 2010
67

 Erlang

Bb2fd3b5456ad0012799b2045f4cd212?s=128

Miklos V

January 05, 2010
Tweet

Transcript

  1. Életviteli eszközök elosztott környezetben Vajna Miklós 2010. január 5.

  2. Bevezet˝ o Életviteli rendszer: infokommunikációs eszközök rendszerbe kapcsolása Digitális vérnyomásmér˝

    o, mérleg, h˝ omér˝ o, mobiltelefon, aktivitásmér˝ o Célja: id˝ os és/vagy rászoruló emberek segítése Otthon/munkahelyen minél tovább független, hasznos tagjai maradjanak a társadalomnak
  3. Feladat leírása Ilyen rendszerek építésére különféle keretrendszereket használnak Megvizsgálni, hogy

    az Erlang nyelv és környezet alkalmas-e ilyen célra Az alkalmasság kiválóan bizonyítható egy Erlang-alapú rendszer tervezésével
  4. Motiváció Az életviteli rendszereknél a keretrendszerrel szemben követelmény az elosztottság,

    hibat˝ urés és a párhuzamosság magasfokú támogatása Az Erlang nyelvet eredetileg telefonközpontok programozására fejlesztették ki, ahol ugyanezek a tulajdonságok jellemz˝ oek
  5. Megoldott feladatok Kapcsolódó elérhet˝ o rendszerek bemutatása Jelenleg elérhet˝ o

    életviteli rendszerek feltérképezése: Tunstall, Everon, Telcomed, stb. Távoli eljáráshívást segít˝ o keretrendszerek áttekintése RPC, DCOM, CORBA, XML-RPC, OSGi Egy-egy rendszer (a Tunstall és az OSGi) részletesebb ismertetése
  6. Megoldott feladatok Erlang-alapú rendszer tervezése Legfontosabb követelmények áttekintése: Elosztottság, dinamizmus

    A rendszer elemeinek meghatározása A rendszer határainak definiálása UML értelmezése Erlang környezetben
  7. Megoldott feladatok Formális tervezés UML használatával Elemek feladatainak, szolgáltatásainak leírása

    Statikus struktúradiagram Szekvenciadiagramok
  8. Megoldott feladatok Erlang-alapú rendszer tervezése Node - Id + ping()

    Center - Sensors - Subscriptions + start() + stop() + reg(Address, Name) + subscribe(Name, Address) + lookup(Name) + notify(Message) Endpoint - Messages + start(Config) + stop() Sensor - Centers + query(Message) + control(Message) Terminal - Centers + notify(Message) Message + Data + Description + From + To + Receiver Driver + translate(Node, Number) A rendszer statikus struktúradiagramja
  9. Megoldott feladatok Erlang-alapú rendszer tervezése «create» :Center «create» :Sensor «create»

    :Terminal register() subscribe() notify() notify() Szekvenciadiagram: üzenetküldés szenzorról
  10. Megoldott feladatok Megvalósítás Els˝ o változat (szenzor-központ-terminál) Redundancia támogatása Eszközmeghajtók

    Felhasználói felület Hibat˝ urés
  11. Tesztelési környezet Linux operációs rendszer Erlang R12B-5 Helyi hálózat: clevo.local,

    ibook.local T˝ uzfal finomhangolása Automatizált tesztkörnyezet Er˝ oforrásigény beágyazott eszközökbe: 16 MB memória, bár SAE-vel egészen 0.5 MB-ig el lehet menni
  12. Jöv˝ obeli lehet˝ oségek Grafikus felhasználói felület Dinamikusabb konfiguráció, központok

    automatikus keresése Mért adatok adatbázisban való tárolása Tényleges életviteli eszközök integrálása