D'après plusieurs messages dans fr.comp.lang.c, il semble possible que
malloc renvoie un pointeur non NULL, et que la zone de mémoire ne soit en
fait ***PAS*** disponible, et ce depuis les kernels 2.4.
a) C'est une blaque ou quoi?
b) Au cas ou ce serait exact, quelqu'un pourrait il m'expliquer comment
s'assurer que le pointeur renvoyé par malloc est valide ?
Avec toutes mes excuses s'il s'agit d'un hoax...
--
Pour contacter l'équipe de modération : moderateurs-fcolm@efrei.fr
ATTENTION: Postez DIRECTEMENT vos articles dans le groupe, PAS dans
la liste de distribution des modérateurs.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Erwann ABALEA
On 25 Dec 2003, gpg wrote:
D'après plusieurs messages dans fr.comp.lang.c, il semble possible que malloc renvoie un pointeur non NULL, et que la zone de mémoire ne soit en fait ***PAS*** disponible, et ce depuis les kernels 2.4.
Comment ça "depuis les kernels 2.4?". Tu devrais relire ta page de man de malloc(3), la mienne date de 1993, donc bien avant le noyau 2.4 (peut-être même avant le noyau 1.0, faut voir).
a) C'est une blaque ou quoi?
Non, c'était utile, et ça l'est toujours sur certaines architectures à mémoire très limitée. Il y a beaucoup de gorets chez les programmeurs.
b) Au cas ou ce serait exact, quelqu'un pourrait il m'expliquer comment s'assurer que le pointeur renvoyé par malloc est valide ?
Désactiver l'overcommit (c'est déjà le cas par défaut sur un noyau 2.4, mais tu peux vérifier en faisant un 'cat /proc/sys/vm/overcommit_memory', une valeur nulle t'assure que tu n'as pas ce comportement).
-- Erwann ABALEA - RSA PGP Key ID: 0x2D0EABD5 ----- When uncertain, or in doubt, run in circles and scream.
-- Pour contacter l'équipe de modération : ATTENTION: Postez DIRECTEMENT vos articles dans le groupe, PAS dans la liste de distribution des modérateurs.
On 25 Dec 2003, gpg wrote:
D'après plusieurs messages dans fr.comp.lang.c, il semble possible que
malloc renvoie un pointeur non NULL, et que la zone de mémoire ne soit en
fait ***PAS*** disponible, et ce depuis les kernels 2.4.
Comment ça "depuis les kernels 2.4?". Tu devrais relire ta page de man de
malloc(3), la mienne date de 1993, donc bien avant le noyau 2.4 (peut-être
même avant le noyau 1.0, faut voir).
a) C'est une blaque ou quoi?
Non, c'était utile, et ça l'est toujours sur certaines architectures à
mémoire très limitée. Il y a beaucoup de gorets chez les programmeurs.
b) Au cas ou ce serait exact, quelqu'un pourrait il m'expliquer comment
s'assurer que le pointeur renvoyé par malloc est valide ?
Désactiver l'overcommit (c'est déjà le cas par défaut sur un noyau 2.4,
mais tu peux vérifier en faisant un 'cat /proc/sys/vm/overcommit_memory',
une valeur nulle t'assure que tu n'as pas ce comportement).
--
Erwann ABALEA <erwann@abalea.com> - RSA PGP Key ID: 0x2D0EABD5
-----
When uncertain, or in doubt, run in circles and scream.
--
Pour contacter l'équipe de modération : moderateurs-fcolm@efrei.fr
ATTENTION: Postez DIRECTEMENT vos articles dans le groupe, PAS dans
la liste de distribution des modérateurs.
D'après plusieurs messages dans fr.comp.lang.c, il semble possible que malloc renvoie un pointeur non NULL, et que la zone de mémoire ne soit en fait ***PAS*** disponible, et ce depuis les kernels 2.4.
Comment ça "depuis les kernels 2.4?". Tu devrais relire ta page de man de malloc(3), la mienne date de 1993, donc bien avant le noyau 2.4 (peut-être même avant le noyau 1.0, faut voir).
a) C'est une blaque ou quoi?
Non, c'était utile, et ça l'est toujours sur certaines architectures à mémoire très limitée. Il y a beaucoup de gorets chez les programmeurs.
b) Au cas ou ce serait exact, quelqu'un pourrait il m'expliquer comment s'assurer que le pointeur renvoyé par malloc est valide ?
Désactiver l'overcommit (c'est déjà le cas par défaut sur un noyau 2.4, mais tu peux vérifier en faisant un 'cat /proc/sys/vm/overcommit_memory', une valeur nulle t'assure que tu n'as pas ce comportement).
-- Erwann ABALEA - RSA PGP Key ID: 0x2D0EABD5 ----- When uncertain, or in doubt, run in circles and scream.
-- Pour contacter l'équipe de modération : ATTENTION: Postez DIRECTEMENT vos articles dans le groupe, PAS dans la liste de distribution des modérateurs.