Ano ang android at bakit ito kailangan. Ano ang Android platform at para saan ito? Nakabatay ang android operating system

  • 26.12.2021

Mga Artikulo at Lifehacks

Ngayon ay mahirap na makahanap ng gayong tao na hindi gustong palibutan ang kanyang sarili ng "matalinong" teknolohiya. Ang pariralang "walang telepono ay parang walang mga kamay" ay mas madalas na tunog, at imposibleng isipin ang buhay na walang manlalaro, laptop o iba pang sikat na gadget.

Samakatuwid, dapat malaman ng lahat ang tungkol sa mga bagong produkto na lumilitaw sa merkado ng modernong electronics. Halimbawa, hindi alam ng lahat kung ano ang android platform, ngunit susubukan naming malaman ito.

Ano ang Android

  • Ang Android ay isang operating system na maaaring kontrolin ang isang mobile device (telepono, tablet, smartphone). Ang android platform ay binuo batay sa Linux kernel.
  • Lumitaw ito dahil sa katotohanan na noong 2005 binili ng Google ang Android Inc, na ginagawa itong subsidiary nito, at nagsimulang maglabas ng mga platform na may parehong pangalan para sa mga mobile device. Simula noon, ang platform ay umunlad lamang.
  • Ang Android ay madalas na naglalabas ng mga bagong bersyon ng programa nito. Kapansin-pansin na ang mga unang titik ng pangalan ng bawat bagong bersyon ay tumutugma sa mga titik ng alpabetong Latin.
  • Ngayon, ang android platform ay pumapangalawa sa katanyagan sa mundo, pangalawa lamang sa iOS operating system, na binuo para sa iPhone.

Para saan ang Android?

  • Tulad ng alam mo, ang operating system ay ang "utak" ng anumang elektronikong aparato, na kinakailangan upang maisakatuparan nito ang lahat ng mga utos ng isang tao.
  • Alinsunod dito, ang android ay isang virtual na robot na nakaupo sa loob ng isang mobile device, na responsable sa pagsasagawa ng lahat ng prosesong nagaganap sa loob ng device na ito.
  • Ang bentahe ng platform na ito ay ang Android ay may maginhawa at napaka-intuitive na interface, pati na rin ang isang flexible at multitasking system na nagbibigay-daan sa iyong magpatakbo ng maraming application nang sabay-sabay at mag-eksperimento sa mga setting.
  • Sa iba pang mga bagay, maraming mga application na partikular na nilikha para sa Android platform ay nagbibigay sa mga masayang gumagamit ng system na ito ng tunay na walang katapusang mga posibilidad.
  • Pagkatapos ng lahat, sa tulong ng mga application na ito maaari kang magbayad para sa mga pagbili, kumuha ng mga larawan, manood ng mga pelikula o magbasa ng mga libro.
  • Nang malaman kung ano ang isang android, maaari nating tapusin na ang platform na ito ay nilikha para sa mga taong malikhain, dahil ang dalawang magkaparehong mga mobile device ay maaaring magmukhang ganap na naiiba.
  • Binibigyang-daan ka ng Android na laging nasa iyo ang lahat - isang personal fitness trainer, isang doktor, isang laruan o isang TV, na ginagawang komportable ang buhay ng tao hangga't maaari.

Ang mga mobile device sa Android platform ay medyo sikat sa telephony market. Ang Android OS ay perpekto para sa mga telepono at tablet. Salamat sa malaking halaga ng memorya at mataas na teknikal na katangian, ang pagtatrabaho sa operating system na ito ay nagiging mas madali.

OS "Android": paglalarawan

Naniniwala ang mga eksperto na ang katanyagan ng Android system ay tumataas dahil sa patuloy na paglabas ng iba't ibang uri ng mga device sa platform na ito, na mayroong malaking bilang ng mga kapaki-pakinabang na function sa kanilang arsenal. Sa sandaling ang bagong pagsabog sa merkado ng teknolohiya, ang mga gumagamit ay may mga bagong pagkakataon.

Bilang karagdagan sa umiiral na teknolohiya, sa hinaharap ay binalak na maglabas ng mga Android-based na TV, na walang alinlangan na magiging mahalagang bahagi ng modernong buhay. Ngayon, aktibong binuo ang mga bagong application na makakatulong sa pag-synchronize ng trabaho sa pagitan ng isang mobile phone sa Android platform at mga device ng kotse, gaya ng mga GPS-navigators. Kasabay nito, ang bawat pag-update ng firmware ng system ay nagpapalawak ng pag-andar ng device, ganap na inaayos ito sa user.

Paano i-synchronize ang system sa Google?

Ang Android system ay nagbubukas ng dagat ng mga posibilidad: ang paggamit ng Google Maps, e-mail, atbp. Upang magamit ang lahat ng mga serbisyo sa pamamagitan ng isang Android device, sapat na upang i-synchronize ang system sa Google. Upang gawin ito, kailangan mo lamang ipasok ang iyong data (pag-login at password), pagkatapos ay awtomatikong kumonekta ang OS sa lahat ng mga application.

Bilang karagdagan sa mga karaniwang aplikasyon, hindi pa gaanong katagal ang ganap na mga bagong pag-unlad ay inilabas. Kaya, halimbawa, ang mga gumagamit ng communicators program na Google Voice ay magbibigay-daan sa iyo na makipagpalitan ng impormasyon nang walang labis na pagsisikap. Pagkatapos i-synchronize ang device sa Google, magagawa rin ng mga user na magtrabaho kasama ang Play Market application, kung saan maaari kang mag-install ng maraming iba't ibang laro at program (parehong bayad at libre) sa iyong telepono o tablet.

Mga Sikreto ng Android para sa Mga Nagsisimula

Upang gawing mas madali ang pagtatrabaho sa device sa platform na ito, nakahanap ang mga advanced na user ng ilang kapaki-pakinabang na feature. Ang mga lihim ng "Android" ay makakatulong upang i-optimize ang system sa maximum at i-customize ito para sa iyong sarili.

Ang unang medyo kapaki-pakinabang na tampok ay mabilis na pagdayal. Alam ng lahat na ang Android system ay may ilang mga desktop na nagho-host ng mga shortcut sa iba't ibang mga application. Kaya, upang gawing simple ang hanay ng mga contact, mag-click lamang sa libreng espasyo ng screen, piliin ang mga menu na "Shortcut" at "Mga Contact", at pagkatapos ay markahan ang pinakasikat na numero at ilagay ito sa desktop. Ngayon ang pagdayal ng contact na ito ay isasagawa sa isang pag-click sa shortcut.

Ilang tao ang nakakaalam na may mga espesyal na character sa Android keyboard. Upang buksan ang mga ito, kailangan mo lamang na pindutin nang matagal ang isang tuldok o kuwit. Ang hanay ng mga numero ay bubukas sa parehong paraan.

May mga sitwasyon kapag ang pag-type ng malalaking teksto nang manu-mano ay medyo hindi maginhawa. Para dito, mayroong isang function bilang paghahanap gamit ang boses. Hindi alam ng lahat ng baguhan na user ang mga lihim ng "Android", at hindi ganoon kadaling makakita ng maliit na icon na hugis mikropono sa Google search bar. Samakatuwid, kakaunti ang gumagamit ng gayong kapaki-pakinabang na tampok. Ngunit kailangan mo lamang mag-click sa icon na ito at magsabi ng isang tanong, na agad na nagiging teksto.

