Attualmente sto lavorando su un progetto bare metal con un processore di braccio usando il compilatore di bracci GCC. Se chiamo malloc, la memoria allocata è tracciata nella MMU? Per qualche ragione avevo immaginato che un sistema operativo in genere gestisse questo, ma dal momento che la chiamata a compila malloc e vedo che è definita in libc / usr / include ora sto pensando che l'OS implementa un altro livello di gestione della memoria in cima alla gestione dell'hardware .
Credo di avere due domande:
Con il pieno os (posix o windows) c'è l'hardware che tiene traccia della memoria allocata o è l'os?
Con il compilatore di arm è l'hardware che tiene traccia della memoria allocata o è l'os?