[C] Allocation maximale (gcc sous cygwin)

Allocation maximale (gcc sous cygwin) [C] - C - Programmation

Marsh Posté le 10-09-2008 à 12:49:06    

Bonjour
 
Je dois travailler sous cygwin en C, avec GCC sur de grosses structures 3D (512*512*512). Et j'ai constaté un PB d'allocation : je ne peux pas utiliser plus d'un GO avec malloc.
 
Y a-t-il un moyen de palier à cette limitation (sachant que mes données prennent moins de 2 Go, la ram totale de ma machines) ?
 
Merci d'avance.

Message cité 1 fois
Message édité par Koko90 le 10-09-2008 à 12:52:27

---------------
Découvrez l'anthologie des posts de Mikhail. Je suis le cinéphile déviant.
Reply

Marsh Posté le 10-09-2008 à 12:49:06   

Reply

Marsh Posté le 10-09-2008 à 13:49:41    

Pour une application qui doit tourner dans quel environnement (DOS, Windows, UNIX, ...) ?
 
Si c'est pour DOS, alors cela va être difficile. Il faudra passer par les DOS extender, etc.
Si c'est pour Windows, alors utiliser VirtualAlloc() ou GlobalAlloc().
Si c'est pour Unix, je ne connais rien d'autre que malloc(), mais il doit probablement exister des alternatives avec certaines versions d'Unix.

Reply

Marsh Posté le 10-09-2008 à 14:25:06    

sous unix malloc suffit. VirualAlloc osus win comme préciser.

Reply

Marsh Posté le 10-09-2008 à 14:45:09    

C'est sous windows XP (si ça ne tenait qu'à moi je serais sous linux, mais là j'ai pas le choix).  
 
Je vais utiliser directement VirtualAlloc().
 
Merci pour les réponses.


---------------
Découvrez l'anthologie des posts de Mikhail. Je suis le cinéphile déviant.
Reply

Marsh Posté le 10-09-2008 à 19:48:34    

Koko90 a écrit :

Bonjour
 
Je dois travailler sous cygwin en C, avec GCC sur de grosses structures 3D (512*512*512). Et j'ai constaté un PB d'allocation : je ne peux pas utiliser plus d'un GO avec malloc.
 
Y a-t-il un moyen de palier à cette limitation (sachant que mes données prennent moins de 2 Go, la ram totale de ma machines) ?
 
Merci d'avance.


En 32bits avec des libs mappées, tu dois toutes façons pas pouvoir passer ~1,4G

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed