Flešovanje kernela Android uređaja. Flešovanje kernela Android uređaja Kernel verzija 3.10 72 android

Pisali smo više puta o prilagođenom firmveru, root aplikacijama i alternativnim menijima za pokretanje. Sve su to standardne teme u hakerskoj zajednici Androida, međutim, pored svega navedenog, postoji i nešto kao „prilagođeno jezgro“, koje može pružiti gotovo neograničene mogućnosti za upravljanje pametnim telefonom i njegovim hardverom na najniži nivo. U ovom članku ću vam reći šta je to, zašto je potrebno i kako odabrati pravi prilagođeni kernel.

Custom kernel?

Šta je prilagođeno jezgro? Kao što svi znamo, Android je kolač koji se sastoji od tri osnovna sloja: Linux kernela, skupa biblioteka i usluga niskog nivoa i Dalvik virtuelne mašine, na vrhu koje pokreće grafičku ljusku, alate i usluge visokog nivoa. , kao i skoro sve aplikacije instalirane sa tržišta. Kreatori većine alternativnih prilagođenih firmvera obično rade samo sa gornja dva sloja, dodajući funkcije grafičkoj ljusci (na primjer, dugmad u zavjesi), mijenjajući je (tema engine u CyanogenMod), kao i dodajući nove sistemske usluge (ekvilajzer u CyanogenMod) i optimiziranje postojećih.

Autori popularnog firmware-a također unose promjene u Linux kernel kad god je to moguće: optimiziraju (grade sa agresivnijim zastavicama optimizacije kompajlera), uključuju nove funkcionalnosti (na primjer, podršku za Windows loptu), a također prave druge promjene, kao što je mogućnost da podignete frekvenciju procesora iznad one koju je dao proizvođač. Često sve ovo ostaje iza kulisa, a mnogi korisnici prilagođenog firmware-a nisu ni svjesni ovih mogućnosti, pogotovo jer isti CyanogenMod dolazi sa prilagođenim kernelom samo za ograničen raspon uređaja, za koje je i izvorni kod izvornog kernela i mogućnost zamjene su dostupne. Na primjer, gotovo svi CyanogenMod firmware za Motorola pametne telefone koriste standardni kernel - nemoguće ga je zamijeniti vlastitim zbog neprobojne zaštite bootloadera.

Međutim, kernel u pametnim telefonima s otključanim bootloaderom može se zamijeniti odvojeno od glavnog firmvera. I ne samo zamijenite, već instalirajte kernel s ogromnim brojem različitih funkcija koje zahtijevaju određeno tehničko znanje za upravljanje, te stoga obično nisu ugrađene u jezgre popularnih firmvera kao što su CyanogenMod, AOKP i MIUI. Među ovim funkcijama možete pronaći podršku za visoke frekvencije procesora, kontrolu gama ekrana, modove za uštedu energije, visoko efikasne upravljače napajanja i ogroman broj drugih karakteristika.

U ovom članku ćemo govoriti o tome što nam kreatori prilagođenih kernela mogu ponuditi, razmotriti glavne prilagođene kernele za različite uređaje, a također ćemo pokušati instalirati kernel neovisno o glavnom firmveru i provjeriti sve na vlastitoj koži. Dakle, šta obično nude programeri alternativnih kernela?

Pametan saobraćajni kontroler

OMAP35XX SoC-ovi, koji se koriste, na primjer, u Galaxy S II i Galaxy Nexus, imaju funkciju SmartReflex, koja djeluje kao pametni sistem za podešavanje napona kada se opterećenje na procesoru promijeni. U suštini, eliminiše potrebu za finim podešavanjem napona od strane korisnika.

Optimizacije

Često je glavni cilj izgradnje prilagođenog kernela optimizacija performansi. Tipično, proizvođač mobilnih uređaja pokušava održati ravnotežu između performansi i stabilnosti, pa čak i dobre tehnike optimizacije koje mogu značajno povećati brzinu uređaja proizvođač može odbiti samo na osnovu toga što su nakon upotrebe neke aplikacije počele rušiti. svako deseto lansiranje. Naravno, entuzijastima ne smetaju takve sitnice, a mnogi od njih su spremni primijeniti sve opcije kompajlera, algoritme za uštedu energije na kernel vlastitog sklopa i podići frekvenciju procesora koliko god uređaj može podnijeti. Među svim tehnikama optimizacije, četiri su najčešće:



