
Autorità Mishaal Rahman / Android
Tl; dr
- Android 16 aggiunge supporto per l’esecuzione di codec multimediali al di fuori del loro solito processo sandbox e all’interno del processo dell’app.
- Fare questo riduce la quantità di comunicazione tra course of che deve in genere accadere tra l’app e il processo di codec, riducendo così l’utilizzo della CPU e quindi il consumo di energia.
- Tuttavia, questo apre le porte agli exploit di sicurezza, motivo per cui i codec devono essere scritti in un linguaggio sicuro per la memoria come la ruggine per questo per essere consentito.
Ogni volta che il tuo dispositivo Android riproduce qualsiasi tipo di media, come brani o video di YouTube, il sistema operativo genera una serie di processi complessi e indipendenti per garantire che i media vengano riprodotti in modo sicuro. Questo viene fatto per mitigare le vulnerabilità che sfruttano file multimediali malformati o codec multimediali insicuri, come il famigerato Stagefright Vulnerabilità di diversi anni fa. Mentre la gestione dei file multimediali di Android è ora molto più sicura, è anche inefficiente, il che è un problema in cui una nuova funzionalità in Android 16 mira a risolvere.
Stai leggendo un Approfondimenti di autorità storia. Scoprire Approfondimenti di autorità Per report più esclusivi, smontaggi, perdite e copertura tecnologica approfondita non troverai da nessun’altra parte.
UN Codec è un algoritmo software program che definisce come i dati audio o video digitali vengono compressi o decompressi. Precedente a Android 7.0l’intero framework dei media è stato incapsulato in un singolo processo monolitico che conteneva molte autorizzazioni sensibili. Poiché i codec sono stati inclusi, una vulnerabilità nell’elaborazione dei file multimediali potrebbe consentire a un utente malintenzionato di intensificare i privilegi.
Con Android 7.0, Google ha rafforzato il framework multimediale dividendolo in diversi processi, ciascuno che richiede un insieme molto più piccolo di autorizzazioni. I codec sono ora eseguiti nel processo codec Sandboxed che comunicano con altri processi multimediali e app utilizzando Binder, API di comunicazione Inter-Course of di Android (IPC). Poiché il processo del codec è sandbox, l’impatto delle vulnerabilità è limitato a quel processo di sandbox. Questo design architettonico riduce la probabilità di un altro insetto simile a uno stadio.

Architettura di MediaServer di Android.
Sebbene più sicuro, questa architettura si traduce in prestazioni più basse a causa dell’uso ripetuto delle chiamate IPC. UN App di streaming musicaleadvert esempio, deve effettuare chiamate IPC al processo codec per passare i dati codificati e recuperare i dati decodificati. Più chiamate IPC devono essere effettuate, maggiore è l’utilizzo della CPU. Sebbene questo abbia solo un piccolo impatto sul migliori telefoni AndroidVale comunque la pena migliorare l’efficienza della riproduzione dei media, soprattutto perché è un’attività utente così comune.
Ecco perché Android 16 aggiunge supporto per Codec audio software program in-processuna funzionalità che consente ai codec multimediali di eseguire all’interno del processo di un’app anziché all’interno del solito processo di codec multimediale Sandboxed. Android 16’s MediaCodecInfo
La classe ora embody un file getSecurityModel()
Metodo, tornando SECURITY_MODEL_SANDBOXED
(processo customary di sandbox) o SECURITY_MODEL_MEMORY_SAFE
(operazione in-process). L’operazione in corso, sebbene potenzialmente rischiosa, è considerata sicura perché l’implementazione del software program del codec è scritta in un linguaggio sicuro di memoria come la ruggine.

Autorità Mishaal Rahman / Android
Mentre la documentazione di Android 16 su questa nuova funzionalità è breve, Google la sviluppa da diversi anni. Una fonte mi cube che Google ha presentato questa funzione al Summit Mainline del 2023, un evento privato in cui condivide le modifiche a Progetto principale moduli.
La motivazione principale di Google per questa funzione, come rivelato nella presentazione, è migliorare le prestazioni del codec AAC e ridurre il consumo di energia. La società ha stimato che fino al 50% dei cicli della CPU spesi per la decodifica e la codifica in AAC fosse dovuto alla comunicazione tra course of. Pertanto, il passaggio a codec in-process migliorerà l’efficienza di decodifica e codifica AAC. Per affrontare i problemi di sicurezza, Google vuole che questi codec in-process siano scritti in un linguaggio sicuro di memoria come Rust e non C ++.
La mia fonte mi cube che Google ha originariamente pianificato questa funzione per Android 15ma la società lo ha ritardato advert Android 16. Mentre Android 16 supporta la funzione, in realtà non è ancora in uso. Ciò è dovuto alla necessità che i codec vengano riscritti in ruggine dai venditori. Testando le nuove API Android 16 sul mio Pixel 9 Professional, ho scoperto che tutti i codec multimediali utilizzano ancora l’approccio Sandboxed.

Autorità Mishaal Rahman / Android
Pertanto, mentre la nuova funzionalità di codec audio del software program in-process di Android 16 dovrebbe teoricamente portare prestazioni e una durata della batteria migliori durante la riproduzione di supporti, è probabile che non vediamo questi vantaggi per un bel po ‘di tempo. Speriamo che i fornitori di codec e codec possano collaborare per riscrivere molti codec popolari in ruggine in modo da poter vedere i vantaggi di questa nuova funzionalità in futuro.