examen2uniid

13
EXAMEN DE SISTEMAS OPERATIVOS(II UNIDAD) 1.Considere un Sistema de Intercambio en el que la memoria tiene agujeros con siguientes tamaños:10k, 4k, 20k, 18k, 7k,9k,12k, y 15k. ¿cuál agujero se toma cuando hay solicitudes de segmento sucesivas de 12k, 10k, y 9k si se usa su primer ajuste? Repita usando mejor ajuste , peor ajuste y siguiente ajuste. pa el 1º ajuste seria 12k entra en 20k, 10k entra en 10k y 9k entra en 18k pa el mejor ajuste seria 12k entra en 12k, 10k entra en 10k y 9k entra en 9k pa el peor ajuste seria 12k entra en 20k, 10k entra en 18k y 9k entra en 15k pa el sgte ajuste seria 12k entra en 20k, 10k entra en 18k y 9k entra en 9k Primer ajuste: Consiste en asignar el primer hueco con capacidad suficiente. La búsqueda puede iniciar ya sea al inicio o al final del conjunto de huecos o en donde terminó la última búsqueda. La búsqueda termina al encontrar un hueco lo suficientemente grande. Mejor ajuste: Busca asignar el espacio más pequeño de los espacios con capacidad suficiente. La búsqueda se debe de realizar en toda la tabla, a menos que la tabla esté ordenada por tamaño. Esta estrategia produce el menor desperdicio de memoria posible. Peor ajuste: Asigna el hueco más grande. Una vez más, se debe de buscar en toda la tabla de huecos a menos que esté organizada por tamaño. Esta estrategia produce los huecos de sobra más grandes, los cuales pudieran ser de más uso si llegan procesos de tamaño mediano que quepan en ellos. Siguiente ajuste: es lo mismo k el 1º ajuste solo k aki vas a continuar analizando desde el punto donde se kedo en la ultima buskeda ps 2.- Una maquina tiene un espacio de direcciones de 32 bits y paginas de 8k .La tabla de paginas esta totalmente en hardware , con una palabra de 32 bits por cada entrada.

Upload: steven-cerna-mejia

Post on 25-Jul-2015

198 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: examen2uniid

EXAMEN DE SISTEMAS OPERATIVOS(II UNIDAD)

1.Considere un Sistema de Intercambio en el que la memoria tiene agujeros con siguientes tamaños:10k, 4k, 20k, 18k, 7k,9k,12k, y 15k. ¿cuál agujero se toma cuando hay solicitudes de segmento sucesivas de 12k, 10k, y 9k si se usa su primer ajuste? Repita usando mejor ajuste , peor ajuste y siguiente ajuste.

pa el 1º ajuste seria 12k entra en 20k, 10k entra en 10k y 9k entra en 18kpa el mejor ajuste seria 12k entra en 12k, 10k entra en 10k y 9k entra en 9kpa el peor ajuste seria 12k entra en 20k, 10k entra en 18k y 9k entra en 15kpa el sgte ajuste seria 12k entra en 20k, 10k entra en 18k y 9k entra en 9k

Primer ajuste: Consiste en asignar el primer hueco con capacidad suficiente. La búsqueda puede iniciar ya sea al inicio o al final del conjunto de huecos o en donde terminó la última búsqueda. La búsqueda termina al encontrar un hueco lo suficientemente grande.

Mejor ajuste: Busca asignar el espacio más pequeño de los espacios con capacidad suficiente. La búsqueda se debe de realizar en toda la tabla, a menos que la tabla esté ordenada por tamaño. Esta estrategia produce el menor desperdicio de memoria posible.

Peor ajuste: Asigna el hueco más grande. Una vez más, se debe de buscar en toda la tabla de huecos a menos que esté organizada por tamaño. Esta estrategia produce los huecos de sobra más grandes, los cuales pudieran ser de más uso si llegan procesos de tamaño mediano que quepan en ellos.

Siguiente ajuste: es lo mismo k el 1º ajuste solo k aki vas a continuar analizando desde el punto donde se kedo en la ultima buskeda ps

