Thumbnail for Administración de Memoria en Sistemas Operativos by R Chambi

Administración de Memoria en Sistemas Operativos

R Chambi

12m 1s1,896 words~10 min read
YouTube auto captions
Transcript source

YouTube auto captions

This transcript was extracted from YouTube's auto-generated caption track. The transcript below is server-rendered so it can be read, searched, cited, and shared without opening the original YouTube player.

Timestamped outline
Pull quotes
[0:01]Tengan un cordial saludo y sean bienvenidos a esta nueva clase de esta serie de videos.
[0:01]Y básicamente hoy vamos a comenzar con un nuevo tema que se denomina Administración de Memoria.
[0:01]Esto básicamente para que no se pierda el contenido eh cuando esté ausente obviamente la eh nuestro computador de lo que es la energía eléctrica.
[0:01]Entonces, la administración de memoria podemos decir que es el encargado de poder realizar las tareas eh que va obviamente ejecutarse dentro de un sistema operativo.
Use this transcript
Related transcript hubs

[0:01]Tengan un cordial saludo y sean bienvenidos a esta nueva clase de esta serie de videos. Y básicamente hoy vamos a comenzar con un nuevo tema que se denomina Administración de Memoria. Entonces, básicamente la memoria es un recurso bastante importante que debe ser cuidadosamente gestionado, ya que a todo programador le gustaría contar con una memoria infinita grande, infinitamente rápido y que fuese además no volátil. Esto básicamente para que no se pierda el contenido eh cuando esté ausente obviamente la eh nuestro computador de lo que es la energía eléctrica. Entonces, la administración de memoria podemos decir que es el encargado de poder realizar las tareas eh que va obviamente ejecutarse dentro de un sistema operativo. Y que este va a consistir en gestionar lo que es la jerarquía de memoria, en cargar y descargar todos los procesos que vamos a ir almacenando en esta memoria principal para que estos sean ejecutados. Por ello el sistema también operativo gestiona lo que se conoce como unidad de administración de memoria, el cual es un dispositivo hardware que transforma las direcciones lógicas en físicas. Además también lo que nos va a permitir esta administración de memoria es básicamente ofrecer a cada proceso un espacio lógico propio, proporcionar protección entre los procesos, permitir que los procesos compartan memoria y también maximizar el rendimiento del sistema. Ahí como podemos observar en la imagen, básicamente, bueno, se tiene una cola de trabajo para cada partición.

