ČVUT Fakulta dopravní v Praze
|
|
- Petra Zemanová
- před 5 lety
- Počet zobrazení:
Transkript
1 ČVUT Fakulta dopravní v Praze Simulace průchodu paketu prostřednictvím jednoduché sítě VSM (K611) Matyáš Horák 2011/2012
2 Úvod Trochu se pohybuji, v oblasti počítačových sítí, vybral jsem si tedy simulaci jednoduché sítě s hvězdicovitou strukturou což je v dnešní době nejčastější typ sítě. Simulaci budu provádět pomocí napsaného programu v PHP. Popis systému Modelový příklad je tvořen 4 prvky: - PC1 - PC2 - Switch - Server Prvky jsou mezi sebou propojené prostřednictvím Switche. Switch obsahuje tzv. vyrovnávací paměť ve které udržuje jednotlivé pakety které se nepodařili odeslat na daném portu. V tomto případě obsahuje 3 aktivní porty (13, 23 a 34). Server je brán jako zařízení, který má za úkol řídit pakety resp. Je zpracovat a dále odeslat. Počítač PC1 i PC2 obsahuje službu která komunikuje se serverem. Může se třeba jednat o prostý CHAT po síti řízený serverem. Jeden z počítačů generuje pakety v časovém intervalu s exponenciálním rozdělením. Pokud se paket chce odeslat je nutné zjistit zda není daný spoj využíván jiným zařízením. Pokud ano pak počítač již sám generuje číslo resp. Interval za jak dlouho se pokusí odeslat paket. Tento interval je z normálního rozdělení. Tento krok se opakuje do doby než se podaří paket odeslat. Switch jak jsem již říkal obsahuje CACHE, pokud je CACHE plná a přichází další paket pak je paket automaticky zahozen. V reálné síti zařízení paket posílá znovu do doby než bude správně doručen, platí jen pro protokol TCP. Server pakety negeneruje ale provádí jejich obsluhu a zpracování. Doba obsluhy si troufám tvrdit, že je opět z exponenciálního rozdělení. Na obrázku je vidět celé schéma zapojení. Stránka 2 z 27
3 Vlastní řešení Jak jsem se již zmínil model jsem psal v jazyce PHP primárně určený k programování dynamických web stránek. Nevýhoda PHP je hlavně v tom že výpočet probíhá na serveru. Je zde toto omezení z hlediska že pokud by se prováděl výpočet na větším počtu cyklů a výpočet by trval déle jak 30sekund mohlo by dojít k zastavení vypočtu na serveru z hlediska bezpečnostního opatření proti zacykleným skriptům. Většina PHP serveru má defaultně nastavené vyčkávací watchdog na 30sekund. Z grafického hlediska jsem použil jsem jednoduchou šablonu do které jsem implementoval PHP kód. Pro generování grafů jsem využil Google char tools který disponuje hned několika varianty vykreslování grafu. Z pohledu rychlosti jsem ve skutečnosti využil jen chart.apis.google.com. Obecně nejvíc času jsem strávil s nastavením grafu aby výsledek správně vykresloval. Vyzkoušel jsem i jiné aplikace pro kreslení grafu ale nebyli příliš vhodné z hlediska omezení vykreslování množství bodů nebo rychlosti vykreslování. Poměrně všechny programy měly problém s vykreslením více jak 800 bodů. Funkční simulace je k dispozici na Popis aplikace Celý kód je poměrně složitý, nebudu zde tedy popisovat všechny jeho části ale zaměřím se na ty zajímavé a problematické. V první řadě jsem potřeboval vyřešit generování náhodných čísel z exponenciálního rozdělení protože PHP umí generovat čísla jen z normálního rozdělení. Našel jsem že existuje rozšiřující balík pro PHP5 který obsahuje již tyto statistické funkce. Tento balík se mi ale nepovedlo zprovoznit tak jsem vytvořil vlastní funkci generující s exponenciálním rozložením. Správnost funkce jsem si ověřil z grafu pravděpodobnosti. Stránka 3 z 27
4 Každý paket generuji jako novou třídu obsahující několik parametru pro pozdější analýzu: class packet { var $start_cas; cas yacatek pochodu paketu var $stop_cas; cas konce pochodu paketu var $od; yacatek cesty var $do; cil cesty var $aktivni = 0; zda je jeste aktivni var $provede_akci; cas kdy se hlasi o INT var $pozice; aktualni pozice var $ttl; kolik zbejva do sestreleni var $zpracovano; zda prošel serverem Souborem pravidel jsem pak každý tento paket přesouval z jednotlivých částí sítě. Pomocí příznaků jsem řešil obsazenost jednotlivých tras. V každém jednom ťiku se zjišťuje, zda nějaký paket nežádá obsluhu (var provede_akci). Resp. Se cyklicky prochází seznam packetů. Počet ťiku je dané dobou simulace. Jedna jednotka času je jeden ťik. Stránka 4 z 27
5 Parametry, které je možno ovlivňovat : - Celková doba běhu programu resp počet ťiku (Délka simulace) - Velikost vyrovnávací paměti CACHE - Střední hodnota exp. Rozdělení odesílání paketu z PC1 - Střední hodnota exp. Rozdělení odesílání paketu z PC2 - Střední hodnota exp. Rozdělení počtu ťiků na zpracování paketu Serverem Analýza výsledků a optimalizace Výsledky jsou poměrně velmi ovlivňované vstupními údaji a to hlavně to jak moc často potřebujeme zpracovávat pakety na serveru. Zase oproti tomu mají jednotlivé spoje mezi prvky omezenou kapacitu využitelnosti. Pro srovnání jsem provedl několik simulací, kde jsem měnil jen jeden parametr. Reference Stránka 5 z 27
6 Stránka 6 z 27
7 Varianta vyšší výkon serveru V této simulaci jsem změnil výkonost serveru. Výkon jsem zvětšil 10x ale výsledné doručení paketů se zvedlo jen velmi málo v řádech procent. Stránka 7 z 27
8 Varianta vetší výkon u jednoho PC V tomto případě je mnohem více odeslaných paketů. Sít je poměrně dost využita je zde také vidět mnohem víc doručených paketů, i když s větším časovým zpožděním. Velikost Cache má velký vliv při výsledném zpracování, bereme v úvahu že packet může být zahozený už i po zpracování a tím ztrácíme minimálně 8 ťiků. Každé nastavení jsou výhodná pro něco jiného a to pokud chceme přenést velká množství dat na úkor zpoždění nebo malé množství dat, ale s malým zpožděním. Dost podstatné je i to jak je daná síť moc vytížená. V modelu se nebere v úvahu více připojených strojů. V takovém případě by docházelo k mnohem větším vytížení a nemožnost přistupovat na síť. Nejvíce vykazující z pohledu využitelnosti sítě mi přišla charakteristika četnost časů průchodu sítí. Pro více cyklů se charakteristika tvářila jako hustota pravděpodobnosti exponenciální rozdělení. Pomocí Excelu jsem provedl test hypotézy na 95% hladině. Hypotéza se nepotvrdila resp. Na 95% hladině se nejedná o exponenciální rozdělení. Stránka 8 z 27
9 Mezera na grafu mezi 0 a 8 je způsobená tím že paket musí projít síť a minimální hodnota za jakou se dokáže dostat do cíle je 8 ťiků. Závěr Ze začátku jsem se pokoušel vytvořit model v programovacím jazyce FLASH který vypočítává hodnoty na straně stanice resp. U uživatele. Měl jsem zde ale problém řešit některé programové části a simulaci jsem nakonec provedl v PHP. Tento model je velmi zjednodušený neboli v reálném světě se počítačové sítě chovají mnohem záludněji. V této simulaci mě poměrně hodné omezoval samotný jazyk PHP protože jsem si nemohl dovolit delší časy výpočtů které by zde byli potřeba. Zase jako ukázka toho, že se dá simulovat i v jiných prostředích než je například HPSim to je dobrá. Vlastní naprogramování simulace má mnoho dalších výhod a to hlavně tu že programátor není omezen z hlediska možností variabilních parametrů. Nakonec si simulaci dělá podle vlastních potřeb. Použité zdroje Stránka 9 z 27
10 Příloha: Zdrojový kód <?php // path to where you installed the library require './lib/googlechart.php'; require './lib/googlebarchart.php'; require './lib/markers/googlechartshapemarker.php'; require './lib/markers/googlecharttextmarker.php'; //require('./function.php'); if (!$_REQUEST["send"]) { $_REQUEST["delka_simulace"]=800; $_REQUEST["PC1_sth"]=10; $_REQUEST["PC2_sth"]=10; $_REQUEST["S_sth"]=5; $_REQUEST["velikost_cache"]=10;?> <!DOCTYPE html> <html> <head> <meta http-equiv="content-type" content="text/html; charset=utf-8" /> <meta name="description" content="vsm simulace sit" /> <link rel="stylesheet" type="text/css" href="./styl.css" /> <link rel="stylesheet" type="text/css" href="./form/stylform.css" /> <title>vsm simulace - 1v4</title> <link rel="shortcut icon" href="/favicon.ico" type="image/x-icon" /> <script type="text/javascript" src="./form/view.js"></script> <script type="text/javascript" src=" <!--[if lt IE 9]><script language="javascript" type="text/javascript" src="excanvas.js"></script><![endif]--> <script language="javascript" type="text/javascript" src="jquery.min.js"></script> <script language="javascript" type="text/javascript" src="jquery.jqplot.min.js"></script> <link rel="stylesheet" type="text/css" href="jquery.jqplot.css" /> </head> <body> <div id="banner"> <h1>vsm - simulace</h1> </div> <div id="content"> <img width="800px" src="./vsmschema.png" /> <h1>vstupní data</h1> <form action="index.php" method="post"> <table> Stránka 10 z 27
11 <td>délka simulace</td> <td><input type="text" name="delka_simulace" value="<?php echo $_REQUEST["delka_simulace"];?>" /></td> <td> [800]</td> <td>velikost CACHE</td> <td><input type="text" name="velikost_cache" value="<?php echo $_REQUEST["velikost_cache"];?>" /></td> <td> [10]</td> <td>str hodnota EXP r. odesílání datagramů PC-1 </td> <td> <input type="text" name="pc1_sth" value="<?php echo $_REQUEST["PC1_sth"];?>" /></td> <td> [10]</td> <td>str hodnota EXP r. odesílání datagramů PC-2 </td> <td> <input type="text" name="pc2_sth" value="<?php echo $_REQUEST["PC2_sth"];?>" /></td> <td> [10]</td> <td>str hodnota EXP r. zpracování datagramů SERVEREM </td> <td> <input type="text" name="s_sth" value="<?php echo $_REQUEST["S_sth"];?>" /></td> <td> [5]</td> </table> <input type="hidden" name="send" value="1"/> <input type="submit" value="simulovat" /> </form> <?php inicializace if ($_REQUEST["send"]) { $dobasimulace = 800; celkova doba jedne simulace $TTL = 10; //time to live packetu $strhodexpg1 = 5; //stredni hodnota pro EXP generator pro PC1 $strhodexpg2 = 10; //stredni hodnota pro EXP generator pro PC2 $strhodexpgsw = 1; //stredni hodnota zpracovani switchem $strhodexpgsrv = 5; //stredni doba zpracovani na serveru $velikostcache = 10; // velikost pameti switche if ($_REQUEST["delka_simulace"]) $dobasimulace = $_REQUEST["delka_simulace"]; if ($_REQUEST["velikost_cache"]) $velikostcache = $_REQUEST["velikost_cache"]; if ($_REQUEST["PC1_sth"]) $strhodexpg1 = $_REQUEST["PC1_sth"]; if ($_REQUEST["PC2_sth"]) $strhodexpg2 = $_REQUEST["PC2_sth"]; Stránka 11 z 27
12 if ($_REQUEST["S_sth"]) $strhodexpgsrv = $_REQUEST["S_sth"]; $obsazena13 = 0; obsazenost mezi 1a3 $obsazena23 = 0; obsazenost mezi 2a3 $obsazena34 = 0; obsazenost mezi 3a4 statisticke promene $obsazenost3vcase; $zahozenevcase; $prichodvcasep1; $prichodvcasep2; $prichodvcases; $dobapruchodu; jake jsou doby pruchodu $CetnostPruchodu; cestnost jednotlivzch casu pruchodu $vyuzititrasy13; $vyuzititrasy23; $vyuzititrasy34; ZACATEK PC1 obsahuje prvni paket $packetr[] = new packet(1,2,1,expgenerator($strhodexpg1),$ttl); PC2 obsahuje prvni paket $packetr[] = new packet(2,1,2,expgenerator($strhodexpg2),$ttl); zacatek behu cas simulace for ($cas = 0; $cas < $dobasimulace ;$cas++) { $celkem_zahodit = 0; budu citat kolik zahozenych $celkem_prichodp1 = 0; budu citat kolik prisel do P1 $celkem_prichodp2 = 0; budu citat kolik prisel do P2 $celkem_prichods = 0; budu citat kolik prisel do S $vyuzititrasy13[]=$obsazena13; $vyuzititrasy23[]=$obsazena23; $vyuzititrasy34[]=$obsazena34; Obsazenost3vCase(); jak moc je obsazeny SW foreach ($packetr as $OPacket) { //obsluhuji vsechnz packety postupne if ($OPacket->aktivni && ($OPacket->provede_akci == $cas)) { //zjistuji zda je paket aktivni a zda bude neco delat //echo "ted by neco chtel delat <br />"; if ($OPacket->pozice == 1) { //vychazi z pozice 1 if ($obsazena13) Vyckava($OPacket); //cesta 13 je obsazena else Posunz1na13($OPacket); //cesta 13 je volna elseif (($OPacket->pozice == 13) && ($OPacket->zpracovano == 0)) { //vychazi z pozice 13 $obsazena13 = 0; //uvolnil jsem cestu if (!plnacache()) Posunz13na3($OPacket); //prazdna cache muze presouvat else { $OPacket->aktivni = 0; //zabit switchem ma plnou cache $celkem_zahodit++; elseif (($OPacket->pozice == 13) && ($OPacket->zpracovano == 1)) { //vychazi z pozice 13 $obsazena13 = 0; //uvolnil jsem cestu Stránka 12 z 27
13 $celkem_prichodp1++; statistiky prichozi Posunz13na1($OPacket); elseif (($OPacket->pozice == 3) && ($OPacket->zpracovano == 0)) { //packety ktere jeste nebyli na serveru if ($obsazena34) Vyckava($OPacket); //cesta 34 je obsazena else Posunz3na34($OPacket); //cesta 34 je volna elseif (($OPacket->pozice == 34) && ($OPacket->zpracovano == 0)) { //prichayi na server $obsazena34 = 0; //uvolnuji cestu 34 $celkem_prichods++; prichod do S Posunz34na4($OPacket); elseif ($OPacket->pozice == 4) { //presun na server //odchazi ze server if ($obsazena34) Vyckava($OPacket); //cesta 34 je obsazena else Posunz4na34($OPacket); //cesta 34 je volna elseif (($OPacket->pozice == 34) && ($OPacket->zpracovano == 1)) { //prichayi na switch $obsazena34 = 0; //uvolnuji cestu 34 if (!plnacache()) Posunz34na3($OPacket); //presun na switch jen kdzy praydna cache else { $OPacket->aktivni = 0; //zabit switchem ma plnou cache $celkem_zahodit++; elseif (($OPacket->pozice == 3) && ($OPacket->zpracovano == 1) && ($OPacket->do == 2)) { //packety ktere jeste byli na serveru a jdou do 2 if ($obsazena23) Vyckava($OPacket); //cesta 23 je obsazena else Posunz3na23($OPacket); //cesta 34 je volna elseif (($OPacket->pozice == 3) && ($OPacket->zpracovano == 1) && ($OPacket->do == 1)) { //packety ktere jeste byli na serveru a jdou do 2 if ($obsazena13) Vyckava($OPacket); //cesta 13 je obsazena else Posunz3na13($OPacket); //cesta 13 je volna elseif (($OPacket->pozice == 23) && ($OPacket->zpracovano == 1)) { //prichayi na 2 $obsazena23 = 0; //uvolnuji cestu 23 $celkem_prichodp2++; statistiky prisel do P2 Posunz23na2($OPacket); //presun na server elseif (($OPacket->pozice == 23) && ($OPacket->zpracovano == 0)) { //prichayi na 3 $obsazena23 = 0; //uvolnuji cestu 23 if (!plnacache()) Posunz23na3($OPacket); //presun na switch jen kdzy praydna cache else { $OPacket->aktivni = 0; //zabit switchem ma plnou cache $celkem_zahodit++; elseif (($OPacket->pozice == 2) && ($OPacket->zpracovano == 0)) { //odchazi z 2 if ($obsazena23) Vyckava($OPacket); //cesta 23 je obsazena else Posunz2na23($OPacket); //cesta 23 je volna $zahozenevcase[] = $celkem_zahodit; Stránka 13 z 27
14 $prichodvcasep1[] = $celkem_prichodp1; $prichodvcasep2[] = $celkem_prichodp2; $prichodvcases[] = $celkem_prichods; konec behu casu simulace ZPRACOVANI DAT ZpracujDobyPruchodu(); Zpracovavam cas pruchodu site ZpracujCetnostPruchodu(); zpracovava jednotlive cestnosti pruchodu PRINT OUT Vysledku?> <h1>výsledky SIMULACE</h1> <table class='sample'> <th>doba Simulace</th> <td><?php echo $dobasimulace;?></td> <th>velikost CACHE</th> <td><?php echo $velikostcache;?></td> <th>celkem vyprodukovaných paketů</th> <td><?php echo CelkemVygenerovanoPacketu();?></td> <th>celkem zahozených - plná cache</th> <td><?php echo CelkemZahozenych();?></td> <th>celkem dorazilo z P1 do P2</th> <td><?php echo CelkemVPC1();?></td> <th>celkem dorazilo z P2 do P1</th> <td><?php echo CelkemVPC2();?></td> <th>zůstalo v zásobníku CACHE (vyřízené/na cestě ke zpracování)</th> <td><?php echo CelkemVcacheReady()." / ".CelkemVcacheNoReady();?></td> <th>celkem dorazilo na server</th> <td><?php echo CelkemPrichozichS();?></td> <th>využití trasy 1-3</th> <td><?php echo VyuzitiTrasy13();?>%</td> <th>využití trasy 2-3</th> <td><?php echo VyuzitiTrasy23();?>%</td> Stránka 14 z 27
15 <th>využití trasy 3-4</th> <td><?php echo VyuzitiTrasy34();?>%</td> </table> <h2>grafické výstupy</h2> <h3>průchod sítí</h3> <?php $datagrafcetnostpruchodu = UpravDataProGraf2($CetnostPruchodu); echo "<img src=' 1,0,200 &chxt=y,x &chxp=1,10,20,30,40,50,60,70,80,90,100,110,120,130,140,150,160,170,180,190,200 &chbh=a,0,0 &chs=800x220 &cht=bvg &chco=4d89f9 &chds=0,".max($cetnostpruchodu)." &chd=t:".$datagrafcetnostpruchodu." &chtt=četnost+časů+průchodu+sítí' width='800' height='220' alt='vertical bar chart' />";?> <h4>popisná statistika</h4> <table> <td>průměrná hodnota</td> <td> <?php echo mmmr($dobapruchodu,mean);?></td> <td>střední hodnota</td> <td> <?php echo mmmr($dobapruchodu,median);?></td> <td>modus</td> <td> <?php echo mmmr($dobapruchodu,mode);?></td> <td>rozsah</td> <td> <?php echo mmmr($dobapruchodu,range);?></td> </table> <h3>využití CACHE</h3> <?php $outler2 = UpravDataProGraf2($obsazenost3vcase); $pocet_prvku =count($obsazenost3vcase); if ($pocet_prvku > 800) $pocet_prvku = 800; echo "<img src=' &chxr=0,0,".max($obsazenost3vcase)." 1,0,".$pocet_prvku." &chxp=1,0,100,200,300,400,500,600,700,800 &chbh=a,0,0 Stránka 15 z 27
16 &chds=0,".max($obsazenost3vcase)." &chs=800x225 &cht=bvg &chco=a2c180 &chd=t:".$outler2." &chtt=využití+cache' width='800' height='225' alt='vertical bar chart' />";?> <h3>příchody na P1</h3> <?php $outler2 = UpravDataProGraf2($prichodVcaseP1); $pocet_prvku =count($prichodvcasep1); if ($pocet_prvku > 800) $pocet_prvku = 800; echo "<img src=' &chxr=0,0,".max($prichodvcasep1)." 1,0,".$pocet_prvku." &chxp=1,0,100,200,300,400,500,600,700,800 &chbh=a,0,0 &chds=0,".max($prichodvcasep1)." &chs=800x225 &cht=bvg &chco=a2c180 &chd=t:".$outler2." &chtt=příchody+na+p1' width='800' height='225' alt='vertical bar chart' />";?> <h3>příchody na P2</h3> <?php $outler2 = UpravDataProGraf2($prichodVcaseP2); $pocet_prvku =count($prichodvcasep2); if ($pocet_prvku > 800) $pocet_prvku = 800; echo "<img src=' &chxr=0,0,".max($prichodvcasep2)." 1,0,".$pocet_prvku." &chxp=1,0,100,200,300,400,500,600,700,800 &chbh=a,0,0 &chds=0,".max($prichodvcasep2)." &chs=800x225 &cht=bvg &chco=a2c180 &chd=t:".$outler2." &chtt=příchody+na+p2' width='800' height='225' alt='vertical bar chart' />";?> <h3>příchody na Server</h3> <?php $outler2 = UpravDataProGraf2($prichodVcaseS); $pocet_prvku =count($prichodvcases); if ($pocet_prvku > 800) $pocet_prvku = 800; Stránka 16 z 27
17 echo "<img src=' &chxr=0,0,".max($prichodvcases)." 1,0,".$pocet_prvku." &chxp=1,0,100,200,300,400,500,600,700,800 &chbh=a,0,0 &chds=0,".max($prichodvcases)." &chs=800x225 &cht=bvg &chco=a2c180 &chd=t:".$outler2." &chtt=příchody+na+server' width='800' height='225' alt='vertical bar chart' />"; //konec casti kdyz odeslan formular?> </div> <footer>php pl1-gentoo Server Apache/ VSM sim 1.4 Matyáš Horák 2012/05</footer> </body> </html> <?php class packet { var $start_cas; cas yacatek pochodu paketu var $stop_cas; cas konce pochodu paketu var $od; yacatek cesty var $do; cil cesty var $aktivni = 0; zda je jeste aktivni var $provede_akci; cas kdy se hlasi o INT var $pozice; aktualni pozice var $ttl; Stránka 17 z 27
18 kolik zbejva do sestreleni var $zpracovano; kolik zbejva do sestreleni konstruktor function packet($od, $do, $pozice, $provede_akci, $ttl){ $this->od = $od; $this->do = $do; $this->pozice = $pozice; $this->provede_akci = $provede_akci; $this->ttl = $ttl; $this->aktivni = 1; $this->zpracovano = 0; generovani normalniho rozdeleni function unformrandom(){ $x = rand(0, )/ ; //if (rand(0,2) == 0) return $x; return $x; function unformrandomb(){ $x = intval( ceil(10 rand(0, )/ )); //if (rand(0,2) == 0) return $x; return $x; vyckavaci funce function Vyckava($packet){ $packet->provede_akci += unformrandomb(); generovani exp rozdeleni function expgenerator($expstrednihodnota){ $lambda = 1/$expStredniHodnota; return intval( ceil(-log(1.0 - unformrandom()) / $lambda)); posun paketu z 1 na 13 function Posunz1na13($packet){ global $obsazena13; global $packetr; global $TTL; global $strhodexpg1; global $cas; $obsazena13 = 1; //obsadil jsem cestu Stránka 18 z 27
19 $packetr[] = new packet(1,2,1,$cas + expgenerator($strhodexpg1),$ttl); //PC1 obsadi novy cekaci paket $packet->pozice = 13; //meni pozici $packet->provede_akci += 2; //cas ktery stravi na ceste $packet->start_cas = $cas; //cas kdy je na ceste zjistuju jestli je plna ci prazdna cache function plnacache(){ global $packetr; global $velikostcache; $celkemvcache = 0; foreach ($packetr as $OPacket) { if ($OPacket->pozice == 3) { $celkemvcache++; if ($celkemvcache < $velikostcache) return 0; else return 1; posun paketu z 13 na 3 function Posunz13na3($OPacket){ global $TTL; global $strhodexpgsw; //stredni hodnota sw zpracovani $OPacket->pozice = 3; //meni pozici $OPacket->provede_akci += expgenerator($strhodexpgsw); //cas ktery stravi na 3 Posunz 3 na mixed function Posunz3na34($OPacket) { global $obsazena34; global $TTL; $obsazena34 = 1; //obsadil jsem cestu $OPacket->pozice = 34; //meni pozici $OPacket->provede_akci += 1; //cas ktery stravi na ceste Posun z 34 na mixed Stránka 19 z 27
20 function Posunz34na4($OPacket){ global $TTL; global $strhodexpgsrv; //stredni hodnota server zpracovani $OPacket->pozice = 4; //meni pozici $OPacket->provede_akci += expgenerator($strhodexpgsrv); //cas ktery stravi na 4 Posun z 4 na mixed function Posunz4na34($OPacket){ global $obsazena34; global $TTL; $obsazena34 = 1; //obsadil jsem cestu $OPacket->pozice = 34; //meni pozici $OPacket->provede_akci += 1; //cas ktery stravi na ceste $OPacket->zpracovano = 1; //packet bzl osetren na serveru vraci se zpet Posun z 3 na mixed function Posunz3na23($OPacket){ global $obsazena23; global $TTL; $obsazena23 = 1; //obsadil jsem cestu $OPacket->pozice = 23; //meni pozici $OPacket->provede_akci += 2; //cas ktery stravi na ceste Posun z 34 na mixed function Posunz34na3($OPacket) { global $TTL; global $strhodexpgsw; //stredni hodnota sw zpracovani $OPacket->pozice = 3; //meni pozici $OPacket->provede_akci += expgenerator($strhodexpgsw); //cas ktery stravi na 3 Posun z 23 na mixed function Posunz23na2($OPacket) { global $cas; $OPacket->pozice = 2; //meni pozici $OPacket->stop_cas = $cas; //cas ktery stravi na ceste $OPacket->aktivni = 0; //je v cili Stránka 20 z 27
21 Posun z 23 na mixed function Posunz23na3($OPacket){ global $TTL; global $strhodexpgsw; //stredni hodnota sw zpracovani $OPacket->pozice = 3; //meni pozici $OPacket->provede_akci += expgenerator($strhodexpgsw); //cas ktery stravi na 3 Posunz 2 na mixed function Posunz2na23($OPacket){ global $obsazena23; global $packetr; global $TTL; global $strhodexpg2; global $cas; $obsazena23 = 1; //obsadil jsem cestu $packetr[] = new packet(2,1,2,$cas + expgenerator($strhodexpg2),$ttl); //PC1 obsadi novy cekaci paket $OPacket->pozice = 23; //meni pozici $OPacket->provede_akci += 2; //cas ktery stravi na ceste $OPacket->start_cas = $cas; //cas kdy je na ceste Posun z 3 na mixed function Posunz3na13($OPacket){ global $obsazena13; global $TTL; $obsazena13 = 1; //obsadil jsem cestu $OPacket->pozice = 13; //meni pozici $OPacket->provede_akci += 2; //cas ktery stravi na ceste Posun z 13 na mixed function Posunz13na1($OPacket){ global $cas; $OPacket->pozice = 1; //meni pozici $OPacket->stop_cas = $cas; //cas ktery stravi na ceste $OPacket->aktivni = 0; //je v cili Stránka 21 z 27
22 pocet hotovejch v PC1 function CelkemVPC1(){ global $packetr; $celkemvpc1=0; foreach ($packetr as $OPacket) { if (($OPacket->pozice == 1) && ($OPacket->aktivni == 0)) $celkemvpc1 ++; return $celkemvpc1; pocet zahozenych function CelkemZahozenych(){ global $zahozenevcase; $celkem = 0; foreach ($zahozenevcase as $zaho) { $celkem += $zaho; return $celkem; pocet prichozich P1 function CelkemPrichozichP1(){ global $prichodvcasep1; $celkem = 0; foreach ($prichodvcasep1 as $zaho) { $celkem += $zaho; return $celkem; pocet prichozich P2 function CelkemPrichozichP2(){ global $prichodvcasep2; $celkem = 0; foreach ($prichodvcasep2 as $zaho) { $celkem += $zaho; Stránka 22 z 27
23 return $celkem; pocet prichozich S function CelkemPrichozichS(){ global $prichodvcases; $celkem = 0; foreach ($prichodvcases as $zaho) { $celkem += $zaho; return $celkem; pocet hotovejch v PC2 function CelkemVPC2(){ global $packetr; $celkemvpc2=0; foreach ($packetr as $OPacket) { if (($OPacket->pozice == 2) && ($OPacket->aktivni == 0)) $celkemvpc2++; return $celkemvpc2; pocet v cache hotovejch function CelkemVcacheReady(){ global $packetr; $celkem=0; foreach ($packetr as $OPacket) { if (($OPacket->pozice == 3) && ($OPacket->zpracovano == 1)) $celkem++; return $celkem; pocet v cache nehotovejch function CelkemVcacheNoReady(){ global $packetr; $celkem=0; foreach ($packetr as $OPacket) { if (($OPacket->pozice == 3) && ($OPacket->zpracovano == 0)) $celkem++; Stránka 23 z 27
24 return $celkem; celekm vzrobenzch packetu function CelkemVygenerovanoPacketu(){ global $packetr; $celkemvpacketu=0; foreach ($packetr as $OPacket) { $celkemvpacketu++; return $celkemvpacketu; Obsazenost 3 v function Obsazenost3vCase() { global $obsazenost3vcase; $celkem = CelkemVcacheNoReady() + CelkemVcacheReady(); $obsazenost3vcase[] = $celkem; Vytahuju jake jsou cca doby pruchodu function ZpracujDobyPruchodu() { global $dobapruchodu; global $packetr; foreach ($packetr as $OPacket) { if (($OPacket->pozice == 2) && ($OPacket->aktivni == 0)) $dobapruchodu[] = $OPacket->stop_cas - $OPacket->start_cas ; if (($OPacket->pozice == 1) && ($OPacket->aktivni == 0)) $dobapruchodu[] = $OPacket->stop_cas - $OPacket->start_cas ; Cetnosti function ZpracujCetnostPruchodu() { global $dobapruchodu; global $CetnostPruchodu; for ($i = 0; $i <= 200; $i++) { $celkem_techto = 0; Stránka 24 z 27
25 foreach ($dobapruchodu as $Pruchod) { if ($Pruchod == $i) $celkem_techto++; $CetnostPruchodu[] = $celkem_techto; function StredniHodnotaPruchodu() { global $dobapruchodu; $strhodnota=0; $pocet_hodnot = count($dobapruchodu); for ($i = 0; $i <= 200; $i++) { $celkem_techto = 0; foreach ($dobapruchodu as $Pruchod) { if ($Pruchod == $i) $celkem_techto++; $strhodnota+=($celkem_techto/$pocet_hodnot)$i; return $strhodnota; function mmmr($array, $output = 'mean'){ if(!is_array($array)){ return FALSE; else{ switch($output){ case 'mean': $count = count($array); $sum = array_sum($array); $total = $sum / $count; break; case 'median': rsort($array); $middle = round(count($array) / 2); $total = $array[$middle-1]; break; case 'mode': $v = array_count_values($array); arsort($v); foreach($v as $k => $v){$total = $k; break; break; case 'range': sort($array); $sml = $array[0]; rsort($array); $lrg = $array[0]; $total = $lrg - $sml; break; return $total; Stránka 25 z 27
26 AVG doby function AVGdobaPruchodu() { global $dobapruchodu; $i=0; $celkem=0; foreach ($dobapruchodu as $Pruchod) { $i++; $celkem +=$Pruchod; return $celkem/$i; mixed "[[1,1], [2,2], [3,3], [4,4]] function UpravDataProGraf($obsazenost3vcase) { $i = 0; $out = ""; foreach ($obsazenost3vcase as $obsazenost) { $i++; $out.= "['".$i."',".$obsazenost."],"; $out.= ""; return $out; mixed "[[1,1], [2,2], [3,3], [4,4]] function UpravDataProGraf2($obsazenost3vcase) { $i = 0; $out = ""; foreach ($obsazenost3vcase as $obsazenost) { $i++; if ($obsazenost == null) $obsazenost = 0; if ($i < 801) $out.= $obsazenost.","; $out.= "0"; return $out; Vyuziti Trasy function VyuzitiTrasy13() Stránka 26 z 27
27 { global $vyuzititrasy13; global $dobasimulace; $celkem_techto = 0; foreach ($vyuzititrasy13 as $Pruchod) { if ($Pruchod == 1) $celkem_techto++; return ($celkem_techto/$dobasimulace)100; Vyuziti Trasy function VyuzitiTrasy23() { global $vyuzititrasy23; global $dobasimulace; $celkem_techto = 0; foreach ($vyuzititrasy23 as $Pruchod) { if ($Pruchod == 1) $celkem_techto++; return ($celkem_techto/$dobasimulace)100; Vyuziti Trasy function VyuzitiTrasy34() { global $vyuzititrasy34; global $dobasimulace;?> $celkem_techto = 0; foreach ($vyuzititrasy34 as $Pruchod) { if ($Pruchod == 1) $celkem_techto++; return ($celkem_techto/$dobasimulace)100; Stránka 27 z 27
Internet cvičení. ZS 2009/10, Cvičení 3.,8.12.2009. Tomáš Pop. DISTRIBUTED SYSTEMS RESEARCH GROUP http://dsrg.mff.cuni.cz
Internet cvičení ZS 2009/10, Cvičení 3.,8.12.2009 Tomáš Pop DISTRIBUTED SYSTEMS RESEARCH GROUP http://dsrg.mff.cuni.cz CHARLES UNIVERSITY PRAGUE Faculty of Mathematics and Physics Java Script obecně Moc
VíceNázev Live prez Sear enta Maps
Vladimír Jarotek Název Live Search prezentace Maps Nadpis Obsah 1. Co je to Live Search Maps 2. API 3. Závěr 4. Literatura Nadpis 1 Co je to a co nabízí Live Search Maps Jedná se o projekt (službu) prohledávání
VíceProgramování v jazyce JavaScript
Programování v jazyce JavaScript Katedra softwarového inženýrství Fakulta informačních technologií České vysoké učení technické v Praze Pavel Štěpán, 2011 Anonymní funkce BI-JSC Evropský sociální fond
VíceProgramování v PHP. Katedra softwarového inženýrství Fakulta informačních technologií České vysoké učení technické v Praze. Další možnosti formulářů
Programování v PHP Katedra softwarového inženýrství Fakulta informačních technologií České vysoké učení technické v Praze Pavel Štěpán, Helena Wallenfelsová, 2011 Další možnosti formulářů BI-PHP, cvičení
VíceVYŠŠÍ ODBORNÁ ŠKOLA a STŘEDNÍ PRŮMYSLOVÁ ŠKOLA Mariánská 1100, 407 47 Varnsdorf PROGRAMOVÁNÍ FUNKCE, REKURZE, CYKLY
Jméno a příjmení: Školní rok: Třída: VYŠŠÍ ODBORNÁ ŠKOLA a STŘEDNÍ PRŮMYSLOVÁ ŠKOLA Mariánská 1100, 407 47 Varnsdorf 2007/2008 VI2 PROGRAMOVÁNÍ FUNKCE, REKURZE, CYKLY Petr VOPALECKÝ Číslo úlohy: Počet
VíceTřídy a objekty. Třídy a objekty. Vytvoření instance třídy. Přístup k atributům a metodám objektu. $z = new Zlomek(3, 5);
Programovací jazyk PHP doc. Ing. Miroslav Beneš, Ph.D. katedra informatiky FEI VŠB-TUO A-1007 / 597 324 213 http://www.cs.vsb.cz/benes Miroslav.Benes@vsb.cz Obsah Třídy a objekty Výjimky Webové aplikace
VíceVstupní požadavky, doporučení a metodické pokyny
Název modulu: Základy PHP Označení: C9 Stručná charakteristika modulu Modul je orientován na tvorbu dynamických stánek aktualizovaných podle kontextu volání. Jazyk PHP umožňuje velmi jednoduchým způsobem
Více!!Via!AUREA,!s.r.o.!
ViaAUREA,s.r.o. Lidická48,60200Brno IČ:26257700 DIČ:CZ26257700 Posledníaktualizace:25.9.2015 tel.:+420511110431 ehmail:info@viaaurea.cz 1 SPECIFIKACE%HTML%KREATIVY%...%3 1.1 COJEHTMLBANNER...3 1.2 DEFINICEPROKLIKU...4
VíceProgramování v jazyce JavaScript
Programování v jazyce JavaScript Katedra softwarového inženýrství Fakulta informačních technologií České vysoké učení technické v Praze Pavel Štěpán, 2011 Dědičnost objektů BI-JSC Evropský sociální fond
VíceInternet cvičení. ZS 2009/10, Cvičení 4.,15.12.2009 PHP. Tomáš Pop. DISTRIBUTED SYSTEMS RESEARCH GROUP http://dsrg.mff.cuni.cz
Internet cvičení ZS 2009/10, Cvičení 4.,15.12.2009 PHP Tomáš Pop DISTRIBUTED SYSTEMS RESEARCH GROUP http://dsrg.mff.cuni.cz CHARLES UNIVERSITY PRAGUE Faculty of Mathematics and Physics Generování tabulky
VíceBottle -- příklad. Databáze. Testovací data. id Jedinečný identifikátor řádku: Bude typu INT s AUTO_INCREMENT a nastavíme ho jako primární klíč
Bottle -- příklad V tomto příkladu se pokusíme vytvořit malou aplikaci umožňující psát jednoduché poznámky. Databáze Nejprve je třeba vytvořit v databázovém serveru uživatele (pokud už není vytvořen) a
VíceProgramování v jazyce JavaScript
Programování v jazyce JavaScript Katedra softwarového inženýrství Fakulta informačních technologií České vysoké učení technické v Praze Pavel Štěpán, 2011 Skriptovani browseru BI-JSC Evropský sociální
VíceSAMUEL LEROY JACKSON. Projekt webové stránky. Programové vybavení Jáchym Kubáček, IT3B Brno 2016
Projekt webové stránky SAMUEL LEROY JACKSON Programové vybavení Jáchym Kubáček, IT3B Brno 2016 Střední škola technická a ekonomická Brno, Olomoucká, příspěvková organizace Výběr tématu Poté, co jsem udělal
VíceIng. Přemysl Brada, MSc., Ph.D. Ing. Martin Dostal. Katedra informatiky a výpočetní techniky, FAV, ZČU v Plzni
Webové aplikace Ing. Přemysl Brada, MSc., Ph.D. Ing. Martin Dostal Katedra informatiky a výpočetní techniky, FAV, ZČU v Plzni Harmonogram Dopolední blok 9:00 12:30 Ing. Dostal Úvod, XHTML + CSS Ing. Brada,
VícePrintris. Hra Printris je psána pomocí příkazů Javascriptu a standardních příkazů HTML.
Printris Hra Printris je psána pomocí příkazů Javascriptu a standardních příkazů HTML. Hra je založena ne principu Tetrisu. Úkolem hráče je umístit tři stejné tiskárny vodorovně nebo svisle do jedné řady.
VíceProgramování v jazyce JavaScript
Programování v jazyce JavaScript Katedra softwarového inženýrství Fakulta informačních technologií České vysoké učení technické v Praze Pavel Štěpán, 2011 Události (events) BI-JSC Evropský sociální fond
VícePHP. Čtvrtek 8. září. Čtvrtek 15. září. Anonymní test znalostí
Čtvrtek 8. září Anonymní test znalostí Čtvrtek 15. září PHP je programovací jazyk, který pracuje na straně serveru. S PHP můžete ukládat a měnit data webových stránek. PHP původně znamená Personal Home
VíceTvorba WWW stránek. přehled technologií používaných na webu principy jednotlivých technologií a možnosti jejich vzájemného kombinování
Tvorba WWW stránek přehled technologií používaných na webu principy jednotlivých technologií a možnosti jejich vzájemného kombinování HTML/XHTML kaskádové styly PHP spolupráce PHP s databázemi Technologie
VíceGIS integrované využití 6 sem podtitul nebo stručně obsah. OpenLayers
OpenLayers strana 2 Co je to OpenLayers? l Open-Source projekt l JavaScriptová Knihovna l Jednoduché řešení pro vložení dynamické interaktivní mapy do webové stránky strana 3 HTML Stránka
VíceTvorba webových stránek
Tvorba webových stránek HTML Hypertext Markup Language jazyk pro tvorbu webových stránek Rozšíření: JavaScript, CSS Dynamické stránky: PHP, ASP(X), JSP Prohlížeče: IE, Firefox, Opera, Google Chrome mohou
VíceNSWI096 - INTERNET JavaScript
NSWI096 - INTERNET JavaScript Mgr. Petr Lasák JAVASCRIPT JAK SE DNES POUŽÍVÁ Skriptovací (interpretovaný) jazyk Umožňuje interaktivitu Použití: Dialogy Kontrola dat ve formulářích Změny v (X)HTML dokumentu
VíceProgramování v jazyce JavaScript
Programování v jazyce JavaScript Katedra softwarového inženýrství Fakulta informačních technologií České vysoké učení technické v Praze Pavel Štěpán, 2011 Operátory a příkazy BI-JSC Evropský sociální fond
Více1 Webový server, instalace PHP a MySQL 13
Úvod 11 1 Webový server, instalace PHP a MySQL 13 Princip funkce webové aplikace 13 PHP 14 Principy tvorby a správy webového serveru a vývojářského počítače 14 Co je nezbytné k instalaci místního vývojářského
VíceVyužití OOP v praxi -- Knihovna PHP -- Interval.cz
Page 1 of 6 Knihovna PHP Využití OOP v praxi Po dlouhé teorii přichází na řadu praxe. V následujícím textu si vysvětlíme možnosti přístupu k databázi pomocí různých vzorů objektově orientovaného programování
VíceK práci budeme využívat souborového manažeru Unreal Commander alespoň si ho procvičíme
PHP je programovací jazyk, který pracuje na straně serveru. S PHP můžete ukládat a měnit data webových stránek. PHP původně znamená Personal Home Page a vzniklo v roce 1996, od té doby prošlo velkými změnami
VíceFormuláře. Internetové publikování. Formuláře - příklad
Formuláře Internetové publikování Formuláře - příklad 1 Formuláře - použití Odeslání dat od uživatele Možnosti zpracování dat Webová aplikace na serveru (ASP, PHP) Odeslání e-mailem Lokální script Formuláře
VíceStřední odborná škola a Střední odborné učiliště, Hořovice
Kód DUM : VY_32_INOVACE_DYN.1.17 Název materiálu: Anotace Autor Jazyk Očekávaný výstup 17 PHP- komplexní úloha Výpočet obsahu trojúhelníku pomocí Heronova vzorce DUM prohloubí dovednosti žáků v postupu
VíceHTTP. Webový server. generátor HTML stránek (CGI, Perl, PHP, Python, Ruby, Java, ASP.NET) zpracování požadavku/ odeslání odpovědi.
Základy jazyka PHP Martin Klíma Dynamický web Webový klient požadavek HTTP odpověď Stránka 1 Toto je dynamicky generovaná stránka x xxxx xx. zpracování požadavku/ odeslání odpovědi generátor HTML stránek
VícePHP tutoriál (základy PHP snadno a rychle)
PHP tutoriál (základy PHP snadno a rychle) Druhá, vylepšená offline verze. Připravil Štěpán Mátl, http://khamos.wz.cz Chceš se naučit základy PHP? V tom případě si prostuduj tento rychlý průvodce. Nejdříve
VíceEVROPSKÝ SOCIÁLNÍ FOND. Úvod do PHP PRAHA & EU INVESTUJEME DO VAŠÍ BUDOUCNOSTI
EVROPSKÝ SOCIÁLNÍ FOND Úvod do PHP PRAHA & EU INVESTUJEME DO VAŠÍ BUDOUCNOSTI Úvod do PHP PHP Personal Home Page Hypertext Preprocessor jazyk na tvorbu dokumentů přípona: *.php skript je součást HTML stránky!
VíceExponenciální modely hromadné obsluhy
Exponenciální modely hromadné obsluhy Systém s čekáním a neohraničeným zdrojem požadavků Na základě předchozích informací je potřeba probrat, jaké informace jsou dostupné v počtu pravděpodobnosti řešícím
VíceDynamické stránky v praxi. Bedřich Košata
Dynamické stránky v praxi Bedřich Košata Reálné scénáře Statické stránky + dynamický search Všechno dynamické spousta práce a opakujících se úkolů SQL není příliš přenosné mezi databázovými systémy =>
VíceX36WWW. Vícevrstvá architektura webové aplikace Martin Klíma. Tvorba Webu 2 1
X36WWW Vícevrstvá architektura webové aplikace Martin Klíma 1 Architktura MVC M = Model V = View C = Controller Model reprezentuje aplikační logiku View reprezentuje prezentační logiku C reprezentuje logiku,
VíceWEB BASED DYNAMIC MODELING BY MEANS OF PHP AND JAVASCRIPT
WEB BASED DYNAMIC MODELING BY MEANS OF PHP AND JAVASCRIPT Jan Válek, Petr Sládek Faculty of Education Masaryk University Poříčí 7, 603 00 Brno Úvodem Výpočetní technika ve škole Běžně jako Didaktická technika
VíceČERV. Hra Červ je psána pomocí příkazů Javascriptu a standardních příkazů HTML.
ČERV Hra Červ je psána pomocí příkazů Javascriptu a standardních příkazů HTML. Hra napodobuje pohyb viru-červa v počítačové síti. Úkolem hráče je napadat (požírat) počítače a snaží se vyhnout srážce s
Více2. 3. 2009 Programátorské večery. Tomáš Herceg Microsoft Student Partner http://www.vbnet.cz
2. 3. 2009 Programátorské večery Tomáš Herceg Microsoft Student Partner http://www.vbnet.cz Představení služeb Praktické ukázky Messenger (Presence API) Search Writer (MetaWeblog API) Writer (Pluginy)
VíceMichal Krátký. Úvod do programovacích jazyků (Java), 2006/2007
Úvod do programovacích jazyků (Java) Michal Krátký 1 Katedra informatiky VŠB Technická univerzita Ostrava Úvod do programovacích jazyků (Java), 2006/2007 c 2006 Michal Krátký Úvod do programovacích jazyků
VíceRegistrační číslo projektu: CZ.1.07/1.5.00/34.0553 Elektronická podpora zkvalitnění výuky CZ.1.07 Vzděláním pro konkurenceschopnost
Registrační číslo projektu: CZ.1.07/1.5.00/34.0553 CZ.1.07 Vzděláním pro konkurenceschopnost Projekt je realizován v rámci Operačního programu Vzdělávání pro konkurence schopnost, který je spolufinancován
VícePŘEHLED A MOŽNOSTI VYUŽITÍ WEBOVÝCH MAPOVÝCH SLUŽEB
ÚTVAR ROZVOJE HLAVNÍHO MĚSTA PRAHY PŘEHLED A MOŽNOSTI VYUŽITÍ WEBOVÝCH MAPOVÝCH SLUŽEB Ústav rozvoje hlavního města Prahy publikuje prostřednictvím ArcGIS Serveru mnohé webové mapové služby (v souřadnicovém
VíceSkriptovací jazyky. Obsah
Skriptovací jazyky doc. Ing. Miroslav Beneš, Ph.D. katedra informatiky FEI VŠB-TUO A-1007 / 597 324 213 http://www.cs.vsb.cz/benes Miroslav.Benes@vsb.cz Obsah Co je to skriptovací jazyk? Výhody a nevýhody
Více2) Napište algoritmus pro vložení položky na konec dvousměrného seznamu. 3) Napište algoritmus pro vyhledání položky v binárním stromu.
Informatika 10. 9. 2013 Jméno a příjmení Rodné číslo 1) Napište algoritmus pro rychlé třídění (quicksort). 2) Napište algoritmus pro vložení položky na konec dvousměrného seznamu. 3) Napište algoritmus
VíceZpráva webmastera klubu pro členskou schůzi 2015. Radek Šíp, 7/2014 9/2015
Zpráva webmastera klubu pro členskou schůzi 2015 Radek Šíp, 7/2014 9/2015 Náklady na provoz Hosting klubovýchstránek U webhostingové společnosti Web4U Cena za rok 2.208Kč, tj. 184Kč měsíčně Údržba (provoz)
VícePříklad aplikace Klient/Server s Boss/Worker modelem (informativní)
Příklad aplikace Klient/Server s Boss/Worker modelem (informativní) Jan Faigl Katedra počítačů Fakulta elektrotechnická České vysoké učení technické v Praze A0B36PR2 Programování 2 Jan Faigl, 2015 A0B36PR2
VíceZáklady HTML, URL, HTTP, druhy skriptování, formuláře
Základy HTML, URL, HTTP, druhy skriptování, formuláře Skriptování na straně klienta a serveru Skriptování na straně klienta se provádí pomocí programovacího jazyka JavaScript, který je vkládán do HTML
VíceMěření teploty, tlaku a vlhkosti vzduchu s přenosem dat přes internet a zobrazování na WEB stránce
ČESKÉ VYSOKÉ UČENÍ TECHNICKÉ V PRAZE Fakulta elektrotechnická Katedra mikroelektroniky Měření teploty, tlaku a vlhkosti vzduchu s přenosem dat přes internet a zobrazování na WEB stránce Zadání Stávající
VíceKritéria hodnocení praktické maturitní zkoušky z databázových systémů
Kritéria hodnocení praktické maturitní zkoušky z databázových systémů Otázka č. 1 Datový model 1. Správně navržený ERD model dle zadání max. 40 bodů teoretické znalosti konceptuálního modelování správné
VíceInovace výuky prostřednictvím šablon pro SŠ
Název projektu Číslo projektu Název školy Autor Název šablony Název DUMu Stupeň a typ vzdělávání Vzdělávací oblast Vzdělávací obor Tematický okruh Inovace výuky prostřednictvím šablon pro SŠ CZ.1.07/1.5.00/34.0748
VíceFirewally a iptables. Přednáška číslo 12
Firewally a iptables Přednáška číslo 12 Firewall síťové zařízení, které slouží k řízení a zabezpečování síťového provozu mezi sítěmi s různou úrovní důvěryhodnosti a/nebo zabezpečení. Druhy firewallu Podle
VíceProgramování v jazyce JavaScript
Programování v jazyce JavaScript Katedra softwarového inženýrství Fakulta informačních technologií České vysoké učení technické v Praze Pavel Štěpán, 2011 Syntaxe 1. část BI-JSC Evropský sociální fond
Vícecyklus s daným počtem opakování cyklus s podmínkou na začátku (cyklus bez udání počtu opakování)
Řídící příkazy: if podmíněný příkaz switch přepínač for while cyklus s daným počtem opakování cyklus s podmínkou na začátku (cyklus bez udání počtu opakování) if logický_výraz příkaz; příkaz; příkaz; Podmínka
VíceFormuláře. Aby nám mohli uživatelé něco hezného napsat...... třeba co si o nás myslí!
Formuláře Aby nám mohli uživatelé něco hezného napsat...... třeba co si o nás myslí! HTML formuláře: Formuláře Možnost, jak uživatel může vložit obsah na web - odeslat data na server - zpracovat data ve
VíceMATLABLINK - VZDÁLENÉ OVLÁDÁNÍ A MONITOROVÁNÍ TECHNOLOGICKÝCH PROCESŮ
MATLABLINK - VZDÁLENÉ OVLÁDÁNÍ A MONITOROVÁNÍ TECHNOLOGICKÝCH PROCESŮ M. Sysel, I. Pomykacz Univerzita Tomáše Bati ve Zlíně, Fakulta aplikované informatiky Nad Stráněmi 4511, 760 05 Zlín, Česká republika
VíceLabView jako programovací jazyk II
LabView jako programovací jazyk II - Popis jednotlivých funkcí palety Function II.část - Funkce Numeric, Array, Cluster Ing. Martin Bušek, Ph.D. Práce s daty typu NUMERIC Numerické funkce obsahuje funkce
VíceProgramování v jazyce JavaScript
Programování v jazyce JavaScript Katedra softwarového inženýrství Fakulta informačních technologií České vysoké učení technické v Praze Pavel Štěpán, 2011 Skriptování dokumentu BI-JSC Evropský sociální
VíceAnalýza dat na PC I.
CENTRUM BIOSTATISTIKY A ANALÝZ Lékařská a Přírodovědecká fakulta, Masarykova univerzita Analýza dat na PC I. Popisná analýza v programu Statistica IBA výuka Základní popisná statistika Popisná statistika
VíceProblémy aplikace On-line testů a jejich řešení. Autor: Ing. Lukáš Trombik
Problémy aplikace On-line testů a jejich řešení Autor: Ing. Lukáš Trombik Vydalo Gymnázium Františka Živného v rámci projektu číslo 0560P 2005 Uvedení do problematiky Tvorba aplikace On-line testu se sebou
VíceTlačítkem Poskládej jiný počítač se hra vrátí na úvodní obrazovku a lze zvolit jiný obrázek.
PUZZLE POČÍTAČE Hra Puzzle počítače je psána pomocí příkazů Javascriptu, skriptovacího jazyka PHP a standardních příkazů HTML. Před vlastním spuštěním hry je možné seznámit se s nejznámějšími komponenty
VíceHTML - Úvod. Zpracoval: Petr Lasák
HTML - Úvod Zpracoval: Petr Lasák Je značkovací jazyk, popisující obsah HTML stránek Je z rodiny SGML jazyků, jako např. XML, DOCX, XLSX Nejedná se o programovací ale značkovací jazyk Dynamičnost dodávají
VíceCSS Stylování stránek. Zpracoval: Petr Lasák
CSS Stylování stránek Zpracoval: Petr Lasák Cascade Style Sheets Sada stylů každý element má styl svého zobrazení Říká, jak má být element zobrazen, ne co v něm je Do verze HTML 4.0 byl vzhled měněn pouze
Více25. TVORBA HTML DIALOGŮ PRO PEVNÉ TVARY
25. TVORBA HTML DIALOGŮ PRO PEVNÉ TVARY 25.1 Přidání nového tlačítka do menu Abychom mohli zpřístupnit nový pevný tvar do systému, je třeba přidat nové tlačítko do Menu. V našem případě se jedná o příčné
VíceNSWI142 Webové aplikace Zkouškový test
NSWI142 Webové aplikace Zkouškový test Jméno: 24.12.2016 U každé otázky může být více správných odpovědí, ale také nemusí být správná žádná. Zaškrtávejte pouze odpovědi, které jsou zcela pravdivé. Z čistě
VíceMěření teploty na RaspberryPi
Gymnázium, Brno, Vídeňská 47 Předmět: programování Maturitní práce Měření teploty na RaspberryPi Technická specifikace; dokumentace ; jan.horacek@seznam.cz 15. dubna 2015 Obsah 1 Úvod 3 1.1 Zadaní maturitní
VíceTypy souborů ve STATISTICA. Tento článek poslouží jako přehled hlavních typů souborů v programu
StatSoft Typy souborů ve STATISTICA Tento článek poslouží jako přehled hlavních typů souborů v programu STATISTICA, ukáže Vám jejich možnosti a tím Vám dovolí využívat program efektivněji. Jistě jste již
VíceÚvod do Matlabu. Praha & EU: Investujeme do vaší budoucnosti. 1 / 24 Úvod do Matlabu
Vytěžování dat, cvičení 1: Úvod do Matlabu Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti Fakulta elektrotechnická, ČVUT 1 / 24 Úvod do Matlabu Proč proboha Matlab? Matlab je SW pro
VíceMožnosti aplikace: Copyright 2001, COM PLUS CZ, Praha
Vyhodnocovací program CP TARIF 2001 umožňuje rychlé a podrobné sledování telefonního provozu pobočkových ústředen. Uživatel programu tak získává všechny potřebné údaje o odchozích telefonních hovorech,
VícePODOBÁ SE JAZYKU C S NĚKTERÝMI OMEZENÍMI GLOBÁLNÍ PROMĚNNÉ. NSWI162: Sémantika programů 2
PI JE JEDNODUCHÝ IMPERATIVNÍ PROGRAMOVACÍ JAZYK OBSAHUJE PODPORU ANOTACÍ NEOBSAHUJE NĚKTERÉ TYPICKÉ KONSTRUKTY PROGRAMOVACÍCH JAZYKŮ JAKO JSOU REFERENCE, UKAZATELE, GLOBÁLNÍ PROMĚNNÉ PODOBÁ SE JAZYKU C
VíceVÝVOJ INTERNETOVÝCH APLIKACÍ - VIA
Metodický list č. 1 Způsob zakončení : Úvod Technologie webových aplikací Protokol HTTP Po zvládnutí tématického celku bude student mít základní přehled o problematice programování internetových (webových)
VíceNávrh a vyhodnocení experimentu
Návrh a vyhodnocení experimentu Návrh a vyhodnocení experimentů v procesech vývoje a řízení kvality vozidel Ing. Bohumil Kovář, Ph.D. FD ČVUT Ústav aplikované matematiky kovar@utia.cas.cz Mladá Boleslav
Více1. Téma 03 - Rozhodování
1. Téma 03 - Rozhodování Cíl látky Seznámit se a prakticky si vyzkoušet zápis rozhodování v jazyce Java 1.1. Úvod Jednou z nejčastěji používanou konstrukcí při programování je rozhodování. Právě této problematice
Více4EK201 Matematické modelování. 8. Modely hromadné obsluhy
4EK201 Matematické modelování 8. Modely hromadné obsluhy 8. Modely hromadné obsluhy Systém, ve kterém dochází k realizaci obsluhy příchozích požadavků = systém hromadné obsluhy Vědní disciplína zkoumající
VíceZáklady HTML (2. přednáška)
Základy HTML (2. přednáška) WWW World Wide Web Sestává ze tří stavebních bloků Síť informačních zdrojů Universal Resource Identifier jednotný způsob jak adresovat zdroje, (URL) protokoly pro přístup ke
VíceInternet 2 css, skriptování, dynamické prvky
Internet 2 css, skriptování, dynamické prvky Martin Hejtmánek hejtmmar@fjfi.cvut.cz http://kmlinux.fjfi.cvut.cz/ hejtmmar Počítačový kurs Univerzity třetího věku na FJFI ČVUT Znalci 26. března 2009 Dnešní
VíceDalší nutný soubor je laydiv.js, ve kterém jsou uloženy funkce pro zobrazování virů na ploše a funkce pro odkaz na Teachers Guide.
ESCAPE OF VIRUSES Hra Escape of viruses je psána pomocí příkazů Javascriptu a standardních příkazů HTML. Hra se spouští tlačítkem Start game. Úkolem hráče je eliminovat viry na hrací ploše kliknutím kurzoru
VíceProgramování jako nástroj porozumění matematice (seriál pro web modernivyuka.cz)
Programování jako nástroj porozumění matematice (seriál pro web modernivyuka.cz) Autor: Radek Vystavěl Díl 5: Náhoda Původ a význam Gaussova rozdělení MATEMATIKA O pravděpodobnostech při hodu jednou kostkou
VícePROJEKT DO STATISTIKY PRŮZKUM V TECHNICKÉ MENZE
PROJEKT DO STATISTIKY PRŮZKUM V TECHNICKÉ MENZE Náplní tohoto projektu byl prvotní průzkum, následné statistické zpracování dat a vyhodnocení. Data jsme získaly skrze internetový dotazník, který jsme rozeslaly
VíceProtokoly: IP, ARP, RARP, ICMP, IGMP, OSPF
IP vrstva Protokoly: IP, ARP, RARP, ICMP, IGMP, OSPF UDP TCP Transportní vrstva ICMP IGMP OSPF Síťová vrstva ARP IP RARP Ethernet driver Vrstva síťového rozhraní 1 IP vrstva Do IP vrstvy náležejí další
VícePROTOKOL RDS. Dotaz na stav stanice " STAV CNC Informace o stavu CNC a radiové stanice FORMÁT JEDNOTLIVÝCH ZPRÁV
PROTOKOL RDS Rádiový modem komunikuje s připojeným zařízením po sériové lince. Standardní protokol komunikace je jednoduchý. Data, která mají být sítí přenesena, je třeba opatřit hlavičkou a kontrolním
Více1. Webový server, instalace PHP a MySQL 13
Úvod 11 1. Webový server, instalace PHP a MySQL 13 Princip funkce webové aplikace 13 PHP 14 Principy tvorby a správy webového serveru a vývojářského počítače 14 Co je nezbytné k instalaci místního vývojářského
VíceAktivní prvky: brány a směrovače. směrovače
Aktivní prvky: brány a směrovače směrovače 1 Předmět: Téma hodiny: Třída: Počítačové sítě a systémy Aktivní prvky brány a směrovače 3. a 4. ročník SŠ technické Autor: Ing. Fales Alexandr Software: SMART
VíceInstalace a konfigurace web serveru. WA1 Martin Klíma
Instalace a konfigurace web serveru WA1 Martin Klíma Instalace a konfigurace Apache 1. Instalace stáhnout z http://httpd.apache.org/ nebo nějaký balíček předkonfigurovaného apache, např. WinLamp http://sourceforge.net/projects/winlamp/
VícePokročilé programování v jazyce C pro chemiky (C3220) Operátory new a delete, virtuální metody
Pokročilé programování v jazyce C pro chemiky (C3220) Operátory new a delete, virtuální metody Dynamická alokace paměti Jazyky C a C++ poskytují programu možnost vyžádat si část volné operační paměti pro
VíceProgramování: základní konstrukce, příklady, aplikace. IB111 Programování a algoritmizace
Programování: základní konstrukce, příklady, aplikace IB111 Programování a algoritmizace 2011 Připomenutí z minule, ze cvičení proměnné, výrazy, operace řízení výpočtu: if, for, while funkce příklady:
VíceKomunikace se snímačem vlhkosti a teploty po protokolu Modbus RTU - z IDEC SmartAxis Touch
Komunikace se snímačem vlhkosti a teploty po protokolu Modbus RTU - z IDEC SmartAxis Touch 2 Komunikace se snímačem vlhkosti a teploty po protokolu Modbus RTU - z IDEC SmartAxis Touch Abstrakt Tento aplikační
VíceŠkola: Gymnázium, Brno, Slovanské náměstí 7 III/2 Inovace a zkvalitnění výuky prostřednictvím ICT Název projektu: Inovace výuky na GSN
Škola: Gymnázium, Brno, Slovanské náměstí 7 Šablona: III/2 Inovace a zkvalitnění výuky prostřednictvím ICT Název projektu: Inovace výuky na GSN prostřednictvím ICT Číslo projektu: CZ.1.07/1.5.00/34.0940
VíceCo se v modulu dozvíte? Co jsou návrhové vzory? Ukázky návrhových vzorů Vytvoření databáze
Návrhové vzory v PHP Co se v modulu dozvíte? Co jsou návrhové vzory? Jak se připojit v PHP k databázi Jak vypsat záznamy z databáze Vytvoření administrační sekce HTTP autentizace Přihlášení pomocí uživatelského
Více14.4.2010. Obsah přednášky 7. Základy programování (IZAPR) Přednáška 7. Parametry metod. Parametry, argumenty. Parametry metod.
Základy programování (IZAPR) Přednáška 7 Ing. Michael Bažant, Ph.D. Katedra softwarových technologií Kancelář č. 229, Náměstí Čs. legií Michael.Bazant@upce.cz Obsah přednášky 7 Parametry metod, předávání
VíceParsování HTML. Pro účely testování jsem vytvořil stránku parsovani.html. Zdrojový kód:
Parsování HTML představuje slangový výraz pro syntaktickou analýzu obsahu webové stránky. Lidově řečeno porcujeme zdrojový kód stránky a vyzobáváme potřebný obsah. Webovým vývojářům není neznámý pojem
VíceJAK ČÍST TUTO PREZENTACI
PŘENOSOVÉ METODY V IP SÍTÍCH, S DŮRAZEM NA BEZPEČNOSTNÍ TECHNOLOGIE David Prachař, ABBAS a.s. JAK ČÍST TUTO PREZENTACI UŽIVATEL TECHNIK SPECIALISTA VÝZNAM POUŽÍVANÝCH TERMÍNŮ TERMÍN SWITCH ROUTER OSI
VíceANOTACE vytvořených/inovovaných materiálů
ANOTACE vytvořených/inovovaných materiálů Číslo projektu Číslo a název šablony klíčové aktivity Tematická oblast Formát Druh učebního materiálu Druh interaktivity CZ.1.07/1.5.00/34.0722 III/2 Inovace a
VíceTeorie hromadné obsluhy
Teorie hromadné obsluhy Simulace evakuace návštěvníků koncertu v klubu 2010/2011, 1.57 Obsah 1. Popis situace... 2 2. Zvolený systém... 2 3. Popis běhu simulace... 3 3.1. Deklarace veličin:... 3 3.2. Běh
VíceX36 WWW Šablony Martin Klíma xklima@fel.cvut.cz Čtryřvrstvá architektura Server Klient Prezentační logika Aplikační Logika Databáze 2 Výhody Jednotlivé vrstvy jsou nezávislé Lze je samostatně spravovat
Vícelanguage="javascript">... </script>.
WWW (World Wide Web) je dnes společně s elektronickou poštou nejvyužívanější službou internetu. URL (Uniform Resource Locator) slouží ke kompletní adresaci informace na internetu. Udává jak protokol, který
VíceTlačítko Teachers Guide obsahuje odkaz na stručný popis hry a její účel v projektu Ingot.
DOMINO Hra Domino je psána pomocí příkazů Javascriptu a standardních příkazů HTML. Hra je vytvořena na základě principu dominových kostek. Jednotlivé kostky zobrazují loga nejznámějších internetových prohlížečů.
VícePHP PHP je skriptovací programovací jazyk dynamických internetových stránek PHP je nezávislý na platformě
PHP PHP původně znamenalo Personal Home Page a vzniklo v roce 1996, od té doby prošlo velkými změnami a nyní tato zkratka znamená Hypertext Preprocessor. PHP je skriptovací programovací jazyk, určený především
VíceXSLT pomocí JavaScriptu v Mozille (... Opeře a Safari)
XSLT a JavaScript Autor: Petr Dvořák (http://joshis.iprofil.cz/) Úvod Dokumenty XML (můžeme rovnou říct, že narozdíl od dokumentů (X)HTML) nenesou žádnou informaci, která by prohlížeči sdělila, jakým způsobem
VíceAjax - úvod. Klíčové pojmy: Ajax, skriptování na straně klienta a serveru, objekt XMLHttpRequest, DOM model.
Ajax - úvod Kapitola má seznámit se základy technologie Ajax, připomene základy JavaScriptu a seznámí s vytvořením objektu XMLHttpRequest. Obsahuje některé jednoduché příklady. Klíčové pojmy: Ajax, skriptování
VíceOvěření možností generování provozu na platformě MikroTik + srovnání s Cisco a Open Source řešeními
Ověření možností generování provozu na platformě MikroTik + srovnání s Cisco a Open Source řešeními Bc. Josef Hrabal - HRA0031 Bc. Kamil Malík MAL0018 Abstrakt: Tento dokument, se zabývá ověřením a vyzkoušením
VícePrvní kapitola úvod do problematiky
První kapitola úvod do problematiky Co je to Flex Adobe Flex je ActionSript (AS) framework pro tvorbu Rich Internet Aplications (RIA), tedy knihovna AS tříd pro Flash. Flex používáme k vytvoření SWF souboru
VícePřipravil: Ing. Jiří Lýsek, Ph.D. Verze: Webové technologie
Připravil: Ing. Jiří Lýsek, Ph.D. Verze: 18.4.2017 Webové technologie RIA, SPA, AngularJS - šablony a controllery, služby $scope a $http strana 2 RIA - Rich Internet Application Chová se podobně jako desktopová
Více