Az előadás letöltése folymat van. Kérjük, várjon

Az előadás letöltése folymat van. Kérjük, várjon

Léczfalvy Ádám A J2ME architektúrája.

Hasonló előadás


Az előadások a következő témára: "Léczfalvy Ádám A J2ME architektúrája."— Előadás másolata:

1 Léczfalvy Ádám leczfalvy.adam@nik.bmf.hu A J2ME architektúrája

2  A Java család  A J2ME architektúrája ◦ Konfigurációk ◦ Profilok ◦ Opcionális csomagok 2

3 3

4  Lehetővé tegye a Java alkalmazások futtatását hordozható eszközökön, figyelembe véve azok korlátozó tényezőit: ◦ Korlátozott kijelző méret ◦ Memória ◦ Teljesítmény ◦ Akkumulátor  Kompatibilitás a Java SE-vel 4

5  Különböző képességű eszközök memória, feldolgozási idő, hardver, megjelenítés szempontjából  Konfigurációk: ◦ meghatározzák egy készülékcsoport legalapvetőbb közös tulajdonságait  Profilok: ◦ magasabb szintű csoportosítást tesznek lehetővé a konfigurációkon felül  Opcionális csomagok: ◦ a készülékek egyedi, speciális funkciói számára 5

6 Konfiguráció Horizontális eszközcsoport, hasonló teljesítménybeli tulajdonságok, megszorítások Profil Vertikális eszközcsoport (pl. telefonok) 6

7 7

8

9  Meghatározza azokat a minimális JVM funkciókat és osztálykönyvtárakat, amelyek elérhetők egy bizonyos eszköz kategória számára  A felhasználók által kevésbé láthatók  A „legkisebb közös nevező” a Java platform szolgáltatásaira és osztályaira nézve  A profil fejlesztők a konfigurációra építenek 9

10 Egy konfiguráció komponensei:  Virtuális gép ◦ Teljes JVM, vagy annak egy része  Alapvető osztálykönyvtárak gyűjteménye ◦ Biztosítják az egy kategóriába tartozó eszközök számára az alapfunkcionalitásokat (pl. memóriakezelés, hálózati kapcsolat) 10

11  CDC és CLDC esetén többnyire a J2SE API részhalmazai, J2ME bővítményekkel  A konfigurációk nagyon alacsony szintű API-t biztosítanak  Nincs UI elérés  Az alkalmazások életciklusát (betöltés, aktiválás) nem felügyelik 11

12  CLDC(Connected Limited Device Configuration) ◦ Kis és középkategóriás PDA-k, mobiltelefonok, személyhívók, stb. számára ◦ Szigorú memória korlátok ◦ Erősen megcsonkított virtuális gép és osztálykönyvtár  CDC(Connected Device Configuration) ◦ „High end” PDA-k és telefonok, beltéri egységek, egyéb beágyazott rendszerek számára ◦ Teljes JVM specifikáció támogatása ◦ A Java SE kevesebb memóriával rendelkező készülékekre optimalizált változata 12

13 13

14 14

15  Szigorú memóriakorlátokhoz való igazodás  A virtuális gép és az osztálykönyvtárak terén megszorítások (KVM virtuális gép, megszüntetett jellemzők)  Szabványosítja a Java alkalmazások fejlesztését a korlátozott erőforrásokkal rendelkező eszközökön  „Small Footprint”  Alkalmazások fejlesztésére fókuszál  Alkalmazások dinamikus letöltésének biztosítása 15

16 Kilo(byte) Virtual Machine:  Tipikusan 16-32bites processzorok számára  Minimális memóriaigény  Erősen csonkított JVM  Célja: „Minél gyorsabb, minél egyszerűbb, minél kisebb” 16

17 A CLDC biztosítja:  Virtuális gép  Java alapkönyvtárak (java.lang.*, java.util.*)  Input / Output  Hálózat elérés  Biztonság  Nemzetközi funkciók biztosítása 17

18 A CLDC NEM biztosítja:  Alkalmzás életciklus menedzselése (telepítés, betöltés, törlés)  Felhasználói felület  Eseménykezelés  High-level application model (the interaction between the user and the application)  Ezeket a PROFILOK biztosítják! 18

