Magisk migra il codice su C++ e si aggiorna alla versione 18.0

08 Dicembre 2018 161

Devono essere stati giorni di lavoro intenso quelli passati ultimamente dal team di sviluppo di Magisk. Il famoso tool OpenSource per ottenere i permessi di root su Android anche nell'ultima release 9.0, aggirando la protezione SafetyNet di Google, si è infatti aggiornato alla versione 18.0 inglobando un changelog abbastanza corposo e nel quale spicca la completa migrazione del codice base su C++.

Insieme a Magisk, inoltre, è stato rilasciato anche un aggiornamento di Magisk Manager, che passa così alla versione 6.1.0. Changelog a seguire.

  • Codice base migrato su C++
  • Modifica del database maniera nativa invece di passare attraverso Magisk Manager
  • Nuovo percorso di utilizzo "/sbin/.magisk"
  • Script di avvio spostati su /data/adb/.d
  • Rimossi gli host systemless nativi
  • Gli script del modulo post-fs-data.sh possono ora disabilitare o rimuovere moduli
  • MagiskHide come target utilizza ora i nomi dei componenti anziché i nomi dei processi
  • MagiskHide aggiunge la protezione procfs su SDK 24+ (Nougat)
  • MagiskHide rimuove la cartella /.backup per impedirne il rilevamento
  • Aggiunta su MagiskHide l'opzione "--status" su CLI
  • Bloccata la possibilità di unmounting dei punti di mount non-custom
  • Risolto un bug su MagiskSU che causava il rilevamento non corretto di SIGWINCH
  • MagiskBoot supporta extra_cmdline negli headers di boot
  • MagiskBoot può provare a riparare i boot image headers danneggiati
  • Aggiunto su MagiskBoot il nuovo comando CPIO "exists"

Per maggiori informazioni e download vi rimandiamo al post dedicato di XDA.

La riconferma di un'azienda che cerca l'equilibrio tra prestazioni al top e prezzo competitivo? OnePlus 6T, in offerta oggi da Clicksmart a 469 euro oppure da Amazon a 578 euro.

161

Commenti

Regolamento Commentando dichiaro di aver letto il regolamento e di essere a conoscenza delle informazioni e norme che regolano le discussioni sul sito. Clicca per info.
Caricamento in corso. Per commentare attendere...
ddoramas

PeperonataAssassina ):

undertherain

Secondo me, da quanto conosco il mondo bancario, sono fatti in Java ma del '32, o forse anche peggio...

Si, sono stato "dentro" al circuito di interscambio interbancario ma mi chiedevo, visto che i bancomat hanno, molti, ancora Windows XP, in che linguaggio o su che piattaforma sono fatti i software di prelievo e simili. Alcuni ho visto che erano già in elecrton + angular già tre anni fa, ma erano software informativi, non operativi. Così .. curiosità professionale

Ottieni Outlook per Android

undertherain

App del bancomat?
Intendi il software del bancomat?

Noir

li provo!grazie

undertherain

Ah! Ah!, spero che i C++ developer non siano tutti così sicuri di se stessi... ;)

Belpaese ma non ci vivrei

Saluti da uno vero.

undertherain

Saluti da un developer falso.

ale

Ma fammi il favore, C++ è un linguaggio per chi ha voglia di perdere tempo e basta, non ha alcun vantaggio, soprattutto al giorno d'oggi dove sono nati linguaggi migliori con le stesse performance del C++, per esempio rust, ma che non ti permettono di spararti nei piedi come il C++, e non hanno tutte le assurdità del C++.

Che poi da quando essere un bravo programmatore coincide con l'essersi imparati a memoria tutte le assurdità e cose senza senso di un linguaggio, per me un bravo programmatore è chi sa scrivere buoni algoritmi efficienti, un bravo programmatore potrebbe programmare anche in PHP per quel che mi riguarda non è il linguaggio a farne uno capace.