Druga vrsta optimizacije: promjena zadanog I/O planera. Situacija u ovoj oblasti je još zanimljivija, jer umjesto razumijevanja principa rada planera, neki graditelji kernela jednostavno čitaju dokumente na Internetu o I/O planerima za Linux i izvode zaključke. Među korisnicima je ovaj pristup još rašireniji. Zapravo, gotovo svi najmoćniji i najinteligentniji Linux planeri potpuno su neprikladni za Android: dizajnirani su za korištenje s mehaničkim spremištima podataka, u kojima brzina pristupa podacima varira ovisno o položaju glave. Planer koristi različite šeme agregiranja zahtjeva u zavisnosti od fizičke lokacije podataka, tako da će zahtjevi za podacima koji su blizu trenutnoj poziciji glave dobiti veći prioritet. Ovo je potpuno nelogično u slučaju čvrste memorije, koja garantuje istu brzinu pristupa svim ćelijama. Napredni programeri će učiniti više štete nego koristi pametnom telefonu, a oni najnespretniji i najprimitivniji će pokazati najbolje rezultate. Linux ima tri slična planera:

  • Neop (bez operacije)- tzv. non-scheduler. Jednostavan red FIFO zahtjeva, prvi zahtjev će biti obrađen prvi, drugi drugi, itd. Pogodno za SSD memoriju i omogućava vam da pravedno rasporedite prioritete aplikacija za pristup disku. Dodatni plus: malo opterećenje procesora zbog vrlo jednostavnog principa rada. Nedostatak: ne uzima se u obzir specifičnosti rada uređaja, što može dovesti do kvarova u radu.
  • SIO (jednostavan I/O)- analogni planer rokova bez uzimanja u obzir blizine sektora jedan drugom, odnosno dizajniran posebno za solid-state memoriju. Dve glavne karakteristike: prioritet operacija čitanja nad operacijama pisanja i grupisanje operacija po procesu, dodeljivanje vremenskog dela svakom procesu za izvođenje operacija. U pametnim telefonima gdje je važna brzina trenutne aplikacije i prevlast operacija čitanja nad operacijama pisanja, pokazuje vrlo dobre performanse. Dostupno u Leankernelu, Matr1x kernelu za Nexus 4 i SiyahKernel.
  • RED (PROČITAJ PREKO PIŠE)- planer posebno dizajniran za mobilne uređaje i dodan u kernel prije samo nekoliko mjeseci. Glavni cilj je prvo obraditi zahtjeve za čitanje, ali i rasporediti pošteno vrijeme za zahtjeve za pisanje. Smatra se najboljim planerom za NAND memoriju u ovom trenutku; koristi se po defaultu u Leankernel i Matr1x.

Vrijedi reći da gotovo svi standardni firmveri i polovina prilagođenih još uvijek koriste kernel sa standardnim Linux CFQ planerom, što, međutim, nije tako loše, jer može ispravno raditi sa SSD diskovima. S druge strane, previše je komplikovan, stvara veće opterećenje procesora (a samim tim i baterije) i ne uzima u obzir specifičnosti mobilnog OS-a. Još jedan popularan izbor je planer rokova, koji je dobar kao SIO, ali je suvišan. Možete pogledati listu dostupnih planera koristeći sljedeću naredbu:

# mačka /sys/block/*/queue/scheduler

Za promjenu se koristi sljedeće (gdje je red ime planera):

# za i u /sys/block/*/queue/scheduler; do echo row > $1; urađeno

Neki graditelji kernela također koriste drugu vrstu optimizacije koja se odnosi na I/O. Ovo onemogućava sistemski poziv fsync, koji se koristi za prisilno izbacivanje promijenjenog sadržaja otvorenih datoteka na disk. Postoji mišljenje da će bez fsync-a sistem rjeđe pristupati drajvu i tako uštedjeti vrijeme procesora i bateriju. Prilično kontroverzna izjava: fsync se ne koristi često u aplikacijama i samo za spremanje zaista važnih informacija, ali njegovo onemogućavanje može dovesti do gubitka istih informacija u slučaju pada operativnog sistema ili drugih problema. Mogućnost onemogućavanja fsync je dostupna u jezgrima franco.Kernel i GLaDOS, a kontroliše je datoteka /sys/module/sync/parameters/fsync_enabled, u koju treba da upišete 0 da biste onemogućili ili 1 da biste omogućili. Opet, ne preporučuje se korištenje ove funkcije.

Dodavanje novih funkcija kernelu

Naravno, pored optimizacija, podešavanja i raznih naprednih sistema za upravljanje hardverom, u prilagođenim kernelima možete pronaći i potpuno novu funkcionalnost koja nije u standardnim kernelima, ali koja može biti korisna korisnicima.

To su uglavnom različiti drajveri i sistemi datoteka. Na primjer, neki kerneli uključuju podršku za CIFS modul, koji vam omogućava da montirate Windows dijeljenje. Takav modul je u Matr1x kernelu za Nexus S, faux123 za Nexus 7, SiyahKernel i GLaDOS. Sam po sebi je beskorisan, ali na tržištu postoji nekoliko aplikacija koje vam omogućavaju da koristite njegove mogućnosti.

Još jedna korisna karakteristika je uključivanje ntfs-3g drajvera u kernel (tačnije, u paket sa kernelom; sam drajver radi kao Linux aplikacija), koji je neophodan za montiranje fleš diskova formatiranih u NTFS sistem datoteka. Ovaj drajver se nalazi u faux123 i SiyahKernel kernelima. Obično se aktivira automatski, ali ako se to ne dogodi, možete koristiti StickMount aplikaciju sa tržišta.

