Hirdetés
- Okosóra és okoskiegészítő topik
- Honor Magic8 Lite - a félig sikerült bűvésztrükk
- Samsung Galaxy Watch6 Classic - tekerd!
- Elkalapálta a snapdragonos Galaxy S26 az exynososat
- Drasztikus változást mutat a Sony mobilja az első képeken
- iPhone topik
- Google Pixel topik
- Pro billentyűzettel bővült a Galaxy Tab S11 Ultra kiegészítőinek sora
- Nagy aksival és erős hardverrel megjött Magyarországra a Poco X8 Pro és Pro Max
- Hivatalos a OnePlus 13 startdátuma
Új hozzászólás Aktív témák
-
modder
aktív tag
Hali, nagyjából jó, amiről beszéltek, de kicsit össze vagytok zavarodva.
Azt mondjátok, hogy "ha változtatsz a kódon, a JIT csak azt fordítja újra". De ehhez előbb nyilván bytekódot kéne generálni, szóval ez a példa nem jó.
A jvm interpreterként működik: veszi a bytekódot, és sorról sorra megfeleltetni egy-egy gépi utasításnak vagy jvm-beli utasításnak. Ilyen a PHP is, a python is, az összes interpretált nyelv.
Amitől a JVM-et Hotspot-JVM-nek hívják az a JIT, ami az alábbi tulajdonságot aknázza ki:
Általában elmondható, hogy egy program a futása során az idő 90%-át a programrészek (függvények) 10-20%-ában tölti el.és ebből jön a JIT működése:
A JVM futtatja a kódot, statisztikákat készít róla futás közben (profiling). Megtalálja ezt a 10%-ot, ahol a program a futása során a legtöbb időt tölti, majd ezeket a kódokat direktbe lefordítja a célgép gépi kódjára, majd beszúr egy ugrást az eredeti bytekódba (természetesen a memóriában, a .class fájlokba nem ír semmit), hogy most onnantól a gépi kódos rész fut.Az optimalizálás pl. abban nyilvánul meg, hogy a JVM látja, mik azok a feltételek, amik sok-sok lefutás után sosem teljesülnek vagy mindig teljesülnek, és úgy fordítja az adott kódrészletet gépi kódra, hogy ezeket a feltételeket alapból igaznak vagy hamisnak veszi
Például egy if-else ág mindig csak egyik fele igaz, akkor úgy fordítja le a kódot, hogy ki is hagyja a feltételvizsgálatot. Természetesen folyamatosan figyeli ezeket az előfeltételeket, és ha van 1 eset, amikor mégis lefutna a kioptimalizált rész, akkor az eredeti bytekódot futtatja interpretált módban.Szó sincs arról, hogy mindent gépi kódra fordít.
Remélem tisztáztam

Szerk:
még annyi, hogy ezek mind a program 1-1 futása során történnek. nincsen olyan, hogy a futását befejező program gépi kód részeit valahová elmenti, és ha újra futtatod, akkor azokat betölti. ezek mint just-in-time egy-egy futás alkalmával történő változtatások. ( ezt azért mondom, mert régen én így képzeltem
)
Új hozzászólás Aktív témák
A topicot kiemeltem. Valaki nem akar egy nyitó hsz-t írni?:))
- Luck Dragon: Asszociációs játék. :)
- Robotporszívók
- Hobby elektronika
- Milyen asztali (teljes vagy fél-) gépet vegyek?
- Noctua+Asetek: egyre közelebb a Noctua első vízhűtése
- Milyen egeret válasszak?
- Spórolós topik
- Diablo IV
- Okosóra és okoskiegészítő topik
- Honor Magic8 Lite - a félig sikerült bűvésztrükk
- További aktív témák...
- újszerű iPhone Air 256GB space black asztrofekete független Apple 3 év garancia iStyle vásárlás
- Armani Acqua di Giò Profondo Parfum 50ml
- MacBook Air M3 256GB SSD space gray asztroszürke Apple magyar 2 év AppleCare garancia
- újszerű iPad Mini (6. generációs) 64GB Wi-Fi space gray asztroszürke ajándék tok és fólia
- Yves Saint Laurent Y EDP 60ml
- LG UltraGear 32GS94UX-B OLED Monitor! 3840x2160 / 480Hz / 0.03ms / G-Sync / FreeSync! BeszámítOK
- LG 45GS95QX - 45" Ívelt OLED / 2K WQHD / 240Hz 0.03ms / NVIDIA G-Sync / FreeSync Premium / HDMI 2.1
- AKCIÓ! MSI A320M R7 2700 8GB DDR4 256GB SSD RX 6500 XT 4GB Zalman T3 Plus DeepCool 400W
- iPhone 13 mini 128GB 100% (1év Garancia)- ÚJ EREDETI AKKUMULÁTOR
- BESZÁMÍTÁS! 1TB WD Black SN7100 NVMe SSD meghajtó garanciával hibátlan működéssel
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest

)