19  Alacsonyszintű (VM) biztonság class-file verification segítségével ◦ Minden metódus ellenőrzésre kerül, pl. egy szerveren a készülékre töltés előtt ◦ Stack map attribútummal látja el az osztály metódusait, ez kb. 5% többlet méretet eredményez  Alkalmazás szintű biztonság ◦ „sandbox” modell ◦ Rendszer osztályok védelme ◦ Dynamic class loading korlátozás (csak a saját jar fájlból) 19

20  Lebegőpontos számábrázolás (float double)  Reflexió  Felhasználó által definiált osztálybetöltő  Thread csoportok, daemon-threadek  Finalization metódus  Aszinkron kivételkezelés  Szűkített Error osztálykészlet 20

21 Minimális hardver követelmények:  Minimum 192k memória  Min. 160k nem felejtő memória: KVM, CLDC library-k  Min. 32k felejtő memória: KVM  16, vagy 32 bites processzor  Alacsony energiafogyasztás (akkumulátor)  Hálózati kapcsolat 21

22  Lebegőpontos támogatás ◦ Float, double  Újratervezett osztályok ◦ Calendar, Date, TimeZone  Hibajavítások  Weakreference osztályok  160 kb => 192 kb 22

23

24  A konfigurációknál magasabb szintű API  A konfigurációkra épülnek, azokat bővítik  Alkalmazás életciklus modell  Felhasználói interfész  Tárolók támogatása  Hálózati technológia támogatása  Stb.  A profilok egymásra rétegezhetők  A profil(ok) a konfigurációval együttesen alkotja(ák) a J2ME futtató környezetet (JRE) 24

25  Mobile Information Device Profile (MIDP) ◦ Hálózat, UI, Local Storage ◦ A legnépszerűbb profil ◦ Wireless Java alapja  PDA Profile (PDAP) ◦ PDA-k számára készített profil 25

26  Foundation Profile ◦ Java 2 1.3 kiterjesztése a CDC számára ◦ Más profilokhoz alapként használható  Personal Basis Profile ◦ Alapvető UI funkciókkal való bővítés ◦ A Personal Profile nem biztosítja a több ablakos, komplex UI elemeket  Personal Profile ◦ Komplex, egyedi UI-k számára  RMI Profile  Game profile 26

27 Minimális hardver követelmények:  Megjelenítés ◦ 96x54, ff, 1:1 arányú pixelméret  Adatbevitel ◦ Egy-vagy kétkezes billentyűzet, touchscreen  Memória ◦ 256k nem felejtő(a CLDC-n felül) ◦ 8k nem felejtő az alkalmazások számára ◦ 128k felejtő memória a Java runtime számára (heap)  Hálózat ◦ Kétirányú, vezeték nélküli, korlátozott sávszélesség  Hang lejátszása 27

28 Minimális szoftver követelmények:  Minimális kernel támogatás ◦ Megszakítások kezelése, ütemezés ◦ Nem felejtő memória elérése (Record Management System API) ◦ Hálózati funkciók (Networking API) ◦ Időmérés (Timer API)  Képernyőelérése  Input eszköz elérése  MIDlet életciklus támogatása 28

29  Secure Networking ◦ HTTPS, SSL  Multimédia –Hang visszajátszás, hang képzés (Mobile Media API részhalmaza)  Game API ◦ Layer-ek, Sprite-ok  RGB  Jogosultságok kezelése ◦ Trusted/untrustedcode, codesigning, certificate- ek 29

30

31  További bővítések a futtatókörnyezet számára, különféle igényeket elégítenek ki, pl.: ◦ Adatbázis kapcsolat ◦ Grafika ◦ Kommunikációs technológiák  Lehet konfiguráció független (CDC és CLDC támogatás is) vagy konfiguráció függő 31

32  Mobile Media API (MMAPI) (JSR-135)  Location API for J2ME (JSR-179)  SIP API forJ2ME (JSR-180)  Wireless Messaging API (WMA) (JSR-120, JSR-205)  Securityand Trust Services API for J2ME (JSR-177)  Mobile 3D Graphics API for J2ME (JSR-184)  Java API for Bluetooth (JSR-82)  J2ME Web Services (JSR-172) 32

33 33


Letölteni ppt "Léczfalvy Ádám A J2ME architektúrája."

Hasonló előadás


Google Hirdetések