Che poi vedo tanti programmatori in C++ che quando li vedi fare codice usano python, e allora gli chiedo ma se C++ è così fantastico perché stai usando python, e li vedi tirare fuori scuse eh si ma sai perché per questa cosa, bah, il fatto è che per il 90% buono del lavoro lo fai in python e non ti fa alcuna differenza in fin dei conti, io oramai quasi tutto il mio software lo scrivo con quello, sarà più lento, va valutato se il tuo programma è un collo di bottiglia, e il quanto tempo ci metti in più a scrivere il codice vs quanto tempo ci metti in più ad eseguire (esempio, devo scrivere un programma per fare un operazione che magari mi serve fare una volta all'anno, anche se ci mette 1 ora in più per assurdo ad eseguire rispetto al C++ mi va bene lo stesso perché ho risparmiato più di un ora nello scriverlo in python)

undertherain

Ma figurati, mica mi sono offeso, vai sereno... ;)
E' la solita opinione sui linguaggi, ma se hai a che fare con i vari prodotti di mamma IBM, prima o poi inizi a farti l'idea che, linguaggio o no a parte, i loro prodotti non sono per nulla "fatti bene", e tendono a tenersi le informazioni per loro, fornendoti supporto solo a pagamento.
Detto questo... nessuna offesa, davvero... ;)

wizART

Credo sia stato il mio primo compilatore :)

per curiosità, le 'app' dei bancomat come sono programmate?

Chiedo scusa, non era un offesa. Penso solo che criticare l'uso di Cobol in ambito bancario rivela che non conosci le motivazioni dietro all'uso attuale, né il fatto che anche Cobol ha fatto 'progressi' come linguaggio. Ripeto, chiedo scusa.Il punto non è che non si butta codice vecchio se è enorme e delicato, ma che spesso è volutamente fatto con cobol per l'incredibile affidabilità dimostrata in decenni.

Sorry.

undertherain

Chiedo scusa, l'ultima volta che ho compilato qualcosa con C++ c'era ancora il compilatore Borland... ;)

Belpaese ma non ci vivrei

C++ è il linguaggio dei programmatori veri, di chi sa cosa sta facendo e che risultato vuole ottenere. Chi si lamenta che è troppo complicato o chi non lo sa usare e finisce per usarlo male dovrebbe fare un altro lavoro.

qandrav

ma quale team??? è solo topjohnwu

Boronius

Infatti, il C++ a volte compila bene, altre volte fa dei giri strani

Boronius

Prima in cosa era scritto? In COBOL? In Forth 83?

wizART

Che e'.... custom!

wizART

Veramente il C e' mediamente piu' veloce del C++ per ovvi motivi.

wizART

Basic credo...

Riccardo sacchetti

Mhh, io non note nessun problema. Ho aggiornato da poco..

Sardus87

Giusto.. sarebbe stato più opportuno scrivere i sorgenti etc etc

sickOfTech

Il discorso è che le parti in cobol sono molto sensibili. Ad es cambiare il motore delle transazioni gli costerebbe tanto, ma soprattutto si esporrebbero a possibili bug.
Finché funzionerà, non lo cambieranno mai...

sickOfTech

Il front end con java? Si vabbe

Biroger

Stando alle note di rilascio l'ha fatto per mantenibilità del codice e funzionalità del linguaggio

ale

Fino che il compilatore non ti butta fuori 1000 linee di errore perché hai fatto qualcosa di strano con i template.

No, seriamente C++ è un linguaggio che non dovrebbe esistere, vuoi fare cose di basso livello, usi il C, vuoi un linguaggio più di alto livello del C mantenendo le performance, hai Rust, vuoi qualcosina ancora più di alto livello ma sempre prestante, D, Swift, Go, e chi più ne ha più ne metta.

Fra l'altro C++ ha buone prestazioni ma se fai cose strane riesci ad ottenere prestazioni pessime, ha astrazioni a zero costo tranne che in particolari condizioni dove costano un casino ma nessuno lo sa, ha robe talmente assurde che nessuna persona sana inventerebbe, come funzionano gli iteratori per esempio (begin/end? E poi rbegin/rend?), i template, i template ricorsivi, usare C++ per fare metaprogrammazione è da spararsi.

Certo, se mi dici uso un subset del C++ e va bene, chiaro ma a sto punto se devo usare un subset di un linguaggio complicato, uso il C.

Alessio Ferri

No, quel commento del "this" è riferito a js, non a c++

Riccardo

