You are on page 1of 2

StrukturaAndroid: Aplikacjepisanewjavie Frameworkaplikacjinp.:menaderdziaaniasystemu,okienek,notyfikacjiitd. Bibliotekinp.:OpenGL,SQLite,Surfacemanager,mediaframerworkitd.

wtej wartstwieznajdujesirwniemaszynawirtualnasystemuoperacyjnegoAndroid,ktranazywa
siDALVIKzajmujesiewyswietlaniemaplikacji,komunikujeznizszymlewelem(odpowiednik
wirtualnejmaszynyjavy),wdalvikuznajdujsieprosteprogramynpbash,ls

LinuxKernel Sprzt PodstawoweetapykompilacjiprogramwwC/C++ 1. PrekompilacjaTworzenieostatecznegokodurdowegoprogramuprzezwczenieplikw


wskazanychdyrektyw#include.Wykonywnaniemakroinstrukcji#defineiusuwakomentarze.

2. KompilacjadopoziomuassembleraPrzeszukujekodstworzonyprzezprekompilacji
wyszukujetokenyczylisowakluczowe,operatoryiprzeksztacejanawewntrznreprezentacj ktrajestprzeksztacananakodassemblera. 3. Optymalizacjakoduassemblerazmianakoduwceluzwikszeniajegowydajnoci. Modyfikacjapoleganazmianieobliczaniaadreswwzgldnych,elminowaniunieuywanych fragmentwkodu,optymalizacjaprzydziaurejestrworazzmianalokalnychodwoabyuywany bywskanikdostosu. 4. Assemblacjaprzetworzeniekodunakodwjzykumaszynowym.Instrukcjwtymkodzienie odnoszsijeszczedokonkretnychadreswpamici. 5. Konsolidacjamanacelustworzenieblikubinarnegozkodemwykonywalnym.Przeszukujei doczadoprogramuwskazanebiblioteki.Przypisujekodmaszynowydoustalonychadresw. (Przydziazmiennymglobalnymadreswtakbymonabyosiodwoadoichwartoci). UtworzonyplikwykonywalnyjestwformacieExecutableandLinkingFormat.

Crosskompilacjajestprocesemkompilacjikodunaokrelonysystemkomputerowyw innymsystemie,zwanegogospodarzem(hostem).Jesttobardzoprzydatnatechnika,na przykad,gdysystemdocelowyjestzbytmay,abypomiecikompilatoriwszystkie odpowiedniepliki.Typoweprzykadytowielesystemwwbudowanych,aletaketypowekonsole dogier. SKDandroid,emulator, NDKADB(androiddebugbridge) PrzygotowanierodowiskadobudowaniaprogramwdlaAndroida: ustawienieodpowiednichzmiennychrodowiskowychwtymceluabySYSROOT wskazywalkompilatorowiGCCgdziemaszukakatalogwzbibliotekamiorazplikami nagwkowymidlakompilowanychilinkowanychprogramw naleydodadozmiennejPATHciekdokataloguzkompilatoremzpakietuNDK.

ProcesuruchamianiasystemuLinux: BIOSodczytujesektorrozruchowyMBR(zawieraonprogramrozruchowynp.:GRUB) PowybraniuSystemu,ktrymazostauruchomionynastpnymkrokiemjest zaadowaniejdrasystemu Pozaadowaniujdrajestpodczamygwnysystemplikw ZostajeuruchomianypierwszyprocesInitjestpatronemwszystkichprocesw(tzw "Ojciecprocesw"),jegoidentyfikatorzawszewynosi1.JeliwystpibdprocesuInit, topodyzanimcaysystem,resetujcsystem. Initwykonujeskrypty,ktrepodzielonesnapoziomy.Wykonaniewszystkichskryptw zpoziomu3(Penytrybwielouytkownikowy)lub5(tryb3+logowaniedosystemuX Window),oznaczauruchomieniesystemu. DalszymkrokiemjesturuchomienieprzezInitwirtualnychterminali(mingetty),poktrym moliwejestzalogowaniesidosystemu.
Initrd - przygotowanie wasnego obrazu

Najlepiejtworzynowyinitrdnabaziejudziaajcegopliku.Naleywicskopiowado swojegokatalogudomowegoplikrandysk. Wykonapoleceniedekompresjiramdyskuwzaleznociodzastosowanegoalgorytmu Powykonaniupowyszegopoleceniaotrzymamywiekszyplikzespakowanymprzez programcpiosystememplikw,dlategomusimywykonacpolecenierozpakowaniago przezprogramcpio Wasneustawieniekonfiguracjiplikuintrd. Spakowaniecpio Skompresowanie

You might also like