[1:39]Y que básicamente son procesos que se van a ir ejecutando y obviamente ahí podemos observar en el lado, bueno, en este caso derecho. Tenemos ahí lo que es en primera instancia el sistema operativo, luego se tiene una partición 1, una partición 2, partición 3. Entonces, básicamente eh esta cola de trabajo que se va a ir ejecutando, se van a ir almacenando dentro de esa memoria principal. Y obviamente van a ser administrados por él mismo. Bueno, los requisitos de la gestión de memoria básicamente son estos cinco puntos, que es la reubicación, que básicamente es un sistema multiprogramado de memoria que se va a encontrar compartida por varios procesos y por lo tanto los procesos deben ser cargados y descargados de la memoria. También se tiene lo que es este requisito de protección, en la cual, bueno, un sistema también es necesario que se pueda proteger al sistema operativo y a los otros procesos que posiblemente tengan acceso y que se puedan asignar en este caso a sus espacios de direcciones. También se tiene otro requisito que es la compartición, que básicamente en ciertas situaciones bajo la supervisión y control del sistema operativo, puede ser provechoso que los procesos puedan compartir básicamente un determinado espacio de memoria. También se tiene lo que es la organización lógica, en la cual, bueno, tanto la memoria principal como la secundaria van a presentar una organización física similar, como un espacio de direcciones lineal y unidimensional. Ese debe existir una cierta correspondencia entre el sistema operativo y el hardware al tratar los datos y los programas de los usuarios de acuerdo a la estructura lógica que ellos presenten. Y también se tiene un último requisito que básicamente es la organización física, que este debe ser parte de la administración de memoria, la organización del flujo de información entre la memoria principal y la memoria secundaria. También tenemos los esquemas de asignación de memoria. Bueno, básicamente existen dos tipos de esquemas de asignación de memoria. En primera instancia vamos a hacer la explicación acerca de esta partición fijas. Y y básicamente cuando hablamos de multiprogramación con particiones físicas eh cada uno de estos procesos no necesariamente van a tener el mismo tamaño que se tiene asignado para las particiones. Entonces, básicamente aquí puede existir espacios que puedan ser tal vez en algún momento inutilizados y estos básicamente se les denomina como fragmentación interna. Esto hace que no se utilice el total de la memoria, siendo una de las principales deficiencias de este esquema de asignación. Ahí como podemos observar en el ejemplo, se muestra que tenemos, bueno, una cola de trabajo, en la cual, bueno, cada uno tiene sus determinados procesos que van a ir ejecutándose. Y ahí en la parte derecha, bueno, tenemos lo que es la memoria principal. En primera instancia siempre va a estar el tema de arranque de lo que es el sistema operativo. Luego ahí tenemos la partición 1, la partición 2 y lo que es la partición 3. Entonces, básicamente eh cuando se tiene particiones, de manera fija, entonces lo que hace es que, por ejemplo, para la partición 1 tenemos una pequeña porción de del total, en este caso de la memoria, ¿no? Entonces, ahí podemos tener N procesos que podemos ejecutar, pero en el cabo de algún momento, obviamente eso no va a abarcar todo toda esa cola de trabajo. Entonces, ahí obviamente va a necesitar de otro espacio, pero básicamente como son particiones fijas, entonces este no va a poder hacer uso, por ejemplo, en la partición 2. Esa cola de trabajo, básicamente no va a poder utilizar otra partición que no sea básicamente la partición que corresponde, que en este caso sería la partición 1. Entonces, básicamente esa sería la deficiencia que se tiene en este esquema de multiprogramación con particiones fijas. Sin en cambio, se tiene también una multiprogramación con particiones variables, que básicamente este se va a ir dividiendo la memoria en bloques de tamaño diferentes. Y este puede ocurrir que el bloque más grande no pueda contener un programa dado, a pesar de que la suma de los espacios libres sean mayor que el tamaño del programa. A esto se le denomina fragmentación externa. Eso quiere decir, básicamente que, bueno, por encima tenemos ahí lo que son la cola de trabajo, en la cual, bueno, cada proceso está esperando su turno para poder ser asignado a la memoria principal. Ahí podemos observar en la primera pila de procesos, que básicamente tenemos, bueno, ejecutado en primera instancia lo que es el sistema operativo. Luego eh, bueno, un usuario en este caso nos dice 1500 K, entonces es asignado como segundo proceso. Luego se tiene ya lo que es el espacio libre.

[6:36]Luego viene otro proceso que necesita 2000 KB, entonces se asigna eh básicamente se le denomina como usuario B, entonces ahí observamos que está ocupando de manera dinámica ya lo que son las particiones, ¿no?. Ya no se tiene una partición fija, eh, básicamente, sino que ya se tiene una partición variable de acuerdo a la cantidad de datos que se van a ir, obviamente utilizando y almacenando dentro de esta memoria principal. Ahí podemos observar también que se tiene, bueno, una tercera pila de procesos, que básicamente tiene tenemos ahí el sistema operativo, usuario A, usuario B, y ahí viene también otro proceso que básicamente es el usuario C, quien necesita, dice, 1000 K nada más de dato que debe ser almacenado y utilizado dentro de la memoria principal. Y por último se tiene ya lo que es el usuario D, y básicamente ahí podemos observar que ya se han ido acomodando con una partición variable dentro de una memoria principal. Entonces, básicamente esos son los dos tipos de esquemas que, básicamente se los van a ir utilizando dentro de una administración de lo que es la memoria. Y básicamente debemos también de tomar muy en cuenta que es una memoria principal. La memoria principal en una computadora se denomina memoria de acceso aleatorio, que básicamente es un dispositivo físico que nosotros lo denominamos como memoria RAM. En la cual, bueno, todos los procesos se van a ir ejecutando de manera temporal dentro de esta memoria principal que es la RAM. Y obviamente cuando se va a apagar el equipo, entonces se va a borrar toda esa información. Entonces esta memoria eh principal denominado RAM, lo que hace es básicamente un almacenamiento de una copia de los sistemas principales que van a controlar el funcionamiento general de la computadora.

