SlideShare una empresa de Scribd logo
1 de 9
Descargar para leer sin conexión
Barbero Durmiente 
Juan Camilo Sacanamboy 
Gerardo Suárez
• Problema 
• Condiciones de carrera 
• Solución 
• Diagramas de flujo 
• Implementación en Java 
Contenido
• Barbería con un solo barbero 
• Una silla de barbero 
• n sillas para los clientes (5 
en nuestro caso) 
Problema
Por qué se presentan? 
• Diferentes procesos (clientes) quieren acceder a la silla 
del barbero. 
• Diferentes clientes quieren entrar a la barbería. 
Condiciones de carrera
Se emplean dos variables semáforos: 
• Un mutex que se encarga de no dejar que un cliente tome 
la silla del barbero, si esta se encuentra ocupada. 
• La otra variable cuenta el número de clientes que esperan 
al barbero. Si hay más de 5 no deja entrar otro cliente a la 
barbería, hasta que se desocupe una silla. 
Solución
Diagramas de Flujo
BARBERO 
DORMIDO 
NO 
Silla Barberia 
Ocuapada? 
Sillas Espera 
Vacias? 
NADA 
DORMIR 
DESOCUPAR 
SILLA 
ESPERA 
DESOCUPAR 
SILLA 
BARBERIA 
DORMIR 
SI 
NO 
SI 
NO 
SI
Cliente 
Nuevo? 
Barbero 
Dormido? 
SI 
Sillas Espera 
Disponibles? 
ESPERAR 
DESPERTAR 
IRSE 
OCUPAR 
SILLA 
ESPERA 
NO 
NO 
NO 
SI 
SI 
OCUPAR 
SILLA 
BARBERÍA 
BARBERÍA
El código fuente se puede encontrar en: 
https://github.com/csacanam/BarberoDurmiente 
Implementación en Java

Más contenido relacionado

La actualidad más candente

Organización y estructura interna del cpu
Organización y estructura interna del cpuOrganización y estructura interna del cpu
Organización y estructura interna del cpu
Isaí Beto Matz Mijes
 
Tareas de ingenieria de requerimientos
Tareas de ingenieria de requerimientosTareas de ingenieria de requerimientos
Tareas de ingenieria de requerimientos
nenyta08
 
Ejemplos de proyectos al modelo en cascada
Ejemplos de proyectos  al modelo en cascadaEjemplos de proyectos  al modelo en cascada
Ejemplos de proyectos al modelo en cascada
aics-1986-13-saraguro
 
Equipo 6 programacion hibrida
Equipo 6 programacion hibridaEquipo 6 programacion hibrida
Equipo 6 programacion hibrida
gabo
 
Estructura del sistema operativo windows
Estructura del sistema operativo windowsEstructura del sistema operativo windows
Estructura del sistema operativo windows
omfib123
 

La actualidad más candente (20)

MODELO COCOMO (INGENIERA DE SOFTWARE)
MODELO COCOMO (INGENIERA DE SOFTWARE)MODELO COCOMO (INGENIERA DE SOFTWARE)
MODELO COCOMO (INGENIERA DE SOFTWARE)
 
Entrada/Salida de Sistemas Operativos
Entrada/Salida de Sistemas OperativosEntrada/Salida de Sistemas Operativos
Entrada/Salida de Sistemas Operativos
 
Organización y estructura interna del cpu
Organización y estructura interna del cpuOrganización y estructura interna del cpu
Organización y estructura interna del cpu
 
Procesos e hilos- Parte 1
Procesos e hilos- Parte 1Procesos e hilos- Parte 1
Procesos e hilos- Parte 1
 
Gestion de memoria en Linux
Gestion de memoria en LinuxGestion de memoria en Linux
Gestion de memoria en Linux
 
Administración de memoria
Administración de memoriaAdministración de memoria
Administración de memoria
 
Algoritmo SJF
Algoritmo SJFAlgoritmo SJF
Algoritmo SJF
 
Tareas de ingenieria de requerimientos
Tareas de ingenieria de requerimientosTareas de ingenieria de requerimientos
Tareas de ingenieria de requerimientos
 
