#Layout custom pour la ram
1 messages · Page 1 of 1 (latest)
Toute la mémoire est allouée statiquement, donc la mémoire système ne peut pas être modifiée (elle est au strict minimum).
Pour ce qui est modifiable facilement :
- La stack peut être modifiée probablement dans
ion/src/device/bootloader/bootloader.A.ldligne 23 (il y a le même fichier en.B.ldpour le slot B), mais ce n'est pas testé sur des tailles réduites, donc je recommande pas trop (si tu le change, teste notamment de brancher la calculatrice en USB, et de faire des calculs compliqués, ça devrait utiliser une bonne partie de la stack) - Le stockage des fichiers en RAM (notamment Python) est configuré dans
ion/include/ion/internal_storage.hligne 28 - Le heap Python et des applications externes sont au même endroit, et sont définis par la mémoire utilisée par l'application en utilisant le plus (sachant qu'une seule application peut utiliser la mémoire à la fois). C'est Python qui utilise le plus actuellement, donc ça s'ajuste
apps/code/app.hligne 78 (mettre des valeurs trop petites n'a pas d'intérêt, vu que les autres applications vont finir par prendre plus de mémoire) - La mémoire du moteur de calcul (Poincaré) se définie dans
poincare/include/poincare/tree_pool.hligne 54
mon but c'est de tout reduire au minimum pour laisser de la stack et surtout une tres grosse heap pour les apps externes (meme si le stockage de fichier et python ne fonctionne plus du tout)
le systeme utilise combien au max a peu pres ?
Si tu veux un gros heap pour les applications externes, pourquoi ne pas utiliser Khi18/le slot Khi (bouton 2 du bootloader) ?
C'est conçu spécialement pour ça
ah le heap est deja enorme ?
ca parait logique
mais dcp l'os prend combien au max ?
Il suffit d'aller sur ce site, de détecter la calculatrice avec le bouton puis de cliquer sur Mise à jour : Khi slot 2 https://xcas.univ-grenoble-alpes.fr/nw/nws.html
Ça dépend des applications présentes, j'ai pas vraiment testé
C'est possible que pour supprimer les paramètres ou l'appli calculs, il faille faire une légère modif du code pour que ça compile quand-même
j'ai deja le slot Khi, je l'ai mis y a fort longtemps
tu penses 153600 o (tout l'ecran) ca passe en slot Khi ?
en heap dcp
Possible, mais c'est probablement à la limite. J'ai pas testé donc je ne saurais pas dire
je testerai sinon je vais serrer sur le layout
Sinon tu as aussi 16 Kio de RAM à partir de 0x0 utilisable dans les applications externes (tout ce qui est déclaré static est alloué dedans)
car c'est bien marquer que la ram total sur les specs elle est de 256 ko
Oui, mais il y a des buffers qui restent. Je ne sais pas si Khi est réellement au minimum ou s'il n'y a que les applications internes de supprimées
apres qund y a deja plein de choses qui consomme tout
Essaye au pire de supprimer presque toutes les applications et de baisser toutes les valeurs modifiables (sauf la stack si tu veux éviter de crash de manière random) pour voir, au pire
Notamment, je suis pas sûr que la mémoire de Poincaré ait été réduite, et quasiment sûr que le stockage RAM reste relativement grand
att comment on supprime des app interne qui existe au moment de compiler ou de flash ?
Dans build/config.mak, tu peux choisir quelles applications compiler (et leur ordre, même s'il y a aussi un CSV dans apps/home à ajuster dans ce cas)
Si tu modifies, puis un make cleanall, puis recompile, ça devrait les supprimer
donc je peux garder les apps externes et settings et c'est tout ?
Oui, les applications externes sont gérées par l'application external (qui ne devrait plus exister depuis longtemps, ça devrait être plutôt dans Ion vu qu'il n'y a que du backend, plus de frontend dedans) et le flag HOME_DISPLAY_EXTERNALS
si je ferme le post je peux en theorie retrouver les infos que tu m'as donne ?