1 Operációs rendszerek Folyamatok ütemezése. 2 Alapok Az ütemezés, az események sorrendjének a meghatározása. Az ütemezés használata OPR-ekben: –az azonos.

Slides:



Advertisements
Hasonló előadás
Készítette: Kosztyán Zsolt Tibor
Advertisements

I. előadás.
„Esélyteremtés és értékalakulás” Konferencia Megyeháza Kaposvár, 2009
Alaplap.
PPKE ITK 2009/10 tanév 8. félév (tavaszi) Távközlő rendszerek forgalmi elemzése Tájékoztatás
1 Számítógépek felépítése 9. előadás I/O rendszerek.
Hatékonyságvizsgálat, dokumentálás
Kvantitatív módszerek
Vállalat kínálati magatartása
Humánkineziológia szak
3. Két független minta összehasonlítása
Operációs rendszerek 1. Takács Béla
Linux ütemezés  Sokszor változott az évek folyamán  Az alap ütemező egyszerű volt  Prioritásos, futási sorok, RR…  2.4 verzió: O(n) ütemező o (következő.
Ütemezési algoritmusok (FCFS, SJF, RR)
Szoftevrismeret Operációs rendszerek.
MI 2003/ Alakfelismerés - még egy megközelítés: még kevesebbet tudunk. Csak a mintánk adott, de címkék nélkül. Csoportosítás (klaszterezés, clustering).
Az operációs rendszerek
Közúti és Vasúti járművek tanszék. Célja:az adott járműpark üzemképes állapotának biztosítása. A karbantartás folyamatait gyakran az üzemeltetést is kiszolgáló.
Közúti és Vasúti járművek tanszék. Fontosabb tevékenységek a lehetséges folyamat technológiában: A- a jármű azonosítása B- tisztítás C- diagnosztikai.
Dr. Szalka Éva, Ph.D.1 Statisztika II. VII.. Dr. Szalka Éva, Ph.D.2 Mintavétel Mintavétel célja: következtetést levonni a –sokaságra vonatkozóan Mintavétel.
Folyamatok ütemezése a UNIX-ban
Dr. Szalka Éva, Ph.D.1 Statisztika II. IX.. Dr. Szalka Éva, Ph.D.2 Idősorok elemzése.
1 Pepper Rendszerház Zrt. Kafetéria rendszer a VIP Humánpolitikai Rendszerben.
Előadó: Prof. Dr. Besenyei Lajos
1. előadás. 1.) Szoftverfejlesztés, mint mérnöki tevékenység. Számítási eszközfejlődés. Számítási eszközfejlődés: hazai viszonyok. Mérföldkő: Simula 67.Klasszikus.
1. előadás. 1.) Szoftverfejlesztés, mint mérnöki tevékenység. Számítási eszközfejlődés. Számítási eszközfejlődés: hazai viszonyok. Mérföldkő: Simula 67.Klasszikus.
6. Előadás Merevítő rendszerek típusok, szerepük a tervezésben
Regresszióanalízis 10. gyakorlat.
PPKE ITK 2009/10 tanév 8. félév (tavaszi) Távközlő rendszerek forgalmi elemzése Tájékoztatás GY. - 7.
Miskolci Egyetem Informatikai Intézet Általános Informatikai Tanszé k Pance Miklós Adatstruktúrák, algoritmusok előadásvázlat Miskolc, 2004 Technikai közreműködő:
1 Operációs rendszerek Az ütemezés megvalósítása.
1 Folyamatok modellezése az operációs rendszerekben Operációs rendszerek.
Számítógépes üzemmódok
Matematikai alapok és valószínűségszámítás
Befektetési döntések Bevezetés
Kölcsönös kizárás (bináris és nembináris szemaforok)
A számítógép teljesítménye
Készítette: Gergó Márton Konzulens: Engedy István 2009/2010 tavasz.
Programtesztelés. Hibák keletkezésének okai nem egyértelmű vagy hiányos kommunikáció fejlesztés közben maga a szoftver bonyolultsága programozói (kódolási)
Problémás függvények : lokális optimalizáció nem használható Globális optimalizáció.
2008 február 26.1 Szonda Ipsos-GfK Hungária országos rádióhallgatottsági mérés 2008 január ● Módszertan Módszertan ● 15+ célcsoport  15+ célcsoport 
2007 július 24.1 Szonda Ipsos-GfK Hungária országos rádióhallgatottsági mérés 2007 június ●MódszertanMódszertan ●15+ célcsoport 15+ célcsoport  ●15+
2007 augusztus 27.1 Szonda Ipsos-GfK Hungária országos rádióhallgatottsági mérés 2007 július ●MódszertanMódszertan ●15+ célcsoport 15+ célcsoport  ●15+
2006 december 18.1 Szonda Ipsos-GfK Hungária országos rádióhallgatottsági mérés 2006 november ●MódszertanMódszertan ●15+ célcsoport 15+ célcsoport  ●15+
2007 november 28.1 Szonda Ipsos-GfK Hungária országos rádióhallgatottsági mérés 2007 október ●MódszertanMódszertan ●15+ célcsoport 15+ célcsoport  ●15+
Alapsokaság (populáció)
Két kvantitatív változó kapcsolatának vizsgálata
Processzrokezelés. Miért alakult ki a processzor? Kezdetben céláramkörök, önálló chipek Ötlet: miért nem készítünk egy chipet, ami végrehajtja az összes.
Termelő-fogysztó modell. A probléma absztrakt megfogalmazása: informális leírás. Adott egy N elemű közösen használt tároló, N  1. Adott a folyamatoknak.
I. előadás.
Miskolci Egyetem Gazdaságtudományi Kar Üzleti Információgazdálkodási és Módszertani Intézet Mintavételes Eljárások.
Óravázlat Készítette: Kucsera Mihály és Toldi Miklós
Vízminősítés és terhelés számítás feladat
Energetikai gazdaságtan
CMMI 1.3 – Verifikáció Készítette: Kis Gergely. Bevezetés A specifikációt, követelményt vetjük össze a kész/készülő termékkel Itt nem vizsgáljuk, hogy.
Szimuláció.
Erőforrások tárolhatóság klasszikus felosztás
2. Operációs rendszerek.
PPKE ITK 2007/08 tanév 7. szemeszter Őszi félév Távközlő rendszerek forgalmi elemzése Tájékoztatás GY. - 8.
PPKE ITK 2004/05 tanév IV. évfolyam Őszi félév Távközlő rendszerek forgalmi elemzése Tájékoztatás GY. - 7.
Gyorsulás, lassulás. Fékút, féktávolság, reakció idő alatt megtett út
CISC-RISC processzor jellemzők Előadó: Thész Péter Programtervező informatikus hallgató Budapest,
Mi a logisztikai szimuláció? Egy logisztikai rendszer szereplői... Gyártás Raktározás Rendelés.
IP címzés Gubó Gergely Konzulens: Piedl Péter Neumann János Számítástechnikai Szakközépiskola Cím: 1144 Budapest Kerepesi út 124.
Operációs rendszerek Az operációs rendszerek működésének alapfogalmai.
Párhuzamos programozás
Mediánok és rendezett minták
I. Előadás bgk. uni-obuda
Szabályozott és képes termékek/szolgáltatások, folyamatok, rendszerek
Algoritmus készítés.
Előadás másolata:

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

