Processzrokezelés

40
Processzrokezelés

description

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 funkciót?!. Több chip  egy chip. 1971: Intel 4004-es chip Teljesítménye: mint az ENIAC - PowerPoint PPT Presentation

Transcript of Processzrokezelés

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 funkciót?!

Több chip egy chip

• 1971: Intel 4004-es chip

• Teljesítménye: mint az ENIAC

• 4004: 2300 MOS (metal-oxide semiconductor) tranzisztor

• ENIAC 3000 négyzetméter, 18000 vákuumcső)

Processzor más megközelítésben

• Babbage: processzor az olyan adatfeldolgozó egység, ami tárolt program alapján működik

Memória?

• Howard-elv: külön memóriában helyezkedik el a program és az adat

• Neumann-elv: a program és az adat egy memóriában helyezkednek el

Miért Howard-elv?

• A programok a processzor készítésekor beleíródnak az eszközbe

• Viszont gyors a feldolgozás

• Biztonságos vírusokkal szemben

Miért Neumann-elv?

• Cserélhető program, multifunkciós eszköz

Neumann-elv

• Központi egység– Vezérlő egység– Aritmetikai-logikai egység– Operatív tár– I/O eszközök– Mindezek teljesen elektronikusak legyenek,

bináris számrendszerrel, az ALU legyen képes néhány alapvető logikai és matematikai művelet elvégzésére

Neumann-elv

• Tárolt program elve

• A vezérlő egység határozza meg a működést a tárból kiolvasott utasítások alapján, emberi beavatkozás nélkül

A processzor felépítése

• Vezérlő egység (CU)

• Aritmetikai-logikai műveletvégző egység (ALU)

• Regiszterek

CU

• Program utasításai, külső kérések (periféria megszakítási kérelme, sín igénybevételi kérése) alapján, vezérlő jelek segítségével a gép részeinek irányítása

ALU

• Aritmetikai vagy logikai műveletek

• Esetleg néhány regiszter

• Bináris rendszerű, de decimális szerint is képes működni az aritmetikai rész

• Matematikai koprocesszor

Regiszterek

• Általános vagy meghatározott funkciójú

• ALU-hoz vagy regisztertömbhöz tartozik

• Gyors működésű tár, hossza általában az adatsín szélességével egyezik meg

Regiszterek

• Utasítás-számláló regiszter (PC, Program Counter; IP, Instruction Pointer)

• Utasítás-regiszter (IR, Instruction Register)• Bázisregiszter (Base Register)• Indexregiszter(ek)• Állapotregiszter(ek)• Veremmutató regiszter (SP, Stack Pointer)• Pufferregiszter(ek) (Buffer Registers)

PC, IP

• Következő utasítás memóriacíme

• Inkrementálódik, ha a memóriában egymás után elhelyezkedő utasítások jönnek, különben új értéket kap

• Kezdőértéket kívülről (pl. oprendszertől) kap

IR

• Tárolja az utasítást

• Az utasítás címrésze alapján kiderül az operandusok pontos helye is

• Pipeline miatt ebben a formában már nem létezik a korszerű processzorokban

Bázisreigszter

• Operandusok címzéséhez

• Nem általános használatú, nem minden processzornál található meg

• Báziscím: ehhez képest határozzuk meg az operandust

• Szegmensregiszterek: többprocesszoros rendszerben hasonló feladatot látnak el, a felhasznált tárterület kezdőcímét tárolják

Index-regiszterek

• Operandusok címzésére

• Különösen adatsorozatok feldolgozásánál

• Nem minden processzorban van rá szükség

Állapotregiszterek

• Vezérlő regiszterek (Status Register, Flag Register, Control Register)

• Egy vagy több regiszteren belül vezérlő és ellenőrző jelek

• A regiszter egy-egy bitje változik

• Ha sok a funkció, önálló regiszterek lehetnek (Control Register, Status vagy Flag Register)

SP

• Az általában a főmemóriában kialakított veremterület címzését látja el

• LIFO (Last-In-First-Out) módszer

Pufferregiszterek

• A processzor belső adat- és címsínét választják el a külső sínrendszertől

• Esetleg más ideiglenes célú tárolásra szolgálnak

• Nem minden processzornál

Processzor-filozófia

• CISC (Complicated Instruction Set Computer) vagy RISC (Reduced Instruction Set Computer)

