Mir l lesz szó? Operációs rendszerek. A sorbaállási modell. A sorbaállási modell. Er forrás csoportosítás 1. Er forrás csoportosítás 2

Méret: px
Mutatás kezdődik a ... oldaltól:

Download "Mir l lesz szó? Operációs rendszerek. A sorbaállási modell. A sorbaállási modell. Er forrás csoportosítás 1. Er forrás csoportosítás 2"

Átírás

1 Mir l lesz szó? Operációs rendszerek Kölcsönös kizárás - szemaforok A probléma: vetélkedés er forrásokért Alapfogalmak, kívánalmak Megoldások Váltogatás és ki érdekelt, zároló-változó stb. (primitívek, alapalgoritmusok) szemaforok Problémák megoldásai, esettanulmányok Operációs rendszerek 1 Operációs rendszerek 2 A sorbaállási modell A sorbaállási modell Er forrásokért verseng processzek rendszerének analizálására Várakozási sorok (queue) képezhet k (téglalapok) Vannak er források (körök) Ütemezések (függ leges vonal) CPU ütemezésnél Hosszú-távú Középtávú Rövid-távú Egyéb er forrás ütemezések is lehetnek Belép Hosszú-távú ütemezés M Futásra kész I/O Középtávú ütemezés Felfüggesztett I/O ütemezés Rövid-távú ütemezés Várakozó CPU Id szelete letelt Memória kérés I/O kérés Kilép Operációs rendszerek 3 Operációs rendszerek 4 Er forrás csoportosítás 1 Er forrás csoportosítás 2 A típus száma szerint Egy példányos er források Többpéldányos er források: használati értékükben azonosak a példányok) Használati mód szerint Megosztottan használhatók, melyek Állapota lementhet és visszaállítható, emiatt esetleg elvehet k a használótól (preemption lehetséges) Csak kizárólagosan használhatók, melyek Nem vehet k el a használótól csak zökken kkel (pl. vissza kell küldeni a használót egy korábbi állapotába, terminálni kell a használót) Létük szerinti csoportosítás El állítandó és fogyasztható (consumable) er forrás Itt: el állítás igénylés kérés használat forgatókönyv Újrahasználható er forrás Itt: igénylés kérés használat lemondás felszabadítás forgatókönyv A forgatókönyvekhez Igénylés, kérés: esetleg várakozással Általánosan: egy kéréssel több er forrásból, több példányt is igényelünk A felszabadítás lemondás (szignálozás is) 2 típusa (legalább) Adott típusból valamennyit felszabadítom Adott foglaltakból adott példányokat szabadítok fel Az igénylés kérés és a lemondás felszabadítás absztrakt instrukciók Operációs rendszerek 5 Operációs rendszerek 6