2 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, az erőforrás kiosztása, allokálása. Multiprogramozás foka: –az adott pillanatban a memóriában jelenlévő folyamatok száma.

3 Alapok A két alapvető erőforrás (CPU, Memória) kiosztása versengés útján történik. Az a folyamat versenghet, amelyiknek az éppen végrehajtandó utasítása a memóriában van. Tehát a processzort egyidejűleg egy folyamat használja, a többiek egy várakozási sorban tartózkodnak.

4 Alapok A processzor felszabadulása után az OPR választja ki, valamilyen algoritmussal a következő CPU-ra váró folyamatot. Ez az ún. CPU-ütemezés (rövid távú ütemező). A multiprogramozott OPR alapjának a CPU- -ütemezés tekinthető. Látszólagos párhuzamos működés egy nagyobb időléptékben nézve.

5 Processzor ütemezés Rövid távú ütemezés, amely gyakran fut. Így gyorsnak kell lennie, hogy a CPU-idő ne az ütemezéssel teljék. Ezért ez az ütemező a kernel része, és állandóan a memóriában van. Fajtái: –Preemptív: ha az OPR elveheti a futás jogát az éppen futó folyamattól, és futásra kész állapotúvá teheti. –Nem preemptív: nem veheti el a futási jogot. Így a folyamat addig fut, amíg egy általa kiadott utasítás hatására állapotot nem vált. Azaz csak maga a folyamat válthat ki ütemezést.

6 Processzor ütemezés Ütemezést kiváltó események: –a futó folyamat befejeződik, –a futó folyamat várakozni kényszerül, –a futó folyamat önként lemond a futási jogáról, vagy elveszik tőle, –egy folyamat felébred és futásra késszé válik.

