Susisiekėme su SultanXDA, norėdami pasiteirauti, kaip jo suvienodintas ROM ir branduolys veikia „OnePlus 3/3T“. Skaitykite toliau, kai sužinosime!
Dar tada, kai aptarėme tą XDA pripažintą kūrėją Sultanxda paleido savo pritaikytas CyanogenMod 13 ROM ir branduolys, skirtas OnePlus 3T, daugelis žmonių nustebo pamatę, kad „OnePlus 3T“ išleista „ta pati“ ROM versija patenka į „OnePlus 3“ (arba atvirkščiai!).
Sultanxda laikėsi vieningo požiūrio į ROM platinimą OnePlus 3 ir „OnePlus 3T“. dėl iš esmės panašios aparatinės įrangos ir žemo lygio programinės įrangos. Tai reiškė, kad ROM siūlo kryžminį abiejų įrenginių suderinamumą, kur tas pats ROM ZIP kodas gali būti paskirstytas duetui. Suderinami užtrauktukai leido naudotojams (ir kūrėjui) nesijaudinti, kad netyčia užsifiksuos netinkamas užtrauktukas ir įrenginys bus sugadintas. Tai nereiškia, kad „OnePlus 3/3T“ yra lengva sukonstruoti – tai tiesiog sukelia mažesnį galvos skausmą visoms susijusioms šalims.
Susisiekėme su XDA pripažintu kūrėju Sultanxda
Kuo skiriasi „OnePlus 3/3T“, leidžiantis suvienodinti ROM?
Priežastis, kodėl įmanoma suvienodinti ROM, yra ta, kad „OnePlus“ suvienijo BSP (patentuotas bibliotekas) [Board Support Package]. Nors suvienyti branduolį yra lengva, [ROM] kūrėjams ROM suvienodinimas paprastai neįmanomas dėl BSP neatitikimų, kuriuos gali pašalinti tik OĮG. Man belieka suvienodinti branduolį ir atskirti kai kuriuos GPU programinės įrangos vaizdus. Snapdragon 820 ir 821 GPU programinės aparatinės įrangos vaizdai skiriasi, todėl jie nėra suderinami. Pakeičiau branduolį, kad jis būtų įkelkite tinkamą GPU programinę-aparatinę įrangą kiekvienam įrenginiui tai išspręsti. aš tada pridėjo atitinkamus programinės įrangos vaizdus į ROM šiame įsipareigojime. Kiti konkrečiam įrenginiui būdingi programinės aparatinės įrangos vaizdai (pvz., modemo vaizdai) yra kiekvieno įrenginio programinės įrangos skaidinyje, todėl GPU problema buvo vienintelė su programine įranga susijusi problema, su kuria susidūriau.
Kaip ROM ir branduolys nustato, kuris įrenginys tai yra?
Branduolys žino, kuriame įrenginyje jis veikia, dėka įkrovos įkėlimo. Įkrovos įkroviklis pasirenka įrenginių medžio konfigūraciją (supakuotą branduolio paveikslėlyje), kuri atitinka jos plokštės ID ir perduoda tai konfigūracija branduolyje Tai suteikia branduoliui lankstumo įkelti tinkamas konfigūracijas tiek OnePlus 3, tiek „OnePlus 3T“. Galite rasti lentos ID OnePlus 3 ir „OnePlus 3T“. sekdami hipersaitus.
Ar jums reikia tik modifikuoto branduolio, kad būtų palaikomos vieningos versijos?
Ne, ROM taip pat turi būti suvienodinta. „OnePlus“ suvienijo BSP, pradedant nuo „Open Beta“, skirto OP3, ir išlaikė jį suvienodintą oficialiame „OP3T OxygenOS“ leidime. Tai reiškia, kad ROM turi naudoti patentuotas bibliotekas iš OP3 atvirosios beta versijos arba oficialaus OP3T OxygenOS leidimo, kad būtų suvienodintas. Taip pat yra GPU programinės įrangos vaizdo reikalavimas, kurį aprašiau aukščiau, ir OP3T jutiklinis ekranas programinė įranga taip pat turi būti įtraukta į ROM (tai buvo įtraukta į GPU programinės įrangos įsipareigojimą, kurį susiejau aukščiau).
Taip pat yra įspėjimas dėl suvienodinto branduolio: kūrėjai turi naudoti mano branduolį (kuris jau yra suvienodintas), arba jie turi pridėti OP3 palaikymą prie OP3T OxygenOS branduolio. OP3T palaikymo negalima tiesiog pridėti prie OP3 branduolio dėl nepilno Snapdragon 821 palaikymo, todėl norint suvienodinti norintiems OP3 kūrėjams gali prireikti daug darbo. Mano branduolys jau turėjo pilną Snapdragon 821 palaikymą, kai gavau OP3T (kadangi mano branduolys yra pagrįstas Snapdragon 821 atšaka iš CAF), todėl sujungimo procesas man buvo gana neskausmingas.
Esu tikras, kad daugelis kūrėjų mieliau naudotų OP3T „OxygenOS“ branduolį, o ne mano branduolį, todėl reikėtų pridėti OP3 palaikymą. Nenorėjau sukurti vieningo branduolio OxygenOS ROM, todėl gali prireikti papildomo darbo, kad tai įvyktų.
Ar kiti kūrėjai gali pažvelgti į kodą ir pamatyti, kaip tai daroma?
Taip. Sultanxda mini, kad visi jo darbai yra viešai prieinami jo svetainėje GitHub paskyra, todėl kiekvienas, turintis reikiamų žinių, gali pamatyti, kaip buvo sujungtas ROM. Tiesa, procedūra yra šiek tiek sudėtinga ir reikalauja tam tikros patirties, tačiau tai labai daug nustatymo ir pamiršimo procesas su pranašumais, atsirandančiais dėl mažesnės priežiūros, mažesnio darbo dubliavimo ir patobulinimo užtikrinimo jausmas, kad žmonės nesupainios dviejų įrenginių failų, nes abiem veikia tik vienas ZIP failas. Suvienodinus ROM arba branduolį ir patvirtinus, kad jie visiškai veikia tiek „OnePlus 3“, tiek „OnePlus 3T“, reikės atlikti labai mažai papildomo darbo.
Tikimės, kad paviešinome naujos informacijos, kuri turėtų padėti daugiau kūrėjų pasirinkti suvienodintas įrenginių versijas. „OnePlus 3T“ plėtra auga, o vieningos versijos yra abiejų įrenginių ateitis.