FrOSt-Foundation / FrOSt

Dépôt officiel de FrOSt - OS communautaire Français pour 0x10c
GNU General Public License v3.0
13 stars 5 forks source link

Int de fin de programme #3

Closed Yamakaky closed 11 years ago

Yamakaky commented 12 years ago

int de fin de programme : b = 0 : RAS b = 1 : out of memory

L3nn0x commented 12 years ago

Un out of memory se gère dans l'application en appelant malloc...

Yamakaky commented 12 years ago

Je veux dire un out of memory du programme, pas de l'os, genre si un programme a remplit complètement sa plage mémoire, il renvoie 1, d'où un affichage d'erreur de la part de l'OS

L3nn0x commented 12 years ago

Oui, quand tu fais un programme et que tu manques de mémoire, tu demande plus de mémoire grâce à malloc... Pas besoin de quitter avec des erreurs.

Yamakaky commented 12 years ago

Et quand il n'y a plus de mémoire disponible ?

earth75 commented 12 years ago

alors c'est malloc qui renvoie une erreur lors de la requete du prog donc pas de pb je pense

Yamakaky commented 12 years ago

non, le malloc renvoie 0 en z. Je pense qu'une valeur de retour (return en java et C) permettrai de dire à l'OS si l’exécution du programme s'est bien déroulée

earth75 commented 12 years ago

ouais. mais bon si z =0 on sait que l'execution du programme s'est mal passée. vous vous voudriez des infos plus detaillées sur le crash?

Yamakaky commented 12 years ago

De toute façon, il faut une valeur de retour pour indiquer à l'OS que le programme à fini son exécution ? Ça correspond à menu/quitter irl

L3nn0x commented 12 years ago

Je vais être clair sur comment un programme se termine de manière normale.

Une fois arrivé à la fin de son exécution, ou si il rencontre une erreur grave, il appelle une routine du kernel qui dit à l'OS qu'il a fini son exécution.

Cette routine accepte une valeur de retour, qui sera affichée par la console. Après, ce n'est qu'un code hexa. En aucun cas l'OS n'a à traiter cette valeur. Donc en un sens tu as raison, mais si le programme manque de mémoire, il lui suffit d'en demander plus à l'aide de malloc, et de la libérer une fois fini avec free. Ceci n'est pas inhérent à l'OS qui se contente d'allouer la mémoire demandée.

L3nn0x commented 11 years ago

C'est bon, fonctionnalité implémentée, INT 0x11 finira le programme avec le message B.