[8:29]También se hace lo que es el almacenamiento temporal de la información que se ha ingresado desde un dispositivo de entrada. Y también se hace el almacenamiento temporal de la información que se ha producido como resultado del procesamiento hasta que la aplicación solicite que estos datos se utilicen nuevamente en un procesamiento posterior. Y o que se transfieran a un dispositivo de salida o a un dispositivo de almacenamiento.

[9:00]Otra memoria también que debemos de tomar muy en cuenta es la memoria caché. Básicamente en informática se conoce como una memoria caché o también memoria del acceso rápido. A uno de los recursos con los que cuenta, bueno, básicamente la CPU o la Unidad Central de Procesamiento para poder almacenar de manera temporal los datos recientemente procesados en un buffer especial, es decir, en una memoria auxiliar. Y bueno, básicamente cuál sería la función que tiene esta memoria caché. Bueno, básicamente la manera en que va a funcionar este tipo de memoria es que cuando se va a iniciar un programa. Este va a comenzar a ejecutarse una serie de instrucciones que se van a encontrar en su código y van a ser gestionados por el procesador. Pero esta información primero se debe de cargar a lo que es la memoria RAM o más denominado memoria principal y luego recién pasar a lo que es al procesador. Pero para mejorar la eficiencia con la que este se va a procesar, este programa, entonces las instrucciones principales y también eh eh el código que se va a tener dentro de ese programa, se los van a utilizar y se los van a copiar directamente a lo que es la memoria caché. Y de esta manera el procesador va a poder tener acceso inmediato a ellas. Y básicamente mejorar el rendimiento de nuestra ejecución de nuestros procesos. Bien, entonces de esa manera es como funciona básicamente esta memoria caché. Otra de las memorias también bastantes comunes es lo que es la memoria virtual, que básicamente es una técnica utilizada por los sistemas operativos para acceder a una mayor cantidad de memoria de la físicamente disponible, recurriendo a soluciones de almacenamiento alternativas cuando se agota la memoria RAM instalada. En este artículo aprenderemos cómo funciona y qué debemos hacer para configurarla de manera óptima. Entonces, básicamente lo que hace es este, cuando se agota esa memoria física, que es la memoria RAM, entonces, de alguna manera se va a hacer el uso de lo que es la memoria virtual y esta memoria virtual generalmente eso lo utiliza del espacio disponible que se va a tener dentro de un dispositivo de almacenamiento que es el más conocido como disco duro. Entonces, ese a la vez también va a funcionar como una un almacenamiento de memoria, pero de manera virtual. Y así, básicamente cuando se va a ir trabajando con aplicaciones, por ejemplo, muy exigentes como ser más que todo los videojuegos, o tener tal vez varias, eh, aplicaciones funcionando al mismo tiempo, entonces eh ahí es donde podemos, básicamente, tratar de saturar lo que es la memoria física o la memoria RAM y hacer el uso de lo que es la memoria virtual. Y bien, espero que les haya gustado esta clase. Simplemente les invito a que puedan volver a repasar todos esos conceptos, ya que son bastante importantes. Y los veo en un siguiente video.

Need another transcript?

Paste any YouTube URL to get a clean transcript in seconds.

Get a Transcript