Kung, pagkatapos ng hindi sinasadyang pagpindot sa maling pindutan, ang bukas na application ay nawala sa isang lugar, kung gayon, malamang, ito ay bumagsak lamang. Upang ibalik ang pinaliit na application sa screen, pindutin nang matagal ang button na may larawan ng isang maliit na bahay at piliin ang kailangan mo mula sa listahan.

At ito ay ilan lamang sa mga tip. Sa katunayan, marami pang nakatagong posibilidad. Ang mga maliliit na lihim ng "Android" ay makakatulong upang mapabuti ang pagpapatakbo ng operating system at i-customize ito hangga't maaari para sa gumagamit.

Paano ko malalaman ang higit pa tungkol sa naka-install na system?

Kadalasan, kailangang malaman ng mga user ang detalyadong impormasyon tungkol sa isang mobile device. Halimbawa, bersyon ng Android OS, uri ng processor, at higit pa. Ang ganitong data ay minsan kinakailangan upang mag-install ng isang application o program. Sa katunayan, walang mahirap dito.

Pagpipilian 1. Maaari mong malaman ang ilang data ng system gamit ang mga karaniwang setting. Ito ay sapat na upang buksan ang menu ng mga setting, pagkatapos ay kailangan mong piliin ang item na "Tungkol sa telepono". Sa ilang device, magbubukas ito ng listahan ng impormasyon ng system. Kung hindi lumilitaw ang lahat ng impormasyon sa screen, kailangan mong mag-click sa item na "Bersyon ng software". Dito mahahanap mo ang pangunahing impormasyon tungkol sa operating system ng device.

Opsyon 2. Ang pamamaraang ito ay angkop para sa mga nangangailangan ng pinahabang data tungkol sa OS. Upang makuha ang impormasyong ito, kailangan mong mag-download ng isang espesyal na programa mula sa Play Market, at pagkatapos ay buksan ito. Ang lahat ng impormasyon ng system ay lilitaw sa screen.

Nag-flash na "Android" na sistema

Maraming user ang interesado sa kung paano mag-install ng operating system na may mas bagong bersyon sa kanilang mobile device. Gayunpaman, bago i-set up ang OS, dapat mong isipin kung posible bang i-reflash ang iyong sarili sa Android. Ngunit ang tanong na ito ay napakakontrobersyal.

Una sa lahat, dapat mong bigyang pansin ang aparato. Hindi lahat ng mobile gadget ay maaaring i-flash. Bukod dito, sa mga Chinese device, ang aksyon na ito ay hindi ibinigay sa lahat. Idi-disable lamang ng independiyenteng interbensyon sa operating system ang device. Kaya, iniisip kung paano i-install ang operating system, dapat, una sa lahat, magpasya kung ano ang mas mahalaga sa sitwasyong ito - isang mas bagong bersyon o isang normal na gumaganang gadget.

Ang pinakamahusay na mga programa upang i-synchronize ang iyong device sa isang PC

Minsan kinakailangan na ang pamamahala ng isang mobile device ay posible mula sa isang computer. Upang gawin ito, may mga espesyal na programa na makakatulong sa mga user na i-synchronize ang Android sa isang PC.

Ginagawang posible ng Android PC Suite na tumawag at magpadala ng mga mensahe sa pamamagitan ng iyong computer. Bilang karagdagan, sa application na ito, maaari mong i-backup ang lahat ng data sa device.

Mga gawain, tala at kalendaryo, at nag-i-install din ng mga driver para sa isang mobile gadget.

Ang My Phone Explorer ay namamahala ng mga file, phone book at iba pang impormasyon sa pamamagitan ng iyong computer, at nagbibigay-daan din sa iyong malaman ang detalyadong impormasyon tungkol sa iyong Android device.


Android- Ito ay isa sa pinakasikat at pinaka-promising na mga operating system para sa iba't ibang mga mobile device. Nag-aalok ang system ng isang napaka-maginhawang toolkit at maximum na kakayahang umangkop ng mga setting, na nagbibigay-daan sa bawat user ng isang smartphone o tablet sa Android na ganap itong i-customize sa kanilang mga pangangailangan. Ang pag-unlad ng operating system na ito ay nagsimula noong 2003, ngunit ito ay naging tunay na sikat pagkalipas lamang ng 2 taon - matapos itong makuha ng Google. Ang pagbabago sa kasaysayan ng Android ay naganap noong taglagas ng 2008. Pagkatapos ay ipinakita ng Google ang T-Mobile G1, na naging unang smartphone na nagpapatakbo ng Android. Sa sandaling iyon na maraming mga pandaigdigang tagagawa ang nagbigay pansin sa isang promising operating system.

(napaka unang bersyon)

Ang mga pangunahing tampok ng operating system ng Android

Ang OS na pinag-uusapan ay palaging nakaposisyon ng mga developer nito bilang isang open source system. Nagbibigay-daan ito sa sinuman na lumikha ng kanilang sariling mga application, laro at iba pang mga add-on upang palawakin ang mga kakayahan ng mga Android gadget. Ang mga developer sa una ay nag-isip ng lahat upang ang operating system ay gumana nang mabilis hangga't maaari kahit na sa pinaka "badyet" na hardware. Ito ay isang tiyak na plus, dahil. ngayon kahit na ang mga taong may pinakamababang paraan sa pananalapi ay maaaring tamasahin ang lahat ng pangunahing bentahe ng mga modernong smartphone.


(Android 5.0)

Handa din ang mga tagagawa ng mobile electronics na samantalahin ang pagiging bukas ng system sa pamamagitan ng pagpapalabas ng sarili nilang mga user interface, halimbawa, Sense mula sa HTC. Ginagawa nitong iba ang mga Android gadget mula sa iba't ibang manufacturer sa bawat isa. Ang mga tagahanga ng classic at "purong" Android ay dapat ibaling ang kanilang pansin sa mga Nexus device. Karaniwang sila ang unang nakatanggap ng mga update.

Ang timing ng pag-update ng iba pang mga device ay kadalasang naantala dahil sa pangangailangang pinuhin ang mga proprietary shell alinsunod sa mga feature ng mga bagong bersyon ng OS.

Ang pangunahing pinagmumulan ng mga laro at application ay ang Play Store. Sa mga katalogo ng tindahang ito, isang malaking seleksyon ng libre at bayad na nilalaman ang magagamit, ang saklaw nito ay aktibong lumalawak. Ang kalidad ng "android" na mga laro at application ay patuloy na lumalaki. Paminsan-minsan, ang Google mismo ay naglalabas ng iba't ibang mga application.

Sa pangkalahatan, nasa mga Android device ang lahat ng feature na dapat mayroon ang mga modernong smartphone at tablet ayon sa mga hindi sinasabing kinakailangan. Bilang karagdagan, ang pag-andar ay madaling mapalawak gamit ang mga application, widget o third-party na firmware.

Dapat tandaan ng mga nagnanais na bumili ng Android smartphone na maraming mga function at program ang nakatuon sa pagtatrabaho sa Internet. Kung wala kang access sa Wi-Fi, inirerekumenda na ikonekta ang isang kanais-nais na taripa para sa mga gumagamit ng Internet o huwag paganahin ang ilang mga function na nangangailangan ng access sa network.

Gayundin, hindi maaaring mabigo ang isa na tandaan ang limitadong awtonomiya ng mga Android device, lalo na ang mga kinatawan ng mga nakaraang henerasyon. Sa aktibong paggamit, ang isang smartphone o tablet ay kailangang singilin araw-araw, at sa ilang mga kaso 2 beses sa isang araw. Ang mga tagagawa ay aktibong nagtatrabaho upang itama ang pagkukulang na ito, at kamakailan lamang ang mga kagiliw-giliw na device na may makabuluhang pagtaas ng awtonomiya ay nagsimulang lumitaw sa merkado. Hindi iniiwan ang mga developer. Sa bawat bagong bersyon, ang operating system ay "kumakain" ng mas kaunting singil.

