Kazalo:
Na začetku vsakega meseca Google sprosti mesečni bilten za Android o varnosti in začne pošiljati posodobitve telefonom Pixel. Super je, da je podjetje pregledno, kaj se dogaja in kako se stvari popravljajo, tudi če niste tip osebe, ki rad bere izvorno kodo.
Obstaja veliko dela, ki se vključi v te popravke, preden so objavljeni, še več pa je vpletenega, še preden gre za druge telefone - če sploh pride. Oglejmo si, kako je narejena klobasa, in poskusimo bolje razumeti, zakaj je časovnica za varnostne zaplate nekoliko zamegljena.
Najprej popravite Android
Android je zapletena zver. Obstaja več kot 5 milijonov vrstic kode, ki podjetjem, ki mobilne izdelke omogočajo, da začnejo delovati s popolno aplikacijsko platformo, vključno z dostopom do Googla Play in drugih storitev. Ni nekaj, kar bi lahko uporabili kot je; ta podjetja porabijo veliko časa, da bi pridobili Android, prilagojen za združevanje v drugo programsko opremo, ki jo morda uporabljajo za ustvarjanje prijetnega homogeniziranega operacijskega sistema.
Google ima nekaj pravil o tem, kako naj to stori, če želi podjetje vključiti svoje storitve, vendar imajo proizvajalci dolg povodec o tem, kako je zgrajen končni izdelek.
Ta koda zaživi varnostni obliž. Nekdo, naj bo to varnostni raziskovalec ali zgolj povprečen Joe, v telefonu ugotovi napako, s katero bi lahko zmanjšal varnostni sloj naprave. Če ta napaka ni nekaj, kar je ustvaril OEM, ima Androidova naloga, da ugotovi, kaj se dogaja, zakaj se dogaja in kako ga odpraviti na najmanj moteč način.
Če je odkrita pomanjkljivost varnosti in je del osnovne kode za Android, jo mora Google odpraviti in jo nato poslati vsem ostalim.
Pogosto napaka ni nekaj, kar lahko Google odpravi. Tako kot mi tudi Google nima dostopa do strojne programske opreme podjetij, ki izdelujejo strojno opremo, kot sta Qualcomm ali LG. Če je treba pomanjkljivost odpraviti na ravni strojne opreme, obstaja velika možnost, da mora podjetje, ki dobavi nekatere uporabljene komponente, najprej spremeniti spremembe. V tem primeru se te spremembe posredujejo Googlu, da bo videl, kaj je treba storiti, da jih prilagodimo v Androidovo kodo.
Za te spremembe je potreben čas, zlasti če sodeluje prodajalec strojne opreme. Obstaja zakrpanje in testiranje ter več popravkov in več testiranja za vsako napako, ki je odkrita v popravku. Ko je Google prepričan, da imajo veljaven popravek za varnostno napako, ima vsako podjetje, ki ustvarja telefone s sistemom Android, dostop do predčasnega dostopa (vsaj 30 dni pred objavo popravka Google), da lahko začnejo delati.
Druga faza
Tu se opravi večina dela. Google lahko sam piše in vzdržuje Android, vendar večine naprav, ki ga uporabljajo, ne naredi Google. Sem spadajo tudi tisti, ki so - Pixel telefoni. Googlova strojna oprema je kupec Androida tako kot Samsung ali Motorola.
Samsungov in LG-jev mobilne industrije, ki veliko spreminjajo Android, je veliko dela, ko je čas za združitev popravka.
Vsa ta podjetja začnejo delati na nekaj stvareh, takoj ko dobijo novo kodo od Googla. Prvi - in morda najpomembnejši - del je določitev, kateri del obliža ni potreben. In v vsakem obližu je veliko stvari, ki jih lahko eno podjetje zanemari.
Če bi na primer NVIDIA morala spremeniti spremembe, ki jih potisnemo nazaj v Android, nobenega telefona Samsung ne bo potreboval tega dela popravka. Še skrajnejši primer bi bile spremembe, ki so jih naredili BlackBerry ali Samsung, ki že obravnavajo težavo na drugačen način. Ugotoviti, kaj je potrebno in kaj ne, je lahko zamudno, še posebej, če podjetje na določenih delih operacijskega sistema naredi velike spremembe. Google je preučil obtožbe, da proizvajalci originalne opreme pošiljajo varnostne popravke, ki niso obravnavali nekaterih stvari, ki bi jih morali imeti, in to je ugotovilo.
Na vsakem telefonu ni potreben vsak del popravka.
Ko to storite, morate preostanek popravka združiti v prodajalčevo kodo Android po meri in nato izdelati in preizkusiti. "Vgrajen in preizkušen" del lahko postane velik glavobol, če popravka ni mogoče uporabiti samo, ker se dotakne datotek, ki jih koda po meri uporablja ali je odvisna. Tudi to vidimo veliko. Kadar koli je povezava Bluetooth ali Wi-Fi, naj bo to strojna ali programska oprema, ki se skriva za njimi, se bo dotaknila kode, ki jo je spremenil velik OEM, ki naredi ljubši operacijski sistem kot "založen" Android. Obstaja veliko delov Androida, ki se jih OEM lahko dotakne.
Ko inženirji Samsung ali drug prodajalec dobijo operacijski sistem, ki se zažene in zažene, ga je treba preizkusiti. In preizkusil še nekaj. Testiranje lahko vključuje vključitev omrežnih inženirjev različnih operaterjev, pa tudi vračanje Googla in / ali proizvajalca katere koli komponente nazaj v mešanico. To mora biti prav. Obliž, ki je bil poslan na tisoče in tisoče telefonov, bi lahko zlomil omrežje prevoznika, požrl pokrov podatkov za vsakega uporabnika ali celo povzročil, da sam telefon preneha delovati. Karkoli je nesprejemljivo in ga je treba najti, preden zapusti stavbo.
Razstavitev
Podjetje, ki je izdelalo vaš telefon, Google in morda vaš operater, sodeluje pri pripravi množične posodobitve po spletu. Če ste že kdaj videli URL, ki se uporablja za prenos popravka, boste na spletnem naslovu opazili, da ima "Google". To je zato, ker motor v vašem telefonu, ki lahko pridobi in obnovi posodobitev OTA, išče zelo natančen kraj za popravek. Vedeti mora, da je popravek stoodstotno pravilen in podpisan s pravim digitalnim podpisom. To bo ponovno preveril, ko bo obliž v celoti prenesen.
Če ste telefon kupili pri prevozniku, ima vso količino vložka v celotni življenjski dobi popravka.
Vaš operater ima morda nekaj pravil o tem, kdaj in kdo lahko naloži obliž, ko je v živo, če je njegovo ime na telefonu. Podjetja, kot sta Samsung ali LG, izdelajo različice svojih najbolj priljubljenih modelov po meri za vsakega nosilca, kar veliko prispeva k njihovemu početju. To bi moralo biti, saj je ime na škatli. To je lahko frustrirajoče, vendar ima smisel. Če bodo vsi v Pittsburghu (na primer), ki imajo telefon Samsung Galaxy S8, poskušali istočasno dojeti obliž 800 MB, se bo omrežje sesulo na mestih. Vaš operater bo storil vse, kar je treba, da bi omrežje ostalo živo.
Google prav tako uvrsti uvrstitev na uvrstitev na OTA. Specifično število uporabnikov bo prejelo popravek in Google po določenem času ugotovi, ali so imeli uporabniki dobro izkušnjo ali slabo. Če bo vse dobro, bo večje število uporabnikov obliž dobilo v drugem valu. To se ponovi večkrat, preden se odprejo protipožarna vrata. Uporabniki, ki ne želijo čakati na to končno testiranje, lahko ročno prenesejo obliž prek nastavitev naprave.
Ko je na vrsti in ste dali telefonu zeleno luč, da zgrabi to datoteko, se prenese in nato telefon prevzame nadzor.
V vaših rokah
Obliž se prenese v vaš telefon in preveri, da so prave stvari. Starejše različice Androida imajo namenski predpomnilnik, ki je del vašega prostora za shranjevanje, ki je razdeljen na stvari, kot je posodobljena datoteka; stvari, ki so le začasno na telefonu. Telefoni, ki uporabljajo Androidovo funkcijo brezžičnega posodabljanja (ki naj bi bila večina telefonov z Android Nougatom, ko so prodani) "prenesejo" prenesene datoteke v reže. V obeh primerih morate imeti dovolj prostora, da lahko datoteko OTA ekstrahirate in delate.
Telefoni s starejšimi različicami Androida lahko imajo nameščeno predpomnilno particijo, ki se uporablja med posodobitvijo. Velikost mora biti 2, 5-krat večja od datoteke, ki ste jo prenesli.
Programska oprema za posodabljanje OTA v vašem telefonu je del Androida. Skript v preneseni datoteki pove, kako najti datoteke, ki jih je treba spremeniti, in jih kopira v predpomnilnik naprave ali v za to določeno režo. Nato primerja izvirne datoteke v telefonu z datotekami, ki ste jih prenesli. Nekateri so lahko preprosta izmenjava - vzemite datoteko X iz telefona in jo izbrišite, nato pa jo nadomestite z datoteko X iz prenosa OTA. Drugi niso celotna datoteka in vsebujejo le majhne posebne spremembe. Programska oprema za posodabljanje in namestitveni program v vašem telefonu ve, kaj tukaj storiti.
Veliko datotek v Androidu, zlasti aplikacij in knjižnic programske opreme, je res veliko datotek, stisnjenih v poseben arhiv. Lahko vzamete datoteko APK in jo spremenite v.zip datoteko in jo odprete v sistemu Windows. Včasih je treba te arhive odpreti, njihove dele pa je treba zamenjati z novimi različicami, naloženimi za varnostni popravek. Zato potrebujete delovni prostor v predpomnilnikovi particiji - tam se te datoteke izvlečejo.
Veliko datotek na vašem telefonu je resnično arhiv, ki vsebuje veliko datotek - vključno z drugimi arhivi datotek. Zapleteno je.
Ko so vsake datoteke v posodobitvi OTA obdelane in spremembe kopij sistemskih datotek, je čas, da sistem zaženete z njimi. To se zgodi, ko telefon zahteva, da znova zaženete program, ko je prejel prejeto OTA, ker so pogosto datoteke, ki jih je treba popraviti, vendar jih uporabljate med delovanjem telefona. Morda boste videli zaslon, ki prikazuje, da se med ponovnim zagonom dogaja delo ali pa boste morda preprosto videli logotip Android. V obeh primerih se datoteke preverijo, premaknejo na svoje mesto in ponovno preverijo. Stare datoteke so shranjene v predpomnilniku samo, če pride do težav in se z novimi datotekami ne morete zagnati.
Vse, kar vam preostane, je, da se prepričate, da je vse še vedno tako, kot vam je všeč, in v nastavitvah telefona imate novejši datum za različico Security Patch. Zdaj ste pripravljeni na naslednjo posodobitev!