Please enable JavaScript.
Coggle requires JavaScript to display documents.
Administrador de memoria
Img01 - Coggle Diagram
Administrador de memoria
Definición.
La administración de memoria se refiere a los distintos métodos y operaciones que se encargan de obtener la máxima utilidad de la memoria, organizando los procesos y programas que se ejecutan de manera tal que se aproveche de la mejor manera posible el espacio disponible.
La operación principal que realiza es la de trasladar la información que deberá ser ejecutada por el procesador, a la memoria principal.
Actualmente esta administración se conoce como Memoria Virtual ya que no es la memoria física del procesador sino una memoria virtual que la representa.
Entre algunas ventajas, esta memoria permite que el sistema cuente con una memoria más extensa teniendo la misma memoria real, con lo que esta se puede utilizar de manera más eficiente.
Y por supuesto, que los programas que son utilizados no ocupen lugar innecesario.
Características generales.
Las técnicas que existen para la carga de programas en la memoria son: partición fija, que es la división de la memoria libre en varias partes (de igual o distinto tamaño) y la partición dinámica, que son las particiones de la memoria en tamaños que pueden ser variables, según la cantidad de memoria que necesita cada proceso.
Entre las principales operaciones que desarrolla la administración de memoria se encuentran la reubicación, que consiste en trasladar procesos activos dentro y fuera de la memoria principal para maximizar la utilización del procesador; la protección, mecanismos que protegen los procesos que se ejecutan de interferencias de otros procesos; uso compartido de códigos y datos, con lo que el mecanismo de protección permite que ciertos procesos de un mismo programa que comparten una tarea tengan memoria en común.
La parte del sistema operativo que administra la memoria se llama administrador de memoria y su labor consiste en llevar un registro de las partes de memoria que se estén utilizando y aquellas que no, con el fin de asignar espacio en memoria a los procesos cuando éstos la necesiten y liberándola cuando terminen, así como administrar el intercambio entre la memoria principal y el disco en los casos en los que la memoria principal no le pueda dar capacidad a todos los procesos que tienen necesidad de ella.
Los sistemas de administración de memoria se pueden clasificar en dos tipos: los que desplazan los procesos de la memoria principal al disco y viceversa durante la ejecución y los que no.
La memoria principal puede ser considerada como un arreglo lineal de localidades de almacenamiento de un byte de tamaño. Cada localidad de almacenamiento tiene asignada una dirección que la identifica. Memoria interna del sistema informático, con direcciones accesibles por los programas y que puede cargarse en los registros para su posterior ejecución o procesamiento. Lugar en el cual se almacenan datos e instrucciones en una computadora antes y durante su ejecución.
El sistema operativo debe llevar a cabo una política de espacio de asignación de memoria. Esto es necesario cuando se precisa crear el mapa de memoria de un proceso que ocupa un determinado tamaño para poder así determinar qué zonas libres se deberían utilizar; esto con el fin de lograr conjugar los aspectos de buen aprovechamiento de la memoria y Algoritmo de decisión eficiente
SJF (Shortest job first - Prioridad del trabajo más corto) Se ejecuta primero el proceso en espera que tiene el menor tiempo estimado. SJF favorece a los procesos cortos, ya que los largos podrían llegar a rezagarse mucho tiempo e incluso nunca ejecutarse.
SRT (Sortest remaining time scheduling – Tiempo restante más corto) En SJF una vez que un proceso comienza su ejecución continúa hasta terminar. En SRT, un proceso en ejecución puede ser desposeído por uno nuevo de menor tiempo de ejecución.
Round Robin. Los procesos se atienden en la forma que lo hace el FIFO, pero se les asigna una cantidad limitada de tiempo en el procesador, si no termina en ese lapso se manda al final de la lista de procesos listos.
HRN (highest response ratio next – Prioridad de la tasa de respuesta más alta) Política no apropiativa que corrige el retraso excesivo de procesos grandes que produce el SJF, para así no caer en un favoritismo excesivo por los procesos cortos, lo logra usando una formula basada en el tiempo de espera y el tiempo de servicio, con lo cual la prioridad de cada trabajo no solo está en función del tiempo de servicio sino también del tiempo que ha esperado para ser atendido.
FIFO. Los procesos se despachan de acuerdo a su tiempo de llega a la cola de procesos listos, si un proceso llega al procesador sale hasta que termine. La política FIFO actualmente no se usa como el esquema principal de un sistema, pero si por ejemplo cuando se usa una política de prioridades y hay procesos con la misma prioridad, a estos se les podría aplicar FIFO.
Administración de la memoria de un sistema operativo real
La organización y administración de la memoria principal, memoria primaria o memoria real de un sistema ha sido y es uno de los factores más importantes en el diseño de los S. O. Los términos memoria y almacenamiento se consideran equivalentes. Los programas y datos deben estar en el almacenamiento principal para poderlos ejecutar y referenciarlos directamente. Se considera almacenamiento secundario o almacenamiento auxiliar al generalmente soportado en discos.
La parte del S. O. que administra la memoria se llama administrador de la memoria, lleva un registro de las partes de memoria que se están utilizando y de aquellas que no. Asigna espacio en memoria a los procesos cuando estos la necesitan. Libera espacio de memoria asignada a procesos que han terminado. La organización y administración de la memoria principal, memoria primaria o memoria real de un sistema ha sido y es uno de los factores más importantes en el diseño de los S. O.
Almacenamiento virtual, significa la capacidad de direccionar un espacio de almacenamiento mucho mayor que el disponible en el almacenamiento primario de determinado sistema de computación. Los métodos más comunes de implementación son mediante Técnicas de paginación, Técnicas de segmentación. una combinación de ambas técnicas. Las direcciones generadas por los programas en su ejecución no son, necesariamente, aquellas contenidas en el almacenamiento primario (memoria real), ya que las direcciones virtuales suelen seleccionarse dentro de un número mucho mayor de direcciones que las disponibles dentro del almacenamiento primario.
Se deben proporcionar los medios para retener programas y datos en un gran almacenamiento auxiliar para permitir que el espacio de direcciones virtuales de un usuario sea mayor que el espacio de direcciones reales y soportar multiprogramación de forma efectiva en un sistema con muchos usuarios que compartan el almacenamiento real.
Los mecanismos de traducción dinámica de direcciones deben mantener mapas que ilustren qué direcciones del almacenamiento virtual se encuentran en el almacenamiento real y dónde se encuentran. La información se agrupa en bloques, donde el sistema está informado del lugar del almacenamiento real donde han sido colocados los bloques de almacenamiento virtual. Cuanto mayor sea el bloque menor será la fracción del almacenamiento real que debe dedicarse a contener la información del mapa. Con bloques grandes, se reduce la sobrecarga de almacenamiento del mecanismo de transformación. Se incrementa el tiempo de transferencia entre los almacenamientos secundario y primario. Consumen más almacenamiento real pudiendo limitar el número de procesos que pueden compartirlo. Los bloques pueden ser de tamaño, Igual : se denominan páginas y la organización de almacenamiento virtual asociada se denomina paginación. Diferente: se denominan segmentos y la organización de almacenamiento virtual asociada se denomina segmentación. Se pueden combinar ambas técnicas que son segmentos de tamaño variable compuestos de páginas de tamaño fijo.
Simulación del administrador de archivos
El administrador de archivos de nuestro sistema operativo es la herramienta más importante con las que contamos, ya que sin él estaríamos absolutamente perdidos al no poder movernos por la inmensa estructura de archivos y carpetas, tanto la del sistema como de la estructura que el propio usuario ha creado en torno a sus necesidades y prioridades.
Los sistemas operativos de la actualidad incorporan un administrador de archivos precisamente para que almacenar y encontrar nuestros archivos sea una tarea sencilla y transparente. Android e iOS incluye un administrador de archivos, Windows utiliza su Explorador de archivos, Linux ofrece Konqueror, Dolphin o Nautilus y finalmente MacOS con su Finder. Todos estos sistemas hacen un uso intensivo de su administrador de archivos.
Un administrador de archivos es una aplicación que es utilizada para gestionar de manera fácil y transparente los archivos y carpetas que tenemos almacenadas en el disco duro o cualquier otro medio de almacenamiento, como lo es por ejemplo la tarjeta de memoria de nuestro teléfono celular con Android.
También conocido como gestor de archivos o explorador de archivos, esta herramienta es fundamental para el uso de cualquier computadora moderna, debido a que sin su presencia, sería prácticamente imposible tanto crear o eliminar carpetas, como mover, copiar o pegar archivos.
Otras características que nos ofrece un administrador de archivos modernos incluyen la previsualización de archivos, compartir archivos en la red local, la modificación de atributos y permisos de archivos, la impresión de documentos, acceder a servicios de FTP y unidades de almacenamiento remotas y muchas pero muchas funciones más.
El Explorador de archivos de Windows es una de las mejores herramientas disponibles, lo cierto es que existen otras que pueden ofrecernos características que el software de Microsoft.
El administrador de archivos de MacOS es una de las herramientas de gestión de archivos más envidiadas, ya que además de tener un aspecto estético muy efectivo, sus funciones son realmente impresionantes, denominado Finder.
En Linux no existe una única aplicación de gestión de archivos estandarizada para todas las distribuciones. Estos son algunos de los mejores gestores de archivos de Linux.
Nautilus, ahora renombrado a Archivos GNOME , es el gestor de archivos estándar del entorno de escritorio de GNOME. Dado que GNOME es un entorno de escritorio muy popular, esto significa automáticamente que Nautilus también está entre los gestores de archivos más utilizados.
Dolphin File Manager es la contraparte KDE de Nautilus. Al igual que el Nautilus, está diseñado para ser fácil de usar y, al mismo tiempo, dejar espacio para la personalización. Entre sus características principales se encuentran las vistas divididas y las multipestañas, así como los paneles acoplables. Puede utilizar Dolphin para explorar archivos locales y remotos a través de la red.
Thunar podría no ser tan popular como Nautilus o Dolphin, pero personalmente me gusta más. Es el gestor de archivos que utilizo a diario. Thunar es el gestor de archivos predeterminado para el entorno de escritorio Xfce, pero también se puede utilizar con otros entornos.
Nemo es un tenedor de Nautilus, y es el administrador de archivos predeterminado para el entorno de escritorio Cinnamon
PCManFM es el gestor de archivos estándar en LXDE (una distribución desarrollada por el mismo equipo de desarrolladores), y está pensado para ser ligero, pero totalmente funcional.