SISTEMAS OPERATIVOS II UNIDAD III

Get Started. It's Free
or sign up with your email address
SISTEMAS OPERATIVOS II UNIDAD III by Mind Map: SISTEMAS OPERATIVOS II UNIDAD III

1. Que es Memoria??

1.1. La memoria son varios mecanismos que contienen información por un período determinado. La memoria es uno de los principales recursos de la computadora, la cual debe de administrarse con mucho cuidado

1.2. Tipos de Memorias:                             Memoria real: la memoria real o principal es en donde son ejecutados los programas y procesos de una computadora y es el espacio real que existe en memoria para que se ejecuten los procesos. por lo general esta memoria es de mayor costo que la memoria secundaria, pero el acceso a la información contenida en ella es de más rápido acceso. solo la memoria cache es más rápida que la principal, pero su costo es a su vez mayor.                                                                                                                       Memoria virtual: El termino memoria virtual se asocia a dos conceptos que normalmente a parecen unidos:  1. el uso de almacenamiento secundario para ofrecer al conjunto de las aplicaciones la ilusión de tener mas memoria ram de la que realmente hay en el sistema. esta ilusión de existe tanto a nivel del sistema, es decir, teniendo en ejecución mas aplicaciones de las que realmente caben en la memoria principal, sin que por ello cada aplicación individual pueda usar mas memoria de la que realmente hay o incluso de forma mas general, ofreciendo a cada aplicación mas memoria de la que existe físicamente en la maquina. 2. ofrecer a las aplicaciones la ilusión de que están solas en el sistema, y que por lo tanto, pueden usar el espacio de direcciones completo. esta técnica facilita enormemente la generación de código, puesto que el compilador no tiene porque preocuparse sobre dónde residirá la aplicación cuando se ejecute.

2. Administración de Memoria

2.1. La parte del sistema operativo que administra la memoria se llama administrador de memoria y se encargar de coordinar y de administrar. ¿Como  hace esto? llevando 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.

2.2. Los sistemas de administración de memoria se pueden clasificar en dos tipos: los que corren los procesos de la memoria principal al disco y viceversa durante la ejecución y los que no. El propósito principal de una computadora es el de ejecutar programas, estos programas, junto con la información que accedan deben de estar en la memoria principal, durante la ejecución. Para optimizar el uso del CPU y de la memoria, el sistema operativo debe de tener varios procesos a la vez en la memoria principal, para lo cual pone de varias opciones de administrar tanto del procesador como de la memoria. La selección de uno de ellos depende principalmente del diseño del hardware para el sistema.

3. Conceptos

3.1. Superposiciones (Overlays) Para que un proceso pueda ser mayor que la cantidad de memoria que se le ha asignado, a veces se emplea una técnica llamada superposiciones (Overlays). Lo que busca es mantener en la memoria sólo las instrucciones y datos que se necesitan en cualquier momento dado. Si se requieren otras instrucciones, se cargan en un espacio que antes estaba ocupado por instrucciones que ya no se necesitan.

3.2. Swapping: Es un mecanismo o modo de interrelacionar la memoria principal (la que contiene el Programa en ejecución, los datos de proceso inmediato y los resultados intermedios) con la secundaria, de tal modo que se produce un intercambio de programas entre ambas cuyo resultado es la simulación de un sistema multitarea o la potenciación de memoria central a base de recursos de la memoria secundaria.

3.3. Carga dinámica su función principal es proteger  la carga en memoria de un modulo hasta que el programa lo llame,como también tenemos el "Enlace dinámico"  que es otro caso de carga dinámica , es que en el cual la biblioteca de código se enlazada cuando un determinado programa se ejecuta en posición contraria a un enlace estático que se produce en un tiempo de proceso de compilacion. Este tipo de enlace tiene grandes ventajas , por ejemplo: hace que el programa sea mas liviano y puede evitar las duplicaciones de código. Las bibliotecas de enlace dinámico, o bibliotecas compartidas, suelen encontrarse en directorios específicos del sistema operativo, de forma que, cada vez que un programa necesite usar alguna, el sistema operativo conozca el lugar en el que se encuentra, para así poder enlazarla y realizar correctamente la operación.

4. ESTADOS Y TRANSICIONES DE LOS PROCESOS

4.1. Un proceso puede estar en cualquiera de los siguientes tres estados: Listo, En ejecución y Bloqueado. Los procesos en el estado listo son los que pueden pasar a estado de ejecución si el planificador los selecciona. Los procesos en el estado ejecución son los que se están ejecutando en el procesador en ese momento dado. Los procesos que se encuentran en estado bloqueado están esperando la respuesta de algún otro proceso para poder continuar con su ejecución. Por ejemplo operación de E/S. Un proceso puede variar entre 5 distintos estados: New: cuando el proceso esta siendo creado. Running: cuando el proceso se esta ejecutando. Waiting: cuando el proceso esta esperando que se cumpla algún otro evento. Ready: cuando el proceso esta pronto para ejecutar, esperando por la CPU. Terminated: cuando el proceso esta terminado. Estado de los Procesos.Los bloques de control de los procesos se almacenan en colas, cada una de las cuales representa un estado particular de los procesos, existiendo en cada bloque, entre otras informaciones. Los estados de los procesos son internos del sistema operativo y transparentes al usuario.

4.2. TIPOS

4.2.1. Los estados de los procesos se pueden dividir en dos tipos: activos e inactivos. 1.- Estados activos: Son aquellos que compiten con el procesador o están en condiciones de hacerlo. Se dividen en: Ejecución. Estado en el que se encuentra un proceso cuando tiene el control del procesador. En un sistema monoprocesador este estado sólo lo puede tener un proceso. Preparado. Aquellos procesos que están dispuestos para ser ejecutados, pero no están en ejecución por alguna causa (Interrupción, haber entrado en cola estando otro proceso en ejecución, etc.). Bloqueado. Son los procesos que no pueden ejecutarse de momento por necesitar algún recurso no disponible (generalmente recursos de entrada/salida). 2.- Estados inactivos: Son aquellos que no pueden competir por el procesador, pero que pueden volver a hacerlo por medio de ciertas operaciones. En estos estados se mantiene el bloque de control de proceso aparcado hasta que vuelva a ser activado. Se trata de procesos que no han terminado su trabajo que lo han impedido y que pueden volver a activarse desde el punto en que se quedaron sin que tengan que volver a ejecutarse desde el principio.

5. Sincronizacion de procesos

5.1. La comunicación entre procesos: necesaria si se desea que varios procesos puedan colaborar para realizar una misma tarea. Sincronización === funcionamiento coordinado en la resolución de una tarea encomendada. El SO ofrece mecanismos básicos de comunicación, que permiten transferir cadenas de bytes. Deben ser los procesos que se comunican quienes interpreten el significado de las cadenas transferidas para su labor coordinada. Los mecanismos de comunicación y sincronización son dinámicos. Es decir, cuando se necesita un mecanismo de este estilo, se crea, usa y destruye, de forma que no se establezca de forma definitiva ningún mecanismo de comunicación, ya que ellos podrían producir efectos indeseados. Es decir, la comunicación es algo puntual.

5.2. Servicios Básicos de Comunicación

5.2.1. Los servicios básicos de comunicación son: a) crear: el proceso solicita la creación del mecanismo b) enviar o escribir: el proceso emisor envía información al proceso receptor c) recibir o leer: el proceso receptor recibe información d) destruir: el proceso solicita la destrucción del mecanismo de comunicación La comunicación puede ser síncrona y asíncrona: a) síncrona: los dos procesos han de ejecutar servicios de forma simultánea. El emisor ha de ejecutar el servicio enviar mientras el receptor ejecuta recibir. b) asíncrona: el emisor hace el envío y prosigue su ejecución. El SO ofrece un almacenamiento intermedio para guardar la información enviada, hasta que el receptor la solicite.