Che vantaggi offre un custom kernel?

undertherain

A parte che io non ho offeso e vedi quindi di non offendere tu, lavoro in ambito bancario da 15 anni, per cui non parlo a caso.
Molti applicativi vengono "svecchiati" solo nella parte di frontend con Angular od altro, ma il backend sono servizi Cobol, mica puoi buttare procedure che hanno millenni che vanno bene, questo dicevo.
Riguardo il discorso DB2... purtroppo banca=IBM ancora per molto in Italia, ma gli applicativi nuovi ormai si fanno tutti sotto SQLServer (ormai non è più il DB triste d'un tempo), od Oracle.
Detto questo basta O.T..
Buona domenica.

undertherain

Sì, ormai il frontend è sempre Angular, TypeScript, non è Java diciamo.

Tu non sai di cosa parli. Quanti CVS relativi a COBOL hai visto di recente?

Confermo

manu1234

Alla fine il modo migliore per studiare le cose giuste e' fare pratica. Se provi a fare qualcosa che non ci riesci troverai la cosa giusta da studiare per riuscirci. Io sono finito nell'HPC perche' sono partito dall'AI, che dal punto di vista teorico non hanno niente a che fare l'uno con l'altro, ma alla fine nel mondo reale sono qui che uso cuda, openCL, Hip (in futuro), webgl, webasm, openMP, MPI etc etc

Fabios112

Si in generale quello che mi interesserebbe e su cui vorrei fare la tesi è complessità e analisi di algoritmi, teoria della classi computazionali P,NP etc e strutture dati. Difatti per ora wuando ho tempo tra un'esame e l'altro studio su: "Analysis of algorithms-Sedgewick" ho fatto solo un esame su questi concetti e purtroppo nell'università dove studio non c'è nulla di questa roba a livello "avanzato".

undertherain

Beh a livello velocità non credo che cambi molto allora.

FerraristaXXL

frontend Java o altro simile... non sono esperto di queste tecnologie... purtroppo non siamo noi tecnici che facciamo le scelte... un saluto

Belpaese ma non ci vivrei

Piace a chiunque sappia come funziona un microprocessore e non vuole astrazioni inutili. E se deve portarsi dietro this o altro usa std::bind

Belpaese ma non ci vivrei

A livello di performance C puro e C++ sono equivalenti.

Achille

Non centra nulla ciò. C++ è più complesso, è composto di programmazione strutturale, orientata agli oggetti e con C++14 funzionale.
Ha ancora le macro ma ha constexpr, oltre ai template ad esempio

Belpaese ma non ci vivrei

Questi sono luoghi comuni. Certe cose che in C++ sono semplicissime in C diventano inutilmente complesse e confuse. Tutto sta a scegliere il linguaggio appropriato allo scopo.

Belpaese ma non ci vivrei

Linux è programmato quasi esclusivamente in C

Belpaese ma non ci vivrei

Tutte le banche di tutto il mondo usano COBOL. Giusto qualche frontend è fatto in Java.

Belpaese ma non ci vivrei

"Codice base" non vuol dire niente, è solo la pessima traduzione dell'inglese "codebase".

manu1234

Intendi complessità computazionale? Beh ci sta anche se ti consiglierei in generale di alzare l'asticella ad un più generico "HPC", c'è poi roba varia da dire e test più interessanti da fare

Biroger

Prima era scritto in C

undertherain

In ambito bancario gli elefanti non cambiano mai.
Se fosse backend Cobol e frontend Angular potrei capire, ma ancora vedo un sacco di ignoranza data da troppi over.
E lo sono pure io, ma aggiornatevi alla decenza almeno.

ErCipolla

Non vorrei sbagliarmi, ma penso che molte parti del kernel Linux siano ancora in c

Fabios112

Il tuo campo di ricerca mi interessa parecchio. Pensavo di fare la tesi su complessità.

Francesco X

È un custom kernel

Recensione Samsung Galaxy S10e: ecco perchè lo preferisco ad altri

Android Q: tutte le novità in costante aggiornamento | VIDEO

24 ore con Samsung Galaxy S10e: difficile tornare indietro...

Recensione Amazfit Verge, smartwatch completo e adatto a tutti