Está en la página 1de 9

Defina el estado DORMIDO de un proceso.

Consumidor se debía desactivar o dormir,


Que evento hace que el proceso transite a este estado?
variable COUNT y como era igual a 0, se duerme (sleep).
Defina semáforo. Que función cumple un semáforo?
Un semáforo es una variable entera destinada a contar el número de des-pertares
(wakeup) almacenados para su uso posterior. Un semáforo puede tener el valor 0, lo
que indica que no existen despertares o procesos pendientes almacena-dos; o bien
algún valor positivo si están pendientes uno o más despertares. El crea-dor de los
semáforos, E. W. Dijkstra, propuso dos operaciones, DOWN y UP (ge-neralizaciones
de SLEEP (dormir) y WAKEUP (despertar), respectivamente).
Porqué los semáforos garantizan la exclusión mutua?

Explique la técnica de transferencia de Mensajes.


Los mensajes son el método de comunicación entre procesos utilizados en entornos
centralizados y distribuidos. Un mensaje es una colección de información que se
puede intercambiar entre un proceso emisor y un proceso receptor. En la arquitectura
cliente-servidor, vimos que un proceso cliente se comunica con un proceso servidor a
través de mensajes. El cliente envía una solicitud y el servidor devuelve una
respuesta. Para ello se utilizan dos primitivas de sincronización que son llamadas al
sistema: Send (destino, &mensaje): utilizada para enviar un mensaje a un destino
determinado. Receive (origen, &mensaje): utilizada para recibir un mensaje desde un
origen determinado.
Qué información se almacena en la cabecera del mensaje?
En la cabecera se debe especificar quién envía el mensaje, es decir la dirección
origen; hacia quien va dirigido el mensaje, dirección destino; un número de secuencia
para el caso en que se envíen varios mensajes. Cuando se debe transmitir mucha
información entre un origen y un destino, los datos a transmitir se dividen en partes y
se construyen varios mensajes, a los cuales se les asigna un número de secuencia
diferente para distinguirlos en el destino a su llegada.

Actividades
A-Lea atentamente la unidad N° 3 y responda:
Que función cumple el Planificador de Procesos?
La finalidad del planificador es asignar procesos para que sean ejecutados por el
procesador o procesadores con el fin de obtener mejores tiempos de respuesta, mayor
productividad o rendimiento y eficiencia del procesador.
Cuales son los objetivos generales de la Planificación?
El objetivo principal de la planificación es optimizar el rendimiento del sistema y
proporcionar un buen servicio a todos los procesos que se encuentren en él.
En general, la planificación trata de cubrir los siguientes objetivos:

 Justicia. La planificación debe ser lo más justa posible con todos los procesos,
sin favorecer a unos y perjudicar a otros.
 Máxima capacidad de ejecución. Debe dar un servicio eficiente para que todos
los trabajos se realicen lo más rápidamente posible. Esto se puede lograr
disminuyendo el número de cambios de proceso.
 Máximo número de usuarios interactivos. En los sistemas de tiempo
compartido se tratará de que puedan estar trabajando el mayor número de
usuarios al mismo tiempo.
 Predecibilidad. La planificación debe realizarse de tal forma que en todo
momento pueda saberse como será su ejecución.
 Minimización de la sobrecarga. La computadora debe tener poca sobrecarga
ya que ésta afecta directamente al rendimiento final del sistema: a menor
sobrecarga mayor velocidad de proceso.
 Equilibrio en el uso de recursos. Para obtener un mayor rendimiento en el uso
de los recursos y que estos estén ocupados equitativamente el mayor tiempo
posible.
 Seguridad de las prioridades. Si un proceso tiene mayor prioridad que otro,
éste debe ejecutarse más rápidamente.
 Evitar la postergación indefinida. Esto se logra aumentando la prioridad de un