Ejemplos de proyectos al modelo en cascada
Ejemplos de proyectos  al modelo en cascadaEjemplos de proyectos  al modelo en cascada
Ejemplos de proyectos al modelo en cascada
 
Ingeniería de requisitos e ingeniería de requerimientos
Ingeniería de requisitos e ingeniería de requerimientosIngeniería de requisitos e ingeniería de requerimientos
Ingeniería de requisitos e ingeniería de requerimientos
 
Optimizacion de la busqueda de discos
Optimizacion de la busqueda de discosOptimizacion de la busqueda de discos
Optimizacion de la busqueda de discos
 
Administración de Memoria
Administración de MemoriaAdministración de Memoria
Administración de Memoria
 
UNIDAD 1 INTRODUCCIÓN AL LENGUAJE ENSAMBLADOR
UNIDAD 1 INTRODUCCIÓN AL LENGUAJE ENSAMBLADORUNIDAD 1 INTRODUCCIÓN AL LENGUAJE ENSAMBLADOR
UNIDAD 1 INTRODUCCIÓN AL LENGUAJE ENSAMBLADOR
 
Tecnicas de Administracion de Memoria
Tecnicas de Administracion de MemoriaTecnicas de Administracion de Memoria
Tecnicas de Administracion de Memoria
 
Equipo 6 programacion hibrida
Equipo 6 programacion hibridaEquipo 6 programacion hibrida
Equipo 6 programacion hibrida
 
Ejercicios
EjerciciosEjercicios
Ejercicios
 
Segmentacion de memoria
Segmentacion de memoriaSegmentacion de memoria
Segmentacion de memoria
 
Estructura del sistema operativo windows
Estructura del sistema operativo windowsEstructura del sistema operativo windows
Estructura del sistema operativo windows
 
PAGINACION Y SEGMENTACION DE MEMORIA
PAGINACION Y SEGMENTACION DE MEMORIAPAGINACION Y SEGMENTACION DE MEMORIA
PAGINACION Y SEGMENTACION DE MEMORIA
 
Gestion entrada y salida
Gestion entrada y salidaGestion entrada y salida
Gestion entrada y salida
 

Destacado

Historia de barberia
Historia de barberiaHistoria de barberia
Historia de barberia
elikarosario
 
El arte de la oratoria y la comunicación en la docencia
El arte de la oratoria y la comunicación en la docenciaEl arte de la oratoria y la comunicación en la docencia
El arte de la oratoria y la comunicación en la docencia
riveroalma
 
Verbos en pasado simple
Verbos en pasado simpleVerbos en pasado simple
Verbos en pasado simple
jote1981
 

Destacado (20)

Barbero Dormilon
Barbero DormilonBarbero Dormilon
Barbero Dormilon
 
Panaderia lamport
Panaderia lamportPanaderia lamport
Panaderia lamport
 
Problema de los Filosofos
Problema de los FilosofosProblema de los Filosofos
Problema de los Filosofos
 
Clase 21 Términos importantes
Clase 21  Términos importantesClase 21  Términos importantes
Clase 21 Términos importantes
 
Clase #28 Esterilizadores
Clase #28 EsterilizadoresClase #28 Esterilizadores
Clase #28 Esterilizadores
 
Monitores-sistemas operativos
Monitores-sistemas operativosMonitores-sistemas operativos
Monitores-sistemas operativos
 
Sistemas Operativos - Semáforos
Sistemas Operativos - SemáforosSistemas Operativos - Semáforos
Sistemas Operativos - Semáforos
 
Clase #11 actitud
Clase #11  actitudClase #11  actitud
Clase #11 actitud
 
Clase #3 crecimiento del cabello
Clase #3  crecimiento del cabelloClase #3  crecimiento del cabello
Clase #3 crecimiento del cabello
 
¿Qué podemos hacer para que nuestro negocio sea exitoso?...La Efectividad De ...
¿Qué podemos hacer para que nuestro negocio sea exitoso?...La Efectividad De ...¿Qué podemos hacer para que nuestro negocio sea exitoso?...La Efectividad De ...
¿Qué podemos hacer para que nuestro negocio sea exitoso?...La Efectividad De ...
 
