Memoria Dinámica y estática

Hoy hablaremos de la memoria estática y memoria dinámica
además mostraremos un cuadro comparativo de ambas
pero antes debemos definir que es memoria
una breve definición de memoria, es un espacio lógico para guardar información

Existen 2 tipos de memoria

                                                                Memoria Dinámica:


La memoria dinámica es un espacio de almacenamiento que se solicita en tiempo de ejecución. 
De esa manera, a medida que el proceso va necesitando espacio para más líneas, va solicitando más memoria al sistema operativo para guardarlas. El medio para manejar la memoria que otorga el sistema operativo, es el puntero, puesto que no podemos saber en tiempo de compilación dónde nos dará huecos el sistema operativo "en la memoria de nuestro ordenador".
Un dato importante es que como tal este tipo de datos se crean y se destruyen mientras se ejecuta el programa y por lo tanto la estructura de datos se va dimensionando de forma precisa a los requerimientos del programa, evitándonos así perder datos o desperdiciar memoria si hubiéramos tratado de describirla cantidad de memoria a utilizar en el momento de compilar el programa.

 Memoria Dinámica es DRAM







  Memoria Estática                     



La asignación de memoria puede hacerse en tiempo de compilación y los objetos están vigentes desde que comienza la ejecución del programa hasta que termina.
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.

                                                                    Memoria Estática SRAM
                      





 
Tipo de Memoria
Dinámica 
Estática
Descripción
La memoria dinámica es un espacio de almacenamiento que se solicita en tiempo de ejecución
La asignación de memoria puede hacerse en tiempo de compilación y los objetos están vigentes desde que comienza la ejecución del programa hasta que termina.
Ventajas
-Es memoria que se reserva en tiempo de ejecución
 -Se puede ir incrementando durante la ejecución del programa
-Es posible disponer de un espacio de memoria arbitrario que dependa de información dinámica (disponible sólo en ejecución):
  -La velocidad de acceso es alta.
 -Para retener los datos solo necesita estar energizada.
 -Lógica simple. Son más fáciles de diseñar.

Desventajas
- Es difícil de implementar en el desarrollo de un programa
 -Es difícil implementar estructuras de datos complejas
-No se puede modificar el tamaño de la estructura en tiempo de ejecución.


como son los tipos recursivos
(árboles, grafos, etc.).
 -La memoria dinámica puede afectar el rendimiento
-No es óptimo con grandes cantidades de datos.
 -Desperdicio de memoria cuando no se utiliza en su totalidad del tamaño v [100]  

Consideraciones
-Manejo   transparente     del
tamaño de la estructura

-  Se guarda donde encuentra espacio

-No se guardan necesariamente en memoria adyacente
-Error en tiempo de ejecución de índice fuera de rango

-Se debe conocer con anticipación el tamaño de la estructura

-Vectores, Matrices, Cubos,
Registros, Archivos

-Se   guardan   en memoria adyacente

Bibliografías: 
ESTRUCTURA DE DATOS, Adrián , accedido el (16/09/2019) desde la url http://adrian-estructuradedatos.blogspot.com/2011/04/memoria-estatica-y-dinamica.html ESTRUCTURA DE DATOS l , Dilcia Romina Laime Zabala, accedido el (16/09/2019) desde la url
COMPILANDO CONOCIMIENTO,COMPILANDO CONOCIMIENTO, accedido el (16/09/2019) desde la url 







Comentarios

Entradas populares de este blog

Historia y Evolución de los Sistemas Operativos 📚💻

Sistemas Operativos: Definición y Funciones 🖥️💻