Actividad 7.
Proyecto integrador etapa 2
Hilos y concurrencia
Interbloqueos
Módulo de seguridad
Introducción
Esta actividad consiste en aplicar los conocimientos adquiridos a lo largo del curso y
retomar lo aprendido en cada una de las actividades realizadas, lo que garantiza la
transversalidad de los contenidos revisados para fortalecer el desarrollo de competencias
y lograr el fin de formación planteado.
Página 1 de 4
Objetivo
El objetivo del proyecto integrador es aplicar las bases de la programación para la
construcción de algoritmos que se refieren al manejo de la concurrencia, así como los
elementos de seguridad y protecciones que se realizarán en un sistema operativo de
código abierto (Linux).
¿Qué hacer?
1. A partir de la revisión de los materiales sugeridos y actividades realizadas hasta el
momento, sigue la siguiente estructura y desarrolla los apartados que se indican para
esta etapa de tu Proyecto integrador:
Etapa 1 del Proyecto integrador
+
Etapa 2 del Proyecto integrador
II. Interbloqueos
2.1 Aplicación de los principios de interbloqueo
2.2 Resultados
II. Interbloqueos
2.1 Aplicación de los principios de interbloqueo
• Desarrolla los ejercicios en los que apliques los principios del interbloqueo. Para ello
realiza lo siguiente:
Página 2 de 4
a) Realiza un programa que maneje una lista de contactos de agenda que incluya:
nombre, e-mail y teléfono.
b) Revisa los ejemplos de interbloqueo 1/2 y 2/2 (Diapositivas - Páginas 31 y
32) que aparecen en el documento Capítulo 7. Interbloqueos.
c) Con base en el ejemplo anterior realiza la modificación de la lista de contactos,
evitando los bloqueos que supone la primera diapositiva.
d) Modifica el código adjunto para realizar esta tarea a través del patrón de
diseño singleton y además el uso de threads en java.
e) Escribe un programa de tal forma que se resuelva el problema de los
interbloqueos utilizando algún recurso para poder generar el método denominado
usar_ambos_recursos(). Puede ser una estructura, una matriz, un arreglo, etc.
Supuesto de partida
Se tiene una cola de impresión y se requiere programar en Java un programa que
evite los interbloqueos, esto es, que se tiene un buffer y solamente se puede tener
una instancia para imprimir.
2.2 Resultados
• Desarrolla una reflexión acerca de las mejores prácticas para evitar, solucionar
o resolver los problemas que plantean los interbloqueos en un sistema operativo,
con respecto de los procesos que se tienen en el mismo sistema.
• Elabora tu reporte en un procesador de textos en el que incorpores el desarrollo
de los puntos solicitados utilizando netbeans, gcc, DEv-C++, Visual Studio Code
- Código desarrollado en lenguaje C o Java según el caso
- Descripción del ejercicio realizado
- imágenes con los resultados de la ejecución
- Explicación completa de la implementación haciendo énfasis en la parte de
los procesos, su creación, gestión y concurrencia.
Página 3 de 4
Documento de Proyecto integrador
2. Desarrolla en un documento de texto esta segunda parte del Proyecto integrador.
Considera los siguientes criterios (estructura y formato) de entrega:
• Portada: universidad, asignatura, título del proyecto, nombre(s) completo(s)
del/los integrantes(s), ciudad y fecha
• Introducción: breve descripción del trabajo
• Desarrollo: puntos solicitados + integración de la Etapa 1 de Proyecto integrador
• Fuentes documentales consultadas referenciadas en estilo APA
• Texto justificado, interlineado 1.5
• Fuente Arial 11 o 12 puntos
3. Al finalizar vuelve a la plataforma y sigue los pasos que se indican para enviar tu
proyecto.
* * *
Página 4 de 4