2.- Una maquina tiene un espacio de direcciones de 32 bits y paginas de 8k .La tabla de paginas esta totalmente en hardware , con una palabra de 32 bits por cada entrada. Cuando un proceso inicia, la tabla de paginas se copia en el hardware desde la memoria, a razon de una palabra cada 100ns.Si cada proceso se ejecuta durante 100 ms (incluido el tiempo que toma cargar la tabla de paginas) ¿qué fraccion del tiempo de cpu se dedica a cargar las tablas de las pags.

3) una pc tine 4 marcos de pg. A continuación semuestran el tiempo de carga, el tiempo de ultimo acceso y los bits RyM para cada pagina (los tiempo estan en tics del reloj) explique para cada caso.

Pagina carga ultima Ref. R M0 126 279 0 01 230 260 1 02 120 272 1 13 160 280 1 1

Page 2: examen2uniid

a.- cual pag se reemplaza si se usa NRU? b.- cual pag se reeemplaza si se usa FIFO

c.- cual pag se reeemplaza si se usa LRUD.- cual pag se reeemplaza si se usa SEGUNDA OPORTUNIDAD

Cada línea requiere de 3200 × 8 = 25,600 muestras / seg. A 1 de μsec por muestra, cada línea ocupa 25,6 ms de tiempo del procesador cada segundo. Con 39 líneas, el procesador está ocupado por 39 × 25,6 = 998,4 ms cada segundo, lo que da la capacidad de la tarjeta como 39 líneas.

4.- UNA PC CUYOS PROCESOS TINENE 1024 PAGS EN SUS espacios de direcciones mantiene sus tablas de pags en la memoria. El gasto extra requerido para leer una palabra de la tabla de pags es de 500ns. Con el objeto de reducir este gasto extra, la pc tiene TLB, que contiene 32 pares (pagina virtual, marco de pagina fisico) y puede realizar una consulta en 100ns ¿QUÉ TASA DE ACIERTOS SE NECESITA PARA REDUCIR EL GASTO MEDIO A 200ns?

5.- explique en forma precisa acerca de a) Hiperpaginacion , b) Conjunto de trabajo, c) Marco de pagina , d)TLB, e)MMU.

a) Hiperpaginacion.- Se denomina Hiperpaginación a la situación en la que una creciente cantidad de recursos son utilizados para hacer una cantidad de trabajo cada vez menor.

b) Conjunto de trabajo.- conjunto de páginas que un proceso usa en un determinado momento

es un conjunto de páginas a las que se hace referenciaactivamente en un

proceso

c) Marco de página.-los sistemas de paginación de memoria dividen los programas en pequeñas partes o páginas. Del mismo modo, la memoria es dividida en trozos del mismo tamaño que las páginas llamados marcos de página. De esta forma, la cantidad de memoria desperdiciada por un proceso es el final de su última página, lo que minimiza la fragmentación interna y evita la externa.

Page 3: examen2uniid

e) MMU.- Es un dispositivo de Hardware formado por un grupo de circuitos integrados, responsable del manejo de los accesos a la memoria por parte de la Unidad de Procesamiento Central (CPU).d) TLB.- Translation Lookaside Buffer (TLB) es una memoria caché administrada por la MMU, que contiene partes de la tabla de paginación, es decir, relaciones entre direcciones virtuales y reales. Posee un número fijo de entradas y se utiliza para obtener la traducción rápida de direcciones. Si no existe una entrada buscada, se deberá revisar la tabla de paginación y tardará varios ciclos más, sobre todo si la página que contiene la dirección buscada no está en memoria primaria (véasememoria virtual). Si en la tabla de paginación no se encuentra la dirección buscada, saltará una interrupción conocida como fallo de página.

6) El algoritmo de Banquero en cual tipo de estrategia se encuentra .Desarrolle el algoritmo

PROCESO UNIDADES DE MEMORIA

UNIDADES DEL DISCO

USADOS mAXIMO USADO MAXIMOWORD 5 9 3 4EXEL 1 6 5 6VISUAL BASIC 4 7 7 9DISPONIBLE DE MEMORIA : 3 DISPONIBLE DE DISCO: 2

Llamado también negativa de asignación de recursos

Existe un banco que tiene una reserva limitada de dinero a prestar y

clientes con línea de crédito. Un cliente pide dinero y no hay garantía

de que haga reposiciones hasta que saque la cantidad máxima. El

banco puede rechazar el préstamo si hay riesgo de que no tenga

fondos para prestar a otros clientes

