π
<-
Chat plein-écran
[^]

APMEP 2019 à Dijon avec Casio, HP, NumWorks, TI et KhiCAS

Re: APMEP 2019 à Dijon avec Casio, HP, NumWorks, TI et KhiCA

Message non lude parisse » 03 Nov 2019, 19:41

Je pense que la principale raison est qu'ils craignaient qu'un malloc renvoie un pointeur nul ou invalide et provoque un reset. J'ai ce souci avec Delta, meme si je pense l'avoir a peu pres resolu en testant la valeur retournee par malloc et en demandant a l'utilisateur de purger des variables si on depasse une valeur.

C'est clair que le systeme actuel n'est pas amical pour le developpement d'applications tierces, et la marche est tres haute. Je suis en train d'ecrire de la documentation pour un petit SDK permettant d'ajouter des applications tierces a Delta beaucoup plus facilement (a mon avis en tout cas!). Ainsi, ajouter un addin a Delta pour calculer et afficher la meme fractale de Mandelbrot que le code exemple donne dans le scriptstore prend 30 lignes de code (et l'affichage se fait en quelques secondes). Un addin pour jouer au mastermind 140 lignes.
Avatar de l’utilisateur
parisseVIP++
Niveau 12: CP (Calculatrice sur Pattes)
Niveau 12: CP (Calculatrice sur Pattes)
Prochain niv.: 77.2%
 
Messages: 3500
Inscription: 13 Déc 2013, 16:35
Genre: Non spécifié
Calculatrice(s):
MyCalcs profile

Re: APMEP 2019 à Dijon avec Casio, HP, NumWorks, TI et KhiCA

Message non lude Lephe » 04 Nov 2019, 18:25

Au fait, une partie de la mémoire statiquement allouée (il y a d'autres blocs, par exemple le TreePool) l'est avec une union plutôt qu'une struct. Cette partie-là est donc une zone partagée entre toutes les applis, et non une zone par application.

Ah, c'est donc plus subtil que ce qu'on m'a expliqué. :)

Je pense que la principale raison est qu'ils craignaient qu'un malloc renvoie un pointeur nul ou invalide et provoque un reset.

Ben... c'est pas une bonne raison ? Le code peut toujours afficher des erreurs, enfin plein de logiciels s'en sortent très bien.
Avatar de l’utilisateur
LephePartenaire
Niveau 10: GR (Guide de Référence)
Niveau 10: GR (Guide de Référence)
Prochain niv.: 67.7%
 
Messages: 386
Inscription: 15 Juin 2018, 19:53
Genre: Homme
Calculatrice(s):
MyCalcs profile

Re: APMEP 2019 à Dijon avec Casio, HP, NumWorks, TI et KhiCA

Message non lude jean-baptiste boric » 04 Nov 2019, 19:30

Lephe a écrit:
Au fait, une partie de la mémoire statiquement allouée (il y a d'autres blocs, par exemple le TreePool) l'est avec une union plutôt qu'une struct. Cette partie-là est donc une zone partagée entre toutes les applis, et non une zone par application.

Ah, c'est donc plus subtil que ce qu'on m'a expliqué. :)

Une piste d'amélioration assez évidente serait d'allouer chaque struct du gros union dynamiquement selon l'app active. Cela libérerait un tas de mémoire conséquent pour KhiCAS sans remettre en cause l'architecture d'epsilon, mais les dernières tentatives n'étaient pas très concluantes.

Lephe a écrit:
Je pense que la principale raison est qu'ils craignaient qu'un malloc renvoie un pointeur nul ou invalide et provoque un reset.

Ben... c'est pas une bonne raison ? Le code peut toujours afficher des erreurs, enfin plein de logiciels s'en sortent très bien.

L'allocation dynamique sous-entend la possibilité de tomber à court de mémoire, que ce soit par épuisement pur et simple ou fragmentation excessive. Plutôt que de complexifier le code pour gérer cela, dans le monde de l'embarqué il est beaucoup plus simple d'allouer statiquement pour ne jamais avoir de problèmes. Quand au fait que plein de logiciels s'en sortent très bien, c'est l'exception et non la règle. L'immense majorité des logiciels de taille respectable planteront (ou au minimum rencontreront de sérieux problèmes) au premier malloc qui rate.

Une calculatrice moyen de gamme n'est pas un ordinateur portable. Il est communément accepté qu'un onglet de navigateur web plante en cas de pénurie de mémoire si l'utilisateur l'a poussé au-delà du raisonnable, ça l'est beaucoup moins qu'une calculatrice plante parce que l'utilisateur a fait le calcul de trop.
Avatar de l’utilisateur
jean-baptiste boricPremium
Niveau 10: GR (Guide de Référence)
Niveau 10: GR (Guide de Référence)
Prochain niv.: 4.5%
 
Messages: 374
Inscription: 21 Déc 2015, 22:22
Genre: Non spécifié
Calculatrice(s):
MyCalcs profile
GitHub: boricj

Précédente

Retourner vers News Divers

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 106 invités

-
Rechercher
-
Social TI-Planet
-
Sujets à la une
Comparaisons des meilleurs prix pour acheter sa calculatrice !
Aidez la communauté à documenter les révisions matérielles en listant vos calculatrices graphiques !
Phi NumWorks jailbreak
123
-
Faire un don / Premium
Pour plus de concours, de lots, de tests, nous aider à payer le serveur et les domaines...
Faire un don
Découvrez les avantages d'un compte donateur !
JoinRejoignez the donors and/or premium!les donateurs et/ou premium !


Partenaires et pub
Notre partenaire Jarrety Calculatrices à acheter chez Calcuso
-
Stats.
2255 utilisateurs:
>2241 invités
>10 membres
>4 robots
Record simultané (sur 6 mois):
6892 utilisateurs (le 07/06/2017)
-
Autres sites intéressants
Texas Instruments Education
Global | France
 (English / Français)
Banque de programmes TI
ticalc.org
 (English)
La communauté TI-82
tout82.free.fr
 (Français)