• CISC: 100 fölötti utasításszám

• RISC: 32 utasítás

CISC

• 14 címzési mód

• Könnyű programozni

• Mikroprogramozott

• Egy utasítást több órajel alatt hajt végre

• Intel x86 architektúra

RISC

• Egyféle címzés

• Egyszerű, gyors, egy utasítás egy órajel alatt

• Pipeline feldolgozás

• Pl. Alpha workstation

Folyamatkezelés

Ütemezés

• Az idővel való gazdálkodás

• A folyamatok állapota változik meg

• Több szintű ütemezés

Főütemező

• Kiválasztja a háttértárolón lévő programok közül a végrehajthatót

• Ideális: a folyamatok processzor és I/O eszköz igénye közel azonos

• Interaktív rendszerben nincs nagy szerepe a főütemezőnek, tisztán interaktív rendszeren nincs főütemező

PCB (Process Control Block)

• Folyamatleíró blokk

• Minden információt tartalmaz a folyamatról

• Ha a folyamat fut, akkor valamelyik regiszterbe, ha nem fut, akkor várakozási sorba kerül

• Környezetváltás: másik PCB-t vesz elő az operációs rendszer

Folyamat állapotok, állapotátmenetek

• Futásra kész

• Fut

• Várakozik

• Elindul

• Megszakad

• Vár

• Feléled

Közbenső szintű ütemező

• Folyamatosan figyeli a rendszert• Zavarok (túl sok folyamat kerül futásra

kész állapotba, egyiknek se jut elég erőforrás, a processzor ideje rendszeradminisztrációval telik) esetén folyamatokat felfüggeszt, változtatja a prioritási szinteket

• A felfüggesztett folyamat folytathatja működését később

Alacsony szintű ütemezés

• Legaktívabb

• Ha normális a rendszer működése, nincs perifériára várás, optimalizálja a folyamatok feldolgozását

Processzor elosztása

• Várakozási idő– Mennyi ideig várakozhat a folyamat

• Átfutási idő– Folyamat elejétől végéig mennyi idő telik el

• Válaszidő– A folyamat rendszerbe állításától az első

futásig eltelt idő (interaktív rendszernél fontos!)

Ütemezési algoritmusok

• Előbb jött, előbb fut (FCFS, First Come First Served)

• Legrövidebb előnyben (SJF, Shortest Job First)

• Körben járó (RR, Round Robin)

• Prioritásos módszerek

• Többszörös ütemezés

FCFS

• A folyamatok érkezési sorrendben futhatnak

• Előny: egyszerű, biztos

• Hátrány: az érkezési sorrendtől függ a várakozási idő

SJF

• A folyamatok közül először a legrövidebb fut

• Előny: a legrövidebb várakozási időt adja

• Hátrány: a hosszú folyamatok nehezen kerülnek sorra

RR

• Minden folyamat egy adott időszeletig futhat, majd újra sorba kell állnia

• Előny: demokratikus, a legrövidebb a válaszideje

• Hátrány: jelentős adminisztrációt igényel

Prioritásos módszerek

• Minden folyamat prioritással rendelkezik

• A nagyobb prioritású kerül először sorra

• A kis prioritású nem jut processzorhoz

• Ha idővel nő a prioritás, akkor minden folyamat előbb-utóbb sorra kerül

Többszörös ütemezés

• Nagygépes rendszereknél, ha a folyamatok több csoportba oszthatók

• Prioritási sorok

• CPU igény szerinti ütemezés, prioritás-változtatásokkal

• Sorok közötti ütemezés időosztással

• Legfejlettebb megoldás

Kérdések

• Mi a probléma a Howard-elvű gépekkel?

• Mondj példákat CISC és RISC processzorokra, PC-s és nagyszámítógépes rendszereknél!

• Miért van három szintre felbontva az ütemezés?

• Melyik stratégia lehet szerinted a legjobb, és miért?

Intel vagy AMD? Linkek

• http://www.stud.u-szeged.hu/Sipos.Georgina/fejlodes.htm

– Az Intel és AMD fejlődésének lépéseit írja le

• www.tomshardware.com

– Hardverek, köztük processzorok összehasonlítása több szempont alapján

• http://www-306.ibm.com/chips/products/powerpc/

– Hogy RISC processzor is legyen…