No encontrado

¿Qué es la memoria estática?

Martha Patricia

Es el espacio en memoria que se crea al declarar variables de cualquier tipo de dato. La memoria que estas variables ocupan no puede cambiarse durante la ejecución y tampoco puede ser liberada manualmente. En los lenguajes que permiten la existencia de subprogramas, y siempre que todos los objetos de estos subprogramas puedan almacenarse estáticamente se aloja en la memoria estática un registro de activación correspondiente a cada uno de los subprogramas. Estos registros de activación contendrán las variables locales, parámetros formales y valor devuelto por la función.

Características

Las caracteristicas más importantes de la memoria estática son:

  • Durante el tiempo de ejecución se define la cantidad de memoria que se utilizará en un programa, un ejemplo clásico es la declaración de un array.
  • El tamaño que se propone para el programa no puede ser modificado mientras se ejecuta, si se desea modificar debe detenerse y cambiar su valor.
  • Algunos lenguajes de programación utilizan la palabra static para especificar elementos del programa que deben almacenarse en memoria estática.
  • Los objetos mantienen la misma localización en memoria durante todo el transcurso del programa.

Ventajas y desventajas

Las ventajas de la memoria estática son:

  • Requiere una lógica simple.
  • Facilidad de comprensión.
  • Puede utilizarse en estructuras de datos pequeñas o que manejan poca información.
  • No requieren más memoria de la cual es declarada.
  • Al requerir menor cantidad de memoria, propicia mayor velocidad de acceso.

Las desventajas de utilizar la memoria estática son:

  • No se puede utilizar en el manejo de grandes cantidades de información.
  • Es imposible modificar el tamaño de la memoria mientras se ejecuta el programa.
  • Significa un desperdicio de memoria cuando no se alcanza a utilizar completamente.