Batay sa impormasyong ibinigay, posibleng i-highlight ang mga pangunahing pakinabang at disadvantage ng itinuturing na operating system. Kaya, ang hindi mapag-aalinlanganang mga bentahe ng Android ay:
1. Ang pagiging bukas ng code ng programa, na ginagawang posible na bumuo ng halos anumang mga application at laro.
2. Hindi hinihingi sa hardware ng device.
3. Isang malaking hanay ng mga application at kapana-panabik na mga laro para sa bawat panlasa.
4. Ganap na pagsunod sa mga modernong ideya tungkol sa functionality ng isang smartphone.
5. Kalayaan sa pagkilos para sa gumagamit. Kung ninanais, ang system at ang interface nito ay madaling ma-customize sa mga pangangailangan ng may-ari.
6. Ang katanyagan ng operating system sa karamihan ng mga modernong tagagawa. Nagbibigay-daan ito sa isang user na may halos anumang badyet na bumili ng functional at modernong smartphone.

May mga disadvantages din. Ang mga susi ay:

1. Pagkabukas ng program code. Oo, maaari itong maiugnay sa parehong mga pakinabang at disadvantages sa parehong oras. Ito ay isang kawalan para sa kadahilanang ang mga tagagawa ng mobile device sa karamihan ay mas gusto na lumikha ng kanilang sariling mga shell. Dahil dito, may mga makabuluhang pagkaantala sa oras sa pagitan ng opisyal na paglabas ng pag-update ng OS at pagtanggap nito sa iba't ibang device.
2. Medyo mababa ang awtonomiya. Kamakailan, isang malaking hakbang pasulong ang ginawa sa direksyong ito, kaya sa lalong madaling panahon ang mga biro na "Ang mga smartphone sa Android ay ang pinaka-sporty, dahil. mayroon silang 2 ehersisyo sa isang araw” ay hindi hihigit sa isang nakakatawang kuwento.

Ang platform ay patuloy na pinapabuti at binuo. Ngayon, may kumpiyansa siyang nararamdaman sa nangungunang tatlong sa merkado ng mga operating system. Maraming mga eksperto ang paulit-ulit na nabanggit na ang hinaharap ay pag-aari ng Android at hindi nagkamali.

Sa ngayon, ang pinakabagong bersyon ng Android ay may serial number 5 at ang code name na Lollipop. Nakatanggap ang system ng makabuluhang mga update sa disenyo, pag-andar, sa pangkalahatan, ito ay halos isang bagong nilikha na produkto. Nagsimula nang mag-update ang mga Google Nexus 5 na smartphone sa bersyon ng OS na ito, at sa lalong madaling panahon lahat ng modernong smartphone ay makakatanggap ng pinakabagong update. Gayunpaman, sasabihin namin ang tungkol sa bagong 5.0 nang hiwalay, ngunit gusto ko pa ring magsimula mula sa oras na ang proyekto ng Android ay hindi pa kabilang sa Google ...

Android: Simula

Maraming naniniwala na ang kasaysayan ng Android ay nagsimula noong 2008 nang ang unang bersyon ng Android 1.0 ay inilabas. Ngunit sa katunayan, ang lahat ay nagsimulang umikot 5 taon na ang nakalilipas, noong 2003, nang si Andy Rubin at ang kanyang mga kasama (Nick Sears, Chris White at Rich Miner) ay nagpasya na lumikha ng isang mobile operating system at irehistro ang Android Inc. Unang tumutok ang mga developer sa mga device na maaaring palaging kasama ng mga user, tukuyin ang lokasyon sa pamamagitan ng GPS at awtomatikong mag-adjust sa mga pangangailangan ng tao.

Andy Rubin, tagalikha ng Android Source: technobuffalo.com

Para sa mga namumuhunan noong panahong iyon, halos hindi ito malinaw. Buweno, sino ang gustong mamuhunan sa isang hindi maintindihan na pagsisimula, na sa ngayon ay hindi nagdadala ng anumang pera ... At kaya nangyari na noong 2005 ay ginugol ni Andy at mga kaibigan ang lahat ng mga pondo, ngunit sa isang masuwerteng pagkakataon ay tiningnan nila sila mula sa Google at sa Agosto 17, 2005 ang korporasyon ay naging ganap na may-ari ng isang maliit na Android Inc. Kapansin-pansin na ang Google sa oras na iyon ay walang anumang mga espesyal na plano para sa mga gadget, ngunit mas nakatuon sa pagpapabuti ng sarili nitong software at mga algorithm sa paghahanap. Nakakatakot sabihin, ngunit sa oras na iyon ang Google ay walang Adsense at maging ang YouTube (ito ay nakuha lamang noong 2007).

Logo ng Google noong 2005

Sa parehong taon, laban sa backdrop ng Oracle at paglilitis ng Google, napagpasyahan na ang Android ay magiging isang libreng operating system at, siyempre, pangunahing nakatuon sa pagpapatupad ng mga serbisyo ng Google. Dahil si Andy Rubin ang orihinal na namamahala sa proyekto ng GPS, at ang korporasyon ay mayroon nang Maps, pinlano nitong ipakilala ang mga mapa sa mga telepono. At pagkatapos ay wala pang mga smartphone, kaya maaaring lumitaw ang mga card sa isang regular na clamshell na may mga pindutan. Ipinapahiwatig din ng mga unang larawan na tina-target ng Google ang karanasan sa RIM sa kanilang Blackberry, kaya kung hindi ito nagkataon, maaaring hindi na dumating ang mga touchscreen na telepono. Ngunit, sa kasamaang-palad o sa kabutihang-palad, noong 2007 lumabas ang iPhone at mabilis na binago ng Google ang diskarte. Gayunpaman, ang unang build ng Android 1.0 ay inihahanda para sa pagpapalabas noong 2008. Gayunpaman, sa simula ng 2007, walang kasosyo ang Google na maglalabas ng telepono sa bagong OS. Napakalaking kumpanya ng Nokia para magkaroon ng salungatan ng interes, ang Motorola ay hindi pa lumalabas sa Razr sales boom. Pumipili ang Google sa pagitan ng LG at HTC. Ang Korean LG ay interesado sa US market, ngunit ito ay natatakot sa pakikipagtulungan sa isang hindi kilalang kasosyo at gumagamit ng mga kasunduan sa Google upang tapusin ang mga kontrata sa Microsoft upang lumikha ng mga smartphone na may Windows Mobile. Ngunit handa ang HTC na magtrabaho nang sama-sama, at bukod pa, ang kumpanyang Taiwanese ay maaaring mabilis na lumikha ng mga gumaganang sample. Ang unang kilalang prototype ay ang Google Sooner. Dito, gayunpaman, kailangan kong iwanan ang touch screen, ang modelong ito ay nilikha ayon sa orihinal na mga pagtutukoy, nang umasa ang Google sa karanasan sa Blackberry.

Posibleng ang unang prototype ng Android phone - Google sooner

Iniulat ng mga mapagkukunan na ang unang gumaganang bersyon ay nagsimula noong 05/15/2007 at pagkatapos ay tinawag na M3. Ang operating system ay halos kapareho sa interface ng Blackberry, ang pangunahing posisyon ay inookupahan ng Google search bar. Sa pangkalahatan, kung hindi para sa pagdating ng iPhone at ang kurso patungo sa mga touch screen, marahil ay makikita natin ngayon ang Android na ganito.