Mnogi kerneli takođe uključuju podršku za takozvanu zram tehnologiju, koja vam omogućava da rezervišete malu količinu RAM-a (obično 10%) i koristite je kao komprimovanu swap oblast. Rezultat je svojevrsno proširenje količine memorije, bez ikakvih ozbiljnih posljedica po performanse. Dostupno u Leankernelu, omogućeno pomoću Trickster MOD-a ili zram enable komande.

Posljednje dvije zanimljive karakteristike su brzo USB punjenje i Sweep2wake. Prvi nije ništa drugo do prisilno aktiviranje načina "brzog punjenja", čak i ako je pametni telefon spojen na USB priključak računala. Režim brzog punjenja dostupan je na svim manje-više novim pametnim telefonima, međutim, zbog tehničkih ograničenja, ne može se omogućiti istovremeno sa pristupom memorijskoj kartici. Funkcija brzog USB punjenja omogućava vam da uvijek omogućite ovaj način rada, dok onemogućujete pristup disku.

Sweep2wake je novi način buđenja uređaja, koji je izumio autor Breaked-kernela. Njegova poenta je da uključite pametni telefon prevlačenjem prsta preko navigacionih tastera koji se nalaze ispod ekrana, ili preko samog ekrana. Ovo je zaista zgodna funkcija, ali njeno uključivanje će uzrokovati da senzor ostane aktivan čak i dok uređaj spava, što može značajno isprazniti bateriju.

Overclocking, napon i ušteda energije

Overclocking je popularan ne samo među vlasnicima desktop računara i laptopa, već i među entuzijastima mobilne tehnologije. Kao i kamena arhitektura x86, procesori i grafička jezgra mobilnih uređaja su odlični. Međutim, sama metoda overclockinga i koraci poduzeti za njegovu implementaciju su nešto drugačiji. Činjenica je da su standardni drajveri za SoC, koji su odgovorni za uštedu energije i promjenu frekvencije procesora, obično zaključani na standardnim frekvencijama, tako da za fino podešavanje morate instalirati ili alternativni drajver ili prilagođeni kernel.

Gotovo svi manje-više kvalitetni i popularni prilagođeni kerneli već uključuju otključane drajvere, pa je nakon njihove instalacije mogućnost kontrole "snage" procesora značajno proširena. Obično prilagođeni graditelji kernela rade dvije stvari koje utječu na izbor frekvencije. Ovo je proširenje raspona frekvencija izvan prvobitno navedenih - možete postaviti ili višu frekvenciju procesora ili vrlo nisku, što vam omogućava da uštedite bateriju i povećate gradaciju frekvencija, na primjer, umjesto tri moguće frekvencije , postoji šest na izbor. Drugi je dodatak mogućnosti podešavanja napona procesora, tako da možete smanjiti napon procesora na niskim frekvencijama kako biste sačuvali napunjenost baterije i povećali ga na visokim frekvencijama kako biste povećali stabilnost.

Sve se to može kontrolirati pomoću dobro poznatog plaćenog uslužnog programa SetCPU ili besplatnog Trickster MOD-a. Preporuke za upravljanje su iste kao i za desktop sisteme. Bolje je donju frekvenciju procesora podesiti na minimum, ali ne nižu od 200 MHz (da bi se izbjegla kašnjenja), gornji prag se postepeno povećava uz testiranje stabilnosti rada, ako padne, preporučljivo je malo povećati napon za ovu frekvenciju. Ne postoje preporuke za napon, jer je svaki procesor jedinstven i vrijednosti će biti različite za svakoga.

Osim promjene frekvencija, graditelji često dodaju nove algoritme za uštedu energije (automatska kontrola frekvencije procesora) kernelu, koji, po njihovom mišljenju, može pokazati bolje rezultate u odnosu na standardne. Gotovo svi se temelje na Interaktivnom algoritmu koji se prema zadanim postavkama koristi u novim verzijama Androida, čija je suština naglo povećati frekvenciju procesora do maksimuma kada se opterećenje poveća, a zatim je postupno smanjiti na minimum. On zamjenjuje prethodno korišteni OnDemand algoritam, koji je glatko podešavao frekvenciju u oba smjera proporcionalno opterećenju i čini sistem osjetljivijim. Sakupljači alternativnih kernela nude sljedeće algoritme za zamjenu Interactive:

  • SmartAssV2- preispitivanje interaktivnog algoritma s fokusom na uštedu baterije. Glavna razlika je u tome da se procesor ne povuče na visoke frekvencije u slučaju kratkotrajnog opterećenja, za šta su dovoljne niske performanse procesora. Zadana vrijednost se koristi u Matr1x kernelu.
  • InteractiveX- podešeni interaktivni algoritam, čija je glavna karakteristika zaključavanje procesora na minimalnoj frekvenciji koju je odredio korisnik i isključivanje druge procesorske jezgre kada je ekran isključen. Default se koristi u Leankernelu.
  • LulzactiveV2- u suštini ponovo izmišljeni OnDemand. Kada opterećenje procesora premaši specificirano (60% prema zadanim postavkama), algoritam povećava frekvenciju za određeni broj podjela (1 po defaultu), a snižava je kada se opterećenje smanji. Posebno je zanimljiv jer vam omogućava da samostalno postavite radne parametre, stoga je pogodan za okorjele štreberke.

