Személyes eszközök
Keresés

 

A InfoWiki wikiből

(Változatok közti eltérés)
(Új oldal, tartalma: „__NOTOC__ {{page_addr|TITÁN projekt}} = A projekt célja = * létrehozni egy programozási környezetet, ahol nagy számolásigényű műveletek elosztottan, több szá...”)
Aktuális változat (2009. június 24., 18:17) (lapforrás)
(uploaded)
 
(6 közbeeső változat nincs mutatva)
1. sor: 1. sor:
-
__NOTOC__
+
 
-
{{page_addr|TITÁN projekt}}
+
= A projekt célja =
= A projekt célja =
6. sor: 5. sor:
* létrehozni egy programozási környezetet, ahol nagy számolásigényű műveletek elosztottan, több számítógépen futtatva belátható időn belül kiértékelhetőek
* létrehozni egy programozási környezetet, ahol nagy számolásigényű műveletek elosztottan, több számítógépen futtatva belátható időn belül kiértékelhetőek
* a programozási környezet tartalmaz egy erre a célre felkészített programozási nyelvet, fordítóprogramot, futtatási környezet.
* a programozási környezet tartalmaz egy erre a célre felkészített programozási nyelvet, fordítóprogramot, futtatási környezet.
 +
 +
= Résztvevők =
 +
 +
* Hernyák Zoltán - projekt vezető
 +
* Király Roland - projekt vezető
 +
 +
= Programozási nyelv =
 +
 +
Egy speciális felépítésű programozási nyelv, amellyel elsősorban matematikai problémák, azok kiértékelésének menete írható le. A szintaktika egyszerűsített, a szemantika erősen épít a funkcionális nyelvek ''lusta kiértékelés''re.
 +
 +
A programozási nyelv két három szintet mutat:
 +
* '''TITAN-M''' legfelső szint, legmagasabb absztrakciót mutató réteg, a felhasználói szint. Mutat bizonyos 5GL jellemzőket, de funkcionális nyelvi elemek is fellelhetőek benne
 +
* '''TITAN-A''' középső szint, a legfelső szint erre ''fordítódik át'', ez egy magas szintű assembly nyelvnek is tekinthető. Programozás ezen a szinten elképzelhető, de nagyon aprólékos munka.
 +