Screenshot ng Android M3, posibleng ang unang gumaganang bersyon ng OS Source: 9to5google.com

Android: opisyal na simula

Malinaw na naunawaan ng Google na sa paglabas ng Apple iPhone, ang pagkakaroon ng touch screen ay isang pangangailangan lamang, at samakatuwid ang maagang pag-unlad ay kailangang ipagpaliban. Ito ay pinadali ng komunikasyon sa mga operator, noong tag-araw ng 2007 ang kanilang opinyon tungkol sa hinaharap ng Android ay pesimistiko. Noong Agosto 2007, lumabas ang isang artikulo sa WSJ na nagsasalita tungkol sa mga pagsisikap ng Google tungkol sa telepono at platform nito. Binanggit ng materyal na ito na ang kumpanya ay may dalawang prototype - ang isa ay mukhang Palm Treo na may QWERTY na keyboard sa ilalim ng screen, at ang pangalawa ay medyo nakapagpapaalaala sa bersyon ng Nokia. Sa loob ng koponan ng Android, mayroong isang kumpetisyon sa oras, dahil ang lahat ng mga nakaraang plano ay hindi maganda at nagpasya silang abandunahin ang mga ito. Binago ng koponan ang tiyempo, at sa ikalawang kalahati ng 2007 ay ginawa ang M3. Sa bersyon ng M5, lumilitaw ito sa simula ng 2008, isang linya ng katayuan ang lalabas dito, bagama't ang mga eksperimento sa UI ay nakikita ng mata. Panoorin ang video upang maunawaan ang pagkakaiba sa pagitan ng mga bersyong ito.

Ito ay hindi hanggang Agosto 2008 na binuo ng Google ang bersyon 0.9 upang ipakilala ang bersyon ng OS 1.0 noong Setyembre 2008. Noong Oktubre 22, 2008, nagsimulang ibenta ng T-Mobile sa US ang HTC Dream (T-Mobile G1), ang unang Android smartphone na may touch screen at OS na ganap na pinagsama para sa paggamit nito. Ngunit nagawang muli ng Google ang OS sa bersyon 1.6, inaalis ang mga lumang ideya na orihinal na inilatag noong ito ay nilikha. Marahil, mula sa sandaling ito magsisimula ang pag-alis ng Android. Malaki ang interes sa HTC Dream sa US, ang operator ay nagbenta ng 1 milyong device bago ang Abril 23, 2009. Ang ganitong kahilingan para sa tulad ng isang ordinaryong at simpleng aparato ay muling pinatunayan na ang mga ideya ay nanalo, sa aspetong ito ito ay ang ideya ng mga touch phone na nakakuha ng isip ng mga mamimili.

Naturally, ang pinakaunang mga pagsubok sa mga tunay na gumagamit ay nagsiwalat ng maraming mga bahid sa platform, at sa unang taon na ng pagkakaroon ng Android, inilabas ng Google ang mga sumusunod na update: 1.1. Banana Bread, 1.5 Cupcake (ipinakilala ang pag-upload ng video at larawan sa YouTube at Picasa, awtomatikong display orientation, predictive input, atbp.), at 1.6 Donut (speech to text na may multilingguwal na pagbigkas, suporta sa WVGA, na-optimize na mga galaw, atbp.) .d. )

Android: pangalawang pagsubok

Android 2.0

Pagkatapos ng pagpapabuti ng unang bersyon, nakatanggap na ang Android ng pinahusay na functionality at magandang hitsura sa bersyon 2.0, at pagkatapos ay sa 2.1 na may parehong code name na Eclair. Naging posible na gumamit ng maraming Google account, at ang karaniwang web browser ay nakatanggap ng suporta para sa HTML5. Kasabay nito, ibinebenta ang mga bagong modelo ng mga Android smartphone: HTC Magic at Hero, Motorola Droid at Samsung Galaxy.

Pagkatapos, noong 2010, magsisimula ang pagpapalabas ng mga mobile processor na may clock frequency na 1 GHz. At lumalabas ang unang branded na smartphone na Google Nexus One na may 1 GHz processor. Siyempre, naging partner ng Google ang HTC. Ang HTC Desire, Motorola Droid 2 at Samsung Galaxy S ay nakatanggap ng mga processor na may katulad na dalas. Siyanga pala, hindi na gagawa ang HTC ng mga Google device hanggang 2014, kapag lumabas ang Nexus 9. Sa parehong 2010, naglabas ang Google ng isa pang bersyon ng Android, ang bagong 2.2 Froyo , kung saan tumaas ang pagganap ng mga application gamit ang JIT compilation, at lumitaw ang suporta para sa Adobe Flash. Well, lahat ng nabanggit na smartphone na may 1 GHz processor ay nakatanggap ng upgrade sa Froyo. Bilang karagdagan, nakatanggap ang build ng mga update gaya ng Chrome V8 JS engine para sa web browser, paglipat ng mga contact at suporta para sa mga Bluetooth docking station, cloud synchronization, atbp.

Google Nexus One at Android 2.2 Froyo

Sa pamamagitan ng paraan, sa Russia, marami ang nakakita ng Android sa unang pagkakataon sa partikular na edisyong ito, dahil sa taong ito ang pangangailangan para sa mga touchscreen na smartphone ay nagsisimula sa ating bansa, ang Android ay unti-unting nagiging sunod sa moda. Hanggang 2010, ang mga geeks lamang ang nakakita ng "berdeng robot", at kahit na noon, sa halip sa Internet o mga magasin kaysa sa kanilang sariling mga kamay.

Android Gingerbread at Honeycomb

Nasa ikatlong taon na ang Android sa merkado. Isa na itong sikat na OS, ngunit marami pa ring problema. At ngayon, lumilitaw ang 2.3 Gingerbread update, na hanggang 2013 ay na-install sa isang malaking bilang ng mga device. Sa katunayan, sa bersyong ito ng OS, maraming mga tampok ang ipinatupad na minarkahan ang mga prospect para sa pagbuo ng platform bilang tulad - suporta para sa SIP telephony, Near Field Communication at Google Talk, gumagana sa mga screen na may mas mataas na resolution, isang bagong download manager, at higit pa.

Kasama ng Gingerbread, inilabas ng Google ang pangalawang branded na smartphone nito, ang Nexus S. Sa pagkakataong ito, ang Samsung ang naging tagagawa, at ang Nexus S ay, sa katunayan, isang bahagyang binagong Galaxy S. Gayunpaman, ang Google Nexus S ay lumabas na huli na: inihayag ng kumpanyang LG ang unang dual-core na smartphone na Optimus 2X. Ngayon ang mga tagagawa ay sinusukat hindi sa pamamagitan ng gigahertz, ngunit sa pamamagitan ng multi-core. Bilang resulta, hindi lamang LG Optimus 2X ang nakatanggap ng dual-core chips, kundi pati na rin ang Samsung Galaxy S II, HTC Sensation at Motorola Droid X2.

At ang Samsung, samantala, ay naglalabas ng isa pang device pagkatapos ng Galaxy S smartphone - ang Galaxy Tab tablet. Ang compact at magaan na pitong pulgadang "tablet" ay naging isang magandang alternatibo para sa mga hindi gusto ang malaking Apple iPad. Ngunit ang problema, ang Android ay para lamang sa mga smartphone. Walang problema, naisip ng Google, at noong unang bahagi ng 2011, lumalabas ang unang bersyon ng Android na partikular na idinisenyo para sa mga tablet PC, 3.0 Honeycomb. Mas maganda ang hitsura nito sa mga Honeycomb tablet kaysa sa naka-stretch na Gingerbread na interface ng smartphone. Kaya, sa batayan ng Android OS, ang parehong mga smartphone at tablet ay nagsimula nang gumana. Ang negosyo ay nagsimulang lumawak, at mabilis. Halos lahat ng Android tablet ay nagiging Honeycomb carrier - Motorola Xoom, Acer Iconia Tab, Samsung Galaxy Tab 10.1, Lenovo ThinkPad Tablet, atbp.

