Az előadás letöltése folymat van. Kérjük, várjon

Az előadás letöltése folymat van. Kérjük, várjon

Unix/Linux alapok Hága Péter ELTE Komplex Rendszerek Fizikája tanszék.

Hasonló előadás


Az előadások a következő témára: "Unix/Linux alapok Hága Péter ELTE Komplex Rendszerek Fizikája tanszék."— Előadás másolata:

1 Unix/Linux alapok Hága Péter ELTE Komplex Rendszerek Fizikája tanszék

2 Unix és Linux Unix: gyors, biztonságos szerver operációs rendszer 1969-ből. Sun - Solaris, IBM - AIX, Hewlett-Packard - HP-UX. Linux: legelterjedtebb Unix változat, amit 1991-től fejlesztenek. Linus Torvalds, finn programozó fejlesztett ingyenes Unix alapú OS-t, és megosztotta a kódjait azokkal akik részt akartak venni a munkában.

3 Miért használjunk Linux-ot? - általában Linux robosztus és stabil – Linuxban kevesebb bug található, mint más OS-ben Linux erőteljes – Linux nagy teljesítményű – Linux szinte minden eszközzel együttműködik Linux flexibilis – Testreszabható hardver támogatás – Teljes mértékben testreszabható szoftverek – Linux számos platformon fut Linux jól támogatott Linux meglehetősen olcsó – Nincsenek licensz díjak – Hatékony szoftverek egybecsomagolva a rendszerrel

4 Miért használjunk Linux-ot? - szerintem Linux erőteljes – Linux nagy teljesítményű – Linux szinte minden eszközzel együttműködik Linux jól támogatott Linux meglehetősen olcsó – Ezért elterjedt egyetemi környezetben – Elterjedt szerveres, superszámítógépes környezetben – Hatékony szoftverek egybecsomagolva a rendszerrel Linux jól scriptelhető – Szinte minden szoftver meghívható parancssorból – Szoftverek jól kapcsolózhatóak, paraméterezhetőek Linux parancsok összefűzhetőek (pipe-olás) Linux szerverek távolról könnyen elérhetőek Linux jogosultságkezelés

5 Linux a valóságban Disztribuciók – Debian – Mandrake – Red Hat – Ubuntu Cygwin Virtuális gépek Felhasználói felületek (GUI) – Gnome – KDE

6 Linux belépési módok accountra van szükség – username és password helyi login távoli login – parancs soros terminál – grafikus belépés – ssh [-X]

7 File rendszer felépítése

8 Egyszerű parancsok Tab-ra kiegészítés Fel nyílra ugrik az előző parancsra Bash history Reguláris kifejezések parancs & - parancsok háttérben futtatása | - (pipe) parancsok összefűzése man - manual (help) Apropos gcc – c fordító

9 Egyszerű parancsok grep – kifejezés keresés less, more, cat emacs, gedit, vim,... pwd - shows the current directory cd - changes directory / -abszolút path./ -relatív path../ - egy könyvtárral feljebb ls mkdir - makes directory rmdir - removes directory cp - copies mv - moves rm - removes [-r]

10 Megoldandó feladat

11 Feladat Ellenőrizzük azt az állítást, hogy a tőzsdei részvényárfolyamok véletlen bolyongással modellezhetőek! Azaz hasonlítsunk össze véletlen bolyongási adatokat valódi részvény árfolyamokkal Az statisztikai összehasonlítás módja pl. az eloszlás függvényeik, vagy a hisztogramjaik összehasonlítása

12 Megoldás lépései Két részfeladat: – Véletlen bolyongás megvalósítása és vizsgálata – Részvény árfolyam vizsgálata Véletlen bolyongás leprogramozása – c nyelven – adatsor elemzése awk segítségével – ábrázolás gnuplottal Részvény árfolyam vizsgálata – adatsor letöltés: Google Finance – adatsor elemzése awk segítségével – ábrázolás gnuplottal Eredmények összehasonlítása, interpretációja, diszkusszió

13 Véletlen bolyongás

14 Diszkrét időlépés Normális eloszlású növekmény 1D, 2D, 3D

15 Véletlen bolyongás – c kód #include // függvény könyvtár betöltés #include int main () {// program törzs kezdete int i;// változó deklarálások double x1,x2,y1,y2; double pos=0; srand(102);// pszeudo véletlenszám generátor inicializálás for (i=0;i<50000;i++) {// bolyongás léptetése x1=(double)rand()/RAND_MAX;// egyenletes eloszlású pszedo véletlen szám generálás x2=(double)rand()/RAND_MAX; y1 = sqrt( - 2*log(x1) )*cos( 2*3.14*x2 );// normális eloszlású véletlen szám generálás y2 = sqrt( - 2*log(x1) )*sin( 2*3.14*x2 ); pos+=y1;// pozíció update printf("%.3f %.3f %.3f %.3f %.3f\n",x1,x2,y1,y2,pos);// eredmény kiírás } return 0;// visszatérési érték }