2 A CPU er forrás különleges A (független) processz modellnél a CPU er forrás használathoz preemptív ütemezésnél nincs kérhasznál-lemond instrukciókészlet A CPU ütemezésben nem lesz holtpont probléma Legfeljebb a kooperatív ütemezésnél van lemondás A User-level szálakat a taszk saját maga ütemezi Itt már lehet holtpont probléma Er forrás-használat - holtpont Az (egy) egyszer példa: P1 és P2 processzek; X és Y er források P1-ben kér(x); kér(y) absztrakt insrukció-sor P2-ben kér(y); kér(x) absztrakt insrukció-sor A kérés-kielégítés modelljei A kér-en egy processz blokkolódhat (vár kielégítésre) A kielégités modellje: kielégítésre váró szignált vár (eseményt vár), végül megkapja a szignált; valami kell adja a szignált Operációs rendszerek 7 Operációs rendszerek 8 Együttm köd processzek egy absztrakt problémája Termel -fogyasztó (Producer-Consumer) probléma Vannak termel folyamatok, melyek saját ritmusukban terméket (item, message) állítanak el és behelyezik egy raktárba. Vannak fogyasztó folyamatok, melyek saját ritmusukban a terméket kiveszik a raktárból és felhasználják, fogyasztják Van korlátozott termék-raktár. Operációs rendszerek 9 A termel -fogyasztó probléma A termék ugyan lehet elfogyó er forrás, de az el állítására várakozás a raktár üresség kezeléssel eliminálódhat A raktárra való korlátozás vonatkozhat: a raktár méretére (teli raktárba termel nem rakodhat, üresb l fogyasztó nem fogyaszthat); Ez megel zési (precedencia) probléma. a raktár használatára (egy id ben több termel nem használhatja a raktárt, egy id ben több fogyasztó nem használhatja a raktárt, egy id ben csak egy folyamat, akár termel, akár fogyasztó, használhatja a raktárt.) Ez kölcsönös kizárási probléma. Operációs rendszerek 10 Az alap séma Precedencia Alapfogalmak 1 Kölcsönös kizárás processz() { kérelem(); használat(); felszabadítás(); processz() { // kérelmez processz kérelem(); használat(); nem-kritikus-szakasz2() processz() { // engedélyez if (van-kérelmez ) engedélyezés();. Kölcsönös kizárás (Mutual Exclusion): Csak kizárólagosan használható, egypéldányos er forrásokért vetélked processzek közül egy és csakis egy, több példányos er forrásokért vetélked processzek közül kötött számú processz kapja meg a jogot egy er forráspéldány használatára. A kölcsönös kizárásnak legyenek módszerei, eszközei, technikái. Operációs rendszerek 11 Operációs rendszerek 12

3 Alapfogalmak 2 Kritikus szakasz (Critical Section): a folyamaton belüli kódrész (valójában annak futási id szakasza), melyen belül a kölcsönös kizárást meg kell valósítani. Egy er forráspéldány kizárólagos használatának (id )szakasza. Alapfogalmak 3-5 Belépési szakasz (Entry Section) a folyamaton belül az a kódrész, ahol kéri az engedélyt a kritikus szakaszba való belépésre. A kérelem szakasza. Kilépési szakasz (Leave Section) az a kódrész, ahol elhagyja a processz a kritikus szakaszt. Az er forráspéldány felszabadítása: jelzés más processzeknek az er forrás felszabadulásáról. A folyamatoknak természetesen lehetnek nem kritikus szakaszaik is. Operációs rendszerek 13 Operációs rendszerek 14 Kívánalmak 1 Biztonsági (safety) kívánalom: Valósuljon meg a kölcsönös kizárás: ha processz kritikus szakaszában fut, más processz csak akkor léphessen be kritikus szakaszába, ha van még szabad er forráspéldány. (Ugyanazon id ben csakis korlátozott számú kritikus szakasz futhat.). Természetesen, ezalatt további processzek a belépési szakaszukban lehetnek (éppen az a fontos, hogy azon ne jussanak túl). Kívánalmak 2 El rehaladási (progress) kívánalom: általában nem kritikus szakaszban és nem belépési szakaszban futó processz ne befolyásolja mások belépését. Ha egyetlen folyamat sincs kritikus szakaszában és vannak processzek a belépési szakaszukban, akkor csakis ezek vegyenek részt abban a döntésben, hogy melyik fog végül belépni. Ráadásul ez a döntés nem halasztható végtelenségig. Operációs rendszerek 15 Operációs rendszerek 16 Kívánalmak 3-4 Korlátozott várakozási (bounded waiting) kívánalom: ha egy processz bejelentette igényét a belépésre, de még nem léphet be, korlátozzuk ésszer en azt, hogy egy másik processz hányszor léphet be. Egy processz se várakozzon a végtelenségig belépésre azért, mert egy másik újból bejelentve az igényét megint megel zi. Ne legyen kiéhezés. Hardver és platform kívánalom: ne legyenek el feltételeink a hardverre (sem a CPU-k típusára, számára, sem a sebességükre), a processzek számára, relatív sebességükre, az operációs rendszer ütemezésére stb. Operációs rendszerek 17 Blokkolni kell Szignáloz Blokkolni? Ne jusson a CPU-hoz Busy waiting Állapotváltással A mutex alap séma Kölcsönös kizárás processz() { kérelem(); használat(); felszabadítás(); Operációs rendszerek 18

4 Alapalgoritmusok, épít kövek 0-ik megoldás: Megszakítás letiltás Kritikus szakasz elején IT letiltás, végén engedélyezés Csak egy CPU-ra jó (4. követelmény!) Veszélyes: hiba esetén deadlock! Csak nagyon letesztelt kernel kódokban! Megoldás #1: váltogatás Az osztott turn változó nyomonköveti, ki lesz a következ. shared turn=i; processz-i() { while(turn!=i) nop(); turn = j; processz-j() { while(turn!=j) nop(); turn = i; Operációs rendszerek 19 Sérül a 2. követelmény: nem követi, hogy egy processz érdekelt-e vagy sem (4. köv: csak 2 processzre). Operációs rendszerek 20 Megoldás #1: turn & erd Egymás váltogatása az érdekeltség figyelembevételével Shared turn, erd[n] = {false, false, ; processz-i() { processz-j() { erd[i] = true; turn = j; erd[j] = true; turn = i; while (erd[j] && turn == j) while (erd[i] && turn == i) nop(); nop(); erd[i] = false; erd[j] = false; Csak a 4. köv. sérül: 2 processzre jó. De kiterjeszthet! Operációs rendszerek 21 Zárolásváltozó használat #2 Az osztott lock változó tesztelhet és beállítható. shared lock = false; processz-i() { while (tsl(&lock)) nop(); lock= false; int tsl(*lock) { register int temp; temp = *lock; *lock = true; return temp; // ez megszakithatatlan // instrukcio kell legyen Sérül a 4. követelmény: nem minden hardveren van ilyen instrukció. IT letiltás többprocesszoros rendszeren nem segít. A 3. követelmény is sérülhet: egy processz kisajátíthatja az er forrást. Operációs rendszerek 22 Szemaforok Dijkstra (1965) szemafor: pozitív egész számot tartalmazó közös változó és egy várakozási sor. Szemaforon két atomi operáció. Atomi: Egy id ben csak egy processz operálhat egy szemaforon. Blokkolódásból felébred processz végrehajtja azt az operációt, amin el z leg blokkolódott. DOWN (P: Passeren) - ezen blokkolódhat. UP (V: Vrijgeven [vrejhéfen]) - ez szignáloz. Operációk szemaforon DOWN(semaphore S) { if (S >= 1) S=S - 1; else { a hivo helyezze magat az S varakozo sorara és PC-t állítsd az if elé UP(semaphore S) { S= S + 1; if (S varakozo sora nem ures) {egy processzt vegy le rola Operációs rendszerek 23 Operációs rendszerek 24

5 Használata Egy termel -fogyasztó probléma Esettanulmány Kritikus szakasz védelme shared semaphore s = 1; processz-i() { DOWN(s); UP(s); Szinkronizáció shared semaphore s = 0; processz-i() { // ui elozze uj-t ui(); UP(s); processz-j() { DOWN(s); uj(); Több termel folyamat van. Több fogyasztó folyamat van. Korlátozott a raktár mérete: N számú hely. Korlátozott a raktárhoz való hozzáférés: csak egy ki-berakó gép van (egy id ben csakis egy termel vagy fogyasztó használhatja a raktárt). Raktár teliség és üresség kezelend. Belátható, legalább 3 szemafor kell: Ki-berakó gép védelmére; Kizárás probléma Üresség jelzésére; Szinkronizáció teliség jelzésére. Operációs rendszerek 25 Operációs rendszerek 26 A termel A fogyasztó #define N 32 semaphore mutex = 1; semaphore ures = N; semaphore teli = 0; void producer ( ) { termek_ttermek; while (1) { termek=gyart( ); // nem kritikus szakasz DOWN(ures); // üres rekeszre vár DOWN(mutex); // raktárba lép termeket_raktarba_tesz(termek); UP(mutex); // raktárból kilép UP(teli); // teli jelzést növeli Operációs rendszerek 27 #define N 32 semaphore mutex = 1; semaphore ures = N; semaphore teli = 0; void cosumer ( ) { termek_ttermek; while (1) { DOWN(teli); // teli rekeszre vár DOWN(mutex); // raktárba lép termek=termeket_raktarbol_vesz( ); UP(mutex); // raktárból kilép UP(ures); // üresek száma n Operációs rendszerek 28 Egy kérdés Mi történne, ha a DOWN(teli); // teli rekeszre vár, vagy csökkenti DOWN(mutex); // belép a raktárba sorokat felcserélnénk? A Unix szemafor mechanizmusa Gyors, kis átvihet információmennyiség Indirekt, OS köt dés, többirányú A kapcsolódó rendszerhívások: semget( ) // készítés, azonosítás semctl( ) // kontroll, jellemz k lekérdezése, törlés semop( ) // operációkészlet végrehajtás A szükséges beleértett fájlok: #include <sys/ipcs.h> #include <sys/sem.h> Operációs rendszerek 29 Operációs rendszerek 30

6 Dijkstra szemafor Unix szemafor D nem definiálta a blokkolás implementációját A Usem: Blokkolásos jelleg, elemi szemaforok készlete van egyetlen szemaforban, elemi operációk készletének végrehajtása történik egyetlen (atomi) operációban, az elemi operációk nemcsak egységgel csökkenthetnek, növelhetnek (non-unitary), van nulla ellen rzés is, kérésre az elemi operációk visszavonódnak (undo) kérésre nincs blokkolódás, bár kellene. A rendszerhívások: semget( ) int semget(key_t key, int nsems, int flg); Ahol key (hexa) kulcs a küls azonosításhoz, nsems az elemi szemaforok száma a szemaforban flg készítéskor védelem, hozzáférés beállítás, azonosításkor létezés ellen rzés, hozzáférés ellen rzés Készít nsems elemi szemaforból álló szemafort az adott kulccsal és hozzáférésekkel, vagy azonosít létez szemafort. Visszatér a szemafor bels leírójával, vagy hibaértékkel. Készítés során az elemi szemaforok 0 értéket vesznek fel. Operációs rendszerek 31 Operációs rendszerek 32 Az elkészült szemafor bels adatstruktúrái Az alap adatszerkezet: struct semid_ds { struct ipc_perm sem_perm; // hozzáférések struct sem *sem_base; // a 0. elemi szem. Pointere ushort sem_nsems; // az elemi szem.ok száma Ebb l egy elemi szemafor adatai: struct sem { ushort semval; // pillanatnyi érték ushort semzcnt; // nullára váró processzek száma ushort semncnt; // növelésre várók száma pid_t sempid; // utolsó operáló processz A rendszerhívások: semctl( ) int semctl( int sid, int semnum, int cmd[, union semunion arg]); Ahol sid a bels leíró, semnum az elemi szemafor indexe, cmd IPC_STAT állapot lekérdez, IPC_SET állapot beállító, IPC_RMID törl parancs. A GETVAL, GETALL, GETPID, GETNCNT, GETZCNT szintén lekérdez, a SETVAL, SETALL beállító parancsok. arg a felhasználói címtartományhoz tartozó union változó vagy konstans, lekérdezésnél eredmény, beállításkor forrás. Operációs rendszerek 33 Operációs rendszerek 34 A semctl( ) híváshoz Az elemi szemaforok 0 és nsems-1 közötti index ek. Az i-edik elemi szemafor inicializálása: semctl(sid, i, SETVAL, init_value) Az i-edik elemi szemafor pillanatnyi értékének lekérdezése: value=semctl(sid, i, GETVAL); Az arg típusa: union semun { int val; // elemi szemafor érték ushort *array; // elemi értékek tömbjének ptr-e struct semid_ds *buf; // adatstruktúrák mutatója arg; // egyes rendszerekben ez a sem.h fájlban Operációs rendszerek 35 Rendszerhívások: semop( ) int semop(int sid, struct sembuf *sops, unsigned nsops); Ahol: sid a szemfor leírója, sops pointer az elemi operációk tömbjéhez, nsops az elemi operációk száma. Egy elemi operációt a következ struktúra határoz meg: struct sembuf { ushort sem_num; // az elemi szemafor indexe short sem_op; // az elemi operáció short sem_flg; // operációt módosító jelz Operációs rendszerek 36

7 Az operációkészlet Egy operációkészletre példa: struct sembuf opkeszlet[4] = { 0, -2, 0, 1, 1, 0, 2, 2, 0, 0, 0, 0 ; És az operáció: semop(sid, &opkeszlet[0], 4); A sem_op értéke Ha a sem_op < 0, akkor vár, amíg a semval sem_op, és semval+=sem_op; (Negatív sem_op dekrementáció, down operáció.) Ha sem_op == 0 akkor vár, amíg semval == 0 lesz. (Null ellen rzés.) Ha sem_op > 0, akkor semval+= sem_op; (Pozitív sem_op inkrementráció, up operáció.) Operációs rendszerek 37 Operációs rendszerek 38 A sem_flg módosító Egy példa: nsems=3, nops=4 Lehet 0, vagy vagy kapcsolatban a következ makrók IPC_SEMUNDO A processz terminálódására az elemi opráció visszaáll. IPC_NOWAIT Ha nem sikerülne a dekrementáció (down), akkor abortál a semop( ) és a processz fut tovább. Mire jó ez? while( 1) { if ( semop( ) ) { kritikus_szakasz( ); break else valami_mas_hasznos( ); Kiindulás sid semval num op flag Eredmény sid Operációs rendszerek 39 Operációs rendszerek 40 Példaprogramok Nézzük a szokásos helyet! GEIAL302B/Peldaprogramok/ipc/sem Az ebédel filozófusok Nézzék meg Tanenbaum megoldást (D szemaforral egész bonyolult. Elegáns megoldás U szemaforral Operációs rendszerek 41 Operációs rendszerek 42

8 Ebédel filozófusok Megterítünk (inicializálás) #define N 5 sid = semget(key, N, 0666); for(i=0; i < N; i++) semctl(sid, i, SETVAL,1); /* inicializáljuk a tömböt 1-ekre */ Ebédel filozófusok Az i-edik filozófus programja #define N #define i i #define BAL (i 1) % N /* bal szomszéd */ #define JOBB (i + 1) % N /* jobb szomszéd */ static struct sembuf villakat[2] = { BAL, 0, 0, JOBB, 0, 0; while(1) { gondolkodom( ); villakat[0].semop = -1; villakat[1].semop = -1; semop(sid, villakat, 2); /* 2 villa fel */ nyam_nyam_spagetti( ); villakat[0].semop = 1; villakat[1].semop = 1; semop(sid, villakat, 2); /* 2 villa le */ Operációs rendszerek 43 Operációs rendszerek 44 Operációs rendszerek Kölcsönös kizárás - szemaforok Operációs rendszerek 45

Operációs rendszerek. 6. gyakorlat: Processzusok közti kommunikáció (osztott memória, üzenetsor)

Operációs rendszerek. 6. gyakorlat: Processzusok közti kommunikáció (osztott memória, üzenetsor) Operációs rendszerek 6. gyakorlat: Processzusok közti kommunikáció (osztott memória, üzenetsor) A UNIX System V Release-óta minden rendszer biztosít három egyszerűabsztrakciót a processzusok közti kommunikáció

Részletesebben

Dr. Illés Zoltán

Dr. Illés Zoltán Dr. Illés Zoltán zoltan.illes@elte.hu Operációs rendszerek kialakulása Sz.gép Op.rendszer generációk Op. Rendszer fogalmak, struktúrák Kliens-szerver modell, Rendszerhívások Fájlok, könyvtárak, fájlrendszerek

Részletesebben

... S n. A párhuzamos programszerkezet két vagy több folyamatot tartalmaz, melyek egymással közös változó segítségével kommunikálnak.

... S n. A párhuzamos programszerkezet két vagy több folyamatot tartalmaz, melyek egymással közös változó segítségével kommunikálnak. Párhuzamos programok Legyen S parbegin S 1... S n parend; program. A párhuzamos programszerkezet két vagy több folyamatot tartalmaz, melyek egymással közös változó segítségével kommunikálnak. Folyamat

Részletesebben

Operációs rendszerek MINB240

Operációs rendszerek MINB240 Processzusok, szálak Operációs rendszerek MINB240 2. előadás Szálak, IPC Egy processzus Saját címtartomány Egyetlen vezérlési szál Hasznos lehet több kvázi párhuzamos vezérlési szál használata egy címtartományban

Részletesebben

Operációs rendszerek. A mai program. Inter Process Communication. Processz közti kommunikáció

Operációs rendszerek. A mai program. Inter Process Communication. Processz közti kommunikáció Operációs rendszerek Processz közti kommunikáció A mai program Az IPC modell és jellemzői IPC mechanizmusok A Unix üzenetsor A Unix osztott memória Példaprogramok Vadász 2 Inter Process Communication A

Részletesebben

Operációs rendszerek Folyamatközi kommunikáció 1.1

Operációs rendszerek Folyamatközi kommunikáció 1.1 Operációs rendszerek Folyamatközi kommunikáció 1.1 Pere László (pipas@linux.pte.hu) PÉCSI TUDOMÁNYEGYETEM TERMÉSZETTUDOMÁNYI KAR INFORMATIKA ÉS ÁLTALÁNOS TECHNIKA TANSZÉK Operációs rendszerek p. Az IPC

Részletesebben

Tartalom. Operációs rendszerek. Precedencia. 3.2 Szinkronizáció. 3.1 Folyamatokból álló rendszerek. Együttműködő folyamatok használatának indokai

Tartalom. Operációs rendszerek. Precedencia. 3.2 Szinkronizáció. 3.1 Folyamatokból álló rendszerek. Együttműködő folyamatok használatának indokai Tartalom Operációs rendszerek 3. Folyamatok kommunikációja Simon Gyula Bevezetés Szinkronizáció A kritikus szakasz megvalósítási módozatai Információcsere ok között Felhasznált irodalom: Kóczy-Kondorosi

Részletesebben

Operációs rendszerek. Az Executive és a kernel Policy és mechanizmusok szeparálása Executive: policy - objektum kezelés Kernel: mechanizmusok:

Operációs rendszerek. Az Executive és a kernel Policy és mechanizmusok szeparálása Executive: policy - objektum kezelés Kernel: mechanizmusok: Operációs rendszerek MS Windows NT (2000) folyamatok Az Executive és a kernel Policy és mechanizmusok szeparálása Executive: policy - objektum kezelés Kernel: mechanizmusok: szálak ütemezése végrehajtásra

Részletesebben

Operációs rendszerek. 3. előadás Ütemezés

Operációs rendszerek. 3. előadás Ütemezés Operációs rendszerek 3. előadás Ütemezés 1 Szemaforok Speciális változók, melyeket csak a két, hozzájuk tartozó oszthatatlan művelettel lehet kezelni Down: while s < 1 do üres_utasítás; s := s - 1; Up:

Részletesebben

Termelő-fogyaszt. fogyasztó modell

Termelő-fogyaszt. fogyasztó modell Termelő-fogyaszt fogyasztó modell A probléma absztrakt megfogalmazása Adott egy N 1 kapacitású közös tároló. Adott a folyamatok két csoportja, amelyek a tárolót használják. n 1 termelő folyamat, m 1 fogyasztó

Részletesebben

Processzusok (Processes), Szálak (Threads), Kommunikáció (IPC, Inter-Process Communication)

Processzusok (Processes), Szálak (Threads), Kommunikáció (IPC, Inter-Process Communication) 1 Processzusok (Processes), Szálak (Threads), Kommunikáció (IPC, Inter-Process Communication) 1. A folyamat (processzus, process) fogalma 2. Folyamatok: műveletek, állapotok, hierarchia 3. Szálak (threads)

Részletesebben

Dr. Illés Zoltán

Dr. Illés Zoltán Dr. Illés Zoltán zoltan.illes@elte.hu Operációs rendszerek kialakulása Op. Rendszer fogalmak, struktúrák Fájlok, könyvtárak, fájlrendszerek Fizikai felépítés Logikai felépítés Folyamatok Létrehozásuk,

Részletesebben

Operációs rendszerek MINB240

Operációs rendszerek MINB240 Szemaforok Operációs rendszerek MINB24 3. előadás Ütemezés Speciális változók, melyeket csak a két, hozzájuk tartozó oszthatatlan művelettel lehet kezelni Down: while s < 1 do üres_utasítás; s := s - 1;

Részletesebben

Előadás_# Az első ZH megírása

Előadás_# Az első ZH megírása Előadás_#05. 1. Az első ZH megírása 2. Szinkronizáció [OR_02_Folyamatok_zs.ppt az 57-114. diáig / nem minden diát érintve] Azok a folyamatok, melyek egymástól nem függetlenek, azaz valamilyen függőség

Részletesebben

C# Szálkezelés. Tóth Zsolt. Miskolci Egyetem. Tóth Zsolt (Miskolci Egyetem) C# Szálkezelés 2013 1 / 21

C# Szálkezelés. Tóth Zsolt. Miskolci Egyetem. Tóth Zsolt (Miskolci Egyetem) C# Szálkezelés 2013 1 / 21 C# Szálkezelés Tóth Zsolt Miskolci Egyetem 2013 Tóth Zsolt (Miskolci Egyetem) C# Szálkezelés 2013 1 / 21 Tartalomjegyzék 1 Bevezetés 2 Szálkezelés 3 Konkurens Programozás Tóth Zsolt (Miskolci Egyetem)

Részletesebben

6. Közös változóval rendelkező párhuzamos program, Közös változó,

6. Közös változóval rendelkező párhuzamos program, Közös változó, 6. Közös változóval rendelkező párhuzamos program, Közös változó, Reynold kritérium. Atomi művelet, atomi utasítás. szintaxis, szemantika, tulajdonságok. Szinkronizációs párhuzamos program, szintaxis,

Részletesebben

Uniprogramozás. várakozás. várakozás. Program A. Idő. A programnak várakoznia kell az I/Outasítások végrehajtására mielőtt továbbfuthatna

Uniprogramozás. várakozás. várakozás. Program A. Idő. A programnak várakoznia kell az I/Outasítások végrehajtására mielőtt továbbfuthatna Processzusok 1 Uniprogramozás Program A futás várakozás futás várakozás Idő A programnak várakoznia kell az I/Outasítások végrehajtására mielőtt továbbfuthatna 2 Multiprogramozás Program A futás vár futás

Részletesebben

Konkurens TCP Szerver

Konkurens TCP Szerver A gyakorlat célja: Konkurens TCP Szerver Megismerkedni a párhuzamos programozás és a konkurens TCP szerver készítésének az elméleti és gyakorlati alapjaival és egy egyidejűleg több klienst is kiszolgáló

Részletesebben

Operációs rendszerek MINB240

Operációs rendszerek MINB240 Mutex Operációs rendszerek MINB24 3. előadás Ütemezés Bináris szemafor Szemaforváltozója csak két értéket vehet fel ( / 1; foglalt / szabad) Kölcsönös kizárásra 1 kezdőértékű mutex A kritikus szakaszba

Részletesebben

Processzusok (Processes), Szálak (Threads), Kommunikáció (IPC, Inter-Process Communication)

Processzusok (Processes), Szálak (Threads), Kommunikáció (IPC, Inter-Process Communication) 1 Processzusok (Processes), Szálak (Threads), Kommunikáció (IPC, Inter-Process Communication) 1. A folyamat (processzus, process) fogalma 2. Folyamatok: műveletek, állapotok, hierarchia 3. Szálak (threads)

Részletesebben

(kernel3d vizualizáció: kernel245_graph.mpg)

(kernel3d vizualizáció: kernel245_graph.mpg) (kernel3d vizualizáció: kernel245_graph.mpg) http://www.pabr.org/kernel3d/kernel3d.html http://blog.mit.bme.hu/meszaros/node/163 1 (ml4 unix mérés boot demo) 2 UNIX: folyamatok kezelése kiegészítő fóliák

Részletesebben

UNIX: folyamatok kommunikációja

UNIX: folyamatok kommunikációja UNIX: folyamatok kommunikációja kiegészítő fóliák az előadásokhoz Mészáros Tamás http://home.mit.bme.hu/~meszaros/ Budapesti Műszaki Egyetem Méréstechnika és Információs Rendszerek Tanszék 1 A kommunikáció

Részletesebben

Operációs rendszerek. Az NT folyamatok kezelése

Operációs rendszerek. Az NT folyamatok kezelése Operációs rendszerek Az NT folyamatok kezelése Folyamatok logikai felépítése A folyamat modell: egy adott program kódját végrehajtó szál(ak)ból és, a szál(ak) által lefoglalt erőforrásokból állnak. Folyamatok

Részletesebben

Az UPPAAL egyes modellezési lehetőségeinek összefoglalása. Majzik István BME Méréstechnika és Információs Rendszerek Tanszék

Az UPPAAL egyes modellezési lehetőségeinek összefoglalása. Majzik István BME Méréstechnika és Információs Rendszerek Tanszék Az UPPAAL egyes modellezési lehetőségeinek összefoglalása Majzik István BME Méréstechnika és Információs Rendszerek Tanszék Résztvevők együttműködése (1) Automaták interakciói üzenetküldéssel Szinkron

Részletesebben

Nem biztos, hogy mindenhol helytáll, helyenként hiányos, de az eddigi kérdések össze vannak gyűjtve őszi félév első zhval bezárólag.

Nem biztos, hogy mindenhol helytáll, helyenként hiányos, de az eddigi kérdések össze vannak gyűjtve őszi félév első zhval bezárólag. Nem biztos, hogy mindenhol helytáll, helyenként hiányos, de az eddigi kérdések össze vannak gyűjtve. 2013 őszi félév első zhval bezárólag. 1. Mi az operációs rendszer kernel módja és a felhasználói módja

Részletesebben

Szenzorhálózatok programfejlesztési kérdései. Orosz György

Szenzorhálózatok programfejlesztési kérdései. Orosz György Szenzorhálózatok programfejlesztési kérdései Orosz György 2011. 09. 30. Szoftverfejlesztési alternatívák Erőforráskorlátok! (CPU, MEM, Energia) PC-től eltérő felfogás: HW közeli programozás Eszközök közvetlen

Részletesebben

Dr. Schuster György október 14.

Dr. Schuster György október 14. Real-time operációs rendszerek RTOS 2011. október 14. A fordítás vázlata prog.c Előfeldolgozó Átmenti állomány Fordító prog.obj más.obj-tek könyvtárak indító kód Linker futtatható kód Ismétlés Előfeldolgozó

Részletesebben

Matematikai és Informatikai Intézet. 4. Folyamatok

Matematikai és Informatikai Intézet. 4. Folyamatok 4. Folyamatok A folyamat (processzus) fogalma Folyamat ütemezés (scheduling) Folyamatokon végzett "mûveletek" Folyamatok együttmûködése, kooperációja Szálak (thread) Folyamatok közötti kommunikáció 49

Részletesebben

C programozási nyelv Pointerek, tömbök, pointer aritmetika

C programozási nyelv Pointerek, tömbök, pointer aritmetika C programozási nyelv Pointerek, tömbök, pointer aritmetika Dr. Schuster György 2011. június 16. C programozási nyelv Pointerek, tömbök, pointer aritmetika 2011. június 16. 1 / 15 Pointerek (mutatók) Pointerek

Részletesebben

Szálak szinkronizálása (Ro- Sincronizarea threadurilor)

Szálak szinkronizálása (Ro- Sincronizarea threadurilor) Szálak szinkronizálása (Ro- Sincronizarea threadurilor) A gyakorlat célja: Megismerkedni a szálak szinkronizációs metódusaival és alkalmazásuk a Windows környezetben. Elméleti bevezető: Szálak szinkronizálása:

Részletesebben

Operációs rendszerek. 4. gyakorlat: Szignálok küldése, kezelése

Operációs rendszerek. 4. gyakorlat: Szignálok küldése, kezelése Operációs rendszerek 4. gyakorlat: Szignálok küldése, kezelése Ajánlott irodalom UNIX programozáshoz: Kernighan & Pike: A Unix operációs rendszer Stewens: Advanced Programming in the UNIX Environment (APUE)

Részletesebben

Dr. Schuster György október 3.

Dr. Schuster György október 3. Real-time operációs rendszerek RTOS 2011. október 3. FreeRTOSConfig.h 3/1. Ez a header fájl tartalmazza az alapvető beállításokat. Ezek egyszerű #define-ok az értéküket kell beállítani: FreeRTOSConfig.h

Részletesebben

Windows ütemezési példa

Windows ütemezési példa Windows ütemezési példa A példában szereplő számolás erősen leegyszerűsített egy valós rendszerhez képest, csak az elveket próbálja bemutatni! Egyprocesszoros Windows XP-n dolgozunk, a rendszer úgy van

Részletesebben

Operációs rendszerek

Operációs rendszerek Operációs rendszerek 10. előadás - Holtpont kezelés, szignálok 2006/2007. II. félév Dr. Török Levente Links A. Tanenbaum: Op. rendszerek http://www.iit.uni-miskolc.hu/%7evadasz/geial201/jegyzet/3rd.pdf

Részletesebben

Operációs rendszerek II. Folyamatok ütemezése

Operációs rendszerek II. Folyamatok ütemezése Folyamatok ütemezése Folyamatok modellezése az operációs rendszerekben Folyamatok állapotai alap állapotok futásra kész fut és várakozik felfüggesztett állapotok, jelentőségük Állapotátmeneti diagram Állapotátmenetek

Részletesebben

Feladatok (task) együttműködése

Feladatok (task) együttműködése Operációs rendszerek (vimia219) Feladatok (task) együttműködése dr. Kovácsházy Tamás 5. anyagrész, Kölcsönös kizárás, szinkronizáció, kommunikáció Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika

Részletesebben

Operációs rendszerek. UNIX fájlrendszer

Operációs rendszerek. UNIX fájlrendszer Operációs rendszerek UNIX fájlrendszer UNIX fájlrendszer Alapegység: a file, amelyet byte-folyamként kezel. Soros (szekvenciális) elérés. Transzparens (átlátszó) file-szerkezet. Link-ek (kapcsolatok) létrehozásának

Részletesebben

Programozás. (GKxB_INTM021) Dr. Hatwágner F. Miklós február 18. Széchenyi István Egyetem, Gy r

Programozás. (GKxB_INTM021) Dr. Hatwágner F. Miklós február 18. Széchenyi István Egyetem, Gy r Programozás (GKxB_INTM021) Széchenyi István Egyetem, Gy r 2018. február 18. Minimum és maximumkeresés u s i n g n a m e s p a c e s t d ; i n t main ( ) { c o u t

Részletesebben

Concurrency in Swing

Concurrency in Swing Concurrency in Swing A szálkezelés a swing alkalmazásokban is fontos. Cél egy olyan felhasználói felület készítése, amely soha nem fagy, mindig válaszol a felhasználói interakciókra, bármit is csináljon

Részletesebben

Operációs rendszerek. Folyamatok kezelése a UNIX-ban

Operációs rendszerek. Folyamatok kezelése a UNIX-ban Operációs rendszerek Folyamatok kezelése a UNIX-ban Folyamatok a UNIX-ban A folyamat: multiprogramozott operációs rendszer alapfogalma - absztrakt fogalom. A gyakorlati kép: egy program végrehajtása és

Részletesebben

3. Osztályok II. Programozás II

3. Osztályok II. Programozás II 3. Osztályok II. Programozás II Bevezető feladat Írj egy Nevsor osztályt, amely legfeljebb adott mennyiségű nevet képes eltárolni. A maximálisan tárolható nevek számát a konstruktorban adjuk meg. Az osztályt

Részletesebben

Függvények. Programozás I. Hatwágner F. Miklós november 16. Széchenyi István Egyetem, Gy r

Függvények. Programozás I. Hatwágner F. Miklós november 16. Széchenyi István Egyetem, Gy r Programozás I. Széchenyi István Egyetem, Gy r 2014. november 16. Áttekintés kel kapcsolatos fogalmak deklaráció Több, kompatibilis változat is elképzelhet. Meg kell el znie a fv. hívását. Mindenképp rögzíti

Részletesebben

ISA szimulátor objektum-orientált modell (C++)

ISA szimulátor objektum-orientált modell (C++) Budapesti Műszaki és Gazdaságtudományi Egyetem ISA szimulátor objektum-orientált modell (C++) Horváth Péter Elektronikus Eszközök Tanszéke 2015. február 12. Horváth Péter ISA szimulátor objektum-orientált

Részletesebben

A mai program OPERÁCIÓS RENDSZEREK. A probléma. Fogalmak. Mit várunk el? Tágítjuk a problémát: ütemezési szintek

A mai program OPERÁCIÓS RENDSZEREK. A probléma. Fogalmak. Mit várunk el? Tágítjuk a problémát: ütemezési szintek A mai program OPERÁCIÓS RENDSZEREK A CPU ütemezéshez fogalmak, alapok, stratégiák Id kiosztási algoritmusok VAX/VMS, NT, Unix id kiosztás A Context Switch implementáció Ütemezés és a Context Switch Operációs

Részletesebben

Debreceni Egyetem Matematikai és Informatikai Intézet. 13. Védelem

Debreceni Egyetem Matematikai és Informatikai Intézet. 13. Védelem 13. Védelem A védelem célja Védelmi tartományok Hozzáférési mátrixok (access matrix, AM) A hozzáférési mátrixok implementációja A hozzáférési jogok visszavonása Képesség-alapú rendszerek Nyelvbe ágyazott

Részletesebben

2. Folyamatok. Operációs rendszerek. Folyamatok. Bevezetés. 2.1. Folyamatkezelés multiprogramozott rendszerekben. Folyamatok modellezése

2. Folyamatok. Operációs rendszerek. Folyamatok. Bevezetés. 2.1. Folyamatkezelés multiprogramozott rendszerekben. Folyamatok modellezése Operációs rendszerek 2. Folyamatok Simon Gyula 2. Folyamatok Bevezetés Folyamatkezelés multiprogramozott rendszerben Környezet váltás Folyamatleírók, I/O leírók Szálak Megszakítások Felhasznált irodalom:

Részletesebben

Stack Vezérlés szerkezet Adat 2.

Stack Vezérlés szerkezet Adat 2. Stack Vezérlés szerkezet Adat 2. Kód visszafejtés. Izsó Tamás 2013. november 14. Izsó Tamás Stack Vezérlés szerkezet Adat 2./ 1 Változó típusú paraméterekátadása 1. #include < s t d i o. h> int64 myfunc

Részletesebben

Programozási nyelvek és módszerek Java Thread-ek

Programozási nyelvek és módszerek Java Thread-ek Programozási nyelvek és módszerek Java Thread-ek Laki Sándor lakis@inf.elte.hu 2006. május 3. 0-0 Szálak (Threads) Ahhoz, hogy egy mai rendszer m ködhessen több 10-100 folyamatnak kell futnia. A folyamatok

Részletesebben

Információs Technológia

Információs Technológia Információs Technológia Sor és verem adatszerkezet Fodor Attila Pannon Egyetem Műszaki Informatikai Kar Villamosmérnöki és Információs Rendszerek Tanszék foa@almos.vein.hu 2009. november 19. Alapötlet

Részletesebben

Operációs rendszerek. Folyamatok

Operációs rendszerek. Folyamatok Operációs rendszerek Folyamatok Folyamatok A folyamat (process) a multiprogramozott rendszerek alapfogalma. Folyamat általános definíciója: Műveletek meghatározott sorrendben történő végrehajtása. Műveletek

Részletesebben

Operációs rendszerek MINB240

Operációs rendszerek MINB240 Operációs rendszerek MINB240 Ismétlés. előadás Processzusok 2 Alapvető hardware komponensek CPU Diszk Diszk kezelő Diszk Memória kezelő (Controller) Memória Nyomtató Nyomtató kezelő Rendszer busz 3 Alapvető

Részletesebben

Programozás C++ -ban

Programozás C++ -ban Programozás C++ -ban 4. Bevezetés az osztályokba 4.1 Az adatokhoz való hozzáférés ellenőrzése Egy C programban a struktúrák minden része mindig elérhető. Ugyanakkor ez nem a legkedvezőbb helyzet. Több

Részletesebben

C++ programozási nyelv Konstruktorok-destruktorok

C++ programozási nyelv Konstruktorok-destruktorok C++ programozási nyelv Konstruktorok-destruktorok Nyugat-Magyarországi Egyetem Faipari Mérnöki Kar Informatikai Intézet Soós Sándor 2004. szeptember A C++ programozási nyelv Soós Sándor 1/20 Tartalomjegyzék

Részletesebben

A PROGAMOZÁS ALAPJAI 1. Függvény mint függvény paramétere. Függvény mint függvény paramétere. Függvény mint függvény paramétere

A PROGAMOZÁS ALAPJAI 1. Függvény mint függvény paramétere. Függvény mint függvény paramétere. Függvény mint függvény paramétere 2012. április 10. A PROGAMOZÁS ALAPJAI 1 Vitéz András egyetemi adjunktus BME Híradástechnikai Tanszék vitez@hit.bme.hu Miről lesz ma szó? alaki szabályok használata - mintapélda használata - mintapélda

Részletesebben

Operációs rendszerek

Operációs rendszerek Operációs rendszerek? Szükségünk van operációs rendszerre? NEM, mert mi az alkalmazással szeretnénk játszani dolgozni, azért használjuk a számítógépet. IGEN, mert nélküle a számitógépünk csak egy halom

Részletesebben

Programtervez informatikus BSc.

Programtervez informatikus BSc. Harkály Gerg Programtervez informatikus BSc. Korszer webtechnológiák szakirány Fels oktatási tankönyv informatikus hallgatók részére. Verzió: 2019. január 30. 1 Tartalomjegyzék I. Preambulum 4 II. Használati

Részletesebben

Nyíregyházi Főiskola Matematika és Informatika Intézete. Holtpont (Deadlock) Alapfogalmak, példák, ábrázolás. Biztonságos és nem biztonságos állapot

Nyíregyházi Főiskola Matematika és Informatika Intézete. Holtpont (Deadlock) Alapfogalmak, példák, ábrázolás. Biztonságos és nem biztonságos állapot 1 Holtpont (Deadlock) Alapfogalmak, példák, ábrázolás Kialakulási feltételek Biztonságos és nem biztonságos állapot Holtpont kezelési stratégiák Problémák 2 Alapfogalmak A deadlock (holtpont) az az állapot,

Részletesebben

S z á m í t ó g é p e s a l a p i s m e r e t e k

S z á m í t ó g é p e s a l a p i s m e r e t e k S z á m í t ó g é p e s a l a p i s m e r e t e k 7. előadás Ami eddig volt Számítógépek architektúrája Alapvető alkotóelemek Hardver elemek Szoftver Gépi kódtól az operációs rendszerig Unix alapok Ami

Részletesebben

Programozási nyelvek JAVA EA+GY 1. gyakolat

Programozási nyelvek JAVA EA+GY 1. gyakolat Programozási nyelvek JAVA EA+GY 1. gyakolat EÖTVÖS LORÁND TUDOMÁNYEGYTEM INFORMATIKAI KAR PROGRAMOZÁSI NYELVEK ÉS FORDÍTÓPROGRAMOK TANSZÉK 2018/2019. tavaszi félév Tartalom 1 A Java alapjai 2 Java program

Részletesebben

LabView Academy. 4. óra párhuzamos programozás

LabView Academy. 4. óra párhuzamos programozás LabView Academy 4. óra párhuzamos programozás Ellenőrző kérdések Hogyan lehet letiltani az automatikus hibakezelés funkciót? a) Engedélyezzük az Execution highlighting ot b) A subvi error out cluster-jét

Részletesebben

Programozás alapjai C nyelv 5. gyakorlat. Írjunk ki fordítva! Írjunk ki fordítva! (3)

Programozás alapjai C nyelv 5. gyakorlat. Írjunk ki fordítva! Írjunk ki fordítva! (3) Programozás alapjai C nyelv 5. gyakorlat Szeberényi Imre BME IIT Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I. 2005.10.17. -1- Tömbök Azonos típusú adatok tárolására. Index

Részletesebben

Operációs rendszerek Folyamatok 1.1

Operációs rendszerek Folyamatok 1.1 Operációs rendszerek p. Operációs rendszerek Folyamatok 1.1 Pere László (pipas@linux.pte.hu) PÉCSI TUDOMÁNYEGYETEM TERMÉSZETTUDOMÁNYI KAR INFORMATIKA ÉS ÁLTALÁNOS TECHNIKA TANSZÉK A rendszermag Rendszermag

Részletesebben

Programozás I gyakorlat

Programozás I gyakorlat Programozás I. - 2. gyakorlat Változók, kiiratás, bekérés Tar Péter 1 Pannon Egyetem M szaki Informatikai Kar Számítástudomány Alkalmazása Tanszék Utolsó frissítés: September 24, 2007 1 tar@dcs.vein.hu

Részletesebben

Amortizációs költségelemzés

Amortizációs költségelemzés Amortizációs költségelemzés Amennyiben műveleteknek egy M 1,...,M m sorozatának a futási idejét akarjuk meghatározni, akkor egy lehetőség, hogy külön-külön minden egyes művelet futási idejét kifejezzük

Részletesebben

Operációs rendszerek III.

Operációs rendszerek III. A WINDOWS NT memóriakezelése Az NT memóriakezelése Memóriakezelő feladatai: Logikai-fizikai címtranszformáció: A folyamatok virtuális címterének címeit megfelelteti fizikai címeknek. A virtuális memóriakezelés

Részletesebben

Operációs Rendszerek II.

Operációs Rendszerek II. Operációs Rendszerek II. Második előadás Első verzió: 2004/2005. I. szemeszter Ez a verzió: 2009/2010. II. szemeszter Visszatekintés Visszatekintés Operációs rendszer a számítógép hardver elemei és az

Részletesebben

Elosztott rendszerek

Elosztott rendszerek Elosztott rendszerek NGM_IN005_1 Konkurrens folyamatok Folyamat koncepció Adatok (információ reprezetáció) M!veletek (input->output) Számítás (algoritmus) Program (formális nyelv) Folyamat (végrehajtás

Részletesebben

Informatika terméktervezőknek

Informatika terméktervezőknek Informatika terméktervezőknek C# alapok Névterület (namespace) using Osztály (class) és Obejtumok Metódus (function, procedure, method) main() static void string[] arg Szintaxis // /* */ \n \t Névadások

Részletesebben

Szkriptnyelvek. 1. UNIX shell

Szkriptnyelvek. 1. UNIX shell Szkriptnyelvek 1. UNIX shell Szkriptek futtatása Parancsértelmez ő shell script neve paraméterek shell script neve paraméterek Ebben az esetben a szkript tartalmazza a parancsértelmezőt: #!/bin/bash Szkriptek

Részletesebben

Operációs rendszerek. Az NT memóriakezelése

Operációs rendszerek. Az NT memóriakezelése Operációs rendszerek MS Windows NT (2000) memóriakezelés Az NT memóriakezelése 32-bites virtuális memóriakezelés: 4 GB-os címtartomány, alapesetben: a fels! 2 GB az alkalmazásoké, az alsó 2 GB az OPR-é.

Részletesebben

Osztályok. 4. gyakorlat

Osztályok. 4. gyakorlat Osztályok 4. gyakorlat Az osztály fogalma Az objektumok formai leírása, melyek azonos tulajdonsággal és operációkkal rendelkeznek. Osztályból objektum készítését példányosításnak nevezzük. Minden objektum

Részletesebben

Autóipari beágyazott rendszerek. Komponens és rendszer integráció

Autóipari beágyazott rendszerek. Komponens és rendszer integráció Autóipari beágyazott rendszerek és rendszer integráció 1 Magas szintű fejlesztési folyamat SW architektúra modellezés Modell (VFB) Magas szintű modellezés komponensek portok interfészek adattípusok meghatározása

Részletesebben

és az instanceof operátor

és az instanceof operátor Java VIII. Az interfacei és az instanceof operátor Krizsán Zoltán Miskolci Egyetem Általános Informatikai Tanszék Utolsó módosítás: 2005. 10. 24. Java VIII.: Interface JAVA8 / 1 Az interfészről általában

Részletesebben

Programozás alapjai C nyelv 8. gyakorlat. Mutatók és címek (ism.) Indirekció (ism)

Programozás alapjai C nyelv 8. gyakorlat. Mutatók és címek (ism.) Indirekció (ism) Programozás alapjai C nyelv 8. gyakorlat Szeberényi Imre BME IIT Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I. 2005.11.07. -1- Mutatók és címek (ism.) Minden változó és függvény

Részletesebben

Szoftvertechnológia alapjai Java előadások

Szoftvertechnológia alapjai Java előadások Szoftvertechnológia alapjai Java előadások Förhécz András, doktorandusz e-mail: fandrew@mit.bme.hu tárgy honlap: http://home.mit.bme.hu/~fandrew/szofttech_hu.html A mai előadás tartalma: Miért pont Java?

Részletesebben

OE-NIK 2010/11 ősz OE-NIK. 2010. ősz

OE-NIK 2010/11 ősz OE-NIK. 2010. ősz 2010/11 ősz 1. Word / Excel 2. Solver 3. ZH 4. Windows 5. Windows 6. ZH 7. HTML 8. HTML 9. ZH 10. Adatszerkezetek, változók, tömbök 11. Számábrázolási kérdések 12. ZH 13. Pótlás A Windows felhasználói

Részletesebben

Java VIII. Az interfacei. és az instanceof operátor. Az interfészről általában. Interfészek JAVA-ban. Krizsán Zoltán

Java VIII. Az interfacei. és az instanceof operátor. Az interfészről általában. Interfészek JAVA-ban. Krizsán Zoltán Java VIII. Az interfacei és az instanceof operátor Krizsán Zoltán Miskolci Egyetem Általános Informatikai Tanszék Utolsó módosítás: 2005. 10. 24. Java VIII.: Interface JAVA8 / 1 Az interfészről általában

Részletesebben

C# nyelv alapjai. Krizsán Zoltán 1. Objektumorientált programozás C# alapokon tananyag. Általános Informatikai Tanszék Miskolci Egyetem

C# nyelv alapjai. Krizsán Zoltán 1. Objektumorientált programozás C# alapokon tananyag. Általános Informatikai Tanszék Miskolci Egyetem C# nyelv alapjai Krizsán Zoltán 1 Általános Informatikai Tanszék Miskolci Egyetem Objektumorientált programozás C# alapokon tananyag Tartalom Bevezetés Lokális változó Utasítások Szójáték Why do all real

Részletesebben

es tanév őszi félév Tantárgyi követelményrendszer és programleírás

es tanév őszi félév Tantárgyi követelményrendszer és programleírás I. Követelményrendszer 1. Tantárgynév, kód, kredit, választhatóság: Operációs rendszerek, MAI3A8IN, 5 kredit, kötelező 2. Felelős tanszékszakcsoport: Automatizálási és Alkalmazott Informatikai szakcsoport

Részletesebben

Folyamatszálak. Folyamatszálak. Folyamat. Folyamatszál. Szálak felépítése. Folyamatszálak általános jellemzői

Folyamatszálak. Folyamatszálak. Folyamat. Folyamatszál. Szálak felépítése. Folyamatszálak általános jellemzői Folyamatszálak Folyamatszálak A több szál fogalma először az időszeletes rendszereknél (time sharing systems) jelent meg, ahol egyszerre több személy is bejelentkezhetett egy központi számítógépre. Fontos

Részletesebben

C# osztálydeníció. Krizsán Zoltán 1. .net C# technológiák tananyag objektum orientált programozás tananyag

C# osztálydeníció. Krizsán Zoltán 1. .net C# technológiák tananyag objektum orientált programozás tananyag C# osztálydeníció Krizsán Zoltán 1 Általános Informatikai Tanszék Miskolci Egyetem.net C# technológiák tananyag objektum orientált programozás tananyag Tartalom 1 Bevezetés 2 Osztály létrehozása, deníció

Részletesebben

1. Template (sablon) 1.1. Függvénysablon Függvénysablon példányosítás Osztálysablon

1. Template (sablon) 1.1. Függvénysablon Függvénysablon példányosítás Osztálysablon 1. Template (sablon) 1.1. Függvénysablon Maximum függvény megvalósítása függvénynév túlterheléssel. i n l i n e f l o a t Max ( f l o a t a, f l o a t b ) { return a>b? a : b ; i n l i n e double Max (

Részletesebben

ü ő ü ő ő ű ő ő ú ú ü ú ö ő ő Í ü ű ö ú Ö Ö ú Ö ú ú ö ő ő ö ú ü ü Ö ü Í ü ü Í ö Í ö ú ő ü ö Ú Í Ú Ü ö ö ő ő Í ű ö ő ö Í Í ű ő ő ő ő Í Ú ö ü ő Í Í ü Ú ö ö ü ü Í ő Í Í ő ő ö Ú Í Í ö Ü Ö Íő ö ö ö Í ű ű ö

Részletesebben

ű ö ú Í ö ö ö ö ö ű ű ö ö ö ö ű ö ö ö ö ú ű ű Í ö ö Ó ú Ú ö ű ö ö ö ö ö ö ö ö ö ö ú ö Ö ö ű Ő ú ö ű ú ö ö ö ö ö ö ö ö ö ű ű Í ö ű ú ö ű ö ú ö ű ö ö ö ö Í ű ö ö ö ű ö ö Ó ö ö Í ö ö ö Ú ö ö ö Í Í ö Í ö ö

Részletesebben

í ö ö ö ö í ö ő ó ű ö ö ü ő ü ő ö ő ö í ö ő ö ö ö ő ó ú ö ö ö Ü ő í ő ö Ő í ű ő ö ö ö ö Ö Ö ö Ö ő ű ő ü ö ő ő ö ö ő ü ü í ú ö ö ö ö ú Ú ú ő ó ó ó í ó ö ő ő ö í ó ö ö ő ő ö ö í ó ú ő ő ö í ó ö í ó ö ü ó

Részletesebben

OPERÁCIÓS RENDSZEREK I. BEVEZETÉS Koczka Ferenc -

OPERÁCIÓS RENDSZEREK I. BEVEZETÉS Koczka Ferenc - OPERÁCIÓS RENDSZEREK I. BEVEZETÉS Koczka Ferenc - koczka.ferenc@ektf.hu KÖVETELMÉNYEK GYAKORLATI JEGY: Két zárthelyi dolgozat eredményes megírása. Forrás: http://wiki.koczka.hu ELMÉLETI VIZSGA Az előadások

Részletesebben

í ő ü ű ő ö ö Í Ő í ö Ö ő ü ö ő ö í ö ö ő ö ö ű ő ő ő ő ö ő ő ő ö ú ö ő ő ő ő ű ő ö ö ö ű ö ő ö í ö ű ő í ö ö ö ö í ű ő í ö ö í ö ö ö í ú ö ő ö í ű ő ö ö í í í ű ő ö í í ú í í ü í ö ő í ú í ő í ö ö ő í

Részletesebben

7. fejezet: Mutatók és tömbök

7. fejezet: Mutatók és tömbök 7. fejezet: Mutatók és tömbök Minden komolyabb programozási nyelvben vannak tömbök, amelyek gondos kezekben komoly fegyvert jelenthetnek. Először is tanuljunk meg tömböt deklarálni! //Tömbök használata

Részletesebben

Tartalom. Operációs rendszerek. 5.1. Bevezetés. 5.2. CPU ütemezés. Középtávú ütemezés. Hosszútávú ütemezés

Tartalom. Operációs rendszerek. 5.1. Bevezetés. 5.2. CPU ütemezés. Középtávú ütemezés. Hosszútávú ütemezés Tartalom Operációs rendszerek Bevezetés CPU ütemezés Ütemezési algoritmusok alapjai Ütemezési algoritmusok 5. Ütemezés Simon Gyula Felhasznált irodalom: Kóczy-Kondorosi (szerk.): Operációs rendszerek mérnöki

Részletesebben

Programozás II. ATM példa Dr. Iványi Péter

Programozás II. ATM példa Dr. Iványi Péter Programozás II. ATM példa Dr. Iványi Péter 1 ATM gép ATM=Automated Teller Machine Pénzkiadó automata Kezelő szoftvert szeretnénk írni Objektum-orientált módon 2 Követelmények Egyszerre csak egy embert

Részletesebben

OPERÁCIÓS RENDSZEREK. A mai program. A CPU által végrehajtott instrukciófolyam. A folyamat kontextus, processz menedzsment, processz állapotok

OPERÁCIÓS RENDSZEREK. A mai program. A CPU által végrehajtott instrukciófolyam. A folyamat kontextus, processz menedzsment, processz állapotok OPERÁCIÓS RENDSZEREK A folyamat kontextus, processz menedzsment, processz állapotok A mai program A processz és a processz kontextus fogalmak Kontextus váltás (processz rendszer processz kontextus) Processz

Részletesebben

Programozás C nyelven FELÜLNÉZETBŐL elhullatott MORZSÁK. Sapientia EMTE

Programozás C nyelven FELÜLNÉZETBŐL elhullatott MORZSÁK. Sapientia EMTE Programozás C nyelven FELÜLNÉZETBŐL elhullatott MORZSÁK Sapientia EMTE 2015-16 1 Felülnézet 1 Feltételes fordítás #if, #else, #elif, #endif, #ifdef, #ifndef stb. Felülnézet 2 #include: hatására a preprocesszor

Részletesebben

AWK programozás, minták, vezérlési szerkezetek

AWK programozás, minták, vezérlési szerkezetek 10 AWK programozás, minták, vezérlési szerkezetek AWK futtatási módok AWK parancs, közvetlen programkódmegadás: awk 'PROGRAMKÓD' FILE példa: ls -l awk '{print $1, $5}' a programkód helyére minden indentálás

Részletesebben

Programozás II. 4. Dr. Iványi Péter

Programozás II. 4. Dr. Iványi Péter Programozás II. 4. Dr. Iványi Péter 1 inline függvények Bizonyos függvények annyira rövidek, hogy nem biztos hogy a fordító függvényhívást fordít, hanem inkább az adott sorba beilleszti a kódot. #include

Részletesebben

Operációs rendszerek. Bemutatkozás

Operációs rendszerek. Bemutatkozás Bevezetés az operációs rendszerek világába dr. Benyó Balázs benyo@sze.hu Bemutatkozás www.sze.hu/~benyo 1 Számítógép HW-SW felépítése felhasználó felhasználó felhasználó Operációs rendszer Operációs rendszer

Részletesebben

Web-technológia PHP-vel

Web-technológia PHP-vel Web-technológia PHP-vel A PHP programnyelv 2, futtatókörnyezet beálĺıtások Erős Bence February 26, 2013 Erős Bence () Web-technológia PHP-vel February 26, 2013 1 / 19 Szuperglobális változók $ GET : request

Részletesebben

Pénzügyi algoritmusok

Pénzügyi algoritmusok Pénzügyi algoritmusok A C++ programozás alapjai Tömbök (3. rész) Konstansok Kivételkezelés Tömbök 3. Többdimenziós tömbök Többdimenziós tömbök int a; Többdimenziós tömbök int a[5]; Többdimenziós tömbök

Részletesebben

Kölcsönös kizárás, atomicitás, szemafor.

Kölcsönös kizárás, atomicitás, szemafor. Kölcsönös kizárás, atomicitás, szemafor kertesz.gabor@nik.uni-obuda.hu Lock lock (object o) struktúra C#-ban Kölcsönös kizárás megvalósítása object o: szinkronizációs objektum Bármely közös változó lehet,

Részletesebben

OOP #14 (referencia-elv)

OOP #14 (referencia-elv) OOP #14 (referencia-elv) v1.0 2003.03.19. 21:22:00 Eszterházy Károly Főiskola Információtechnológia tsz. Hernyák Zoltán adj. e-mail: aroan@ektf.hu web: http://aries.ektf.hu/~aroan OOP OOP_14-1 - E jegyzet

Részletesebben

Operációs rendszerek. Folyamatok ütemezése

Operációs rendszerek. Folyamatok ütemezése Operációs rendszerek Folyamatok ütemezése Alapok Az ütemezés, az események sorrendjének a meghatározása. Az ütemezés használata OPR-ekben: az azonos erőforrásra igényt tartó folyamatok közül történő választás,

Részletesebben