Sa parehong 2011, sa eksibisyon ng teknolohiya IFA 2011 sa Berlin, ipinakilala ng Samsung ang una nitong 5-pulgadang phablet na Glaxy Note, na naging isang napaka-tanyag na aparato, sa kabila ng opinyon ng mga may pag-aalinlangan. Pagkatapos ito ay, sa katunayan, ang unang device ng klase na ito, at maging sa Android. Inabot ng Apple ng isa pang 3 taon bago iyon, noong 2014 inilabas ng kumpanya ang iPhone 6 Plus phablet.

Android 4: Mula sa Ice Cream Sandwich hanggang KitKat

Naiintindihan ng Google na ang pagkakaroon ng dalawang magkahiwalay na system para sa mga smartphone at tablet ay hindi masyadong kumikita. Gumugol ng mas maraming oras sa pag-unlad at suporta. At sa taglagas ng 2011, inilabas ng Google ang Android 4.0 Ice Cream Sandwich, na naging unang cross-platform na bersyon para sa mga smartphone at tablet. Nagbibigay din ang assembly ng access sa mga application nang direkta mula sa lockscreen, at pinalitan ng pangalan ang AndroidMarket na Google Play. Ayon sa maraming eksperto, mula sa bersyon 4.0 nagsimulang makuha ng Android ang pamilyar nitong hugis at normal na paggana. Ngayon ang mga aparato sa "berdeng robot" ay maaari ding gamitin nang simple, hindi na sila naging mga gadget para sa mga geeks.

Kasunod ng bagong operating system, ipinakita ng Google ang isang bagong smartphone - Galaxy Nexus, na, malinaw naman, ay binuo din sa pakikipagtulungan sa Samsung. At muli, pagkatapos ng paglabas ng smartphone, ang mga tagagawa ng bahagi ay nagsisimulang makipaglaban para sa hardware. Ipinakilala ng Qualcomm ang makapangyarihang mga processor ng Krait, at ang Nvidia ay nag-anunsyo ng 4-core Tegra 3 chips. Well, ang hindi mapag-aalinlanganang pinuno ng mga Android smartphone noong 2012 ay ang Samsung Galaxy S III, na sumali sa budget bestseller na ASUS Nexus 7 batay sa bagong Android 4.1 Jelly Bean OS .

Noong 2012-2013, walang espesyal na nangyari sa Android pagkatapos ng mga pandaigdigang pagbabago sa pag-iisa ng mga bersyon ng tablet at smartphone. Gayunpaman, noong 2012, gumawa ang Google ng 2 pang branded na device - ang LG Nexus 4 na smartphone at ang Samsung Nexus 10 tablet. Kasabay ng mga bagong produkto, isang na-update na build ng Android 4.2 Jelly Bean ang ipinakilala, na dinagdagan ang nakaraang bersyon. Maaari na ngayong ganap na maranasan ng mga user ang mga benepisyo ng paggamit ng GoogleNow, Cloud Messaging, Android Beam, triple buffering, multi-channel na USB audio, at higit pa. Pagkatapos ay ipinakita ang Google Moto X smartphone at ang 2nd generation na Google Nexus 7 tablet, na hindi masyadong sikat sa ating bansa dahil sa ang katunayan na ang Motorola ay umalis sa merkado ng Russia noong 2010.

Noong 2013, ang Nexus 5 ay lilitaw sa merkado, muli, bilang resulta ng pakikipagtulungan sa LG. At para dito at sa iba pang mga device ay may bagong bersyon ng Android 4.4 KitKat. Oo, ito ang unang pagkakataon na ang tagapagpahiwatig ng bersyon ay ang pangalan ng isang komersyal na produkto, ngunit hindi namin pag-uusapan iyon. Naapektuhan ng mga pagbabago hindi lamang ang interface ng mga indibidwal na application at elemento ng system. Ang ipinangakong transparency ng nangungunang notification bar ay dumating na sa KitKat, kasama ang isang bagong mas manipis na font at suporta para sa isang full-screen na interface mula sa mga indibidwal na application. Sa paglabas ng KitKat, naging mas madali ang pag-access sa serbisyo ng Google Now. Ngayon ang kanyang tawag ay pinag-isa - kailangan mo lang i-swipe ang iyong daliri sa screen mula kaliwa pakanan. Dati, iba-iba ang mga paraan upang ma-access ang Google Now depende sa modelo ng smartphone (pagpindot sa Home button, nanginginig, atbp.). Bukod pa rito, ina-activate ang serbisyo ng pariralang "OK Google" kapag nakabukas ang start screen. Hindi pinansin ng mga developer at ng Hangouts program. Ngayon ay pinapayagan ka nitong magpadala hindi lamang ng mga mensahe sa chat, kundi pati na rin ng SMS/MMS. Sa wakas, napapansin namin ang built-in na pedometer sa KitKat, na gumagana kahit sa background, pati na rin ang pinahabang compatibility sa mga printer sa pamamagitan ng teknolohiya ng cloud ng Google Print. Pinapayagan ka ng huli na magpadala ng mga dokumento para sa pag-print nang walang anumang mga wire, binabago ang laki ng papel at tinukoy ang kinakailangang bilang ng mga pahina.

Naisip mo na ba kung paano gumagana ang fastboot o ADB? O bakit halos imposibleng gawing brick ang isang Android smartphone? O baka matagal mo nang gustong malaman kung nasaan ang magic ng Xposed framework at bakit kailangan ang /system/etc/init.d boot script? Paano naman ang recovery console? Ito ba ay bahagi ng Android o isang bagay sa sarili nito, at bakit ang karaniwang pagbawi ay hindi angkop para sa pag-install ng third-party na firmware? Makakakita ka ng mga sagot sa lahat ng ito at marami pang ibang tanong sa artikulong ito.

Paano Gumagana ang Android

Maaari mong malaman ang tungkol sa mga nakatagong feature ng software system sa pamamagitan ng pag-unawa sa prinsipyo ng kanilang trabaho. Sa ilang mga kaso, ito ay mahirap gawin, dahil ang system code ay maaaring isara, ngunit sa kaso ng Android, maaari naming pag-aralan ang buong system sa loob at labas. Sa artikulong ito, hindi ko pag-uusapan ang lahat ng mga nuances ng Android at tututok lamang sa kung paano magsisimula ang OS at kung anong mga kaganapan ang magaganap sa pagitan ng pagpindot sa power button at ang hitsura ng desktop.

Kasabay nito, ipapaliwanag ko kung ano ang maaari nating baguhin sa hanay ng mga kaganapang ito at kung paano ginagamit ng mga custom na firmware developer ang mga feature na ito para ipatupad ang mga bagay tulad ng pag-tune ng mga parameter ng OS, pagpapalawak ng espasyo sa storage ng application, pagpapagana ng swap, iba't ibang mga pag-customize, at marami pa. Ang lahat ng impormasyong ito ay maaaring gamitin upang lumikha ng iyong sariling firmware at ipatupad ang iba't ibang mga hack at pagbabago.

Unang hakbang. ABOOT at partition table

