Está en la página 1de 17

Unidad 2

PRCTICA NO. 3.- DETECCIN DE INTERBLOQUEO DE MUTEX DEL


MINIKERNEL.

Objetivo Especfico: Observar y analizar el funcionamiento de las rutinas de


deteccin de bloqueo.

PRCTICA NO. 4.- IMPLEMENTACIN DE SEMFOROS.

Objetivo Especfico: Poner en prctica el uso de mecanismos de comunicacin y


sincronizacin de procesos a travs de semforos usando un lenguaje de alto
nivel.

PRCTICA NO. 5.- PLANIFICACIN ROUND ROBIN.

Objetivo Especfico: Disear e implementar un Planificador de asignacin del


procesador a un proceso mediante el algoritmo de Round Robin.

Instituto Tecnolgico de Veracruz


Prctica 3
REQUERIMIENTOS PARA DESARROLLAR LA PRCTICA:
Sistema Operativo LINUX UBUNTU (34 o 64 bits)
Mquina de computo porttil o de escritorio
DESCRIPCION DEL EQUIPO Y SOFTWARE UTILIZADO:
Laptop Sony VAIO
Windows 8
Procesador Intel Inside Pentium
RAM de 4 GB
Sistema Operativo de 64bits

NOMBRE DE LA PRCTICA:
Deteccin de Interbloqueo de mutex del mini-kernel.

OBJETIVO:
Observar y analizar el funcionamiento de las rutinas de deteccin de bloqueo.
ANEXO: Imgenes de todo lo desarrollado durante la realizacin de la prctica.

Pgina 1

Instituto Tecnolgico de Veracruz

Introduccin
Mutex: Es un objeto que permite a los hilos asegurar la integridad de un recurso
compartido al que tienen acceso. Tiene dos estados: bloqueado y desbloqueado.
INTERBLOQUEO:
Es un problema que afecta a los procesos concurrentes que utilizan recursos en
un sistema.
Los procesos solicitan recursos al sistema los liberan cuando ya no los necesita.
Un recurso puede estar disponible o bien asignado a algn proceso.
Si un proceso solicita un recurso que no tiene ejemplares disponibles, el proceso
queda bloqueado, esperando hasta que se le asigna un ejemplar. El objeto
MUTEX es una bandera mutuamente excluyente. Acta como un guardin de la
puerta a una seccin de un cdigo que permite la entrada a uno, bloqueando el
acceso a todos los dems.
Esto asegura que el cdigo o proceso est controlado solo por un hilo a la vez. Y
el mutex libera el acceso cuando este haya terminado. Sobre un mutex se pueden
realizar dos operaciones atmicas bsicas:

LOCK: intenta bloquear el mutex. Si el mutex ya est bloqueado por otro


proceso, el proceso que realiza la operacin se bloquea. En caso contrario,
se bloquea el mutex sin bloquear al proceso.
UNLOCK: desbloquea el mutex. Si existen procesos bloqueados en l, se
desbloquear a uno de ellos, que ser el nuevo proceso que adquiera el
mutex. La operacin unlock sobre un mutex debe ejecutarla el proceso
ligero que adquiri con anterioridad el mutex mediante la operacin lock.
Esto es diferente a lo que ocurre con las operaciones wait y signal sobre un
semforo.

Pgina 2

Instituto Tecnolgico de Veracruz

ESQUEMA DEL FUNCIONAMIENTO NORMAL

LLAMADAS

AL
LIBERACION

SISTEMA

PORQUE SUCEDE EL INTERBLOQUEO?

Un
conjunto
de
procesos bloqueados,
cada uno de ellos
esperando
por
un
recurso que retiene otro
proceso
de
ese
conjunto.
Pgina 3

Instituto Tecnolgico de Veracruz

o Ningn proceso del conjunto puede avanzar


o El interbloqueo, bloqueo mutuo, abrazo mortal (deadlock).
CONDICIONES PARA EL INTERBLOQUEO
Si en un sistema se produce una situacin de interbloqueo entonces se cumplen
simultneamente estas cuatro condiciones:
1. EXCLUSION MUTUA: Los recursos no pueden compartir.
2. RETENCION Y ESPERA: Un proceso que retiene uno o varios recursos se
encuentra esperando por recursos asignados a otros procesos.
3. NO EXPROPIACION: Un recurso solo puede ser liberado por el proceso
que lo retiene, voluntariamente
4. ESPERA CIRCULAR: Existe una serie de procesos en espera, en la que
todo proceso espera un recurso retenido por otro proceso en forma
secuencial.
Capturas de Pantalla

Pgina 4

Instituto Tecnolgico de Veracruz

Pgina 5

Instituto Tecnolgico de Veracruz

Pgina 6

Instituto Tecnolgico de Veracruz