proceso mientras espere por un recurso. La prioridad llegará a ser tan alta que
al proceso le será asignado el recurso que pidió.
Explique la función de cada Nivel de Planificación.
Planificador a largo plazo (Planificador de trabajos)
Cada vez que un usuario inicia la ejecución de un programa, el planificador a largo
plazo recibe la orden de ejecución, crea el proceso correspondiente y lo pasa al
planificador a corto plazo, colocándose en la cola de procesos listos. Este planificador
es, por tanto, el encargado de crear los procesos. Cada vez que termina un trabajo, el
planificador tomará la decisión de añadir uno o más trabajos nuevos.
Planificador a mediano plazo (planificador de intercambio)
Este planificador decide si un proceso que está en estado bloqueado o suspendido
debe ser retirado de la memoria temporalmente. Posteriormente, cuando el sistema se
encuentra mas descargado, devolverá dicho proceso a la memoria y al estado de
ejecución. Esta técnica se conoce con el nombre de intercambio (swapping). Este
nivel, por tanto, gestiona los procesos suspendidos en espera de algún recurso no
disponible en el momento de la suspensión.
Planificador a corto plazo (Planificador del procesador)
El planificador acorto plazo también conocido como despachador, es el en- cargado de
decidir cómo y cuándo tendrá acceso al procesador un proceso que está listo para
utilizarlo. Solo considera los procesos que están en memoria. Ha de ser rápido y
eficiente ya que se ejecuta muy a menudo. Este nivel, es donde se debe de dar un
buen servicio a los procesos para que el usuario no perciba, o lo haga un pequeño
grado, que esta compitiendo por el procesador junto con otros usuarios
Explique el Algoritmo de Planificación FIFO, de ventajas y desventajas.
FIFO ofrece variaciones relativamente pequeñas en los tiempos de respuesta y por lo
tanto es más predecible que los otros esquemas. No es útil en la planificación para los
usuarios interactivos porque no puede garantizar buenos tiempos de respuesta.
El esquema FIFO rara vez se usa como esquema principal en los sistemas actuales,
pero a menudo está incorporado en otros sistemas.
Este es un algoritmo que no usa apropiación, y que consiste en atender a los procesos
por estricto orden de llegada a la lista de procesos listos. Cada proceso se ejecuta
hasta que termina, o hasta que hace una llamada bloqueante de E/S. Se trata de una
política muy simple y sencilla de llevar a la práctica, pero muy pobre en cuanto a su
comportamiento.
Las características principales de este algoritmo son las siguientes:

 No es apropiativa
 Es justa, aunque los procesos largos hacen esperar mucho a los cortos.
 Es una política predecible
Explique el Algoritmo de Planificación ROUN ROBIN, de ventajas y desventajas.
Uno de los más antiguos, sencillo, justo y de uso más amplio es el Algoritmo de
Planificación Round Robin. Cada proceso tiene asignado un intervalo detiempo de
ejecución, llamado su quantum. Durante este tiempo se le permitirá ejecutarse a dicho
proceso. Si al finalizar su quantum el proceso se sigue ejecutando, se le quita el
procesador y se le asigna a otro proceso.

 El único aspecto interesante del Round Robin es la longitud del quantum. La


alternancia entre un proceso y otro necesita cierta cantidad de tiempo para ad-
ministración.
 Mucho costo administrativo
 Mejora el aprovechamiento del sistema en general.
Explique el Algoritmo de Planificación Por Prioridad, de ventajas y desventajas.
En el algoritmo de planificación por prioridad, la idea fundamental es simple: cada
proceso tiene asociada una prioridad y el proceso ejecutable con máxima prioridad es
el que tiene el permiso de ejecución.

 Si la prioridad del siguiente proceso con alta prioridad es mayor, se alternan los
procesos. Las prioridades se pueden asignar en forma estática o dinámica. Las
prioridades en forma estática se dan cuando se asignan en función del tipo de
usuario.
 El sistema también podría asignar prioridades en forma dinámica con el fin de
mejorar la performance. Por ejemplo, algunos procesos están muy dedicados a
la E/S y pasan casi todo el tiempo esperando que terminen las operaciones de
E/S y consumen muy poco tiempo de procesador.
Explique el Algoritmo de Planificación Colas Multiples, de ventajas y
desventajas.
El objetivo principal de este algoritmo es reducir el costo administrativo que resulta del
intercambio entre procesos, sobretodo cuando el tiempo de quantum es muy corto. El
algoritmo consiste en establecer clases de prioridad, donde a cada una de ellas se les
asigna una cantidad de quantums.

 proceso demasiado largo


 . Este algoritmo tiende a beneficiar a los usuarios interactivos.
CLASE 7
Actividades
A-Lea atentamente la unidad N° 4 y responda:
Cuál es la función del administrador de memoria?
Su labor consiste en llevar el 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 liberarlo cuando terminen. Así como administrar el intercambio
entre la memoria principal y el disco, en los casos en que la memoria principal no
pueda albergar a todos los procesos.
Cuáles son las características de la adm. de memoria en la monoprogramación?
La forma más simple de administrar memoria es ejecutando sólo un programa a la vez,
compartiendo la memoria con el sistema operativo. Por ejemplo,
MS-DOS, en direcciones crecientes de memoria: Sistema operativo; programa de
usuario; manejadores de dispositivos (en ROM). Cuando el usuario digita un comando,
el sistema operativo carga el programa correspondiente en la memoria, y lo ejecuta.
Cuando el programa termina, el sistema operativo solicita un nuevo comando y carga
el nuevo programa en la memoria, sobrescribiendo el anterior.
Explique y ejemplifique la administración de memoria con particiones fijas y con
particiones variables.
La multiprogramación con particiones fijas consiste en dividir la memoria en n partes
de tamaño fijo los cuales pueden tener diferente tamaño.
La idea de fijo significa que las particiones se establecen, por ejemplo en forma
manual y permanecen durante la ejecución del sistema. De esta forma es posible tener
multiprogramación ya que a cada proceso se le asigna una partición en la memoria y
permanece allí hasta que finaliza su ejecución.