Nagsisimula ang lahat sa pangunahing bootloader. Pagkatapos i-on ang power, ipapatupad ng system ang bootloader code na nakaimbak sa permanenteng memory ng device. Pagkatapos ay ililipat nito ang kontrol sa aboot bootloader na may built-in na suporta para sa fastboot protocol, ngunit ang tagagawa ng mobile chip o smartphone / tablet ay may karapatang pumili ng anumang iba pang bootloader na gusto niya. Halimbawa, ang Rockchip ay gumagamit ng sarili nitong bootloader na hindi tugma sa fastboot, na nangangailangan ng paggamit ng mga proprietary na tool upang muling magprogram at pamahalaan.

Ang fastboot protocol, sa turn, ay isang bootloader management system mula sa isang PC na nagbibigay-daan sa iyong magsagawa ng mga aksyon tulad ng pag-unlock ng bootloader, pag-flash ng bagong kernel at pagbawi, pag-install ng firmware, at marami pang iba. Ang punto ng fastboot ay upang maibalik ang smartphone sa orihinal nitong estado sa isang sitwasyon kung saan nabigo ang lahat ng iba pang paraan. Mananatili ang Fastboot sa lugar kahit na, bilang resulta ng mga eksperimento, burahin mo ang lahat ng seksyon ng NAND memory na naglalaman ng Android at pagbawi mula sa iyong smartphone.

Ang pagkakaroon ng natanggap na kontrol, sinusuri ng aboot ang talahanayan ng partisyon at inilipat ang kontrol sa kernel na na-flash sa partition na pinangalanang boot, pagkatapos kung saan kinukuha ng kernel ang imahe ng RAM mula sa parehong partisyon sa memorya at nagsimulang mag-load ng alinman sa Android o sa recovery console. Ang memorya ng NAND sa mga Android device ay nahahati sa anim na may kondisyong ipinag-uutos na mga seksyon:

  • boot - naglalaman ng kernel at RAM disk, karaniwang nasa 16 MB ang laki;
  • pagbawi - recovery console, ay binubuo ng isang kernel, isang hanay ng mga console application at isang file ng mga setting, laki na 16 MB;
  • system - naglalaman ng Android, sa mga modernong device mayroon itong sukat na hindi bababa sa 1 GB;
  • cache - idinisenyo upang mag-imbak ng naka-cache na data, ginagamit din upang i-save ang firmware sa panahon ng pag-update ng OTA at samakatuwid ay may sukat na katulad ng laki ng partition ng system;
  • userdata - naglalaman ng mga setting, application at data ng user, lahat ng natitirang memory space ng NAND ay inilalaan dito;
  • misc - naglalaman ng flag na tumutukoy kung saang mode dapat mag-boot ang system: Android o pagbawi.
Bilang karagdagan sa mga ito, maaari ding mayroong iba pang mga seksyon, gayunpaman, ang pangkalahatang markup ay tinutukoy sa yugto ng disenyo ng smartphone at, sa kaso ng aboot, ay natahi sa bootloader code. Nangangahulugan ito na: 1) ang partition table ay hindi maaaring patayin, dahil maaari itong palaging maibalik gamit ang fastboot oem format command; 2) para baguhin ang partition table, kakailanganin mong i-unlock at i-reflash ang bootloader gamit ang mga bagong parameter. Gayunpaman, may mga pagbubukod sa panuntunang ito. Halimbawa, ang bootloader ng parehong Rockchip ay nag-iimbak ng impormasyon ng partition sa unang bloke ng memorya ng NAND, kaya hindi na kailangan ang pag-flash ng bootloader upang mabago ito.

Bahagi ng bootloader code na tumutukoy sa partition table


Partikular na kawili-wili ang misc section. May isang pag-aakalang orihinal itong nilikha upang mag-imbak ng iba't ibang mga setting anuman ang pangunahing sistema, ngunit sa sandaling ito ay ginagamit lamang ito para sa isang layunin: upang sabihin sa bootloader kung aling partition ang magsisimula sa pag-boot ng system - boot o pagbawi. Ang tampok na ito, sa partikular, ay gumagamit ng ROM Manager application upang awtomatikong i-reboot ang system sa pagbawi gamit ang awtomatikong pag-install ng firmware. Batay dito, ang Ubuntu Touch dual boot mechanism ay binuo, na nagpapa-flash sa Ubuntu bootloader sa recovery at nagbibigay-daan sa iyong kontrolin kung aling system ang magbo-boot sa susunod. Burahin ang misc partition - Ang Android ay na-load, puno ng data - ang pagbawi ay na-load ... iyon ay, Ubuntu Touch.

Ikalawang hakbang. boot partition

Kung ang misc section ay walang recovery boot flag, inililipat ng aboot ang kontrol sa code na matatagpuan sa boot section. Ito ay walang iba kundi ang Linux kernel; ito ay matatagpuan sa simula ng seksyon, at kaagad pagkatapos na ito ay isang RAM disk image na naka-pack gamit ang cpio at gzip archiver, na naglalaman ng mga direktoryo na kinakailangan para sa Android upang gumana, ang init initialization system, at iba pang mga tool. Walang file system sa boot partition, ang kernel at RAM disk ay sumusunod lang sa isa't isa. Ang nilalaman ng RAM disk ay:

  • data - direktoryo para sa pag-mount ng partisyon ng parehong pangalan;
  • dev - mga file ng device;
  • proc - procfs ay naka-mount dito;
  • res - isang hanay ng mga larawan para sa charger (tingnan sa ibaba);
  • sbin - isang hanay ng mga auxiliary utilities at daemon (adbd, halimbawa);
  • sys - sysfs ay naka-mount dito;
  • system - direktoryo para sa pag-mount ng partition ng system;
  • charger - isang application para sa pagpapakita ng proseso ng pagsingil;
  • build.prop - mga setting ng system;
  • init - sistema ng pagsisimula;
  • init.rc - mga setting ng sistema ng pagsisimula;
  • ueventd.rc - mga setting para sa uventd daemon na kasama sa init.
Ito ay, sa pagsasalita, ang balangkas ng system: isang hanay ng mga direktoryo para sa pagkonekta ng mga file system mula sa mga partisyon ng memorya ng NAND at isang sistema ng pagsisimula na mag-aasikaso sa natitirang gawain sa pag-boot ng system. Ang pangunahing elemento dito ay ang init application at ang init.rc config nito, na tatalakayin ko nang mas detalyado mamaya. Pansamantala, gusto kong bigyang-pansin ang mga file ng charger at ueventd.rc, pati na rin ang mga direktoryo ng sbin, proc at sys.

Ang charger file ay isang maliit na application na ang tanging trabaho ay ipakita ang icon ng baterya. Wala itong kinalaman sa Android at ginagamit kapag nakakonekta ang device sa charger sa naka-off na estado. Sa kasong ito, ang Android ay hindi nag-boot, at ang system ay nagbo-boot lamang sa kernel, nagkokonekta sa RAM disk, at sinimulan ang charger. Ang huli ay nagpapakita ng icon ng baterya, ang imahe kung saan sa lahat ng posibleng estado ay naka-imbak sa mga regular na PNG file sa loob ng res directory.

Ang ueventd.rc file ay isang config na tumutukoy kung aling mga file ng device sa sys directory ang dapat gawin sa yugto ng pag-boot ng system. Sa Linux kernel-based system, ang hardware ay ina-access sa pamamagitan ng mga espesyal na file sa loob ng dev directory, at ang ueventd daemon, na bahagi ng init, ay responsable sa paglikha ng mga ito sa Android. Karaniwan, ito ay gumagana sa awtomatikong mode, tumatanggap ng mga utos upang lumikha ng mga file mula sa kernel, ngunit ang ilang mga file ay kailangang likhain ng iyong sarili. Nakalista ang mga ito sa ueventd.rc.