Viéndolo como Sistema Operativo, los clientes serían los

procesos, el dinero a prestar los recursos y el banquero el S.O.

Para este algoritmo es importante considerar los siguientes puntos:

Estado. Es la asignación actual de los recursos a los procesos.

Page 4: examen2uniid

Matriz demanda (o máximo necesario). Son las exigencias

máximas de recursos para cada proceso.

Matriz asignación. Son las asignaciones actuales de recursos

para cada proceso.

Vector disponible. Cantidad total de recursos sin asignar a los

procesos.

Estado seguro. Es un estado en el que existe al menos un

orden en el que todos los procesos pueden ejecutar hasta el

final sin generar interbloqueo.

Cuando un proceso realiza una solicitud de recursos, se supone

que se concede, se actualiza el estado y se toma una decisión. Si se

llega a un estado seguro, se concede la petición. Si se llega a uno

inseguro, se rechaza y el proceso es bloqueado.

A continuación se presenta un ejemplo:

Utilizando el algoritmo del banquero resuelva el siguiente problema,

indicando el orden en que los procesos pasan a ser estados seguros

evitando el problema del interbloqueo.

Lista de procesos: P1-P3-P4-P0 ó P2

A la derecha se tienen 5 procesos, cada uno tiene recursos de

tipo A, B y C. En la primer columna de asignados está la cantidad de

recursos que el proceso ha obtenido a lo largo de un tiempo; en la

segunda columna de Máximo Necesario, están los recursos que tiene

que obtener de cada tipo para comenzar a ser ejecutado. Por

ejemplo, el P0 no ha obtenido ningún recurso del tipo A, sólo 1 del

Page 5: examen2uniid

tipo B y ninguno del tipo C, y necesita para ejecutarse haber

conseguido 7 del A, 5 del B y 3 del C.

En la última columna se tienen los recursos disponibles que da el

sistema, los que se pueden utilizar con todos los procesos. Hay 3 del

A, 3 del B y 2 del C.

El algoritmo del banquero trata de asegurar qué proceso tiene un

“estado seguro” es decir, se requiere alcanzar el máximo requerido

entre los que estén en Asignados y los que se encuentren en

Disponibles.

Ejemplo: El proceso 0 no está en estado seguro. Si se suman

Asignados + Disponibles para cada uno de los recursos A, B y C,

realmente no se alcanzan los Máximos Requeridos.

Entonces se va al proceso 1 y se trata de hacer lo mismo,

sumar Asignados + Disponibles. Allí sí se tiene un ESTADO SEGURO, A

con 5, B con 3 y C con 2, y como se alcanza a llenar los Máximos, ese

proceso se ejecuta.

Una vez que el proceso se ejecutó, entonces se procede a SUMAR los recursos asignados del proceso anterior a los disponibles. Hay que recordar que el proceso al terminar de ejecutarse libera todos sus recursos, por lo tanto pasan tanto los de tipo A, B y C a sumarse con los disponibles 3-3-2 y se tendrán nuevos DISPONIBLES que repartir, siendo ahora éstos 5-3-2.

Con estos se pasa al proceso P2 y así sucesivamente.

Ventajas del algoritmo del banquero:

No es necesario expulsar y hacer retroceder procesos como en

la detección del interbloqueo.

Es menos restrictivo que la prevención.

Desventajas:

Page 6: examen2uniid

Se debe conocer la máxima demanda de recursos por

anticipado.

La ejecución de los recursos no debe estar forzada por la

sincronización.

Se tiene un número fijo de procesos y recursos.

Los procesos no finalizan mientras retengan recursos.

7. POQ LOS ARCHIVOS DE SALIDA PARALA IMPRESORA NORMALMENTE SE COLOCAN EN UN PAPEL SPOOL DEDISCO ANTES DE IMPRIMIR ? EXPLIQ DETALLADAMENTE

Un archivo Spool es como un archivo temporal. Ese archivo temporal se crea mediante un archivo PRT (Printer file). Así cuando imprimimos, siempre antes se crea el Spool, y luego ese archivo es el que se manda a la impresora. 

8. Expliq en forma precisa a) BLOQUEO MUTUO , B)compactación, c) Manejador de interrupciones , d) Relocalizacion y e)intercalación