De las ventajas y desventajas de cada administración planteada en el punto


anterior.
VENTAJAS:

 Su administración es relativamente simple, pues para guardar información del


estado del recurso se debe tener un registro de cada zona (libre u ocupada).
 La protección entre usuarios se puede realizar mediante el mecanismo de
llaves de memoria o utilizando el registro base y la longitud de la zona.
DESVENTAJAS:

 Se hace una mala utilización de la memoria debido a la poca flexibilidad del


método.
 Es complicado correr programas más grandes que el tamaño de la partición.
 Se presenta fragmentación interna. Este fenómeno ocurre cuando un proceso
no ocupa toda la memoria asignada y sin embargo el espacio libre no puede
ser utilizado por ningún otro proceso

Defina y diferencie fragmentación interna y externa.


Se dice la fragmentación interna es el espacio de memoria no utilizado y que no
puede ser asignado a ningún otro proceso.
Se da cuando se desocupa una partición muy grande y el siguiente proceso en la cola
es de un tamaño muy pequeño.
Al partirse la memoria en bloques de tamaño diferente, puede ocurrir que el bloque
más grande no pueda contener un programa dado, a pesar que la suma de los
espacios libres sea mayor que el tamaño del programa. A esto se le denomina
fragmentación externa.
Explique la técnica para Registrar el uso de la Memoria por Mapas de Bits.
Con un mapa de bits la memoria se divide en unidades de asignación. A cada unidad
de asignación le corresponde un bit en el mapa de bits, el cual toma el valor de cero
(0) si la unidad está libre y de uno (1) si está ocupada.
El tamaño de la unidad de asignación define qué tan grande será el mapa de bits. Si la
unidad de asignación es pequeña, el mapa de bits será mayor, caso contrario ocurre si
la unidad de asignación es grande. Sin embargo, si se define demasiado grande
puede generar problemas de fragmentación interna.
Cuando un proceso, solicita un espacio de tamaño k unidades, el sistema debe buscar
una cadena de k bits de ceros consecutivos.
Explique la técnica para Registrar el uso de la Memoria por Lista Ligada.
Otra forma de mantener un registro de la memoria es mediante una lista ligada de los
segmentos de memoria asignados o libres, en donde un segmento puede ser un
proceso o un hueco entre dos procesos.
Esta lista puede estar ordenada por direcciones en cuyo caso la actualización de la
misma al terminar un proceso es casi que inmediata. Un proceso que termina tiene por
lo general dos vecinos (uno por arriba y uno por abajo), a menos que se encuentre en
algún extremo de la memoria.
Se pueden utilizar diversos algoritmos para asignar la memoria para un proceso de
reciente creación:
Enumere y explique los algoritmos de búsqueda de porciones libres que pueden
implementarse sobre una Lista Ligada.

 FIRST FIT o el Primero en Ajustarse: El administrador de memoria revisa toda


la lista de segmentos hasta encontrar un espacio lo suficientemente grande. El
espacio se divide entonces en dos partes, una para el proceso y otro para la
memoria no utilizada.
 Siguiente en Ajustarse: Funciona de la misma forma que el anterior, con la
diferencia que mantiene un registro del lugar dónde se encuentra un hueco
adecuado. La siguiente vez que se le llama, comienza a buscar desde el punto
donde se detuvo, en lugar de comenzar a buscar siempre desde el inicio.
 Best-Fit o el Mejor en Ajustarse: Busca en toda la lista y toma el mínimo hueco
adecuado. En lugar de asignar un hueco grande, intenta encontrar un hueco
más cercano al tamaño necesario.
 El peor ajuste: Toma siempre el hueco más grande disponible, de forma que el
hueco resultante sea lo suficientemente grande para ser útil para otro proceso.
B-Para investigar:
En qué consiste la reubicación dinámica? Explique

Reubicación, Enlace dinámico:

􀂄Similar a la carga dinámica, pero efectuando


el enlace en tiempo de ejecución:
bibliotecas dinámicas (DLL).
•Las bibliotecas del sistema no se enlazan de forma
estática a los programas. Los programas incluyen
un fragmentoen la imagen por cada referencia a una
rutina.
•Este fragmento permite localizar y en su caso
cargar la rutina necesaria en tiempo de ejecución.
•Una vez localizada la rutina, el fragmento se
sustituye en la imagen por la dirección de la rutina.
􀂄Ejemplos de enlace dinámico:
•UNIX: shared libraries (shlib)
•Windows: dynamic load libraries (dll).

Necesita la capacidad de reubicación


