Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
laboratoare:laborator01 [2016/02/26 06:29]
Andrei Roșu-Cojocaru
laboratoare:laborator01 [2017/02/20 20:54] (current)
Line 47: Line 47:
 Arhitectura sistemului de operare Android cuprinde cinci secțiuni grupate pe patru niveluri: Arhitectura sistemului de operare Android cuprinde cinci secțiuni grupate pe patru niveluri:
  
-{{ :​laboratoare:​laborator01:​arhitecturaandroid.png?​nolink&​600 }}+{{ :​laboratoare:​laborator01:​android_architecture.png?​nolink&​600 }}
  
   - **Kernelul Linux** (cu unele modificări) conține driver-ele pentru diferitele componente hardware (ecran, cameră foto, tastatură, antenă WiFi, memorie flash, dispozitive audio), fiind responsabil cu gestiunea proceselor, memoriei, perifericelor (audio/​video,​ GPS, WiFi), dispozitivelor de intrare/​ieșire,​ rețelei și a consumului de energie; de asemenea, au fost implementate și unele îmbunătățiri:​   - **Kernelul Linux** (cu unele modificări) conține driver-ele pentru diferitele componente hardware (ecran, cameră foto, tastatură, antenă WiFi, memorie flash, dispozitive audio), fiind responsabil cu gestiunea proceselor, memoriei, perifericelor (audio/​video,​ GPS, WiFi), dispozitivelor de intrare/​ieșire,​ rețelei și a consumului de energie; de asemenea, au fost implementate și unele îmbunătățiri:​
-    - **Binder**, sistemul de comunicație inter-proces,​ a fost adaptat, întrucât reprezintă mediul de comunicație principal dintre aplicații și sistemul de operare, inclusiv funcțiile (serviciile) dispozitivului mobil; expunerea sa este realizată prin intermediul AIDL (Android Interface Definition Language) prin care pot fi manipulate obiecte transformate în primitive utilizate la comunicația propriu-zisă dintre aplicații și sistemul de operare);+    - **Binder**, sistemul de comunicație inter-proces,​ a fost adaptat, întrucât reprezintă mediul de comunicație principal dintre aplicații și sistemul de operare, inclusiv funcțiile (serviciile) dispozitivului mobil; expunerea sa este realizată prin intermediul AIDL (Android Interface Definition Language) prin care pot fi manipulate obiecte transformate în primitive utilizate la comunicația propriu-zisă dintre aplicații și sistemul de operare;
     - **Logger**, sistemul de jurnalizare,​ este esențial în cazul în care trebuie realizată depanarea aplicațiilor,​ în special pentru a detecta anumite situații particulare (informații cu privire la rețea, senzori); acesta este capabil să agrege datele provenite atât de la aplicația propriu-zisă cât și de la sistemul de operare, datele fiind disponibile prin intermediul unor utilitare specializate;​     - **Logger**, sistemul de jurnalizare,​ este esențial în cazul în care trebuie realizată depanarea aplicațiilor,​ în special pentru a detecta anumite situații particulare (informații cu privire la rețea, senzori); acesta este capabil să agrege datele provenite atât de la aplicația propriu-zisă cât și de la sistemul de operare, datele fiind disponibile prin intermediul unor utilitare specializate;​
     - sistemul prin intermediul căruia se previne transferul sistemului de operare într-o stare de latență (**wake locks**), în care consumul de energie este redus, întrucât se blochează execuția oricărei aplicații; utilizarea unui astfel de mecanism trebuie realizată cu precauție, întrucât poate determina epuizarea bateriei;     - sistemul prin intermediul căruia se previne transferul sistemului de operare într-o stare de latență (**wake locks**), în care consumul de energie este redus, întrucât se blochează execuția oricărei aplicații; utilizarea unui astfel de mecanism trebuie realizată cu precauție, întrucât poate determina epuizarea bateriei;
Line 962: Line 962:
 student@eim2016:​~$ git config --global merge.tool diff student@eim2016:​~$ git config --global merge.tool diff
 </​code>​ Verificarea valorii pe care o au variabilele de configurare poate fi realizată în mai multe moduri: <​code>​ </​code>​ Verificarea valorii pe care o au variabilele de configurare poate fi realizată în mai multe moduri: <​code>​
-student@eim2016:​~$ git cofig --list+student@eim2016:​~$ git config ​--list
 </​code>​ <​code>​ </​code>​ <​code>​
 student@eim2016:​~$ cat .git/config student@eim2016:​~$ cat .git/config
Line 973: Line 973:
   - Să se creeze un depozit pe contul Github creat, denumit '​Laborator01'​. Inițial, acesta trebuie să fie gol (nu trebuie să bifați nici adăugarea unui fișier ''​README.md'',​ nici a fișierului ''​.gitignore''​ sau a a fișierului ''​LICENSE''​).   - Să se creeze un depozit pe contul Github creat, denumit '​Laborator01'​. Inițial, acesta trebuie să fie gol (nu trebuie să bifați nici adăugarea unui fișier ''​README.md'',​ nici a fișierului ''​.gitignore''​ sau a a fișierului ''​LICENSE''​).
   - Să se cloneze în directorul de pe discul local conținutul depozitului la distanță de la [[https://​www.github.com/​eim2016/​Laborator01|]]. În urma acestei operații, directorul Laborator01 va trebui să se conțină un director ''​labtaks''​ care conține proiectele Eclipse și AndroidStudio denumite ''​MyFirstAndroidApplication'',​ fișierele ''​README.md''​ și ''​LICENSE''​ și un fișier ''​.gitignore''​ care indică tipurile de fișiere (extensiile) ignorate. <​code>​   - Să se cloneze în directorul de pe discul local conținutul depozitului la distanță de la [[https://​www.github.com/​eim2016/​Laborator01|]]. În urma acestei operații, directorul Laborator01 va trebui să se conțină un director ''​labtaks''​ care conține proiectele Eclipse și AndroidStudio denumite ''​MyFirstAndroidApplication'',​ fișierele ''​README.md''​ și ''​LICENSE''​ și un fișier ''​.gitignore''​ care indică tipurile de fișiere (extensiile) ignorate. <​code>​
-student@eim2016:​~$ git init 
 student@eim2016:​~$ git clone https://​www.github.com/​eim2016/​Laborator01.git student@eim2016:​~$ git clone https://​www.github.com/​eim2016/​Laborator01.git
 </​code>​ </​code>​
laboratoare/laborator01.1456460942.txt.gz · Last modified: 2017/02/20 20:43 (external edit)
CC Attribution-Share Alike 4.0 International
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0