Me mo r i aEs t át i c ay Me mo r i aDi námi mi c a
Si f ue nt e sGo nz a l e zAna hi I ng .Si s t e ma ma sCo mp mp ut a c i o na l e s Es t r uc t ur aDeDa t o s
I NDI CE
I nt r o duc c i ó n 1
Obj e t i v oGe ne r al
2
Obj e t i v oEs pe c i fic o 3
Me mo r i aEs t á t i c a 1
De fini c i ó nyMane j o 2 Ve nt a j asyDe s v e nt a j as
3
Me mor i aDi námi c a4
Ca r a c t e r í s t i c as5 Ve nt a j asyDe s v e nt a j as Func i onami ent o4 Co nc l uc i o n
4
6
I NTRODUCCI ON En este documento hablaremos respecto a la memoria estática y dinámica, esto para conocer más afondo todo lo relacionado a ella, así como sus funciones, ventajas y desventaja, etc. La memoria es un espacio lógico para guardar información, nuestro computador utiliza dos memorias la estática y la dinámica debido al coste de los dos tipos de memoria R!. "e conoce los chips de R! dinámica y R! estática funcionan internamente, es fácil ver por#ue el cose es diferente.
OBJETI VOGENERAL Establecer un concepto concreto y claro, referente a la asignación dinámica y estática de memoria y su posterior importancia en la administración de memoria.
OBJETI VO ESPECI FI CO •
•
Establecer de forma clara y concisa la definición, características, etc. cerca de la administración dinámica y estática de la memoria. $ar a conocer los casos en los cuales, se implementa este tipo de administración de memoria.
MEMORI AESTATI CA Es la memoria #ue se reserva en el momento de la compilación antes de comenzar a ejecutar el programa. Los objetos administrados de este modo son% variables globales, variables estáticas de funciones, miembros static de clases y literales de cual#uier tipo. "e guarda en el disco duro de una forma adyacente. La asignación de memoria puede hacerse en tiempo de compilación y los objetos están vigentes desde #ue comienza la ejecución del programa hasta #ue termina. En los lenguajes #ue permiten la e&istencia de subprogramas, y siempre #ue 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.
CARACTERI STI CASDE LAMEMORI AESTATI CA VENTAJ ASYDESVENTAJ ASDELUSO DELAMEMORI A ESTATI CA 'entajas% • • • •
La velocidad de accesos es alta. (ara retener los datos solo necesita estar energizada. )uenta con lógica simple. "on fáciles de dise*ar.
$esventajas% • • • •
• •
+o se puede modificar el tama*o de la estructura en tiempo de ejecución. +o es óptimo con grandes cantidades de datos. $esperdicio de memoria cuando no se utiliza en su totalidad. !enor capacidad, debido a #ue cada celda de almacenamiento re#uiere más transistores. !ayor costo por bit. !ayor consumo de potencia.
MEMORI ADI NAMI CA La memoria dinámica se modifica constantemente y su tama*o puede variar durante la ejecución del programa y puede ser liberado es solicitada en tiempo de ejecución del programa y puede ser liberado es solicitada en tiempo de ejecución,
a medida #ue el proceso va necesitando espacio para más líneas, va solicitando más memoria al sistema operativo para guardarlas. n dato importante es #ue 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 re#uerimientos del programa evitándonos así perder datos o desperdiciar memoria.
CARACTERI STI CASDELAMEMORI ADI NAMI CA •
•
•
El n-mero de particiones de la memoria y su tama*o es variable, las cuales son creadas dinámicamente para #ue se acomoden a las necesidades de cada proceso solicitante. )uando un proceso termina o es retirado de la memoria el administrador de memoria puede devolver el espacio libre al fondo de áreas de memoria libres a partir del cual se efect-an las asignaciones de particiones. El administrador de memoria puede ir creando y asignando particiones de memoria a los procesos solicitantes, hasta #ue se agote toda la memoria física o alcance el má&imo grado de multiprogramación permitido.
VENTAJ ASYDESVENTAJ ASDELUSO DELAMEMORI A DI NAMI CA 'entajas% •
•
•
Es posible disponer de un espacio de memoria arbitrario #ue dependa de información dinámica dispone solo en ejecución/0 toda esa memoria #ue maneja es implementada por el programador cuando fuese necesario. 1tra ventaja de la memoria dinámica es #ue se puede ir incrementando durante la ejecución del programa. Esto permite, por ejemplo, trabajar con arreglos dinámicos. Es memoria #ue se reserva en tiempo de ejecución. "u tama*o puede variar durante la ejecución del programa y puede ser liberado mediante la función free.
$esventajas% • •
Es difícil implementar estructuras de datos complejas. $ifícil en manejar.
• •
(uede afectar el rendimiento. "e tiene #ue llevar a cabo varias tareas, como buscar un blo#ue de memoria libre y almacenar la posición y tama*o de memoria asignada, de manera #ue pueda ser liberada más adelante.
FUNCI ONAMI ENTODELAMEMORI ADI NAMI CA "e le 2pide #ue cargue la imagen del proceso, el administrador de memoria intenta crear una partición de memoria adecuada para asignarla al proceso solicitante. El administrador de memoria localiza un área libre de memoria #ue sea mayor o igual al tama*o del proceso. "i la encuentras el sistema operativo fabrica una partición con el ajuste e&acto a las necesidades del proceso, el trozo restante es devuelto al fondo de la memoria para ser reutilizado, si no encuentra el espacio adecuado para el proceso el sistema operativo devuelve un manejo de error. )uando el proceso termina o es retirado de memoria, el sistema operativo el espacio de la partición al fondo de la memoria libre. )uando una partición es creada se atribuye dirección, tama*o y base los cuales no se alteran mientras e&ista la partición.
CONCLUCI ON La asignación dinámica de la memoria resulta ser muy ventajosa a la hora de evitar el desperdicio de memoria, gracias al uso de la asignación dinámica de memoria el proceso de información resulta mucho más rápido y eficiente con lo cual se logra optimizar el uso del computador. dministrar la memoria es una de las tareas más complejas #ue lleva a cabo el sistema operativo.