bonjour,
voila tout est dans la question. On m'a toujours appris de vérifier si malloc() renvoyait un pointeur null ou non. Or je ne vois pas commment mon allocation mémoire peut échouer alors que linux utilise de la mémoire virtuelle. Donc même si je demande 20 GO de ram et que ma machine n'en possede que 4, malloc() ne me retournera pas un pointeur null.
Merci d'avance pour vos éclaircissements.
# /proc/sys/vm/overcommit_memory
Posté par Cyril Brulebois (site web personnel) . Évalué à 5.
Regarde le mécanisme d'
overcommit
, par exemple dansman 5 proc
.Debian Consultant @ DEBAMAX
[^] # Re: /proc/sys/vm/overcommit_memory
Posté par viviNeutron . Évalué à 1.
ca me dit juste que la limite est calculé par rapport à la formule dans /proc/sys/vm/overcommit_memory, or dans ce fichier je n'ai que le caractere 0.
Il me dit également d'aller voir dans Documentation/vm/overcommit-accounting mais ce fichier n'existe pas :(
je suis sur Ubuntu.
[^] # Re: /proc/sys/vm/overcommit_memory
Posté par eric gerbier (site web personnel) . Évalué à 1.
Le fichier Documentation/vm/overcommit-accounting fait partie du package kernel-doc (centos/redhat/mageia …) ou linux-doc (debian/ubuntu …)
[^] # Re: /proc/sys/vm/overcommit_memory
Posté par Cyril Brulebois (site web personnel) . Évalué à 3.
Alors, j'ai assez bon espoir que la page de manuel dans Ubuntu soit assez similaire à ce que j'ai dans Debian, qui détaille ceci :
Et la description des différents modes me semble bien expliquer ce que tu cherchais à comprendre, non ?
(Pour la visualiser en ligne : https://manpages.debian.org/buster/manpages/proc.5.en.html)
Debian Consultant @ DEBAMAX
[^] # Re: /proc/sys/vm/overcommit_memory
Posté par Benoît Sibaud (site web personnel) . Évalué à 4.
man 3 malloc
# malloc peut retourner un pointeur nul
Posté par goeb . Évalué à 3.
Chez moi si, ça retourne un pointeur nul, donc c'est possible :
Résultat d'exécution :
[^] # Re: malloc peut retourner un pointeur nul
Posté par Benoît Sibaud (site web personnel) . Évalué à 10. Dernière modification le 23 juillet 2019 à 13:46.
Oui il fait chaud, mais soyons joueur :
[^] # Re: malloc peut retourner un pointeur nul
Posté par j_m . Évalué à 2.
Je ne comprend pas bien. Pourquoi est-ce que la taille de ton allocation (20 ko) n'a pas l'air de ressortir dans aucun de tes tests?
Il faut compter la stdlib aussi?
Quelles sont tes conclusions?
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.