BLOQUEO MUTUOUn interbloqueo o bloqueo mutuo se puede definir como el bloqueo permanente de un conjunto de procesos que compiten por los recursos del sistema. un ejemplo puede ser el de dos niños que intentan jugar al arco y flecha, uno toma el arco, el otro la flecha. Ninguno puede jugar hasta que alguno libere lo que tomó.

un proceso puede emplear un recurso siguiendo la siguiente secuencia:

1. Solicitud: si la solicitud no puede ser concedida inmediatamente, entonces el proceso solicitante tendrá que esperar hasta que pueda adquirir el recurso.

2. Uso: el proceso puede operar sobre el recurso. 3. Liberación: el proceso libera el recurso.

Un interbloqueo se puede dar en las siguientes condiciones necesarias:

Exclusión mutua: al menos un recurso debe estar en modo no compartido.

Retención y espera: un proceso debe estar reteniendo al menos un recurso y esperando para adquirir otros recursos adicionales.

Sin desalojo: los recursos solo pueden ser liberados voluntariamente por el proceso que los retiene.

Esperar circular: debe existir un conjunto de procesos en espera, tal que cada proceso esté esperando a un recurso determinado.

Page 7: examen2uniid

Cuando ocurre un interbloqueo lo podemos tratar de tres formas:

La utilización de un protocolo para evitar los interbloqueos, asegurando que el sistema nunca entre en estado de interbloqueo.

Permitir que el sistema entre en un estado de interbloqueo, detectarlo y realizar una recuperación.

Ignorar los interbloqueos en el sistema.

Para tratar los interbloqueos, existen los algoritmos de prevención de interbloqueos, los cuales restringen el modo en que pueden hacerse las solicitudes, estas restricciones aseguran que al menos una de las condiciones necesarias para que haya interbloqueo no se produzca y, por tanto no pueda aparecer interbloqueos. El contra de utilizar estos algoritmos es de que se da una baja tasa de utilización de los dispositivos y un menor rendimiento del sistema.

COMPACTACION

Cuando un proceso llega y necesita memoria, el sistema operativo busca en la tabla de huecos alguno lo suficientemente grande para el proceso. Si el hueco es muy grande, lo parte en dos. Una parte es asignada al proceso y la otra se identifica como hueco. Cuando el proceso termina y la memoria es liberada, el espacio es identificado como un hueco más en la tabla y si el nuevo hueco es adyacente con otro, ambos huecos se unen formando un solo hueco más grande. En ese momento se debe de checar si no existen procesos a los que este nuevo hueco pueda darles cabida.

MANEJADOR DE INTERRUPCIONESUn manejador de interrupciones, también conocida como una rutina de interrupción de servicio (ISR), es una subrutina de devolución de llamada en un sistema operativo o el controlador de dispositivo de cuya ejecución se desencadena

por la recepción de una interrupción. Controla el servicio a los requerimientos instantáneos

RELOCALIZACION

La Relocalización consiste en ajustar las direcciones de un programa al sitio donde fue

cargado, para que este pueda ser ejecutado. Este proceso es indispensable para poder tener

multiprogramación, puesto que un programa no siempre va a ocupar las mismas posiciones

de memoria.

INTERCALACION

Page 8: examen2uniid

Se usa para acelerar el acceso a memoria principal. Habitualmente mientras unaposición de una banco de memoria está siendo accedida, no puede estar en cursoninguna otra referencia a ese banco. Con la intercalación de memoria, situandoalternativamente conjuntos de posiciones en diferentes bancos de memoria se permite elacceso simultaneo a posiciones sucesivas de memoria principal.

DESPACHADOR

Es el que se va a encargar realmente de mandar el control de la C.P.U. a un proceso de la cola de ejecutables. Se encarga del planificador a corto plazo y asigna procesos a la C.P.U.

El funcionamiento de esto tiene varios pasos:

Decide si se debe cambiar el proceso que está activo. Si se debe cambiar * Paso b.

Si no se debe cambiar * Devuelve el control al proceso activo

Salva el entorno volátil del proceso actual.

Toma el primer proceso de la cola de preparados o ejecutables.

Carga el entorno volátil del proceso elegido (el contenido del P.C.B.).

Cede el control al proceso y lo pone en modo usuario.

La actuación del despachador se invoca por alguna de las siguientes razones:

o Un proceso finaliza.

o El S.O. decide que el proceso activo no debe seguir ejecutándose. Ejemplo: E/S o espera a la finalización de los procesos hijos.

o El proceso agota su quantum de tiempo.

o Un proceso cambia de estado de bloqueado a ejecutable.

SCHEDULER, EL PLANIFICADOR DE PROCESOS.En un sistema multiusuario de tiempo compartido la elección de qué proceso se ejecuta en un intervalo de tiempo determinado la hace un segmento de código que recibe el nombre de schedulerUna vez que el scheduler se encarga de localizar un proceso con las características adecuadas para comenzar su ejecución, es otra sección de código llamada dispatcher la que se encarga de substituir el contexto de ejecución en el que se encuentre el procesador, por el contexto del proceso que queremos correr

Page 9: examen2uniid

9. Expliq lascondiciones del BLOQUEO MUTUO y determine como se dan en Windows y Linux

Mutex (MUTual Exclusion)

También conocidas como condiciones de Coffman por su primera descripción

en 1971 en un artículo escrito porE.G.Coffman.

Estas condiciones deben cumplirse simultáneamente y no son totalmente

independientes entre ellas.

Sean los procesos Po, P1,.. Pn y los recursos Ro, R1,..., Rm:

Condición de exclusión mutua: Existencia al menos de un recurso

compartido por los procesos, al cual sólo puede acceder uno simultáneamente.

Condición de Posesión y espera: Al menos un proceso Pi ha adquirido un

recurso Ri, y lo mantiene mientras espera al menos un recurso Rj que ya ha

sido asignado a otro proceso.

Condición de no expropiación: Los recursos no pueden ser apropiados por

los procesos, es decir, los recursos sólo podrán ser liberados voluntariamente

por sus propietarios.

Condición de espera circular: Dado el conjunto de

procesos P0...Pn, P0 está esperando un recurso adquirido por P1, que está

esperando un recurso adquirido porP2, que...,que está esperando un recurso

adquirido por Pn, que está esperando un recurso adquirido por P0. Esta

condición implica la condición de retención y espera.

En Windows y en Linux se dan una forma similar:Normalmente, éste problema se produce cuando en un sistema de llamadas a datos o recursos del sistema pelean diferentes hilos de ejecución por la misma acción concurrente.

Este ejemplo es uno de los más comunes para entender lo que es el bloqueo mutuo. Cuatro coches en una intersección de caminos que cada uno bloquea al otro, por lo que existe un interbloqueo que no tiene por tanto una solución sencilla ya que para que cada uno se pueda mover se ha de mover el de delante suya.

Page 10: examen2uniid

10. Expliq ladiferencia entre INTERCAMBIO Y MEMORIA VIRTUAL . Realice un ejemplo en un esquema cada uno.

MEMORIA VIRTUALSu idea principal de la memoria virtual es: el tamaño del programa datos y la pila de ejecución pueden exceder la cantidad de memoria real disponible para el

la idea es que el tamaño combinado de la pila, programa y datos puede exceder la memoria física disponible para ello. El S.O. mantiene en memoria aquellas partes del programa que se deben permanecer en memoria(q se necesitan ) y el resto lo deja en disco, las partes entre el disco y la memoria se intercambian de modo que se vayan necesitando.

Puede ser generada a partir d una combinación de capacidades de hadware y S.O.Su tamaño es inversamente proporcional a su velocidad de accesoEs equivalente a la memoria ram volátil limitada

INTERCAMBIOConsiste en trasladar el código y los datos de un proceso completo de memoria al sistema de almacenamiento secundario para cargar otro previamente almacenado. No permite a un proceso utilizar mas memoria RAM de la que realmente existe en el sistema. Esta técnica puede ser ineficiente ya que se tiene que hacer el intercambio completo del proceso, aunque éste solo vaya a ejecutar una pequeña porción del código.

Este mecanismo permite intercambiar programas entre memoria principal y discoGeneralmente cuando se requiere almacenar mas programas de los q la memoria soporta

Page 11: examen2uniid

BIBLIOGRAFIAhttp://blogs.utpl.edu.ec/sistemasoperativos/2009/04/21/resumen-cap-7-interbloqueos/http://www.monografias.com/trabajos10/gesmem/gesmem.shtml