> Por el momento se me ocurrio crear un programita en C que > pide de 1MB en 1MB hasta que se pone medio extraño el pc y ahi lo mato. > Por lo general quedo con un cache de archivos de 700KB o algo similar > pero no me parece un metodo muy civilizado de hacerlo. Tambien si > alguien sabe como hacerlo en FreeBSD me ayudaria. > > -- > Felipe Cristian Barriga Richards > Osorno, Chile > http://www.felipebarriga.cl
Hola, hace no mucho estaba jugando con eso y lo que consegui fue rebueno ya que el programita en C que hice, empieza a consumir toda la ram disponible y luego sigue con el swap hasta coparlo entero y entonces el kernel le envia la señal de termino. demas esta decir que es una brutez el codigo que hize, pero realizo la operacion deseada ademas no lo tengo bien afinado por que por ejm, el array esta super grande y no es casi usado. mas que para llamar a rand() y bueno consigo perfectamente aquel objetivo. el codigo es el sgte: #include<stdio.h> #include<stdlib.h> #define M 100 #define N 100 /* este codigo C lo que hace es comerce la memoria del sistema * hasta optener un error de segmention fault probocado por el * kernel del sistema operativo, linux en este caso enviando * este al binario una señal de interrupcion de software */ int rand() { int a; a=1+(int) (10.0*rand()/(RAND_MAX+1.0)); return a; } int main() { int i,j; int array[M][N]; for(i=0;i<M;i++) { for(j=0;j<N;j++) { array[M][N]=rand(); } } return 1; } ~ bueno seria interesante que lo probaras en bsd y me contaras que resultado tuviste, ademas te advierto que dependiendo de cuanta memoria(ram+swap) poseas sera lo que tarde en probocarse la violacion de segmento, y tambien que segun las capacidades de tu maquina sera cuan aturdida se ponga durante la ejecucion del proceso. salu2 Xhauu.... -- Felipe Covarrubias Estudiante Ingenieria Civil Electrónica Departamento de Electrónica Universidad Técnica Federico Santa María