Clase #11 Movimientos estándares de la afeitada
Clase #11 Movimientos estándares de la afeitadaClase #11 Movimientos estándares de la afeitada
Clase #11 Movimientos estándares de la afeitada
 
Historia de barberia
Historia de barberiaHistoria de barberia
Historia de barberia
 
1399 presentacion cesar
1399 presentacion cesar1399 presentacion cesar
1399 presentacion cesar
 
El arte de la oratoria y la comunicación en la docencia
El arte de la oratoria y la comunicación en la docenciaEl arte de la oratoria y la comunicación en la docencia
El arte de la oratoria y la comunicación en la docencia
 
Clase #8 Afeitada del rostro
Clase #8 Afeitada del rostroClase #8 Afeitada del rostro
Clase #8 Afeitada del rostro
 
Verbos en pasado simple
Verbos en pasado simpleVerbos en pasado simple
Verbos en pasado simple
 
Pres cartas a quien pretende enseñar
Pres cartas a quien pretende enseñarPres cartas a quien pretende enseñar
Pres cartas a quien pretende enseñar
 
Esculpido capilar
Esculpido capilarEsculpido capilar
Esculpido capilar
 
Documento apoyo ayuda textual-diseño capilar
Documento apoyo ayuda textual-diseño capilarDocumento apoyo ayuda textual-diseño capilar
Documento apoyo ayuda textual-diseño capilar
 
BRIEF CREATIVO BARBERÍA ROMÁN MORENO
BRIEF CREATIVO  BARBERÍA ROMÁN MORENOBRIEF CREATIVO  BARBERÍA ROMÁN MORENO
BRIEF CREATIVO BARBERÍA ROMÁN MORENO
 

Más de Juan Camilo Sacanamboy

Modelado de circuitos con ED de orden superior
Modelado de circuitos con ED de orden superiorModelado de circuitos con ED de orden superior
Modelado de circuitos con ED de orden superior
Juan Camilo Sacanamboy
 

Más de Juan Camilo Sacanamboy (14)

Keep calm and write reusable code in Android
Keep calm and write reusable code in AndroidKeep calm and write reusable code in Android
Keep calm and write reusable code in Android
 
UX for developers
UX for developersUX for developers
UX for developers
 
OFDM (Orthogonal Frequency Division Multiplexing )
OFDM (Orthogonal Frequency Division Multiplexing �)OFDM (Orthogonal Frequency Division Multiplexing �)
OFDM (Orthogonal Frequency Division Multiplexing )
 
Functional Testing
Functional TestingFunctional Testing
Functional Testing
 
FTP (File Transfer Protocol)
FTP (File Transfer Protocol)FTP (File Transfer Protocol)
FTP (File Transfer Protocol)
 
Protocolo de Enrutamiento RIP (Versiones 1 y 2)
Protocolo de Enrutamiento RIP (Versiones 1 y 2)Protocolo de Enrutamiento RIP (Versiones 1 y 2)
Protocolo de Enrutamiento RIP (Versiones 1 y 2)
 
Modelado de circuitos con ED de orden superior
Modelado de circuitos con ED de orden superiorModelado de circuitos con ED de orden superior
Modelado de circuitos con ED de orden superior
 
FDDI
FDDIFDDI
FDDI
 
Infrarrojo
InfrarrojoInfrarrojo
Infrarrojo
 
Ecuación de bessel
Ecuación de besselEcuación de bessel
Ecuación de bessel
 
Algoritmo JPEG
Algoritmo JPEGAlgoritmo JPEG
Algoritmo JPEG
 
Tutorial ASP .NET
Tutorial ASP .NETTutorial ASP .NET
Tutorial ASP .NET
 
Usando el entity framework
Usando el entity frameworkUsando el entity framework
Usando el entity framework
 
NRZ code
NRZ codeNRZ code
NRZ code
 

Último

SESION 11 SUPERVISOR SSOMA SEGURIDAD Y SALUD OCUPACIONAL
SESION 11 SUPERVISOR SSOMA SEGURIDAD Y SALUD OCUPACIONALSESION 11 SUPERVISOR SSOMA SEGURIDAD Y SALUD OCUPACIONAL
SESION 11 SUPERVISOR SSOMA SEGURIDAD Y SALUD OCUPACIONAL
EdwinC23
 
