Előadás_# Az első ZH megírása
|
|
- Lőrinc Balog
- 8 évvel ezelőtt
- Látták:
Átírás
1 Előadás_# Az első ZH megírása 2. Szinkronizáció [OR_02_Folyamatok_zs.ppt az diáig / nem minden diát érintve] Azok a folyamatok, melyek egymástól nem függetlenek, azaz valamilyen függőség fennáll közöttük, ahhoz, hogy a legkevesebb késedelemmel legyenek képesek adatot cserélni egymással összehangoltan kell együttműködniük. A másik folyamathoz való alkalmazkodás kompromisszumokkal és korlátozásokkal jár, de több a járulékos előny ebből, mint a hátrány. A folyamatok műveleteinek összehangolását nevezzük tehát szinkronizációnak. Az összehangolt folyamatok lefutása a következők szerint történhet: Előidejűség (precedencia) Az egyes folyamatok meghatározott műveletei között előírt végrehajtási sorrend van meghatározva. Egy azt jelenti, hogy ez egyik folyamat adott utasításának feltétlenül meg kell előznie a másik folyamat adott utasítását. Nem csak puszta megelőzésről van szó, hanem arról is, hogy a második folyamat adott utasítása csak az első folyamat adott utasításának a befejezése után kezdődhet el, azaz semmiképpen nem lehet időbeli átfedés. Legjellemzőbb eset az, amikor a második folyamatnak szüksége van egy, az első folyamat által előállított adatra. (#59-es dia) Egyidejűség (randevú) Az egyes folyamatok meghatározott műveletei között előírt végrehajtási mód lehet az, hogy a műveleteknek be kell várniuk egymást, és egyidejűleg kell végrehajtódniuk. Az egyidejű végrehajtás az után kezdődhet meg, hogy az azt megelőző folyamatok leghosszabbika is befejeződött. (#61-es dia) A randevú speciális esete a meghosszabbított randevú. Ez gyakorlatilag randevúk egymás utáni sorozatát jelenti. Jellemző, hogy ugyan a folyamatok egyszerre indulnak, szükségképpen mégsem biztos. hogy egyszerre fejeződnek be. Az ez után következő randevúra csak a lassabban lefutó folyamat befejeződése után kerülhet sor. (#63-as dia) Előadás_05-1 -
2 Kölcsönös kizárás (mutual exclusion) Az egyes folyamatok meghatározott műveletei között előírt végrehajtási mód lehet az, hogy a műveletek semmiképpen se egyszerre hajtódjanak végre. Sőt a műveletei még részlegesen sem fedhetik át egymást. (#64-es dia) Könnyen belátható, hogy több együtt futó folyamat esetében léteznek olyan program szakaszok, melyek semmi esetre sem hajtódhatnak végre együtt. Legjellemzőbb eset egy közösen használt erőforráshoz való hozzáférés. A folyamatoknak azon utasítás sorozatait, melyek végrehajtása egyidejűleg nem megengedett, kritikus szakasznak nevezzük. Egy folyamat csak akkor léphet be a kritikus szakaszba, azaz csak akkor kezdheti meg a kritikus szakaszként kijelölt utasítássorozat végrehajtását, ha a kritikus szakaszban másik folyamat nem tartózkodik. Amennyiben egy másik folyamat foglalja a kritikus szakaszt, meg kell várni annak a (rész)folyamatnak a befejeződését, azaz a kritikus szakasz felszabadulását. Párhuzamosan futó folyamatok összetartozó kritikus szakaszai tehát kölcsönösen kizárják egymást. A kölcsönös kizárás eredeti tipikus esete a nyomtatás egy megosztott nyomtatón, (fontos megjegyezni, hogy ez esetben a Windows előtti, azaz a nyomtatatási sor kezelő nélküli, közvetlen elérésű sornyomtató vagy mátrixnyomtató szerepel a példában) hiszen nem lenne szerencsés, ha egy lap szöveges tartalmának nyomtatása közben az egyik sor az egyik, a másik sor pedig egy másik folyamatból származna. Kölcsönös kizárással a második folyamat csak az első folyamat nyomtatásának befejezése után kezdhet maga is nyomtatni. A kölcsönös kizárás ma is az egyik leggyakrabban használt szinkronizációs eszköz mind szoftveres, mind hardveres erőforrások közös használata esetén. Jelentősége azonban már nem a nyomtatás, hanem a fájl és port műveletek esetében van. Magyarázat a #69-#77-es dián bemutatott gyakorlati példához. A "telielemekszáma" egy globális változó, azaz mindegyik folyamat látja. A #75-#77-es diákon a szaggatott vonal az ütemezést jelzi, vagyis a környezetváltást. Előadás_05-2 -
3 A kritikus szakasz gyakorlati megvalósításánál ügyelni kell arra, hogy a következő három feltételt teljesíteni tudjuk. A kölcsönös kizárás biztosítása A kritikus szakaszban egyszerre csak egy folyamat tartózkodhat. A haladás biztosítása Amennyiben a kritikus szakasz nem foglalt, és van legalább egy olyan folyamat, amely be szeretne lépni, akkor ezek közül egyet be kell engedni, A várakozási idő elviselhető szinten tartása Törekedni kell az éheztetés elkerülésére. A kritikus szakaszra való belépés engedélyezése történhet szoftveres vagy hardveres úton. A szoftveres út az egyszerűbb, de időigényesebb megoldás. Az operációs rendszernek ismernie kell a kritikus szakasz elejét (entry) és végét (exit). Az érintett folyamatoknak képesnek kell lenni egyrészt a belépési szándék jelezésére, másrészt a kritikus szakasz elhagyásának jelezésére. Feltétlenül szükség van legalább egy változóra, amely jelzi a kritikus szakasz effektív foglaltságát. A hardveres megoldásnak a processzor utasításkészletébe épülve kell képesnek lennie a foglaltság ellenőrzésének az elvégzésére. Ehhez speciális, megszakíthatatlan, egyidejűleg több művelet végrehajtására is alkalmas megoldásokra van szükség. TestAndSet A megnevezés azért van egybeírva, hogy ez is utaljon arra, hogy ez esetben egy lépésről van szó. Amennyiben egy érintett folyamat azt olvassa ki ebből a változóból, hogy szabadon beléphet, akkor belép és ezzel a TastAndSet logikai változó értékét szabadról foglaltra állítja. A megoldás tehát összesen egy darab logikai változót használ, viszont igényli azt, hogy a PRAM modell mindenképpen az "OlvasÉsÍr"oszthatatlan műveleti sorrendet kövesse. Swap Az elnevezés találó, hiszen ez esetben valóban egy cseréről van szó. Minden érintett folyamat rendelkezik egy kulcsnak nevezett logikai változóval. A kulcs 1-es értéke azt jelzi, hogy az adott folyamat be szándékozik lépni a kritikus szakaszba. Maga a kritikus szakasz szintén rendelkezik egy logikai változóval, aminek lakat az elnevezése. Amennyiben a kritikus szakaszban nem tartózkodik folyamat, a lakat értéke 0. A kritikus szakaszba való belépéshez az összes érintett program meg kell, hogy vizsgálja a lakat változó értékét. Amennyiben egy folyamat a lakat Előadás_05-3 -
4 értékét 0-nak találja, akkor a lakat értékét lecseréli (swap) saját kulcs változójának értékére (ami 1 volt), és belép a kritikus szakaszba. A többi folyamat a lakat vizsgálata során már 1-es értékkel találkozik, azaz nem léphet be. A kritikus szakasz elhagyása után a folyamat visszacseréli a lakat és a kulcs változók értékét, ezzel lehetővé téve egy másik folyamat belépését a kritikus szakaszba. Meg kell jegyezni, hogy a fent ismertetett két megoldás, a három teljesítendő feltétel közül csak az első kettőt tudja maradéktalanul megvalósítani. A harmadik feltétel (a várakozási idő elviselhető szinten tartása) csak lényegesen bonyolultabb eljárással valósítható meg. Szemafor A szemafor algoritmust Edsger Wybe Dijkstra ( , holland matematikus-informatikus) dolgozta ki, 1968-ban. A megoldás működési mechanizmusa egy egyvágányos vasúti sínszakasz védelmének modelljét vette alapul. A szemafor a szinkronizációs problémák megoldásának univerzális eszköze, hiszen a kölcsönös kizárás megvalósításán túl az előidejűség és az egyidejűség esetében is használható. A működés megvalósításához szükségünk van: o egy nem negatív értékeket hordozó változóra, ennek neve "s" (létezik bináris szemafor is ez esetben az "s" értéke csak 0 vagy 1 lehet) o három atomi, azaz nem megszakítható műveletre, melyek elegendőek a modell működéséhez: "Init" [beállít] a szemafor inicializálása, alaphelyzetbe állítása, azaz "s"=1 (kölcsönös kizárás) vagy "s"=0 (előidejűség) illetve "s" 1-nél nagyobb értékre állítása, mely érték a kezelt erőforrások számát mutatja meg. "Wait(s)" [vár] Ez a művelet "s" értékét csökkent 1-el, amennyiben "s" értéke nagyobb mint 0. Nevével ellentétben a wait művelet nem minden esetben várakoztat, csak az "s"=0 esetben történik várakoztatás. (Eredeti elnevezése "P" a proberen holland szó után [kipróbálni]) "Signal(s)" [jelez] Ez a művelet "s" értékét 1-el megnöveli. (Eredeti elnevezése "V" a verhogen holland szó után [megnövelni]) Előadás_05-4 -
5 A működés mechanizmusa a következő. Amennyiben "s" értéke 1, ez azt jelenti, hogy a modell a kölcsönös kizárást valósítja meg. A kritikus szakaszba belépni szándékozó folyamat egy "P" műveletet hajt végre, aminek hatására "s" értéke 0 lesz, és belép a kritikus szakaszba. A kritikus szakaszban végrehajtott programrész befejezése után egy "V" műveletet hajt végre a folyamat, azaz "s" értékét 1-el megnöveli, jelen esetben visszaállítja 1-re. A folyamat elhagyja a kritikus szakasz, lehetőséget teremtve másik folyamatok számára a belépésre. Amennyiben "s" értéke 0, ez azt jelenti, hogy a kritikus szakasz használatban van. A kritikus szakasz felszabadulása után "s" értéke 1 lesz. Fontos megjegyezni, hogy nem mindegy, hogy az "s" értéke az inicializálást követően lesz 1 vagy egy "V" művelet után. Amennyiben "s" értéke 2 (vagy ennél is több), akkor több folyamat egymás mellett képes belépni, mert az "s" értéke ez esetben azt mutatja meg, hogy a szemaforhoz tartozó erőforrásból mennyi áll rendelkezésre. Belépéskor a folyamatok sorban egymás után csökkentik (P), kilépéskor pedig növelik (V) "s" értékét. [Szemafor.xlsx] Működés közben sok folyamat teszteli az "s" értékét, ami legtöbbször felesleges aktív processzor használatot jelent. Lassú folyamatokat nem célszerű futásra kész állapotban tartani, hiszen a processzor, mint erőforrás ezen folyamatoknak még hiányzik, de számos más erőforrást viszont feleslegesen tartanak foglalásban. Célszerűbb a lassú folyamatok esetében altatni, azaz passzív várakozást alkalmazni, hogy elkerüljük az erőforrások pazarlását. (#105-ös dia) 3. A "Monitor" típusú programszerkezet A szemaforral ellentétben a monitor egy magasabb szintű, objektum elvű, objektum orientált művelet. Ezt a programszerkezetet C.A.R Hoare angol programfejlesztő dolgozta ki 1974-ben. A monitor objektum egy több szál által használt eljárás nem párhuzamos végrehajtását teszi lehetővé, azaz nem folyamat szintű művelet. Ötvözi az objektum orientált programozást a szinkronizációs metódusokkal. Előadás_05-5 -
6 A monitor objektum a következőkből áll: o osztott adat o ezeket az adatokat feldolgozó eljárások o monitort inicializáló metódusok A megvalósításhoz ez esetben is három dolog kell, egy feltételváltozó és két művelet (wait és signal), de a kritikus adatokhoz csak szinkronizált műveleteken keresztül lehet hozzáférni. Minden eljárás halmazt egy monitor kontrolál. A többszálas alkalmazás futásakor, a monitor egyetlen szálnak engedélyezi egy adott időpontban az eljárás végrehajtását. Ha egy szál éppen egy monitor által kontrolált eljárást akar futtatni akkor az lefoglalja a monitort. Abban az esetben ha a monitor már foglalt akkor a belépni szándékozó szál várakozik amíg a monitort lefoglaló szál befejezi a adott eljárás végrehajtását és felszabadítja a monitort. Előnye, hogy a közösen használandó erőforrások és az erőforrásokon végrehajtható műveletek egyetlen szintaktikus egységben helyezkednek el. A monitor és a szemafor összehasonlítása: A monitor magasabb szintű eszköz. Magas szintű, objektumorientált nyelvek esetében (pl. Java) roppant egyszerűen használható. A szemaforok segítségével rugalmasabban kezelhetők a kritikus szakaszok, hiszen kell beágyazott módon előre elkészíteni az összes kritikus szakaszt. A szemaforokkal több kritikus erőforrás használatát könnyebb általában összekombinálni egy kritikus szakaszon belül. Előadás_05-6 -
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
Folyamatszálak szinkronizálása
Több mint negyven éves kutatómunkájának szakterülete a felületi kémia. A szilárd felületek szerkezetkutatásán belül azok reakciókészségét, a felületi folyamatok dinamikáját (az oszcilláló reakciók nem
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
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. A műveletek
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:
... 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
Előadás_#06. Előadás_06-1 -
Előadás_#06. 1. Holtpont, Éheztetés [OR_04_Holtpont_zs.ppt az 1-48. diáig / nem minden diát érintve] A holtpont részletes tárgyalása előtt nagyon fontos leszögezni a következőt: Az éheztetés folyamat szintű
Számítógép architektúra
Budapesti Műszaki Főiskola Regionális Oktatási és Innovációs Központ Székesfehérvár Számítógép architektúra Dr. Seebauer Márta főiskolai tanár seebauer.marta@roik.bmf.hu Irodalmi források Cserny L.: Számítógépek
Iman 3.0 szoftverdokumentáció
Melléklet: Az iman3 program előzetes leírása. Iman 3.0 szoftverdokumentáció Tartalomjegyzék 1. Az Iman rendszer...2 1.1. Modulok...2 1.2. Modulok részletes leírása...2 1.2.1. Iman.exe...2 1.2.2. Interpreter.dll...3
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
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)
Vé V g é r g e r h e a h j a tá t s á i s s z s ál á ak a Runnable, Thread
Végrehajtási szálak Runnable, Thread Végrehajtási szálak Java-ban A Java program az operációs rendszer egy folyamatán (process) belül fut. A folyamat adat és kód szegmensekből áll, amelyek egy virtuális
Előadás_#04. Előadás_04-1 -
Előadás_#04. 1. Szálak (thread) [OR_02_Folyamatok_zs.ppt az 13-14. diáig] A szálakról általános érvényű megfogalmazásokat általában a multiprogramozott rendszerekre vonatkozóan csak nagyon óvatosan lehet
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
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
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)
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
Tartalomjegyzék. Előszó... 10
Előszó... 10 1. Bevezetés a Symbian operációs rendszerbe... 11 1.1. Az operációs rendszer múltja...11 1.2. Az okos telefonok képességei...12 1.3. A Symbian felépítése...15 1.4. A könyv tartalma...17 2.
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
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
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ó
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-é.
Java programozási nyelv 9. rész Kivételkezelés
Java programozási nyelv 9. rész Kivételkezelés Nyugat-Magyarországi Egyetem Faipari Mérnöki Kar Informatikai Intézet Soós Sándor 2005. szeptember A Java programozási nyelv Soós Sándor 1/24 Tartalomjegyzék
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
A fordítóprogramok szerkezete. Kódoptimalizálás. A kódoptimalizálás célja. A szintézis menete valójában. Kódoptimalizálási lépések osztályozása
A fordítóprogramok szerkezete Forrásprogram Forrás-kezelő (source handler) Kódoptimalizálás Fordítóprogramok előadás (A,C,T szakirány) Lexikális elemző (scanner) Szintaktikus elemző (parser) Szemantikus
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
Osztott jáva programok automatikus tesztelése. Matkó Imre BBTE, Kolozsvár Informatika szak, IV. Év 2007 január
Osztott jáva programok automatikus tesztelése Matkó Imre BBTE, Kolozsvár Informatika szak, IV. Év 2007 január Osztott alkalmazások Automatikus tesztelés Tesztelés heurisztikus zaj keltés Tesztelés genetikus
AZ OPERÁCIÓS RENDSZER MINT ABSZTRAKT, VIRTUÁLIS GÉP
2. AZ OPERÁCIÓS RENDSZER MINT ABSZTRAKT, VIRTUÁLIS GÉP Mint az előző fejezetben megállapítottuk, az operációs rendszer egyik fő feladata, hogy egy kényelmesen kezelhető virtuális gépet jelenítsen meg a
A programozás alapjai előadás. Amiről szólesz: A tárgy címe: A programozás alapjai
A programozás alapjai 1 1. előadás Híradástechnikai Tanszék Amiről szólesz: A tárgy címe: A programozás alapjai A számítógép részegységei, alacsony- és magasszintű programnyelvek, az imperatív programozási
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)
Java programozási nyelv
Java programozási nyelv 2. rész Vezérlő szerkezetek Nyugat-Magyarországi Egyetem Faipari Mérnöki Kar Informatikai Intézet Soós Sándor 2005. szeptember A Java programozási nyelv Soós Sándor 1/23 Tartalomjegyzék
Operációs rendszerek
Operációs rendszerek 2. EA Regiszter: A regiszterek a számítógépek központi feldolgozó egységeinek (CPU-inak), illetve mikroprocesszorainak gyorsan írható-olvasható, ideiglenes tartalmú, és általában egyszerre
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
Optimista konkurenciavezérlés
Optimista konkurenciavezérlés Léteznek zárolás nélküli módszerek is a tranzakciók sorba rendezhetségének a biztosítására. idpecsét érvényesítés. Optimista: feltételezik, hogy nem fordul el nem sorba rendezhet
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
Csak felvételi vizsga: csak záróvizsga: közös vizsga: Mérnök informatikus szak BME Villamosmérnöki és Informatikai Kar. 2010. január 4.
Név, felvételi azonosító, Neptun-kód: MI pont(90) : Csak felvételi vizsga: csak záróvizsga: közös vizsga: Közös alapképzéses záróvizsga mesterképzés felvételi vizsga Mérnök informatikus szak BME Villamosmérnöki
Szoftver labor III. Tematika. Gyakorlatok. Dr. Csébfalvi Balázs
Szoftver labor III. Dr. Csébfalvi Balázs Irányítástechnika és Informatika Tanszék e-mail: cseb@iit.bme.hu http://www.iit.bme.hu/~cseb/ Tematika Bevezetés Java programozás alapjai Kivételkezelés Dinamikus
A programozás alapjai
A programozás alapjai Változók A számítógép az adatokat változókban tárolja A változókat alfanumerikus karakterlánc jelöli. A változóhoz tartozó adat tipikusan a számítógép memóriájában tárolódik, szekvenciálisan,
A projekt idő-, erőforrás és költségterve 1. rész
A projekt idő-, erőforrás és költségterve 1. rész A TERVEZÉS FOLYAMATA a projekttevékenységek meghatározása a tevékenységek közötti logikai függőségi kapcsolatok meghatározása erőforrás-allokáció és a
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
SZÁMÍTÓGÉP ARCHITEKTÚRÁK
SZÁMÍTÓGÉP ARCHITEKTÚRÁK Az utasítás-pipeline szélesítése Horváth Gábor, Belső Zoltán BME Hálózati Rendszerek és Szolgáltatások Tanszék ghorvath@hit.bme.hu, belso@hit.bme.hu Budapest, 2018-05-19 1 UTASÍTÁSFELDOLGOZÁS
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,
Programozás alapjai Bevezetés
Programozás alapjai Bevezetés Miskolci Egyetem Általános Informatikai Tanszék Programozás alapjai Bevezetés SWF1 / 1 Tartalom A gépi kódú programozás és hátrányai A magas szintÿ programozási nyelv fogalma
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,
Osztott rendszer. Osztott rendszer informális definíciója
Osztott rendszer Osztott rendszer informális definíciója Egymástól elkülönülten létező program-komponensek egy halmaza. A komponensek egymástól függetlenül dolgoznak saját erőforrásukkal. A komponensek
A számítógépek felépítése. A számítógép felépítése
A számítógépek felépítése A számítógépek felépítése A számítógépek felépítése a mai napig is megfelel a Neumann elvnek, vagyis rendelkezik számoló egységgel, tárolóval, perifériákkal. Tápegység 1. Tápegység:
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
ELŐADÁS ÁTTEKINTÉSE. Tevékenységek tervezése Gantt diagramm
ELŐADÁS ÁTTEKINTÉSE Tevékenységek tervezése Gantt diagramm TEVÉKENYSÉGEK TERVEZÉSE Fel kell vázolni egy lehetséges tevékenység sorozatot, egyfajta megoldást, illetve elvárt eredményt, amit a célrendszerrel
Objektumorientált programozás Pál László. Sapientia EMTE, Csíkszereda, 2014/2015
Objektumorientált programozás Pál László Sapientia EMTE, Csíkszereda, 2014/2015 9. ELİADÁS Kivételkezelés (Exception handling) 2 Mi a kivétel (exception)? A kivétel, olyan hibás állapot vagy esemény, amely
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
Elengedhetetlen a játékokban, mozi produkciós eszközökben Nélküle kvantum hatás lép fel. Az objektumok áthaladnak a többi objektumon
Bevezetés Ütközés detektálás Elengedhetetlen a játékokban, mozi produkciós eszközökben Nélküle kvantum hatás lép fel Az objektumok áthaladnak a többi objektumon A valósághű megjelenítés része Nem tisztán
Rubin SPIRIT TEST. Rubin firmware-ek és hardverek tesztelése esettanulmány V1.0. Készítette: Hajnali Krisztián Jóváhagyta: Varga József
Rubin firmware-ek és hardverek tesztelése esettanulmány V1.0 Készítette: Hajnali Krisztián Jóváhagyta: Varga József Rubin Informatikai Zrt. 1149 Budapest, Egressy út 17-21. telefon: +361 469 4020; fax:
Algoritmusok Tervezése. 6. Előadás Algoritmusok 101 Dr. Bécsi Tamás
Algoritmusok Tervezése 6. Előadás Algoritmusok 101 Dr. Bécsi Tamás Mi az algoritmus? Lépések sorozata egy feladat elvégzéséhez (legáltalánosabban) Informálisan algoritmusnak nevezünk bármilyen jól definiált
Rendszer szekvencia diagram
Rendszer szekvencia diagram Célkitűzések A rendszer események azonosítása. Rendszer szekvencia diagram készítése az eseményekre. 2 1.Iteráció Az első igazi fejlesztési iteráció. A projekt kezdeti szakaszában
Utolsó módosítás:
Utolsó módosítás: 2011. 09. 08. 1 A tantárggyal kapcsolatos adminisztratív kérdésekkel Micskei Zoltánt keressétek. 2 3 4 5 6 7 8 9 10 11 12 13 14 Erősen buzzword-fertőzött terület, manapság mindent szeretnek
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
Dr. Illés Zoltán zoltan.illes@elte.hu
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 Folyamatok Folyamatok kommunikációja Kritikus szekciók, szemaforok.
Tranzakció-kezelés, alapfogalmak. Vassányi István, 2012.
Tranzakció-kezelés, alapfogalmak Vassányi István, 2012. ACID tulajdonságok Tranzakció: az üzleti folyamat egy logikailag összetartozó lépéssorozata atomicity: nem valósulhat meg részlegesen consistency:
Fogalomtár Etikus hackelés tárgyban Azonosító: S2_Fogalomtar_v1 Silent Signal Kft. Email: info@silentsignal.hu Web: www.silentsignal.
Fogalomtár Etikus hackelés tárgyban Azonosító: S2_Fogalomtar_v1 Silent Signal Kft. Email: info@silentsignal.hu Web: www.silentsignal.hu. 1 Tartalom 1. BEVEZETŐ... 3 1.1 Architektúra (terv) felülvizsgálat...
Globális operátor overloading
Programozás II. 9. gyakorlat Operátor overloading 2: Unáris operátorok, globálisan megvalósított operátorok, > operátorok Kivételkezelés, IO library Globális operátor overloading Előző alkalommal
Objektumorientált paradigma és a programfejlesztés
Objektumorientált paradigma és a programfejlesztés Vámossy Zoltán vamossy.zoltan@nik.uni-obuda.hu Óbudai Egyetem Neumann János Informatikai Kar Ficsor Lajos (Miskolci Egyetem) prezentációja alapján Objektumorientált
Országos Szakiskolai Közismereti Tanulmányi Verseny 2005/2006 SZÁMÍTÁSTECHNIKA
Országos Szakiskolai Közismereti Tanulmányi Verseny 2005/2006 SZÁMÍTÁSTECHNIKA I. (iskolai) forduló 2005. december 15... Iskola fejbélyegzője Versenyző Pontszám Neve Osztálya Elérhető Elért Százalék. 120..
WinSarc Irodai Vezérlőpult: - [Ügyfelek nyilvántartása]
WinSarc Irodai Vezérlőpult: - [Ügyfelek nyilvántartása] A programot elsősorban a könyvelőirodák tudják hatékonyan alkalmazni a nagy tömegben, ismétlődően végzendő feladatok ellátására. A program a WinSarc
Objektumorientált programozás Pál László. Sapientia EMTE, Csíkszereda, 2014/2015
Objektumorientált programozás Pál László Sapientia EMTE, Csíkszereda, 2014/2015 Objektumorientált programozás - Pál László 12. ELŐADÁS Állomány-kezelés 2 Objektumorientált programozás - Pál László Mi a
Bevezetés az informatikába
Bevezetés az informatikába 6. előadás Dr. Istenes Zoltán Eötvös Loránd Tudományegyetem Informatikai Kar Programozáselmélet és Szoftvertechnológiai Tanszék Matematikus BSc - I. félév / 2008 / Budapest Dr.
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
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
Programozási nyelvek 6. előadás
Programozási nyelvek 6. előadás Szempontok Programozási nyelvek osztályozása Felhasználói kör (amatőr, professzionális) Emberközelség (gépi nyelvektől a természetes nyelvekig) Számítási modell (hogyan
Az interrupt Benesóczky Zoltán 2004
Az interrupt Benesóczky Zoltán 2004 1 Az interrupt (program megszakítás) órajel generátor cím busz környezet RESET áramkör CPU ROM RAM PERIF. adat busz vezérlõ busz A periféria kezelés során információt
JOGSISZOFT TESZTLAPNYOMTATÓ PROGRAM. A program az egyszer elkészített teszt feladatokat eltárolja, így azok később is kinyomtathatóak.
JOGSISZOFT TESZTLAPNYOMTATÓ PROGRAM Használati utasítás A program segítségével korlátlan számú hagyományos B kategóriás tesztlap nyomtatható, valamint 2345 kérdésből tetszőleges összeállítású tematikus
Programozási nyelvek a közoktatásban alapfogalmak I. előadás
Programozási nyelvek a közoktatásban alapfogalmak I. előadás Szempontok Programozási nyelvek osztályozása Felhasználói kör (amatőr, professzionális) Emberközelség (gépi nyelvektől a természetes nyelvekig)
Web-programozó Web-programozó
Az Országos Képzési Jegyzékről és az Országos Képzési Jegyzékbe történő felvétel és törlés eljárási rendjéről szóló 133/2010. (IV. 22.) Korm. rendelet alapján. Szakképesítés, szakképesítés-elágazás, rész-szakképesítés,
A Java EE 5 plattform
A Java EE 5 platform Ficsor Lajos Általános Informatikai Tanszék Miskolci Egyetem Utolsó módosítás: 2007. 11. 13. A Java EE 5 platform A Java EE 5 plattform A J2EE 1.4 után következő verzió. Alapvető továbbfejlesztési
Operációs rendszerek be és kivitelkezelése, holtpont fogalma, kialakulásának feltételei, holtpontkezelési stratégiák, bankár algoritmus.
Operációs rendszerek be és kivitelkezelése, holtpont fogalma, kialakulásának feltételei, holtpontkezelési stratégiák, bankár algoritmus. Input/Output I/O Hardware I/O eszközök (kommunikációs portok szerint
1. előadás. Lineáris algebra numerikus módszerei. Hibaszámítás Számábrázolás Kerekítés, levágás Klasszikus hibaanalízis Abszolút hiba Relatív hiba
Hibaforrások Hiba A feladatok megoldása során különféle hibaforrásokkal találkozunk: Modellhiba, amikor a valóságnak egy közelítését használjuk a feladat matematikai alakjának felírásához. (Pl. egy fizikai
Algoritmusok. Hogyan csináljam?
Algoritmusok Hogyan csináljam? 1 Az algoritmus fogalma Algoritmusnak olyan pontos előírást nevezünk, amely megmondja, hogy bizonyos feladat megoldásakor milyen műveleteket milyen meghatározott sorrendben
C++ programozási nyelv
C++ programozási nyelv Gyakorlat - 13. hét Nyugat-Magyarországi Egyetem Faipari Mérnöki Kar Informatikai Intézet Soós Sándor 2004. december A C++ programozási nyelv Soós Sándor 1/10 Tartalomjegyzék Objektumok
KIR-STAT internetes adatgyűjtő rendszer
- internetes adatgyűjtő rendszer Kitöltési útmutató Budapest, 2012. október 1. TARTALOMJEGYZÉK 1.1. Milyen lépések szükségesek az adatszolgáltatás sikeres teljesítéséhez? 1.2. Belépéssel kapcsolatos tudnivalók
IT - Alapismeretek. Feladatgyűjtemény
IT - Alapismeretek Feladatgyűjtemény Feladatok PowerPoint 2000 1. FELADAT TÖRTÉNETI ÁTTEKINTÉS Pótolja a hiányzó neveket, kifejezéseket! Az első négyműveletes számológépet... készítette. A tárolt program
Számítógép felépítése
Alaplap, processzor Számítógép felépítése Az alaplap A számítógép teljesítményét alapvetően a CPU és belső busz sebessége (a belső kommunikáció sebessége), a memória mérete és típusa, a merevlemez sebessége
Objektumorientált paradigma és programfejlesztés Bevezető
Objektumorientált paradigma és programfejlesztés Bevezető Vámossy Zoltán vamossy.zoltan@nik.uni-obuda.hu Óbudai Egyetem Neumann János Informatikai Kar Ficsor Lajos (Miskolci Egyetem) prezentációja alapján
Negatív alapú számrendszerek
2015. március 4. Negatív számok Legyen b > 1 egy adott egész szám. Ekkor bármely N 0 egész szám egyértelműen felírható N = m a k b k k=1 alakban, ahol 0 a k < b egész szám. Negatív számok Legyen b > 1
Kinek szól a könyv? A könyv témája A könyv felépítése Mire van szükség a könyv használatához? A könyvben használt jelölések. 1. Mi a programozás?
Bevezetés Kinek szól a könyv? A könyv témája A könyv felépítése Mire van szükség a könyv használatához? A könyvben használt jelölések Forráskód Hibajegyzék p2p.wrox.com xiii xiii xiv xiv xvi xvii xviii
Informatikai rendszerek alapjai (Informatika I.)
Informatikai rendszerek alapjai (Informatika I.) NGB_SZ003_1 Lovas Szilárd, Krankovits Melinda SZE MTK MSZT kmelinda@sze.hu B607 szoba 4. Előadás Operációs rendszer fogalma, funkciói Operációs rendszerek
Utolsó módosítás:
Utolsó módosítás: 2016. 05. 09. 1 2 Gondoljunk rá, hogy egy ekkora rendszerben garantáltan folyamatosan van valami meghibásodás! Az adatok nem légből kapottak, az egyik magyarországi VMware Users Group
Programozás és Digitális technika I. Pógár István eng.unideb.hu/pogari
Programozás és Digitális technika I. Pógár István pogari@eng.unideb.hu eng.unideb.hu/pogari Ajánlott irodalom Massimo Banzi Getting Started with Arduino Michael Margolis Make an Android Controlled Robot
Követelmény az 5. évfolyamon félévkor matematikából
Követelmény az 5. évfolyamon félévkor matematikából Gondolkodási és megismerési módszerek Néhány elem kiválasztása adott szempont szerint. Néhány elem sorba rendezése, az összes lehetséges sorrend felsorolása.
Dr. Kulcsár Gyula. Virtuális vállalat félév. Projektütemezés. Virtuális vállalat félév 5. gyakorlat Dr.
Projektütemezés Virtuális vállalat 06-07. félév 5. gyakorlat Dr. Kulcsár Gyula Projektütemezési feladat megoldása Projekt: Projektütemezés Egy nagy, összetett, általában egyedi igény alapján előállítandó
Tudásszint mérés feladatlap
Tudásszint mérés feladatlap 9. évfolyam Útmutató: Semmilyen segédeszköz nem használható! A feladatlap kitöltésére 40 perc áll rendelkezésedre! Gondold át válaszaidat! Név:... Dátum:... Iskola:... Osztály:...
Bevezetés. Többszálú, többmagos architektúrák és programozásuk Óbudai Egyetem, Neumann János Informatikai Kar
Többszálú, többmagos architektúrák és programozásuk Óbudai Egyetem, Neumann János Informatikai Kar Bevezetés Motiváció Soros és párhuzamos végrehajtás, soros és párhuzamos programozás Miért? Alapfogalmak
Nemzeti alaptanterv 2012 MATEMATIKA
ALAPELVEK, CÉLOK Az iskolai matematikatanítás célja, hogy hiteles képet nyújtson a matematikáról mint tudásrendszerről és mint sajátos emberi megismerési, gondolkodási, szellemi tevékenységről. A matematika
13. óra op. rendszer ECDL alapok
13. óra op. rendszer ECDL alapok 1. Mire szolgál az asztal? a) Az ideiglenesen törölt fájlok tárolására. b) A telepített alkalmazások tárolására. c) A telepített alkalmazások ikonok általi gyors elérésére.
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
Az optimális megoldást adó algoritmusok
Az optimális megoldást adó algoritmusok shop ütemezés esetén Ebben a fejezetben olyan modellekkel foglalkozunk, amelyekben a munkák több műveletből állnak. Speciálisan shop ütemezési problémákat vizsgálunk.
Oktatási cloud használata
Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnikai és Információs Rendszerek Tanszék Oktatási cloud használata Készítette: Tóth Áron (BME MIT), 2013. A segédlet célja a tanszéki oktatási cloud
Széchenyi István Egyetem. Programozás III. Varjasi Norbert varjasin@sze.hu
Programozás III. Varjasi Norbert varjasin@sze.hu 1 A java virtuális gép (JVM) Képzeletbei, ideális számítógép. Szoftveresen megvalósított működési környezet. (az op. rendszer egy folyamata). Feladata:
Adatstruktúrák, algoritmusok, objektumok
Adatstruktúrák, algoritmusok, objektumok 3. Az objektumorientált paradigma alapelemei Objektum Osztály Példányosítás A konstruktor és a destruktor Osztályok közötti kapcsolatok Miklós Árpád, BMF NIK, 2006
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
Java V. Osztályszint. lyszintű ű tagok. Példányváltozó. Osztályváltozó. Általános Informatikai Tanszék Utolsó módosítás:
Java V. szint lyszintű ű tagok A final minősítő Miskolci Egyetem Általános Informatikai Tanszék Utolsó módosítás: 2005. 10. 05. Java V.: szintű tagok JAVA5 / 1 Példányváltozó Az eddig megismert adattagokból
Eseménykezelés. Szoftvertervezés és -fejlesztés II. előadás. Szénási Sándor.
Eseménykezelés előadás http://nik.uni-obuda.hu/sztf2 Szénási Sándor szenasi.sandor@nik.uni-obuda.hu Óbudai Egyetem,Neumann János Informatikai Kar Függvénymutatókkal Származtatással Interfészekkel Egyéb