Pgina 7

Instituto Tecnolgico de Veracruz


Prctica 4
REQUERIMIENTOS PARA DESARROLLAR LA PRCTICA:
Sistema Operativo LINUX UBUNTU (34 o 64 bits)
Mquina de computo porttil o de escritorio
DESCRIPCION DEL EQUIPO Y SOFTWARE UTILIZADO:
Laptop Sony VAIO
Windows 8
Procesador Intel inside Pentium,
RAM de 4 GB
Sistema Operativo de 64bits

NOMBRE DE LA PRCTICA: Implementacin de Semforos.

OBJETIVO: Poner en prctica el uso de mecanismos de comunicacin y


sincronizacin de procesos a travs de semforos usando un lenguaje de alto
nivel.

Pgina 8

Instituto Tecnolgico de Veracruz

Introduccin
QUE ES UN SEMFORO?
Un semforo es una variable especial que constituye una serie de opciones
elementales para poder restringir a garantizar el acceso a los recursos en un
sistema operativo con un entorno de multiprocesamiento.
Hay dos tipos de semforos Contador y Binario.
INTERFACES DE LA LLAMADA AL SISTEMA DE LOS SEMFOROS
sys_semget()
La llamada entera a sys_semget() es protegida por el semforo global del
ncleo sem_ids.sem
En el caso donde un nuevo conjunto de semforos deben de ser creados, la
funcin newary() es llamada para crear e inicializar un nuevo conjunto de
semforos. La ID del nuevo conjunto es retornada al llamante.
En el caso donde un valor de llave es suministrado por un conjunto de semforos
existentes, ipc_findkey() es llamado para buscar el correspondiente descriptor del
semforo en el ndice de la matriz. Los parmetros y los permisos del llamante son
verificados antes de devolver la ID del conjunto de semforos.
sys_semctl()
Para los comandos IPC_INFO, SEM_INFO, y SEM_STAT, semctl_nolock() es
llamado para realizar las funciones necesarias.
Para los
comandos GETALL, GETVAL, GETPID, GETNCNT, GETZCNT, IPC_STAT,
SETVAL, y SETALL, semctl_main() es llamado para realizar las funciones
necesarias.

Pgina 9

Instituto Tecnolgico de Veracruz


Para los comandos IPC_RMID y IPC_SET, semctl_down() es llamada para
realizar las funciones necesarias. Durante todas estas operaciones, es mantenido
el semforo global del ncleo sem_ids.sem
sys_semop()
Despus de validar los parmetros de la llamada, los datos de las operaciones de
los semforos son copiados desde el espacio de usuario a una memoria temporal.
Si una pequea memoria temporal es suficiente, entonces es usada una memoria
de pila. En otro caso, es asignad una memoria ms grande. Despus de copiar los
datos de las operaciones de los semforos, el spinlock global de los semforos es
cerrado, y la ID del conjunto de semforos especificado por el usuario es validado.
Los permisos de acceso para el conjunto de semforos tambin son validados.

Pgina 10

Instituto Tecnolgico de Veracruz

CODIGO EN JAVA DE UN SEMAFORO

Pgina 11

Instituto Tecnolgico de Veracruz


Captura de Pantalla

Pgina 12

Instituto Tecnolgico de Veracruz


Prctica 5
DESCRIPCION DEL EQUIPO Y SOFTWARE UTILIZADO:
Laptop Samsung
Windows 7,
Processor AMD A10 Vision Quad Core,
RAM de 4 GB
Sistema Operativo de 64bits
NOMBRE DE LA PRCTICA:
Planificacin Round Robin.
OBJETIVO:
Disear e implementar un Planificador de asignacin del procesador a un
proceso mediante el algoritmo de Round Robin.

Pgina 13

Instituto Tecnolgico de Veracruz

Introduccin
QUE ES EL ROUND ROBIN?
Es un mtodo de seleccin de todos los elementos de un grupo de forma
equitativa y orden racional por lo general comenzando con el primer elemento de
la lista hasta el ltimo y luego comenzando nuevamente con el primer elemento.
En computacin es un mtodo para ejecutar procesos (tareas) de forma
concurrente y as utilizar de forma equitativa los recursos del equipo.
En SISTEMAS OPERATIVOS la planificacin ROUND ROBIN asigna un tiempo
mximo a cada proceso para utilizar el CPU, luego de ese tiempo pasa al
siguiente proceso en la lista.
OBJETIVOS:
Maximizar la eficiencia y rendimiento.
Minimizar tiempo de retorno, espera y respuesta.

Pgina 14

Instituto Tecnolgico de Veracruz

CODIGO EN JAVA DE UN ROUND ROBIN

Pgina 15

Instituto Tecnolgico de Veracruz


Captura de Pantalla

Pgina 16

También podría gustarte