110 likes | 187 Views
A program futtatása. Hernyák Zoltán Programozási Nyelvek II. Eszterházy Károly Főiskola Számítástudományi tsz. 1. A program futtatása. Direkt futtató rendszer Az adott processzor gépi kódjára lefordított program betöltése a memóriába
E N D
A program futtatása Hernyák Zoltán Programozási Nyelvek II. Eszterházy Károly Főiskola Számítástudományi tsz 1
A program futtatása • Direkt futtató rendszer • Az adott processzor gépi kódjára lefordított program betöltése a memóriába • A processzor ráállítása a program kezdőpontjára (belépési pont) • A processzor teljes sebességgel, gondolkodás nélkül végrehajtja a soron következő utasítást 2
A program futtatása • Direkt futtató rendszer • A memória byte-ok sorozata • A processzor számára minden szám – szám • Az adatokat is képes utasításkódoknak nézni • Egy hibás ugróutasítás beláthatatlan következményekre vezethet 3
A program futtatása • A processzor intelligenciájának fejlesztése: • A memóriában területek elhatárolása (code és data) • A memóriaterületek programokhoz rendelése (hogy a vírusok ne tudjanak egyik kódrészből másik kódrészbe ugorni) • Ez egy biztonsági rendszer alapjai 4
A program futtatása • A processzor intelligenciájának fejlesztése: • A hibás működés detektálható legyen felügyelő programok által • A processzor képes felfedezni saját működési problémáját, és speciális „hibakezelő rutinok” futtatására áttérni • Az operációs rendszer így nem fagy le 5
A program futtatása • Még mindig hiányzik: • A processzor még mindig nem ismeri a típus fogalmát • A processzor nem tanítható meg a magas szintű programnyelv összes beépített, és felhasználó által definiált típusára • A processzor nem ismeri az adatterület belső szerkezetét és felépítését 6
A program futtatása • Előny: • Maximális futtatási sebesség Hátrány: • Minimális, nem a végtelenségig növelhető biztonság A biztonság kezd egyre fontosabb szerepet játszani, főleg a mai modern multitaszkos operációs rendszerekben. 7
A program futtatása • Interpreter: • A forráskódot apró blokkonként (pl soronként) röptében elemzi ki egy speciális program, mely alaposan ismeri az adott nyelv lehetőségeit. • Minden egyes utasítás végrehajtása előtt ellenőrzi annak végrehajthatóságát 8
A program futtatása • Előny: • Magas fokú biztonság Hátrány: • Alacsony teljesítmény A processzorok sebességének fejlődése, a memória méretének növekedése mellett a hátrány kezd elhanyagolhatóvá válni. 9
A program futtatása • Semi-interpreter: • A forráskódot egy virtuális processzor virtuális gépi kódjára fordítjuk le • Ezen virtuális gépi kód illeszkedik az adott programozási nyelv lehetőségeihez • A lefordított programot egy processzor-szimulátor (virtual machine) futtatja • Ilyen pl. a Java 10
A program futtatása • Előny: • Magas fokú biztonság • Magasabb teljesítmény • Processzorfüggetlen tárgykódú program Hátrány: • A processzorokra és az operációs rendszerekre meg kell írni a szimulátort 11