Ang sbin directory sa stock na Android ay karaniwang naglalaman ng walang anuman kundi adbd, na siyang ADB daemon na responsable sa pag-debug ng system mula sa PC. Nagsisimula ito sa isang maagang yugto ng OS boot at nagbibigay-daan sa iyo upang matukoy ang mga posibleng problema sa yugto ng pagsisimula ng OS. Sa custom na firmware, makakahanap ka ng grupo ng iba pang mga file sa direktoryong ito, gaya ng mke2fs, na maaaring kailanganin kung kailangang i-reformat ang mga partisyon sa ext3/4. Gayundin, ang mga modder ay madalas na naglalagay ng BusyBox doon, kung saan maaari kang tumawag ng daan-daang mga utos ng Linux.

Ang direktoryo ng proc para sa Linux ay karaniwan, sa mga susunod na hakbang sa pag-boot ikokonekta ng init ang mga procf dito, isang virtual na file system na nagbibigay ng access sa impormasyon tungkol sa lahat ng mga proseso sa system. Ikokonekta ng system ang mga sysfs sa direktoryo ng sys, na nagbubukas ng access sa impormasyon tungkol sa hardware at mga setting nito. Sa sysfs, maaari mong, halimbawa, ilagay ang device sa sleep o baguhin ang power-saving algorithm na ginamit.

Ang build.prop file ay idinisenyo upang mag-imbak ng mababang antas ng mga setting ng Android. Sa ibang pagkakataon, ire-reset ng system ang mga setting na ito at io-overwrite ang mga ito ng mga value mula sa system/build.prop file, na hindi pa available.


OUYA TV Box Root Partition


Pangalawang hakbang, alternatibo. seksyon ng pagbawi

Kung sakaling itakda ang recovery boot flag sa misc section o i-on ng user ang smartphone habang pinipigilan ang volume down na key, ililipat ng aboot ang kontrol sa code na matatagpuan sa simula ng recovery section. Tulad ng boot partition, naglalaman ito ng kernel at isang RAM disk, na na-decompress sa memorya at nagiging ugat ng file system. Gayunpaman, ang mga nilalaman ng RAM disk ay medyo naiiba dito.

Hindi tulad ng boot partition, na nagsisilbing transitional link sa pagitan ng iba't ibang yugto ng pag-boot ng OS, ang recovery partition ay ganap na self-sufficient at naglalaman ng miniature operating system na walang kinalaman sa Android. Ang pagbawi ay may sariling core, sarili nitong hanay ng mga application (mga utos) at sarili nitong interface na nagpapahintulot sa user na i-activate ang mga function ng utility.

Sa isang karaniwang (stock) na pagbawi, kadalasan ay may tatlong ganoong pag-andar: pag-install ng firmware na nilagdaan gamit ang susi ng tagagawa ng smartphone, punasan at i-reboot. Sa binagong pagbawi ng third-party, tulad ng ClockworkMod at TWRP, marami pang mga function. Maaari silang mag-format ng mga file system, mag-install ng firmware na nilagdaan ng anumang mga key (basahin: custom), mag-mount ng mga file system sa iba pang mga partisyon (para sa pag-debug ng OS) at magsama ng suporta sa script na nagbibigay-daan sa iyong i-automate ang proseso ng firmware at marami pang ibang function.

Sa tulong ng mga script, halimbawa, magagawa mo ito upang pagkatapos ng pag-load ng pagbawi ay awtomatikong mahanap ang kinakailangang firmware sa memory card, i-install ang mga ito at i-reboot sa Android. Ang tampok na ito ay ginagamit ng ROM Manager, mga tool sa auto-flasher, pati na rin ang mekanismo ng awtomatikong pag-update para sa CyanogenMod at iba pang firmware.

Sinusuportahan din ng custom recovery ang mga backup na script na matatagpuan sa /system/addon.d/ directory. Bago mag-flash, sinusuri ng recovery ang mga script at ipapatupad ang mga ito bago mag-flash. Salamat sa naturang mga script, hindi nawawala ang gapps pagkatapos mag-install ng bagong bersyon ng firmware.

Ikatlong hakbang. Pagsisimula

Kaya, nang matanggap ang kontrol, ikinonekta ng kernel ang RAM disk at, pagkatapos ng pagsisimula ng lahat ng mga subsystem at driver nito, magsisimula ang proseso ng init, kung saan nagsisimula ang pagsisimula ng Android. Gaya ng sinabi ko, ang init ay may configuration file na init.rc, kung saan natututo ang proseso kung ano ang eksaktong dapat nitong gawin upang maiangat ang system. Sa modernong mga smartphone, ang config na ito ay may kahanga-hangang haba na ilang daang linya at nilagyan din ng trailer ng ilang child config na konektado sa pangunahing gamit ang import directive. Gayunpaman, ang format nito ay medyo simple at mahalagang hanay ng mga utos na nahahati sa mga bloke.

Ang bawat bloke ay tumutukoy sa yugto ng paglo-load o, sa wika ng mga developer ng Android, isang aksyon. Ang mga bloke ay pinaghihiwalay mula sa isa't isa ng isang on directive na sinusundan ng isang pangalan ng aksyon, gaya ng sa early-init o sa post-fs. Ang block ng mga command ay isasagawa lamang kung ang trigger ng parehong pangalan ay gagana. Habang nagbo-boot ito, papaganahin ng init ang mga early-init, init, early-fs, fs, post-fs, early-boot, at boot trigger, kaya nagpapatakbo ng naaangkop na command blocks.


Bahagi ng init.rc config mula sa CyanogenMod


Kung ang file ng pagsasaayos ay kukuha ng ilang higit pang mga config na nakalista sa simula (at ito ay halos palaging ang kaso), pagkatapos ay ang mga bloke ng command na may parehong pangalan sa loob ng mga ito ay isasama sa pangunahing config, upang kapag ang trigger ay nagpaputok, ang init ay isasagawa mga utos mula sa kaukulang mga bloke ng lahat ng mga file. Ginagawa ito para sa kaginhawahan ng pagbuo ng mga configuration file para sa ilang device, kapag ang pangunahing config ay naglalaman ng mga command na karaniwan sa lahat ng device, at ang mga partikular na command para sa bawat device ay isinulat sa hiwalay na mga file.

Ang pinaka-kapansin-pansin sa mga karagdagang config ay initrc.devicename.rc, kung saan ang pangalan ng device ay awtomatikong tinutukoy batay sa mga nilalaman ng ro.hardware system variable. Ito ay isang configuration file na partikular sa platform na naglalaman ng mga command block na partikular sa device. Bilang karagdagan sa mga utos na responsable para sa pag-tune ng kernel, naglalaman din ito ng isang bagay na tulad nito:

Ang code:

Mount_all ./fstab.device_name

Nangangahulugan ito na dapat na ngayong i-mount ng init ang lahat ng mga file system na nakalista sa ./fstab.devicename file, na may sumusunod na istraktura:

Ang code:

device_name (partition) mount_point file_system fs_options iba pang mga opsyon