16 Véletlen bolyongás – eredmény …. X1X2Y1Y2POS $ gcc randomwalk.c –o randomwalk -lm # forráskódunk futtathatóvá fordítása $./randomwalk # futtatás

17 Véletlen bolyongás – AWK feldolgozás $ cat randomwalk.dat | cut -f3 -d" " > randomwalk_nov.dat # Y1 adatsor kiválasztása, mint növekmény $ MAX=`cat randomwalk_nov.dat | sort -n | tail -1` # legnagyobb növekmény $ MIN=`cat randomwalk_nov.dat | sort -n | head -1` # legkisebb növekmény $ echo $MAX $MIN# kiírás $ cat randomwalk_nov.dat | awk -v min=$MIN -v max=$MAX -v N=100 'BEGIN{for (i=0;i hist_randomwalk.dat # AWK hisztogram készítés

18 AWK hisztogram készítés $ cat randomwalk_nov.dat | awk -v min=$MIN -v max=$MAX -v N=100 ‘ BEGIN{ for (i=0;i hist_randomwalk.dat

19 Részvény árfolyam vizsgálat

20 Date,Open,High,Low,Close,Volume 22-Oct-08,19.31,20.19,18.13,19.33, Oct-08,20.14,21.48,19.34,20.20, Oct-08,20.17,20.79,19.07,19.77, Oct-08,17.97,20.26,17.52,19.24, Oct-08,18.60,19.25,16.93,18.69, Oct-08,20.23,20.46,17.61,18.13, Oct-08,21.21,24.20,20.55,21.94, Oct-08,15.43,19.06,12.66,18.10, Oct-08,9.19,11.30,6.71,9.68, Oct-08,17.98,18.30,11.95,12.45, Oct-08,16.99,19.47,16.23,16.80, Oct-08,24.28,24.28,14.13,17.65, Oct-08,22.49,24.40,20.17,23.50, Oct-08,24.40,26.73,22.51,23.92, Oct-08,23.91,25.12,23.10,23.21, Oct-08,22.72,24.87,21.76,24.42, …

21 Részvény árfolyam vizsgálat - AWK $ cat data.csv | cut -f5 -d"," > close.dat# záróárfolyamok kivágása Date,Open,High,Low,Close,Volume 22-Oct-08,19.31,20.19,18.13,19.33, Oct-08,20.14,21.48,19.34,20.20, Oct-08,20.17,20.79,19.07,19.77, Oct-08,17.97,20.26,17.52,19.24, Oct-08,18.60,19.25,16.93,18.69, Oct-08,20.23,20.46,17.61,18.13, Oct-08,21.21,24.20,20.55,21.94, Oct-08,15.43,19.06,12.66,18.10, Oct-08,9.19,11.30,6.71,9.68, Oct-08,17.98,18.30,11.95,12.45, Oct-08,16.99,19.47,16.23,16.80, Oct-08,24.28,24.28,14.13,17.65, Oct-08,22.49,24.40,20.17,23.50, Oct-08,24.40,26.73,22.51,23.92, Oct-08,23.91,25.12,23.10,23.21, Oct-08,22.72,24.87,21.76,24.42, …

22 Részvény árfolyam vizsgálat - AWK $ cat close.dat | awk '{if (NR>2) {print $1-old}; old=$1}' > diff.dat # növekmény lépésenkénti meghatározása $ MAX=`cat diff.dat | sort -n | tail -1` # legnagyobb növekmény $ MIN=`cat diff.dat | sort -n | head -1` # legkisebb növekmény $ cat diff.dat | awk -v min=$MIN -v max=$MAX - v N=250 'BEGIN{for (i=0;i reszveny_hist.dat # AWK hisztogram készítés, ld. pár oldallal korábban

23 Eredmény / Gyakorlat

24 Gyakorlat Az előző feladat egyéni megvalósítása Kapott két hisztogram ábrázolása gnuplottal A kapott eredmények összehasonlítása, közös interpretációja, diszkusszió

25 Kérdések?


Letölteni ppt "Unix/Linux alapok Hága Péter ELTE Komplex Rendszerek Fizikája tanszék."

Hasonló előadás


Google Hirdetések