110 likes | 260 Views
Universitatea Politehnica Facultatea Electronica, Telecomunicatii si Tehnologia Informatiei. Blackberry OS. Masterand : George – Elian Cuculescu . Arhitectura. Nivelul Configuration. Functiile nivelului : Managementul aplicatiilor (Scoaterea, Incarcarea si Executarea)
E N D
Universitatea Politehnica Facultatea Electronica, Telecomunicatii si Tehnologia Informatiei Blackberry OS Masterand: George – Elian Cuculescu
Nivelul Configuration • Functiile nivelului: • Managementul aplicatiilor (Scoaterea, Incarcarea si Executarea) • Masuri de securitate de nivel scazut (ex: Byte Code Verification) • Formatul fisierelor claselor • Librariile de baza: • Java.io • Java.lang • Java.util • Javax.microedition.io • Input/Output:
Nivelul Configuration: CLDC 1.0 - KVM • Cerinte Hardware: • 128 KB de memorie non volatila pentru masina virtuala • 32 KB RAM pentru librarii si memorarea obiectelor • Dimensiuni reduse: 40-80 KB • Managementul Aplicatiilor: • Desi este puternic recomandat, teoretic nu avem nevoie de spatiu consistent pentru aplicatii. In lipsa capacitatii de stocare putem incarca aplicatiile la cerere.
Schema de conectarea a CLDC: • * Interfata Connection este tipul cel mai de baza de conexiune. Ea poate fi doar deschisa si inchisa. • * Interfata StreamConnection combină conexiunile de intrare si iesire. * Interfata InputConnection reprezinta un dispozitiv de la care datele pot fi citite. Metoda sa openInputStream returnează un flux de intrare pentru conexiune. • * Interfata OuputConnection reprezinta un dispozitiv la care datele pot fi scrise. Metoda sa openOutputStream returnează un flux de ieşire pentru conexiune. • * ContentConnection este o subinterfata a interfetei StreamConnection. Acesta oferă acces la datele META furnizate de conexiuni HTTP. • * StreamConnectionNotified asteapta pentru o conexiune care urmează să fie stabilita. Aceasta returnează StreamConnection-ul pe care o legătură de comunicare s-a stabilit.
Securitate: • La compilare se urmaresc urmatorii pasi: • Codul este compilat si pre-verificat • Codul binar este restructurat si atribute ii sunt adaugate (Stackmap attribute) – codul se va mari usor. • Pre-verificarea este semantic probata de o aplicatie „verifier” (teoretic exploit-urile utilizand false pre-verificari ar trebui sa nu functioneze) • Verificare scurtata la rulare • Datorita atributelor codului binar o singura verificare este indeajuns • Verificarea nu consuma memorie datorita pre-verificarii: • Este o simpla scanare liniara • Memorie necesara: 10 kb de cod x86 si 100 B RAM
Nivelul Profil: MIDP 1.0 • Intregeste specificatiile sistemului • Aduce noi constrangeri hardware • Specifica API-urile aditionale nivelului Configuratie • Restrange foarte mult specificatiile device-ului • Chiar daca tinta acestei platforme este restransa, totusi nivelul Profil este destinat unei intregi clase de device-uri si nu la o platforma specifica • Ex: Profilul MIDP este folosit de toate telefoanele mobile care suporta JAVA, chiar si pe unele Smart Phones si/sau PDA-uri
Cerinte Hardware • Ecran de 96x54 pixeli cu adancime de culoare de 1 Bit. (A/N) • Tastatura ITU-T Keyboard (Taste de telefon), Tastatura QWERTY si/sau touchscreen, memorie non-volatila aditionala de 128kb pentru componentele MIPS • 128 kb memorie non-volatila aditionala pentru componentele MIDP • 8 kb memorie non-volatila pentru datele persistente creeate de aplicatii • 32 kb memorie volatila pentru runtime-ul Java. • Conectivitate bidirectionala wireless, de banda ingusta
Capabilitati de afisaj: • Probabil cea mai importanta parte din API: • Deoarece aplicatiile din ziua de azi sunt foarte „grafice” (device-uri cu touchscreen) • Majoritatea aplicatiilor au nevoie de multa interactiune cu utilizatorul • Este impartita pe doua nivele: • API de nivel inalt • API de nivel jos
Blackberry OS Va multumesc