Općenito, graditelji kernela zaista vole da smišljaju nove algoritme za uštedu energije zbog lakoće njihove implementacije, tako da možete pronaći desetak drugih. Većina njih je potpuna glupost, a pri odabiru planera treba se voditi pravilom: ili jedan od tri gore opisana, ili standardni Interactive, koji je, inače, jako dobar. Možete napraviti izbor koristeći isti Trickster MOD.

Kontrolna sučelja

Najpopularniji prilagođeni kerneli uključuju nekoliko mehanizama za fino-zrnastu kontrolu različitih parametara drajvera, od kojih su najčešći ColorControl, GammaControl, SoundControl i TempControl.

Prva dva interfejsa su dostupna skoro svuda, uključujući CyanogenMod kernele, druga dva su dostupna u Leankernelu i možda u drugim. Na ovaj ili onaj način, svi se mogu kontrolirati pomoću Trickster MOD-a.

Jezgra

Koje jezgro odabrati? Na ovo pitanje nema jasnog odgovora, i to ne zato što je „svakom svoje“, već zato što u svijetu postoji ogroman broj Android uređaja i gotovo isto toliko različitih kernela. Međutim, postoji nekoliko popularnih kernela koji se razvijaju za nekoliko uređaja odjednom. Na ovaj ili onaj način, mnoge od njih sam spomenuo u cijeloj priči, a ovdje ću ih ukratko opisati.

  • Leankernel je jezgro za Galaxy Nexus, Nexus 7 i Galaxy S III. Glavni naglasak tokom razvoja je na jednostavnosti i brzini rada. Algoritam za uštedu energije: InteractiveX V2, I/O planer: ROW, sva gore navedena kontrolna sučelja, podrška za brzo USB punjenje, swap i zram, fleksibilne opcije overkloka za CPU i GPU. Jedna od najboljih jezgri. Prilagodljivo korištenjem Trickster MOD-a.
  • Matr1x (http://goo.gl/FQLBI, goo.gl/ZcyvA) - kernel za Nexus S i Nexus 4. Jednostavan i neopterećen kernel. Podrška za CPU i GPU overclocking, GammaControl, Fast USB Charge, Sweep2wake, I/O planeri: SIO, ROW i FIOPS. Podešavanje performansi. Prilagodljivo korištenjem Trickster MOD-a.
  • Bricked-Kernel (http://goo.gl/kd5F4, goo.gl/eZkAV) - jednostavan i neopterećen kernel za Nexus 4 i HTC One X. Optimizacije za Snapdragon S4 i NVIDIA Tegra 3, redizajniran način uštede energije za Tegra 3 , mogućnost overkloka, algoritam za uštedu energije: podešen OnDemand (takođe dostupan Interactive).
  • SiyahKernel - kernel za Galaxy S II i S III. Fleksibilne opcije overkloka, automatska kalibracija baterije, poboljšani drajver za ekran osetljiv na dodir, algoritmi za uštedu energije: smartassV2 i lulzactiveV2, I/O planeri: noop, rok, CFQ, BFQV3r2 (podrazumevano), V(R), SIO. CIFS i NTFS drajveri (sa automatskim montiranjem). Podešavanje pomoću ExTweaks-a.
  • franco.Kernel - kernel za Nexus S, Galaxy Nexus, Nexus 4, Nexus 7, Nexus 10, Galaxy S III, Galaxy Note, Optimus One i One X.

Mogućnosti kernela se uvelike razlikuju od uređaja do uređaja, tako da ćete morati provjeriti detalje na licu mjesta. Međutim, flešovanjem ovog kernela, dobićete mogućnost overkloka, podešavanja drajvera, odlične performanse, kao i podršku za različite algoritme za uštedu energije i planere. U stvari, kernel uključuje gotovo sve izmjene opisane u članku. Smatra se jednim od najboljih dostupnih kernela. Postoji aplikacija za automatsko ažuriranje franko.Kernel Updater. Možete ga konfigurirati koristeći Trickster MOD.

Kako instalirati?

Svi kerneli se distribuiraju u standardnim Android ZIP arhivama, koje bi trebale biti flešovane kroz konzolu za oporavak na isti način kao i alternativni firmver. Obično su kerneli kompatibilni sa bilo kojim firmverom, tako da kada odaberete pravi kernel, možete ga sigurno instalirati. Jedina stvar na koju treba obratiti pažnju je verzija Androida s kojom je kernel kompatibilan. Može ili biti prikladan za sve verzije Androida dostupne za uređaj ili raditi samo s jednom (programer obično eksplicitno govori o tome). Prije flešovanja firmvera, obavezno napravite rezervnu kopiju trenutnog firmvera koristeći istu konzolu za oporavak. Ako nešto krene po zlu, uvijek se možete vratiti.

zaključci

Kao što vidite, prilagođeni kerneli imaju mnoge prednosti u odnosu na kernele koji se koriste u standardnom ili firmveru treće strane. I ono što je još važnije je da ne morate znati sve zamršenosti Androida da biste ih koristili; samo preuzmite i instalirajte ZIP arhivu.

Mnogi vlasnici Android uređaja na raznim forumima i web stranicama često nailaze na spominjanje nečega nerazumljivog, što se zove kernel, ili na engleskom kernel. Može se mijenjati i spominje se u meniju postavki uređaja, u odjeljku “O tabletu (telefonu)”.

Ako zakopate dublje, otkrit ćete da je kernel dio operativnog sistema, a ne samo Android, već i drugi operativni sistemi: Windows, iOS, MacOS i drugi. Ali će nas zanimati Android kernel, a ja ću pokušati da objasnim šta je to na nivou početnika.

Vjerovatno znate da je svaki operativni sistem, uključujući i Android, u velikoj mjeri skup programa koji upravljaju radom cijelog uređaja i koji su odgovorni za pokretanje korisničkih aplikacija kao što su igre, upravitelji datoteka, web pretraživači i drugi.

A Android kernel je praktično najvažniji dio operativnog sistema, koji je odgovoran za interakciju između cijelog hardverskog i softverskog dijela sistema. Kernel se sastoji od skupa drajvera za svu opremu u uređaju i podsistema za upravljanje memorijom, umrežavanjem, sigurnošću i drugim osnovnim funkcijama operativnog sistema.
Na primjer, kada dodirnete ekran da biste pokrenuli aplikaciju, upravljački program touchpad-a na ekranu određuje lokaciju na kojoj se dodir dogodio i prijavljuje koordinate drugim programima, koji će, opet pomoću kernela, pronaći željenu aplikaciju u memoriji uređaja i pokrenuti to. Ovo je, naravno, veoma pojednostavljen model, ali odražava suštinu operativnog sistema.

Tako smo otkrili da kada bilo kom softveru treba hardver tableta ili telefona da nešto uradi, on se okreće kernelu operativnog sistema da to uradi.

Kernel kontroliše apsolutno svu opremu: Wi-Fi, Bluetooth, GPS, memoriju i druge uređaje. “Srce” uređaja – njegov procesor – nije izuzetak. Jezgro može kontrolirati svoju frekvenciju i napajanje.
Jezgro Android operativnog sistema pozajmili su njegovi programeri, Google, od Linux operativnog sistema.

Budući da kernel kontroliše sav hardver, a hardver svih tableta i telefona je različit, osnovni Android kernel modificira proizvođač za svaki uređaj posebno.

Kao i firmver, kerneli mogu biti standardni (fabrički) i prilagođeni - alternativni, kreirani od strane nezavisnih programera.

Zašto su nam potrebni prilagođeni kerneli? Standardnu ​​jezgru proizvođač je maksimalno optimizirao za određeni uređaj, ali obično blokira tako važne funkcije jezgre kao što je, na primjer, kontrola frekvencije procesora. A ako trebate overklokovati procesor vašeg tableta, morat ćete promijeniti kernel u prilagođeni, u kojem je funkcija kontrole frekvencije procesora otključana.

Osim toga, prilagođeni kerneli su obično bazirani na novijim verzijama Linux kernela. Evo približne liste karakteristika koje nam daju prilagođeni kerneli:

  • Promijenite frekvenciju procesora u širokom rasponu;
  • Overclocking grafičkog podsistema (GPU);
  • Smanjenje frekvencije i napona procesora, što omogućava duži vijek trajanja baterije;
  • Noviji i kvalitetniji drajveri, na primjer, ubrzavanje GPS-a ili dodavanje novih funkcija;
  • Širok spektar opcija za prilagođavanje i konfigurisanje zvuka i boja ekrana;
  • Podrška za alternativne sisteme datoteka (XFS, ReiserFS i drugi).

Budući da alternativne kernele kreiraju nezavisni programeri, ne postoji garancija da će vaš tablet ili telefon raditi bez problema nakon instaliranja prilagođenog kernela. Stoga, prije flešovanja novog kernela, preporučljivo je napraviti potpunu sigurnosnu kopiju sistema.

U nedjelju navečer je zvanično objavljen novi Linux kernel 3.10. Prema Linusu Torvaldsu, kernel se pokazao najvećim u smislu inovacija u posljednjih nekoliko godina. Linus je u početku imao namjeru da objavi još jedno izdanje kandidata, ali je bio sklon izdavanju konačnog izdanja 3.10 - au svojoj poruci napominje da novi kernel, poput Linuxa 3.9, nije sklon problemima u performansama i spreman je za svakodnevnu upotrebu.

U najavi RC verzije, Torvalds je napisao da je obično uključivao spisak imena ljudi koji su poslali određene dijelove koda, ali ovaj put je lista bila toliko velika da se nije mogla u potpunosti navesti na jednoj mailing listi.

Djelomična lista promjena napravljenih na kernelu 3.10:

  • Možete spriječiti da se skripte izvršavaju kao programi - funkcionalnost pokretanja skripti koja sadrži putanju do interpretatora u zaglavlju "#!" sada se može kompajlirati kao modul kernela;
  • Bcache sistem koji je razvio i koristi Google je integrisan. Bcache vam omogućava da organizujete keširanje pristupa sporim čvrstim diskovima na brzim SSD diskovima; keširanje se vrši na nivou blok uređaja - i to vam omogućava da ubrzate pristup disku, bez obzira na sistem datoteka koji se koristi na uređaju;
  • Kernel se može kompajlirati pomoću Clang kompajlera zahvaljujući zakrpama koje je pripremio LLVMLinux projekat;
  • Pojavio se dinamički sistem za kontrolu generisanja tajmerskih prekida. Sada, ovisno o trenutnom stanju, možete promijeniti prekide u rasponu od hiljada tikova u sekundi do jednog prekida u sekundi - ovo vam omogućava da minimizirate opterećenje CPU-a prilikom obrade prekida kada je sistem neaktivan. Trenutno se ova funkcija koristi za sisteme u realnom vremenu i HPC (računanje visokih performansi), ali u narednim izdanjima kernela će se koristiti i za desktop sisteme;
  • Sada je moguće generirati događaj koji će obavijestiti aplikaciju da se približava iscrpljenju memorije dostupne procesu/sistemu (u cgroupovima);
  • Profiliranje pristupa memoriji je sada dostupno za perf komandu;
  • Postoji novi drajver "sync" (eksperimentalno). Razvijen je u okviru Android platforme i koristi se za sinhronizaciju između drugih drajvera;
  • Pojavio se drajver za Microsoft Hyper-V virtuelne video adaptere (postoje i poboljšanja u radu Hyper-V uopšte);
  • Nove funkcije upravljanja napajanjem koje su predstavljene u AMD-ovoj 16h (Jaguar) porodici procesora su sada podržane;
  • Podrška za ubrzanje video dekodiranja pomoću hardverskog UVD dekodera ugrađenog u moderne AMD GPU-ove dodata je Radeon DRM-u;
  • Dodata podrška za RDMA (iSER) protokol iSCSI podsistemu;
  • Izvršenje kriptografskih funkcija (sha256, sha512, blowfish, twofish, serpent i kamelija) optimizirano je korištenjem AVX/AVX2 i SSE instrukcija.;
  • QXL drajver virtuelne grafičke kartice je integrisan (koristi se u virtuelizacionim sistemima za ubrzani grafički izlaz pomoću SPICE protokola).

Korisnici mobilnih uređaja nisu uvijek zadovoljni radom i mogućnostima svojih gadžeta. Iz tog razloga, korisnici traže najbolji način za flešovanje kernela Android operativnog sistema. S jedne strane, ovu radnju možete lako izvesti pomoću tableta ili pametnog telefona. Hiljade korisnika je uspješno flešovalo kernel bez ikakvih poteškoća i problema. Ali, s druge strane, svaka greška tokom ovog procesa može dovesti do problema, uključujući kvar gadžeta i potrebu za skupim servisom. U različitim fazama postoji rizik od odabira pogrešne verzije firmvera kernela, koju su kreirali nekvalificirani programeri ili koja nije prikladna za vaš mobilni uređaj. Preporučujemo da budete izuzetno oprezni kada izvodite bilo kakve radnje koje unose promjene u softverski dio uređaja na niskom nivou. Nakon uspješnog flešovanja kernela, mnogi ljudi se osjećaju kao da u rukama drže potpuno novi uređaj. Napredni korisnici tako mogu prilagoditi gadget svojim potrebama i preferencijama, uz sticanje novih znanja i iskustava o modernim mobilnim tehnologijama.

Kernel operativnog sistema Android i njegov firmver

Šta je srž mobilnog uređaja?

Kernel operativnog sistema je osnova softvera koji kontroliše hardver uređaja. Osnovni parametri bilo kog gadžeta zavise od toga. Treba napomenuti da se sastoji od tri međusobno povezane komponente - Linux kernela, Dalvik vertikalne mašine i raznih usluga i biblioteka niskog nivoa. Ako govorimo o prilagođenom firmveru, tada su pogođene samo dvije komponente koje vam omogućavaju dodavanje novih sistemskih usluga, optimizaciju postojećih parametara i promjenu grafičke ljuske.

Oni koji žele da instaliraju kernel na Android treba da shvate da postoji razlika između koncepta prilagođenog kernela i prilagođenog firmvera. Potonji je nezvanična verzija softvera. Prilagođeni firmver je razvio tim stručnjaka za određene uređaje. Prilagođeno jezgro je bazirano na Linux kernelu, što predstavlja njegovu nezvaničnu verziju. Često prilagođeni kernel dolazi u paketu sa firmverom. Ali može se instalirati zasebno nakon promjene firmvera. U suštini, on ne zamjenjuje matičnu jezgru mobilnog uređaja, što je krajnji cilj takve operacije.

Firmver Android kernela se uglavnom radi kako bi se povećalo vrijeme rada uređaja za nekoliko sati podešavanjem parametara potrošnje energije. Možda je to glavni razlog zašto korisnici vrše složene konverzije softvera svojih gadžeta. Firmver će vam omogućiti da promijenite video čip bez posljedica za vaš pametni telefon ili tablet. Napredni korisnici prilagođavaju ekran na ovaj način, mijenjajući njegov prikaz boja i osjetljivost. Firmver kernela vam omogućava da poboljšate zvuk uređaja, ažurirate drajvere i uvedete podršku za nestandardne eksterne gadžete.

Prije flešovanja kernela, preporučujemo da provjerite jeste li odabrali dobru verziju koju su kreirali iskusni programeri. Osim toga, važno je osigurati da je prikladan za vašu verziju firmvera za Android. Preporučljivo je pročitati recenzije ljudi koji su uspjeli instalirati odgovarajuću verziju kernela na svoj mobilni telefon. Recenzije mogu sadržavati važne informacije o problemima koji se mogu pojaviti u fazi firmvera ili daljeg rada uređaja.

Flešovanje gadžeta putem Fastboot-a

Možete ponovo flešovati svoj Android uređaj koristeći Fastboot. Ali prvo morate instalirati uslužni program na svoj gadget. Postoje dvije verzije ovog programa. Prvi uključuje preuzimanje Fastboot-a u kombinaciji sa službenim Android SDK programom. Druga verzija uključuje zasebno preuzimanje uslužnog programa.

Preporučujemo da provjerite može li vaš mobilni uređaj vidjeti vaš laptop ili računar. Da biste to uradili morate da uradite. Nakon što preuzmete i instalirate Fastboot uslužni program na računar ili laptop sa operativnim sistemom Windows i povežete svoj pametni telefon, potrebno je da otvorite komandnu liniju. Da biste to učinili, otvorite Search. U operativnom sistemu Windows 8, da biste to uradili, samo pomerite kursor miša na desnu stranu ekrana i izaberite odgovarajući odeljak. U Search potrebno je da unesete “cmd”, nakon čega će se komandna linija pojaviti ispred vas. Uređaj treba prebaciti u način rada firmvera. Zatim treba da unesete naredbu koja će testirati interakciju između vašeg računara i mobilnog uređaja:

fastboot uređaja

Ako sve radi, morate preuzeti ispravnu verziju firmvera kernela boot.img. Ne preporučujemo flešovanje kernela originalnog firmvera, jer to može dovesti do problema u radu pametnog telefona. Datoteka bi trebala biti sačuvana na unaprijed kreiranoj particiji na disku C pod nazivom “Android”. Nakon toga, potrebno je da pokrenete mobilni uređaj u Fastboot i povežete ga sa računarom. Na ekranu će se pojaviti poruka “Fastboot USB”.

  • cd C:\Android.
  • fastboot flash boot boot.img.
  • fastboot brisanje keša.
  • fastboot ponovno pokretanje.

Vrlo je važno da sve riječi unesete ispravno, uzimajući u obzir velika i mala slova i razmake. Komanda cd otvara potrebnu fasciklu koja sadrži potrebne datoteke. Nakon toga dolazi do treptanja. Naredba brzog pokretanja brisanja keša briše particiju keša. Poslednja komanda - fastboot reboot ponovo pokreće uređaj iz režima firmvera u normalan. Ako ste ispravno izvršili sve gore navedene korake, proces će biti uspješan.

Firmver koji koristi ClockworkMod Recovery

ClockworkMod Recovery (ili skraćeno CWM) je sistem za oporavak koji se koristi umjesto originalnog fabričkog oporavka. CWM vam omogućava da instalirate novi firmver na mobilni uređaj, flešujete kernel, napravite rezervnu kopiju datoteka i vratite ljusku. Takav sistem može raditi sa datotekama ažuriranja firmvera u zip formatu. ClockworkMod je instaliran i zamjenjuje fabrički Recovery. Da biste pokrenuli CWM, morate znati kombinaciju tipki koja je prikladna za vaš gadget. U većini slučajeva, ovo je kombinacija tipki za smanjivanje jačine zvuka i tipke za napajanje koje treba pritisnuti dok se uređaj pokreće.

Za flešovanje firmvera kernela, preuzmite arhivu sa zip ekstenzijom. Mora sadržavati fasciklu META-INF. Zatim postoje dvije opcije. U prvom slučaju morate navesti datoteku firmvera. Druga opcija uključuje postavljanje datoteke firmvera u /sdcard folder. Nakon toga, trebali biste aktivirati ClockworkMod Recovery, tamo pronaći funkciju Primijeni ažuriranje sa sdcard i navesti potrebnu datoteku.

Treba napomenuti da je meni ClockworkMod Recovery zgodan i razumljiv većini korisnika. Pored ovog sistema za oporavak firmvera, možete koristiti TWRP Recovery. Ovaj alat je zgodan i popularan među Android korisnicima. Glavna stvar je odabrati ispravnu datoteku firmvera.

Flešovanje Android kernela je postupak kojem ne preporučujemo pribjegavanje ako ste u potpunosti zadovoljni radom gadgeta. Takve akcije su vođene željom da se poboljšaju performanse mobilnog telefona ili tableta. Napredni korisnici imaju mogućnost postavljanja parametara na niži nivo. Ali bez određenih znanja i objektivnih razloga, bolje je ne mijenjati softverski dio mobilnog uređaja, jer je to povezano s rizikom i kvarovima u njegovom radu.

U nedjelju uveče, Linus Torvalds, roditelj Linuxa i programer kernela operativnog sistema, najavio je izdavanje nove verzije Linux kernela 3.10 nakon dva mjeseca rada.

Prema samom programeru, ovo jezgro je najveće u smislu inovacija u posljednjih nekoliko godina.

Linus je priznao da je u početku namjeravao objaviti još jednog kandidata za izdanje, ali je nakon razmišljanja bio sklon da odmah objavi konačno izdanje pod brojem 3.10. Torvalds je takođe u svojoj poruci naveo da je novi kernel, kao i verzija 3.9, potpuno spreman za svakodnevnu upotrebu.

Osim toga, u najavi RC verzije kernela, Linus Torvalds je napisao da je ranije uvijek uključivao listu imena ljudi koji su slali određene dijelove koda, ali ovaj put bi ova lista bila toliko velika da ne bi mogla biti dato u potpunosti u jednom listu.

Lista glavnih promjena napravljenih na kernelu 3.10:

  • Sada možete spriječiti da se skripte izvršavaju kao programi - funkcionalnost za pokretanje skripti koja sadrži putanju do interpretatora u zaglavlju “#!” sada se može kompajlirati kao modul kernela;
  • Bcache sistem koji je razvio i koristi Google je integrisan. Bcache vam omogućava da organizujete keširanje pristupa sporim čvrstim diskovima na brzim SSD diskovima; keširanje se vrši na nivou blok uređaja - i to vam omogućava da ubrzate pristup disku, bez obzira na sistem datoteka koji se koristi na uređaju;
  • Kernel se može kompajlirati pomoću Clang kompajlera zahvaljujući zakrpama koje je pripremio LLVMLinux projekat;
  • Pojavio se dinamički sistem za kontrolu generisanja tajmerskih prekida. Sada, ovisno o trenutnom stanju, možete promijeniti prekide u rasponu od hiljada tikova u sekundi do jednog prekida u sekundi - ovo vam omogućava da minimizirate opterećenje CPU-a prilikom obrade prekida kada je sistem neaktivan. Trenutno se ova funkcija koristi za sisteme u realnom vremenu i HPC (računanje visokih performansi), ali u narednim izdanjima kernela će se koristiti i za desktop sisteme;
  • Sada je moguće generirati događaj koji će obavijestiti aplikaciju da se približava iscrpljenju memorije dostupne procesu/sistemu (u cgroupovima);
  • Profiliranje pristupa memoriji je sada dostupno za perf komandu;
  • Dodata podrška za RDMA (iSER) protokol iSCSI podsistemu;
  • Postoji novi drajver "sync" (eksperimentalno). Razvijen je u okviru Android platforme i koristi se za sinhronizaciju između drugih drajvera;
  • Integrisan je drajver za virtuelnu grafičku karticu QXL (koristi se u virtuelizacionim sistemima za ubrzani izlaz grafike pomoću SPICE protokola);
  • Nove funkcije upravljanja napajanjem koje su predstavljene u AMD-ovoj 16h (Jaguar) porodici procesora su sada podržane;
  • Podrška za ubrzanje video dekodiranja pomoću hardverskog UVD dekodera ugrađenog u moderne AMD GPU-ove dodata je Radeon DRM-u;
  • Pojavio se drajver za Microsoft Hyper-V virtuelne video adaptere (postoje i poboljšanja u radu Hyper-V uopšte);
  • Izvršenje kriptografskih funkcija (sha256, sha512, blowfish, twofish, serpent i Camellia) optimizirano je korištenjem AVX/AVX2 i SSE instrukcija.