dinámica, es decir, poder mover un programa
de una región a otra de la memoria principal,
sin invalidar las referencias a la memoria del
programa.
CLASE 8
Actividades
Lea atentamente la unidad y responda:
En qué consiste el método de paginación de la memoria?
Consiste en dividir el programa en trozos de igual tamaño llamados páginas. Algunas
de estas páginas se cargan en memoria y otras se almacenan en el disco rígido,
mientras se ejecuta el proceso. La técnica consiste en ir llevando a la memoria sólo las
páginas que va necesitando el proceso para ejecutarse correctamente. Las páginas
que ya no se necesitan, pueden almacenarse nuevamente en el disco.
Cuál es la función de la tabla de páginas. Cuáles son sus campos?
La dirección virtual se compone de dos partes: una página y un desplazamiento. La
primera sirve para encontrar la entrada correspondiente en la tabla de páginas, en
donde se encuentra la dirección del marco de página correspondiente. A esta se le
suma el desplazamiento para encontrar la dirección real correspondiente.
Diga cuales son las ventajas de la paginación y cuales las de la segmentación.
Paginación:

 Una de las ventajas de la memoria virtual es que se puede incrementar el


grado de multiprogramación, ya que se pueden tener en ejecución muchos más
programas en la memoria, ya que de cada uno de ellos, se tiene cargado sólo
una parte.

Segmentación:
 La ventaja de la segmentación es que evita la fragmentación interna, ya quelos
segmentos se definen del tamaño que se requiera y que facilita la protección
de la memoria.
Explique cómo trabaja una memoria segmentada y paginada.
En este método las direcciones virtuales se componen de tres partes: un segmento,
una página y un desplazamiento (offset). La primera sirve para encontrar la entrada en
la tabla de segmentos en donde se encuentra la dirección donde comienza la página,
con la segunda componente se encuentra la entrada correspondiente a la página y allí
la dirección del marco de página que junto con el desplazamiento dan la dirección real.
Una ventaja de este método es que permite mantener una estructura de segmentación
sin conducir a fragmentación externa. Además permite mantener las tablas de páginas
en memoria auxiliar.
En qué consiste el intercambio?
Se denomina intercambio (Swapping) a la acción que realiza el sistema operativo de
llevar desde la memoria hacia el disco procesos que momentáneamente no se
ejecutan, para liberar cierta cantidad de memoria, necesaria para las tareas del
sistema operativo. Y también la acción opuesta, que es llevar procesos desde el disco
a la memoria, para su activación.
Hay tres tareas bien definidas en la administración por swapping
a) Administración del área de swapping (en el disco).
b) El algoritmo de intercambio desde la memoria hacia el disco.
c) El algoritmo de intercambio desde el disco hacia la memoria.
Defina:

 Fallo de pagina
Cuando un proceso se esta ejecutando puede suceder que la instrucción a ejecutar no
se encuentre en las páginas cargadas en memoria, entonces el proceso solicita se le
cargue las paginas que necesita para poder seguir ejecutándose. Esta situación no
genera una interrupción por E/S, el proceso es suspendido transitoriamente y el
administrador de procesos realiza un procedimiento que se denomina excepción por
Fallo de página.

 Prepaginación
El proceso swapper es el encargado de subir a memoria y de bajar a disco a los
procesos que se están ejecutando y también de administrar el espacio libre. Para
poder administrar este espacio lleva un registro en una tabla que se mantiene en la
memoria que se conoce como map.
Este método de administración es optimo cuando la cantidad de memoria disponible
es lo suficiente grande y los procesos en ejecución son pocos o que ocupan poco
espacio.

 Paginación por demanda.


La diferencia con la administración por intercambio es que en vez de levantar todo un
proceso completo, levanta una porción (paginas o segmentos) del mismo. Esto obliga
al swapper tener un registro adicional de para poder ubicar las paginas de los
procesos alojados en el área de intercambio. El área de swapping esta dividido en
fragmentos del mismo tamaño que tienen las paginas.
CLASE 9
Actividades
Investigue: En la gestión de memoria bajo demanda se necesita que todo el
trabajo esté en memoria principal.
a- verdadero b- falso
La gestión de memoria particionada se inventó para:

 Distribuir mejor la memoria


 Permitir la multiprogramación.
 Permitir el uso de memoria virtual.
Supóngase que en una memoria paginada se tiene un campo de dirección de 24
Bits. Cuántos segmentos puede tener un espacio de dirección si se quiere
reservar 14 bits para desplazamiento?
Cual es la función de un algoritmo de reemplazo de página? Explique al menos
dos de ellos.
En qué consiste la Hiperpaginación?
Cual es la diferencia entre conjunto residente y conjunto de trabajo?
Porqué el principio de cercanía es crucial para la memoria virtual?

También podría gustarte