7 Ütemezési algoritmusok összehasonlítása CPU kihasználtság: – azt mutatja meg, hogy a CPU-idő hány százaléka fordítódik a folyamatok utasításainak a végrehajtására, –(ΣCPU-idő – Σ(henyélés+admin)) / ΣCPU-idő x 100 = általában [%]. Átbocsátó képesség: –időegység alatt elvégzett munkák száma, –elvégzett munkák száma / időegység = a feladat jellegétől függ, pl.: 1/h, 10/sec.

8 Ütemezési algoritmusok összehasonlítása Körülfordulási idő: –egy munkára fordított teljes idő, –Σ(végrehajtási + várakozási) idő, –csak a várakozási idő függ az ütemezéstől. Várakozási idő: –egy munka teljes várakozási ideje, –Σ(hosszú távú ütemezésig eltelt + futásra kész + + várakozó + felfüggesztett) idő. Válaszidő: –a felhasználó(k) felé történő reagálás ideje.

9 Ütemezési algoritmusokkal szembeni követelmények Valamelyik paraméter (az előbb említettek közül) szempontjából optimális. Korrekt, azaz minden folyamat kapjon bizonyos CPU-időt. Biztosítson prioritásokat egyes folyamatoknak. Kerülje a folyamatok kiéheztetését. Legyen megjósolható viselkedésű, azaz terheléstől függetlenül becsülhetőek legyenek a rendszer paraméterei (pl. körülfordulási idő).

10 Ütemezési algoritmusokkal szembeni követelmények Részesítse előnyben a kihasználatlan erőforrást igénylő folyamatokat. Részesítse előnyben a fontos erőforrásokat használó folyamatokat. Legyen maximális az átbocsátó képessége. Növekvő terhelés hatására a rendszer teljesítőképessége fokozatosan csökkenjen ne omoljon össze.

11 Megoldás keresés Az előbbiek mindegyike teljesíthetetlen, sőt ellentmondásos, ezért fontos a cél-orientált rendszer-tervezés.

12 Egyszerű ütemezési algoritmusok Legrégebben várakozó (FCFS): –nem preemptív, –a várakozási sor legelső folyamatát futtatja, –nagy az átlagos várakozási idő (konvoj hatás). Körbeforgó (RR): –preemptív, –az időosztásos rendszerek alapja, –minden folyamat amikor futni kezd kap egy időszeletet,

13 Egyszerű ütemezési algoritmusok –ha a folyamat CPU-lökete hosszabb ennél, akkor az időszelet végén az ütemező elveszi a folyamattól a CPU-t, és a futásra kész sor végére állítja, –ha rövidebb, akkor a löket végén újraütemezés történik, és a futó folyamat időszelete újraindul, –ha az időszelet hosszú: FCFS, –ha rövid: sok környezetváltás, –ezért fontos az időszelet-hossznak a helyes megválasztása, így: a CPU-löketek kb. 80%-a legyen rövidebb az időszeletnél.

14 Prioritásos ütemezési algoritmusok A futásra kész folyamatok mindegyike kap egy számot, ami a futás kívánatos sorrendjére utal. Ez az ún. prioritás. Ütemezéskor, a legnagyobb prioritású kap futási engedélyt. Az ütemezés lehet preemptív és nem preemptív is. Hátrányuk a kiéheztetés veszélye.

15 Prioritásos ütemezési algoritmusok Prioritás típusok: –külső: a folyamat kéri, ill. az operátor állítja be, –belső: az OPR állítja be, –statikus: azaz időben állandó, –dinamikus: az OPR módosíthatja.

16 A prioritás meghatározása a CPU- -löketidő alapján Löketidő meghatározása: –átlagos löketidő "bevallása” (büntetés bevezetése), –löketidő becslése (exponenciális) átlagolással, –előző futásból ismert. Algoritmusok: –legrövidebb löketidejű (SJF), –legrövidebb hátralevő idejű (SRTF), –legjobb válaszarány (HRR).

17 Legrövidebb löketidejű (SJF) Nem preemptív. A legrövidebb becsült löketidejű folyamatot választja. Nincs konvoj hatás. Optimális a körülfordulási és így az átlagos várakozási idő is.

18 Legrövidebb hátralévő idejű (SRTF) Az előző (SJF) algoritmus preemptív változata. Ha a következő futásra kész folyamat löketideje rövidebb, mint az éppen futó hátralévője, akkor folyamatot cserél. Ilyenkor a környezetváltással is számolni kell!

