[Previo por Fecha] [Siguiente por Fecha] [Previo por Hilo] [Siguiente por Hilo]
[Hilos de Discusión] [Fecha] [Tema] [Autor]Qué tal... El otro día estaba experimentando con C++ y la asignación de memoria... cuando corro el programa que anexo, cuando se acaba la memoria marca un "segmentation fault" y varias aplicaciones de GNOME que están corriendo también marcan errores de segmentación... un problema bastante raro, yo pensaba que el kernel de linux impedía que una aplicación afectara a las demás. Si en lugar de usar new uso malloc(), todo funciona perfectamente, tal cual debe. No sé si sea error de egcs, mío, o del kernel, o una combinación. A ver si me ayudan a aclarar esto. -- A human being should be able to change a nappy, plan an invasion, butcher a hog, conn a ship, design a building, write a sonnet, balance accounts, build a wall, set a bone, comfort the dying, take orders, give orders, cooperate, act alone, solve equations, analyse a new problem, pitch manure, program a computer, cook a tasty meal, fight efficiently, die gallantly. Specialisation is for insects. -- Robert Heinlein Juan Pablo Zaldívar Carrillo ITESM Campus Guadalajara al665901 en academ01 gda itesm mx
#include <unistd.h> #include <stdlib.h> #include <iostream> int main() { const int ONE_K = 1024; char *some_memory; int size_to_allocate = ONE_K, megs_obtained = 0, ks_obtained = 0; while (true) { for (ks_obtained = 0; ks_obtained < 1024; ks_obtained++) { some_memory = new char[size_to_allocate]; if (some_memory == 0) exit(EXIT_FAILURE); } megs_obtained++; cout << "Now allocated " << megs_obtained << " Megabytes." << endl; } exit(EXIT_SUCCESS); }
-- Para desuscribirse, mande correo a: ayuda-unsubscribe en linux org mx Para comandos adicionales, envíelo a: ayuda-help en linux org mx