UC Fundamentos de tuberías en equipos de refrigeración m.pdf
UC Fundamentos de tuberías en equipos de refrigeración m.pdfUC Fundamentos de tuberías en equipos de refrigeración m.pdf
UC Fundamentos de tuberías en equipos de refrigeración m.pdf
refrielectriccarlyz
 
Tema ilustrado 9.2.docxbbbbbbbbbbbbbbbbbbb
Tema ilustrado 9.2.docxbbbbbbbbbbbbbbbbbbbTema ilustrado 9.2.docxbbbbbbbbbbbbbbbbbbb
Tema ilustrado 9.2.docxbbbbbbbbbbbbbbbbbbb
antoniolfdez2006
 

Último (20)

CAPACITACIÓN EN AGUA Y SANEAMIENTO EN ZONAS RURALES
CAPACITACIÓN EN AGUA Y SANEAMIENTO EN ZONAS RURALESCAPACITACIÓN EN AGUA Y SANEAMIENTO EN ZONAS RURALES
CAPACITACIÓN EN AGUA Y SANEAMIENTO EN ZONAS RURALES
 
Sistema de alumbrado.pptx fjhhgghrhgghhuughuh
Sistema de alumbrado.pptx fjhhgghrhgghhuughuhSistema de alumbrado.pptx fjhhgghrhgghhuughuh
Sistema de alumbrado.pptx fjhhgghrhgghhuughuh
 
Manual deresolucion de ecuaciones por fracciones parciales.pdf
Manual deresolucion de ecuaciones por fracciones parciales.pdfManual deresolucion de ecuaciones por fracciones parciales.pdf
Manual deresolucion de ecuaciones por fracciones parciales.pdf
 
APORTES A LA ARQUITECTURA DE WALTER GROPIUS Y FRANK LLOYD WRIGHT
APORTES A LA ARQUITECTURA DE WALTER GROPIUS Y FRANK LLOYD WRIGHTAPORTES A LA ARQUITECTURA DE WALTER GROPIUS Y FRANK LLOYD WRIGHT
APORTES A LA ARQUITECTURA DE WALTER GROPIUS Y FRANK LLOYD WRIGHT
 
Balance materia y energia procesos de Secado
Balance materia y energia procesos de SecadoBalance materia y energia procesos de Secado
Balance materia y energia procesos de Secado
 
ingenieria grafica para la carrera de ingeniera .pptx
ingenieria grafica para la carrera de ingeniera .pptxingenieria grafica para la carrera de ingeniera .pptx
ingenieria grafica para la carrera de ingeniera .pptx
 
TECNOLOGIA DE CONCRETO 2024 estudiante.pdf
TECNOLOGIA DE CONCRETO 2024 estudiante.pdfTECNOLOGIA DE CONCRETO 2024 estudiante.pdf
TECNOLOGIA DE CONCRETO 2024 estudiante.pdf
 
Determinación de espacios en la instalación
Determinación de espacios en la instalaciónDeterminación de espacios en la instalación
Determinación de espacios en la instalación
 
ARMADURAS METODO NODOS.pptx......................
ARMADURAS METODO NODOS.pptx......................ARMADURAS METODO NODOS.pptx......................
ARMADURAS METODO NODOS.pptx......................
 
ATS-FORMATO cara.pdf PARA TRABAJO SEGURO
ATS-FORMATO cara.pdf  PARA TRABAJO SEGUROATS-FORMATO cara.pdf  PARA TRABAJO SEGURO
ATS-FORMATO cara.pdf PARA TRABAJO SEGURO
 
INTEGRATED PROJECT DELIVERY.pdf (ENTREGA INTEGRADA DE PROYECTOS)
INTEGRATED PROJECT DELIVERY.pdf (ENTREGA INTEGRADA DE PROYECTOS)INTEGRATED PROJECT DELIVERY.pdf (ENTREGA INTEGRADA DE PROYECTOS)
INTEGRATED PROJECT DELIVERY.pdf (ENTREGA INTEGRADA DE PROYECTOS)
 
Análisis de Costos y Presupuestos CAPECO
Análisis de Costos y Presupuestos CAPECOAnálisis de Costos y Presupuestos CAPECO
Análisis de Costos y Presupuestos CAPECO
 