19 Legjobb válaszarány (HRR) Az SJF algoritmus kiéheztetést elkerülő változata. A kicsi prioritású, régóta várakozó folyamatok prioritását fokozatosan növeli, ez az ún. öregítés. A folyamat kiválasztásnál a löketidő mellett a várakozási időt is figyelembe veszi. A prioritás alapjául a következő képlet szolgál: –(löketidő + k * várakozási idő) / löketidő, –a ”k” egy tapasztalati konstans.

20 Többszintű ütemezési algoritmusok A futásra kész folyamatok több sorban várakoznak. Minden sor prioritásos. Az ütemező a kisebb prioritású sorból csak akkor választ ki folyamatot, ha a magasabb prioritású sor(ok) már üresek. A sorokon belül eltérő kiválasztó algoritmusok tényked(het)nek.

21 Többszintű ütemezési algoritmusok Statikus többszintű sorok (SFQ): –a folyamatok az elinduláskor egy állandó prioritást kapnak - ez alapján sorolódnak sorokba, –egy lehetséges besorolás: rendszerfolyamatok (rendszer működtetés), interaktív folyamatok (elfogadható válaszidők biztosítása), interaktív szövegszerkesztők (kevésbé kritikus válaszidők), kötegelt feldolgozás (ha ”van idő” akkor fut), rendszerstatisztikák (nincs kihatás a pillanatnyi működésre), –hátrányuk a kiéheztetés (pl ban kikapcsolt IBM gépen volt egy 1967-ben elindított és még várakozó folyamat!).

22 Többszintű ütemezési algoritmusok Visszacsatolt többszintű sorok (MFQ): –cél a kiéheztetés elkerülése (különböző módszerek), –változó - dinamikus - prioritású folyamatok, ezáltal sorváltás valósítható meg, –rövid CPU-löketidejű folyamatok kapnak magasabb prioritást, –a magasabb prioritású sorokon belül általában preemptív algoritmusok (pl. RR) dolgoznak, –míg a legalsóban egy egyszerű FCFS, –induláskor a folyamatok a legmagasabb besorolást kapják,

23 Többszintű ütemezési algoritmusok –ha túllépik az időkorlátot eggyel alacsonyabb prioritású, de nagyobb időszeletű sorba kerülnek át, –időről időre felül kell vizsgálni a besorolásokat (pl. átlagos löketidő mérése alapján), és ha kell, a prioritást növelni, –így elkerülhető, hogy egy folyamat egy egyszeri időszelet túllépés miatt alacsonyabb sorban vesztegeljen, –továbbá, a régóta várakozó folyamatok prioritását az OPR megnövelheti.

24 Többszintű ütemezési algoritmusok –osztályokba sorolás a következő szempontok szerint: hány sorban várakoznak futásra kész folyamatok, milyen algoritmusokat használ a sorokon belül, hogyan kaphat nagyobb prioritást egy folyamat, mikor csökken egy folyamat prioritása, melyik sorba lépnek be az elindított folyamatok.

25 Visszacsatolt többszintű sorok ütemezési sémája

26 Ütemezési algoritmusok ”jóságának” értékelése Analitikus vizsgálat: –determinisztikus (ok-okozati) modell, inkább csak elemzésre alkalmas (a rendszerek terhelése számos véletlenszerű paraméterrel jellemezhető), –sorban-állás elmélet és sztochasztikus (statisztikai valószínűség) modell, előre összeállított adatokból dolgozva, csak szűk körben lesz igaz. Szimuláció: –korábbi mérések alapján, meghatározott eloszlású véletlen-számokkal és konkrét mért értékekkel való leírás,

27 Ütemezési algoritmusok ”jóságának” értékelése –az eredmény nagyban függ, az adatok helyességétől és a szimulációk számától. Implementáció: –valós környezetben való teljesítmény mérés, –legmegbízhatóbb módszer, csak igen költséges, ezért nem igazán használják.

28 Többprocesszoros ütemezés Heterogén rendszerek esetén a folyamatok, csak a nekik megfelelő utasításkészletű processzoron futhatnak. Szorosan csatolt (közös óra és memória) homogén rendszerek esetén bármelyik, éppen szabad processzoron elindulhatnak, a közös várakozási sorban lévő folyamatok.

29 Többprocesszoros ütemezés Közös várakozási sor(ok) esetén a következő ütemezési megoldások alkalmazhatók: –szimmetrikus: minden CPU külön ütemezőt futtat, a sor(ok) hibamentes, megosztott használata érdekében, biztosítani kell a hozzáférésre vonatkozó kölcsönös kizárást!,

30 Többprocesszoros ütemezés –aszimmetrikus: egyetlen ütemező fut, egy kiválasztott processzoron, ez osztja szét a feladatokat a szabad CPU-k között, ez a megoldás egyszerűbb adathozzáférést eredményez.