Nuovo aggiornamento di Atmosphère rilasciato dallo sviluppatore SciresM con la nuova versione 0.13.0, con supporto al firmware 10.0.4.Per aggiornare o installare questa nuova versione consiglio di cancellare le cartelle /atmosphere /bootloader /sept e inserire i file della nuova versione.

Componenti

Atmosphère è costituito da più componenti, ciascuno dei quali sostituisce / modifica un diverso componente del sistema:

  • Fusée: Loader della prima fase, responsabile del caricamento e della validazione della fase 2 (TrustZone personalizzata) più il pacchetto 2 (i sysmodules Kernel / FIRM) e la loro applicazione in base alle necessità. Questo sostituisce tutte le funzionalità normalmente in Package1loader / NX Bootloader.
    • Sept: payload utilizzato per abilitare il supporto per la derivazione della chiave di runtime su 7.0.0.
  • Exosphère: TrustZone personalizzato, per eseguire un monitor sicuro personalizzato
  • Thermosphère: supporto ELu EmuNAND, ovvero backup e utilizzo di immagini NAND virtualizzate / reindirizzate
  • Stratosphère: Custom Sysmodule (s), entrambi in stile Rosalina per estendere il kernel / fornire nuove funzionalità e lo stile di reimplementazione del caricatore per agganciare azioni importanti del sistema
  • Troposphère: patch del sistema operativo Horizon a livello di applicazione, utilizzati per implementare le funzionalità CFW desiderabili

Changelog

  • exosphère, la reimplementazione del monitor sicuro di atmosphère, è stata completamente riscritta.
    • exosphère è stato il primo componente creato per il progetto all’inizio del 2018. È scritto in C e in uno stile molto diverso dal resto del codice di atmosphère.
      • Ciò ha reso difficile mantenere la base di codice con il passare del tempo.
    • exosphère è stato anche scritto per conformarsi ai vincoli e alle ipotesi che semplicemente non si applicano più quando cfw non viene avviato dal browser Web e quando warmboothax è possibile.
    • Anche al di là di questi problemi, ha exosphèreutilizzato tutti tranne 1 KB dei 64 KB di spazio disponibile. Questo è stato un problema per alcuni motivi:
      • Ogni nuovo aggiornamento di sistema aggiunto richiede spazio aggiuntivo per il supporto (per aggiungere nuove chiavi e riflettere varie modifiche); Il supporto 10.0.0 ha esaurito 3 dei 4KB rimasti.
      • atmosphère vorrà avere il supporto software per l’hardware mariko e questo non è possibile per 1 KB.
    • La exosphèreriscrittura (nome exosphère2in codice durante lo sviluppo) risolve questi problemi.
    • La nuova base di codice è C ++ 20 scritta nello stile di atmosphère.
      • Questo risolve il problema manutenibilità, e dovrebbe rendere la comprensione di come il monitor sicuro funziona molto più facile per chi è interessato a utilizzare il codice come un’implementazione di riferimento.
    • Inoltre, la nuova implementazione utilizza attualmente ~ 59,5 dei 64 KB disponibili.
      • Sono previste diverse modifiche al codice che possono salvare / concedere l’accesso a ulteriori ~ 2-3 KB se necessario.
        • A differenza della prima base di codice, la nuova exosphèreha già spazio assegnato per chiavi future / ecc. Attualmente è previsto che lo spazio riservato non sarà mai richiesto.
      • L’implementazione precedente ha scelto di non implementare una serie di funzioni di monitoraggio sicuro “non importanti” a causa di problemi di spazio. Il nuovo codice ha abbastanza spazio per poterli implementare senza preoccupazioni. 🙂
    • Infine, sono state gettate le basi per il supporto di mariko – ci sono solo alcune piccole modifiche necessarie affinché la nuova implementazione del monitor sicuro funzioni su hardware sia erista che mariko.
      • Nota : exosphèreè solo uno dei tanti componenti e molti altri necessitano di modifiche per supportare l’esecuzione su hardware mariko.
        • Il supporto lato software per l’esecuzione sull’hardware mariko è previsto da qualche parte durante l’estate 2020, anche se va notato che questa non è una scadenza difficile.
    • Nota : il nuovo exosphèrebinario non è compatibile con quello precedente. Gli utenti che eseguono l’avvio tramite hekate devono eseguire l’upgrade a hekate v5.3.0 prima di eseguire 0.13.0 (o avviare fusee-primary tramite hekate).
  • L’API di atmosphère per il firmware di destinazione è stato modificato. Ora vengono riconosciute tutte le versioni di sistemi minori / micro, anziché solo le versioni principali.
    • Ciò era necessario per supportare la versione firmware 5.1.0, che ha apportato modifiche sostanziali ad alcune API IPC che hanno causato l’interruzione di atmosphère 0.12.0.
    • Nota : questo è (inevitabilmente) un cambiamento decisivo. I moduli di sistema che utilizzano le librerie atmosfera dovranno aggiornarsi per capire quale versione del firmware sono in esecuzione.
  • emummc è stato aggiornato per includere le nuove modifiche.
    • emummc ora utilizza un driver SDMMC aggiornato / migliorato / più veloce.
    • Emummc basato su file ora è quasi veloce quanto emummc basato su partizioni non elaborate.
  • Per coloro che sono interessati ai futuri piani di sviluppo di atmosphère, la roadmap del progetto è stata aggiornata.
  • Miglioramenti generali della stabilità del sistema per migliorare l’esperienza dell’utente.

Per informazioni sul set di funzionalità supportato da 0.13, consultare le note di rilascio ufficiali .

Download

Fonte
Github
Ti è piaciuta la notizia? Supporta Francesco su Patreon!

Rispondi

Attenzione:la copia dell'articolo è disattivata.Per maggiori informazioni e supporto visita il nostro canale telegram qui