Karaniwan itong naglalaman ng mga tagubilin para sa pagkonekta ng mga file system mula sa mga panloob na partisyon ng NAND sa /system (OS), /data (mga setting ng application) at /cache (naka-cache na data) na mga direktoryo. Gayunpaman, sa pamamagitan ng bahagyang pagbabago sa file na ito, maaari nating pilitin ang init na i-boot ang system mula sa memory stick. Upang gawin ito, sapat na upang hatiin ang memory card sa tatlong 4 na seksyon: 1 GB / ext4, 2 GB / ext4, 1 GB / ext4 at ang natitirang espasyo ng fat32. Susunod, kailangan mong tukuyin ang mga pangalan ng mga partition ng memory card sa direktoryo ng /dev (naiiba sila para sa iba't ibang device) at palitan ang mga orihinal na pangalan ng device sa fstab file sa kanila.


Mga karaniwang nilalaman ng isang fstab file


Sa dulo ng boot block, ang init ay malamang na makatagpo ng class_start default na command, na magsasabi sa iyo na simulan ang lahat ng mga serbisyong nakalista sa config na nauugnay sa default na klase. Ang mga paglalarawan ng mga serbisyo ay nagsisimula sa isang direktiba ng serbisyo na sinusundan ng pangalan ng serbisyo at ang utos na dapat isagawa upang simulan ito. Hindi tulad ng mga utos na nakalista sa mga bloke, ang mga serbisyo ay dapat tumakbo sa lahat ng oras, kaya sa buong buhay ng smartphone, ang init ay mag-hang sa background at susubaybayan ito.

Kasama sa modernong Android ang dose-dosenang mga serbisyo, ngunit dalawa sa kanila ang may espesyal na katayuan at tinutukoy ang buong ikot ng buhay ng system.

Ikaapat na hakbang. Zygote at app_process

Sa isang tiyak na yugto ng paglo-load, ang init ay makakatagpo ng isang bloke tulad nito sa dulo ng config:

Ang code:

Serbisyo zygote /system/bin/app_process -Xzygote /system/bin --zygote --start-system-server class default socket zygote stream 660 root system onrestart write /sys/android_power/request_state wake onrestart write /sys/power/state on onrestart restart media onrestart restart netd

Ito ay isang paglalarawan ng serbisyo ng Zygote, isang pangunahing bahagi ng anumang Android system na responsable para sa pagsisimula, pagsisimula ng mga serbisyo ng system, pagsisimula at paghinto ng mga application ng user, at marami pang ibang gawain. Inilunsad ang Zygote gamit ang isang maliit na application /system/bin/app_process, na napakalinaw na nakikita sa bahagi ng config sa itaas. Ang gawain ng app_proccess ay simulan ang Dalvik virtual machine, ang code nito ay matatagpuan sa /system/lib/libandroid_runtime.so shared library, at pagkatapos ay patakbuhin ang Zygote sa ibabaw nito.

Kapag tapos na ang lahat ng ito at kontrolado na ni Zygote, magsisimula itong buuin ang kapaligiran ng runtime ng Java sa pamamagitan ng paglo-load ng lahat ng mga klase ng Java ng framework (kasalukuyang mahigit 2000). Pagkatapos nito ay sisimulan ang system_server, na kinabibilangan ng karamihan sa mataas na antas (nakasulat sa Java) na mga serbisyo ng system, kabilang ang Window Manager, Status Bar, Package Manager, at, higit sa lahat, ang Activity Manager, na sa hinaharap ay magiging responsable para sa pagtanggap ng start at end signal applications.

Pagkatapos nito, bubuksan ni Zygote ang socket /dev/socket/zygote at matutulog, naghihintay ng data. Sa ngayon, ang dating inilunsad na Activity Manager ay nagbo-broadcast ng Intent.CATEGORY_HOME intent na hanapin ang application na responsable sa paggawa ng desktop, at ibigay ang pangalan nito sa Zygote sa ibabaw ng socket. Ang huli, sa turn, ay tinidor at pinapatakbo ang application sa ibabaw ng virtual machine. Voila, mayroon kaming desktop na nakita sa screen ng Activity Manager at inilunsad ni Zygote, at isang status bar na inilunsad ng system_server bilang bahagi ng serbisyo ng Status Bar. Pagkatapos ng pag-tap sa icon, ang desktop ay magpapadala ng isang layunin na may pangalan ng application na ito, ito ay tatanggapin ng Activity Manager at ipapasa ang command upang simulan ang application sa Zygote daemon

Ang lahat ng ito ay maaaring mukhang medyo nakakalito, ngunit ang pinakamahalagang bagay ay tandaan ang tatlong simpleng bagay:

  • Ang proseso ng paglulunsad ng Android ay nahahati sa dalawang pangunahing yugto: bago at pagkatapos ng Zygote. Bago simulan ang Zygote, sinisimulan ng system ang mababang antas ng mga bahagi ng OS. Ito ay mga operasyon tulad ng pag-mount (pag-mount) ng mga file system, paglulunsad ng mga serbisyong mababa ang antas (halimbawa, rild, na responsable para sa pagtatrabaho sa isang GSM modem, SurfaceFlinger, na kumokontrol sa kung ano ang ipinapakita sa screen, vold, na kumokontrol sa konektadong file. mga sistema). Pagkatapos simulan ang Zygote, magsisimula ang pagsisimula ng eksklusibo sa mga bahagi ng Java, na bumubuo sa 80% ng operating system. Ito, sa partikular, ay ginagamit ng kilalang Xposed framework, na, kapag na-install, ay pinapalitan ang app_process ng sarili nitong binagong bersyon, na kayang humarang sa mga tawag sa anumang klase ng Java, na pinapalitan ang mga ito ng iba pa. Iyon ang dahilan kung bakit ang mga Xposed module ay may malawak na hanay ng mga opsyon para sa pagbabago ng hitsura at pag-uugali ng Android. Sa katunayan, hindi nila binabago ang anumang bagay sa system, ngunit pinipilit lamang itong gumamit ng mga bahagi ng third-party sa halip na ang kanilang sarili.
  • Ang mga aplikasyon ng Java ay hindi kailanman nagsimula sa simula. Kapag nakatanggap si Zygote ng kahilingan na magsimula ng application mula sa Activity Manager, hindi ito naglulunsad ng bagong virtual machine, ngunit nag-fork lang, iyon ay, kinokopya ang sarili nito at pagkatapos ay ilulunsad ang nais na application sa ibabaw ng natanggap na kopya ng virtual machine. Ang prinsipyong ito ng operasyon ay nagpapahintulot, una, upang mabawasan ang pagkonsumo ng memorya, dahil ang Linux, kapag nag-forking, ay kinokopya ang memorya sa copy-on-write mode (ang bagong proseso ay tumutukoy sa memorya ng luma), at pangalawa, upang makabuluhang mapabilis ang paglulunsad ng application: ang proseso ng tinidor ay mas mabilis kaysa sa pagsisimula ng bagong virtual machine at paglo-load ng mga klase ng Java na kailangan ng application.
  • Ang mga layunin ay nasa lahat ng dako sa Android. Ang mga bahagi ng Android ay hindi kailanman gumagamit ng mga direktang tawag sa mga pamamaraan at klase upang makipag-usap sa isa't isa. Sa halip, isang sistema ng mensahe (mga layunin) ang ginagamit, na, bilang karagdagan sa isang mataas na antas ng seguridad, ay nagbibigay din ng maraming iba pang mga goodies, tulad ng, halimbawa, ang kakayahang tumawag sa isang application nang hindi alam ang anumang bagay tungkol dito. Naisulat ko na sa itaas na para ilunsad ang desktop, sapat na para ipadala ng system ang intent Intent.CATEGORY_HOME, kung saan tutugon ang anumang application na may kakayahang magsagawa ng launcher function. Gumagana ang pindutang "Ibahagi" sa parehong paraan, pati na rin ang maraming iba pang mga bahagi ng system.