Qué es una fuga de memoria RAM y cómo arreglarla

Software

Si eres usuario de Windows, es probable que alguna vez te hayas encontrado con que hay un programa consumiendo más memoria RAM de la que debería. Este hecho se conoce como fuga de memoria, y suele ocurrir cuando un programa no libera la memoria RAM que inicialmente había cogido para utilizarla. Conforme avanza el tiempo, esta fuga de memoria puede seguir alimentándose hasta que en unas cuantas horas o días el sistema se quede sin memoria RAM libre, y empiece a utilizar recursos del SSD o disco duro, ralentizando el PC.

Causas y efectos de una fuga de memoria RAM

La causa de las fugas de memoria suele ser un bug en el software debido a fallo en su diseño. La mayoría de fugas de memoria pasan inadvertidas, sobre todo si tenemos mucha memoria RAM o reiniciamos o apagamos a diario el ordenador. El problema más grave con esto suele ocurrir cuando una tarea se repite una y otra vez solicitando nuevos bloques de RAM sin liberar los anteriores, hasta que finalmente consume toda la memoria RAM.

memoria-ram-memory-leak-fuga-de-memoria

Los programas que más comúnmente suelen tener fugas de memoria son los navegadores web o los gestores de torrent, aunque también pueden ocurrir en otro tipo de programas o incluso en juegos. En el caso de los navegadores, puede ser que cerremos una pestaña, y el proceso desaparezca del ordenador, y la RAM no se libere. Es por ello que a veces cuando tenemos muchas horas encendido el ordenador es posible que con todo cerrado tengamos un consumo de RAM del 50% en lugar de un 20%, y no haya ningún programa abierto consumiendo esa diferencia.

Soluciones antes las fugas de memoria RAM

Para detectar los problemas de fugas de memoria, podemos observar el Administrador de Tareas y ver cómo va evolucionando el consumo de memoria RAM en el ordenador, así como con otros programas de monitorización de recursos de terceros. Si detectamos un programa concreto, podemos buscar en Google el nombre del programa seguido de “fuga de memoria” o “memory leak”, y probablemente encontremos a alguien que también tiene el mismo problema que nosotros.

gskill-ram-ddr4-trident-z

La solución más sencilla para este tipo de problemas, aunque suene a chiste, es simplemente reiniciar el ordenador. Al hacerlo, se libera toda la memoria RAM y se carga de nuevo el sistema operativo desde cero. La parte más compleja de solucionar se da cuando la fuga de memoria está generada por el propio sistema operativo o en un determinado programa, y que aunque reiniciemos volverá a aparecer, para lo que hay que esperar a que los creadores del software lancen un parche solucionando el error, o directamente podemos optar por otra alternativa o una versión anterior del programa que sepas que funciona correctamente.

Además del sistema operativo o un determinado programa, también un driver puede ser el causante, por lo que será conveniente revisar si hemos conectado últimamente algún dispositivo nuevo o hemos instalado algún driver que puede estar generando problemas.

Escrito por Alberto García

Fuente > ADSLZone

Continúa leyendo
  • Vicman

    Menuda basura de reportaje. Cada vez os superais. Ahora solo falta que hagais un reportaje para saber como encender el pc. ADSLZONE cada vez es peor

    • Alberto García Guillén

      Hola. ¿Qué parte del artículo te ha disgustado y te ha llevado a escribir esto?

      • Vicman

        El hecho de que no aporte absolutamente nada de información, que cualquier usuario no conozca? Lo de reiniciar lo sabe cualquiera. Esperaba algo de información para arreglarlo mas allá de reiniciar.

  • Diego
  • Edgar Condori Coria

    crear todo un post entero para decirte que reinicies la pc enserio??

    • lexgraf18

      Iba a hacer la misma pregunta…

    • Alberto García Guillén

      Siento si la solución no está al nivel de vuestra pericia informática, pero un reinicio es la mejor manera de eliminar un problema de fuga de memoria, al menos a corto plazo. Si no se desinstala el programa o se arregla el problema que lo causa de primeras, a las pocas horas o días volverá a ocurrir, tal y como detallamos en el artículo.

  • Francisco

    bueno, en realidad aunque el causante ultimo fuese el programa por un fallo de programacion en algun punto concreto, es el sistema como ultimo el que tiene que solventar esa fuga de memoria acabando con el cuando este se cierra, el problema viene que windows deberia cerrar todos sus servicios una ves que cierras el programa, es un lio, pero como dice al reiniciar se acaba el problema. Pero no es la mejor solucion, cuando vuelvas ha usar el programa obtienes el mismo fallo.

  • nova6k0

    En realidad las fugas de memoria se producen por mala programación. Y es un poco como cuando se instala un programa y luego el programa no es capaz de borrar todo lo que instaló, incluídas claves del registro de Windows, que se sabe que no valdrán para nada.

    Que el S.O tenga que ser quien cierre el programa, no quita a que el programa no debería permitir dichas fugas de memoria.

    Además hay dos conceptos parecidos pero distintos, uno es la fuga de memoria que básicamente es el uso de, por ejemplo, un objeto (hablando respecto a programación) que aún sabiendo que no se va a volver a usar se deja igual y no se borra liberando esa parte de la memoria.

    Y por otro lado tenemos el concepto de excesivo uso de memoria. Por ejemplo declarar una variable de 32 bits (dependiendo del lenguaje se llamará de una manera u otra) en vez de usar una de 16 bits o incluso de 8 bits (por ejemplo 256 valores de 0 a 255 para guardar la máxima munición disponible de un arma en el juego, o los parámetros de ataque, defensa, velocidad, ataque mágico, defensa mágica, destreza,… o lo mismo pero hasta 99/100 para indicar el nivel del personaje) Y esto se vé en bastantes juegos el uso de variables enormes para guardar información que con 16 bits o incluso 8 bits sería suficiente.

    Salu2

  • Sasha Zagrev

    Este problema lo tengo desde que salieron las ultimas versiones de Windows 10, y lo mas curioso es que solo aparece cuando abro cualquier navegador de web (chrome, edge, mozilla, y opera) pero cunado reinicio la PC la ram esta normal entre unos 23-28% y se dispara hasta los 60% cuando navego por Internet, ni siquiera cerrando los navegadores baja el consumo de la ram y forzosamente tengo que reiniciar la maquina. Alguien ha podido solucionar este problema.

  • Esa “fuga de memoria” me ha ocurrido con Firefox y Adobe Flash. Llegaba a 1 GB, por lo que me he pasado a Chrome. No obstante con cerrar la aplicación desde el administrador de tareas, todo vuelve como al principio.
    Gracias por el artículo.