* '''C#''' legalsó szint (C++, Java,  vagy C#), az assembly kód egy ilyen szintű kódra fordítódik át (forráskód-generálás). A megfelelő nyelvi fordító generálja a futtatható .exe filet.
 +
 +
= Programozási környezet =
 +
 +
A programozási környezet alkotja azt a felületet, ahol a felhasználók a feladatokat (utasítások, programkód) beviszik a TITAN rendszerbe, és ahol a számítási eredményekről tájékoztatást kapnak.
 +
 +
* az utasításokat, programkódokat WEB felületen lehet bevinni, a web-lap ezt belső hálózati kapcsolaton juttatja el a TITAN motorhoz, aki a kódokat fordítja, az utasításokat tárolja
 +
* a számítási feladatokat WEB-es felületen lehet időzíteni, vagy indítani
 +
* a futó számítási feladatok állapotairól szintén WEB-es felületen lehet információkat szerezni
 +
* a számítási eredményeket a TITAN motor tárolja el maradandóan, és WEB-es felületen lehet letölteni, vagy megtekinteni
 +
 +
= Futtató környezet =
 +
 +
A TITAN motor lényege egy elosztott futtató rendszer az alábbi komponensekkel:
 +
* '''authorizációs szolgáltatás''': a rendszert használó felhasználól accountjait, és jogosultságait tárolja (alapvetően egy sql szerver, és néhány API függvény)
 +
* '''kódgyüjtemény''': a felhasználók által korábban beírt, saját fejlesztésű függvények tárolása. A feladatok megfogalmazása (kódolása) során alkalmazhatja a felhasználó a saját függvényeit is. Van mód publikus függvények készítésére, melyeket meg lehet osztani más felhasználókkal is (ilyenek a TITAN LIBRARY függvényei is). A publikus, megosztott függvények dokumentálásának, verziókövetésének erős megkötései vannak (egy jogosultsági renszerrel és meta-információkat kezelő FTP szervernek is felfogható)
 +
* '''feladatok''': a rendszerbe bevitt számítási feladatok. A feladatok ütemezésre kerülnek (figyelembe véve a feladatot rögzítő felhasználó jogosultásgait, prioritásait). A feladat státusza lehet várakozó, folyamatban, befejezett, törölt.
 +
* '''ütemező''': a feladatok ütemezését végző szolgáltatás. folyamatosan figyeli a TITÁN erőforrásokat (számítógépek, memória, processzor), és dönt a feladatok sorrendiségéről, indításáról.
 +
* '''file-rendszer''': a TITÁN feladatokat futtató programok egyetlen összefüggő diszk-rendszert, file-rendszert látnak, melyek fizikailag több számítógép diszkjein vannak szétszórva.
 +
* '''operációs-rendszer''': a TITÁN kódok több számítógépen elosztva futnak. A résztvevő számítógépeken egy-egy operációs-rendszer kiegészítő alkalmazás fut, amelyen keresztül az adott gépre át lehet tölteni futtatandó kódot, indítani, leállítani, állapotáról információkat lehet lekérni.

Aktuális változat


Tartalomjegyzék

A projekt célja

  • létrehozni egy programozási környezetet, ahol nagy számolásigényű műveletek elosztottan, több számítógépen futtatva belátható időn belül kiértékelhetőek
  • a programozási környezet tartalmaz egy erre a célre felkészített programozási nyelvet, fordítóprogramot, futtatási környezet.

Résztvevők

  • Hernyák Zoltán - projekt vezető
  • Király Roland - projekt vezető

Programozási nyelv

Egy speciális felépítésű programozási nyelv, amellyel elsősorban matematikai problémák, azok kiértékelésének menete írható le. A szintaktika egyszerűsített, a szemantika erősen épít a funkcionális nyelvek lusta kiértékelésre.

A programozási nyelv két három szintet mutat:

  • TITAN-M legfelső szint, legmagasabb absztrakciót mutató réteg, a felhasználói szint. Mutat bizonyos 5GL jellemzőket, de funkcionális nyelvi elemek is fellelhetőek benne
  • TITAN-A középső szint, a legfelső szint erre fordítódik át, ez egy magas szintű assembly nyelvnek is tekinthető. Programozás ezen a szinten elképzelhető, de nagyon aprólékos munka.
  • C# legalsó szint (C++, Java, vagy C#), az assembly kód egy ilyen szintű kódra fordítódik át (forráskód-generálás). A megfelelő nyelvi fordító generálja a futtatható .exe filet.

Programozási környezet

A programozási környezet alkotja azt a felületet, ahol a felhasználók a feladatokat (utasítások, programkód) beviszik a TITAN rendszerbe, és ahol a számítási eredményekről tájékoztatást kapnak.

  • az utasításokat, programkódokat WEB felületen lehet bevinni, a web-lap ezt belső hálózati kapcsolaton juttatja el a TITAN motorhoz, aki a kódokat fordítja, az utasításokat tárolja
  • a számítási feladatokat WEB-es felületen lehet időzíteni, vagy indítani
  • a futó számítási feladatok állapotairól szintén WEB-es felületen lehet információkat szerezni
  • a számítási eredményeket a TITAN motor tárolja el maradandóan, és WEB-es felületen lehet letölteni, vagy megtekinteni

Futtató környezet

A TITAN motor lényege egy elosztott futtató rendszer az alábbi komponensekkel:

  • authorizációs szolgáltatás: a rendszert használó felhasználól accountjait, és jogosultságait tárolja (alapvetően egy sql szerver, és néhány API függvény)
  • kódgyüjtemény: a felhasználók által korábban beírt, saját fejlesztésű függvények tárolása. A feladatok megfogalmazása (kódolása) során alkalmazhatja a felhasználó a saját függvényeit is. Van mód publikus függvények készítésére, melyeket meg lehet osztani más felhasználókkal is (ilyenek a TITAN LIBRARY függvényei is). A publikus, megosztott függvények dokumentálásának, verziókövetésének erős megkötései vannak (egy jogosultsági renszerrel és meta-információkat kezelő FTP szervernek is felfogható)
  • feladatok: a rendszerbe bevitt számítási feladatok. A feladatok ütemezésre kerülnek (figyelembe véve a feladatot rögzítő felhasználó jogosultásgait, prioritásait). A feladat státusza lehet várakozó, folyamatban, befejezett, törölt.
  • ütemező: a feladatok ütemezését végző szolgáltatás. folyamatosan figyeli a TITÁN erőforrásokat (számítógépek, memória, processzor), és dönt a feladatok sorrendiségéről, indításáról.
  • file-rendszer: a TITÁN feladatokat futtató programok egyetlen összefüggő diszk-rendszert, file-rendszert látnak, melyek fizikailag több számítógép diszkjein vannak szétszórva.
  • operációs-rendszer: a TITÁN kódok több számítógépen elosztva futnak. A résztvevő számítógépeken egy-egy operációs-rendszer kiegészítő alkalmazás fut, amelyen keresztül az adott gépre át lehet tölteni futtatandó kódot, indítani, leállítani, állapotáról információkat lehet lekérni.
A lap eredeti címe: „http://wiki.ektf.hu/wiki/Titan:Nyitolap
Nézetek
nincs sb_3.16.42.49 cikk