5. MATERIALES petreos para concreto.pdf.
5. MATERIALES petreos para concreto.pdf.5. MATERIALES petreos para concreto.pdf.
5. MATERIALES petreos para concreto.pdf.
 
SESION 11 SUPERVISOR SSOMA SEGURIDAD Y SALUD OCUPACIONAL
SESION 11 SUPERVISOR SSOMA SEGURIDAD Y SALUD OCUPACIONALSESION 11 SUPERVISOR SSOMA SEGURIDAD Y SALUD OCUPACIONAL
SESION 11 SUPERVISOR SSOMA SEGURIDAD Y SALUD OCUPACIONAL
 
8 2024A CONDUCCION DE CALOR EN REGIMEN TRANSITORIO.pptx
8 2024A CONDUCCION DE CALOR EN REGIMEN TRANSITORIO.pptx8 2024A CONDUCCION DE CALOR EN REGIMEN TRANSITORIO.pptx
8 2024A CONDUCCION DE CALOR EN REGIMEN TRANSITORIO.pptx
 
UC Fundamentos de tuberías en equipos de refrigeración m.pdf
UC Fundamentos de tuberías en equipos de refrigeración m.pdfUC Fundamentos de tuberías en equipos de refrigeración m.pdf
UC Fundamentos de tuberías en equipos de refrigeración m.pdf
 
Tema ilustrado 9.2.docxbbbbbbbbbbbbbbbbbbb
Tema ilustrado 9.2.docxbbbbbbbbbbbbbbbbbbbTema ilustrado 9.2.docxbbbbbbbbbbbbbbbbbbb
Tema ilustrado 9.2.docxbbbbbbbbbbbbbbbbbbb
 
ATS-FORMATOa.pdf PARA MANTENIMIENTO MECANICO
ATS-FORMATOa.pdf PARA MANTENIMIENTO MECANICOATS-FORMATOa.pdf PARA MANTENIMIENTO MECANICO
ATS-FORMATOa.pdf PARA MANTENIMIENTO MECANICO
 
3er Informe Laboratorio Quimica General (2) (1).pdf
3er Informe Laboratorio Quimica General  (2) (1).pdf3er Informe Laboratorio Quimica General  (2) (1).pdf
3er Informe Laboratorio Quimica General (2) (1).pdf
 
Mantenimiento-de-Transformadores-Monofasicos[1].pptx
Mantenimiento-de-Transformadores-Monofasicos[1].pptxMantenimiento-de-Transformadores-Monofasicos[1].pptx
Mantenimiento-de-Transformadores-Monofasicos[1].pptx
 

Problema del barbero durmiente

  • 1. Barbero Durmiente Juan Camilo Sacanamboy Gerardo Suárez
  • 2. • Problema • Condiciones de carrera • Solución • Diagramas de flujo • Implementación en Java Contenido
  • 3. • Barbería con un solo barbero • Una silla de barbero • n sillas para los clientes (5 en nuestro caso) Problema
  • 4. Por qué se presentan? • Diferentes procesos (clientes) quieren acceder a la silla del barbero. • Diferentes clientes quieren entrar a la barbería. Condiciones de carrera
  • 5. Se emplean dos variables semáforos: • Un mutex que se encarga de no dejar que un cliente tome la silla del barbero, si esta se encuentra ocupada. • La otra variable cuenta el número de clientes que esperan al barbero. Si hay más de 5 no deja entrar otro cliente a la barbería, hasta que se desocupe una silla. Solución
  • 7. BARBERO DORMIDO NO Silla Barberia Ocuapada? Sillas Espera Vacias? NADA DORMIR DESOCUPAR SILLA ESPERA DESOCUPAR SILLA BARBERIA DORMIR SI NO SI NO SI
  • 8. Cliente Nuevo? Barbero Dormido? SI Sillas Espera Disponibles? ESPERAR DESPERTAR IRSE OCUPAR SILLA ESPERA NO NO NO SI SI OCUPAR SILLA BARBERÍA BARBERÍA
  • 9. El código fuente se puede encontrar en: https://github.com/csacanam/BarberoDurmiente Implementación en Java