SlideShare ist ein Scribd-Unternehmen logo
1 von 11
ALGORITMO DEL BANQUERO
Integrantes:

-Baylon Huerta, Kevin William
-Del Portal Chiarrella, Gonzalo Abrahan
-Montero Atencia, Lizbeth Giovanna
-Ortiz Saenz, Briceida Sneth
ALGORITMO DEL BANQUERO


   El Algoritmo del banquero es una forma de evitar el
    interbloqueo, propuesta por primera vez por Edsger
    Dijkstra


 Analogía:    Funcionamiento de un banco:
      Los clientes representan a los procesos, que
      tienen un crédito límite
     El dinero representa a los recursos.
     El banquero es el sistema operativo.
ALGORITMO DEL BANQUERO


   El banco confía en que no todos los clientes
    necesitaran su crédito máximo otorgado en forma
    inmediata, por ello reserva menos unidades
    (recursos) de las totales necesarias para dar
    servicio a los clientes.

   El banco también asume que si un cliente
    maximiza su crédito será capaz de terminar sus
    negocios y devolver el dinero a la entidad,
    permitiendo servir a otros clientes.
ALGORITMO DEL BANQUERO

   Así, el uso de este tipo de algoritmo permite
    impedir el interbloqueo, pero supone una serie de
    restricciones:

     Se debe conocer la máxima demanda de recursos por
      anticipado.
     Los procesos deben ser independientes, es decir que
      puedan ser ejecutados en cualquier orden. Por lo tanto
      su ejecución no debe estar forzada por condiciones de
      sincronización.
     Debe haber un número fijo de recursos a utilizar y un
      número fijo de procesos.
     Los procesos no pueden finalizar mientras retengan
      recursos.
ALGORITMO DEL BANQUERO

   Para comprender éste algoritmo es necesario
    que tengamos claros los siguientes conceptos:

       Estado. Es la asignación actual de los recursos a los
        procesos.
       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.
ALGORITMO DEL BANQUERO PARA
UN SOLO RECURSO

Tres estados de asignación de recursos:

              Tiene      Máx.        Tiene      Máx.        Tiene      Máx.

    A           0         6     A      1         6     A      1         6

    B           0         5     B      1         5     B      2         5

    C           0         4     C      2         4     C      2         4

    D           0         7     D      4         7     D      4         4

            Libres: 10              Libres: 2              Libres: 1

                a                      b                      c


       A cada cliente se le ha otorgado cierto numero de unidades
        de crédito.
       El banquero sabe que no todos los clientes van a necesitar
        su crédito máximo de inmediato, así que solo ha reservado
        10 unidades para atenderlos, en lugar de 22
ALGORITMO DEL BANQUERO PARA
    UN SOLO RECURSO

   En cierto momento, la situación es la que muestra en
    la figura b. el banquero puede aplazar cuales quiera de las
    solicitudes, excepto las de C, para así dejar que C termine y
    libere sus cuatro unidades. Con cuatro unidades disponibles el
    banquero puede otorgar a D o a B las unidades que necesite,
    y así de forma sucesiva.

   Pero si B solicitara una unidad mas y se le concediera.
    Tendríamos la situación de la figura c. Que es insegura. Si
    todos los clientes pidieran repetidamente sus préstamos
    máximos, el banquero no podría satisfacer uno de ellos y
    tendríamos un bloqueo irreversible.

   El algoritmo del banquero examina cada solicitud en el
    momento en el que se hace y determina si otorgar lo que se le
    pide conducirá a un estado seguro o no. Si es así concede la
    solicitud; de lo contrario, la pospone.
ALGORITMO DEL BANQUERO PARA
VARIOS RECURSOS


Tenemos 2 matrices:


La de la izquierda
indica     cuantas
instancias      de
cada       recurso
están asignadas
en la actualidad a
cada uno de los 5
procesos.

Se indica que:                La matriz de la derecha cuantos
los recursos existen, E       recursos necesita todavía cada
los recursos poseídos, P      proceso para terminar.
los recursos disponibles, A
ALGORITMO DEL BANQUERO PARA
    VARIOS RECURSOS


   Aquí, los procesos deben plantear sus necesidades de recursos
    totales antes de ejecutarse, para que el sistema pueda calcular
    la matriz de la derecha en cada momento.

   El vector E nos indica que el sistema tiene seis unidades de
    cinta, tres graficadores, cuatro impresoras, y dos unidades de
    Cd-ROM. De estos recursos, 5 unidades de cinta, 3
    graficadores, 2 impresoras y 2 de Cd-ROM están asignados
    actualmente. Estos pueden verse sumando las 4 columnas de
    recursos de las matrices de la izquierda. El vector de los
    recursos disponibles no es más que la diferencia entre lo que el
    sistema tiene y lo que se está usando en el momento.

   El estado actual es seguro.
ALGORITMO DEL BANQUERO PARA
    VARIOS RECURSOS


   Ahora supongamos que el proceso B solicita una
    impresora. Esta solicitud puede concederse porque el
    estado resultante sigue siendo seguro (el proceso de D
    puede terminar, y luego el proceso A o el E, seguidos
    del resto).

   Ahora imaginemos que después de entregar al B uno
    de las dos impresoras restantes, E quiere la última
    impresora; satisfacer esa solicitud reducirá el vector de
    recursos disponibles a (1000), y eso conduciría a un
    bloqueo irreversible. Es evidente que la solicitud de E
    debe aplazarse por el momento.
DEBILIDADES DEL ALGORITMO DEL
BANQUERO

   Requiere que exista un número fijo de recursos asignables, pero
    generalmente no se puede contar con que el número de recursos se
    mantenga siempre constante.
   Requiere que la población de usuarios se mantenga constante, lo
    cual es irrazonable.
   Requiere que el S. O. garantice que todas las peticiones serán
    concedidas en un tiempo finito, pero en la realidad se requieren
    mayores garantías.
   Requiere que los procesos reintegren los recursos en un tiempo
    finito, pero en la realidad se requieren mayores garantías.
   Requiere que los procesos indiquen sus necesidades máximas de
    recursos por adelantado, lo cual generalmente no ocurre.
   Generalmente no es utilizado en S. O. reales.

Weitere ähnliche Inhalte

Was ist angesagt?

Manejo de los procesos en los sistemas operativos
Manejo de los procesos en los sistemas operativosManejo de los procesos en los sistemas operativos
Manejo de los procesos en los sistemas operativos
Carolina Cols
 
Concurrencia interbloqueo e inanición
Concurrencia interbloqueo e inaniciónConcurrencia interbloqueo e inanición
Concurrencia interbloqueo e inanición
jhonfgarcia
 
Tareas de ingenieria de requerimientos
Tareas de ingenieria de requerimientosTareas de ingenieria de requerimientos
Tareas de ingenieria de requerimientos
nenyta08
 

Was ist angesagt? (20)

Ciclo de instrucción
Ciclo de instrucciónCiclo de instrucción
Ciclo de instrucción
 
Tecnicas de Administracion de Memoria
Tecnicas de Administracion de MemoriaTecnicas de Administracion de Memoria
Tecnicas de Administracion de Memoria
 
Integridad en las bases de datos
Integridad en las bases de datosIntegridad en las bases de datos
Integridad en las bases de datos
 
Manejo de los procesos en los sistemas operativos
Manejo de los procesos en los sistemas operativosManejo de los procesos en los sistemas operativos
Manejo de los procesos en los sistemas operativos
 
Rational rose
Rational roseRational rose
Rational rose
 
Concurrencia interbloqueo e inanición
Concurrencia interbloqueo e inaniciónConcurrencia interbloqueo e inanición
Concurrencia interbloqueo e inanición
 
Ingenieria de software
Ingenieria de softwareIngenieria de software
Ingenieria de software
 
Arquitectura de Cómputo Paralelo MISD
Arquitectura de Cómputo Paralelo MISDArquitectura de Cómputo Paralelo MISD
Arquitectura de Cómputo Paralelo MISD
 
Tareas de ingenieria de requerimientos
Tareas de ingenieria de requerimientosTareas de ingenieria de requerimientos
Tareas de ingenieria de requerimientos
 
Procesos Ligeros: Hilos o Hebras
Procesos Ligeros: Hilos o HebrasProcesos Ligeros: Hilos o Hebras
Procesos Ligeros: Hilos o Hebras
 
Documentación base de datos
Documentación base de datos  Documentación base de datos
Documentación base de datos
 
Como Documentar Casos De Uso
Como Documentar Casos De UsoComo Documentar Casos De Uso
Como Documentar Casos De Uso
 
Origen del Modelo OSI y su impacto en als estructuras de redes
Origen del Modelo OSI y su impacto en als estructuras de redesOrigen del Modelo OSI y su impacto en als estructuras de redes
Origen del Modelo OSI y su impacto en als estructuras de redes
 
Transaccion
TransaccionTransaccion
Transaccion
 
Diagrama de casos de usos
Diagrama de casos de usosDiagrama de casos de usos
Diagrama de casos de usos
 
Requisitos funcionales y no funcionales
Requisitos funcionales y no funcionales Requisitos funcionales y no funcionales
Requisitos funcionales y no funcionales
 
Administración de memoria
Administración de memoriaAdministración de memoria
Administración de memoria
 
Arquitectura 3 Capas
Arquitectura 3 CapasArquitectura 3 Capas
Arquitectura 3 Capas
 
Las diez principales amenazas para las bases de datos
Las diez principales amenazas para las bases de datosLas diez principales amenazas para las bases de datos
Las diez principales amenazas para las bases de datos
 
Guía de ejercicios de normalizacion
Guía de ejercicios de normalizacionGuía de ejercicios de normalizacion
Guía de ejercicios de normalizacion
 

Ähnlich wie Algoritmo del baquero

Interbloqueosproyect ofinal
Interbloqueosproyect ofinalInterbloqueosproyect ofinal
Interbloqueosproyect ofinal
fhavilap
 
Informe Categorizar la cartera GA5-210301097-ATA1-EV02. PAULA MELO.docx
Informe Categorizar la cartera GA5-210301097-ATA1-EV02. PAULA MELO.docxInforme Categorizar la cartera GA5-210301097-ATA1-EV02. PAULA MELO.docx
Informe Categorizar la cartera GA5-210301097-ATA1-EV02. PAULA MELO.docx
LauraNicoleOcampoGai
 

Ähnlich wie Algoritmo del baquero (20)

Problemas basicos de comunicación
Problemas basicos de comunicaciónProblemas basicos de comunicación
Problemas basicos de comunicación
 
Sistemas Operativos
Sistemas OperativosSistemas Operativos
Sistemas Operativos
 
Prototipo
PrototipoPrototipo
Prototipo
 
Sistema operativo
Sistema operativoSistema operativo
Sistema operativo
 
Plantilla caso de_uso
Plantilla caso de_usoPlantilla caso de_uso
Plantilla caso de_uso
 
5.1 ejemplos uml
5.1 ejemplos uml5.1 ejemplos uml
5.1 ejemplos uml
 
3. sistema dupont.pptx
3. sistema dupont.pptx3. sistema dupont.pptx
3. sistema dupont.pptx
 
Caso de uso
Caso de usoCaso de uso
Caso de uso
 
5.1 ejemplos uml
5.1 ejemplos uml5.1 ejemplos uml
5.1 ejemplos uml
 
5.1 ejemplos uml
5.1 ejemplos uml5.1 ejemplos uml
5.1 ejemplos uml
 
Capitulo2
Capitulo2Capitulo2
Capitulo2
 
Unidad3 operaciones bancarias
Unidad3 operaciones bancariasUnidad3 operaciones bancarias
Unidad3 operaciones bancarias
 
Examen parcial poo- iv-a - ii unidad-fila-b
Examen parcial poo- iv-a - ii unidad-fila-bExamen parcial poo- iv-a - ii unidad-fila-b
Examen parcial poo- iv-a - ii unidad-fila-b
 
Examen parcial poo- iv-a - ii unidad-fila-b
Examen parcial poo- iv-a - ii unidad-fila-bExamen parcial poo- iv-a - ii unidad-fila-b
Examen parcial poo- iv-a - ii unidad-fila-b
 
Examen parcial poo- iv-a - ii unidad-fila-b
Examen parcial poo- iv-a - ii unidad-fila-bExamen parcial poo- iv-a - ii unidad-fila-b
Examen parcial poo- iv-a - ii unidad-fila-b
 
Examen parcial poo- iv-a - ii unidad-fila-b
Examen parcial poo- iv-a - ii unidad-fila-bExamen parcial poo- iv-a - ii unidad-fila-b
Examen parcial poo- iv-a - ii unidad-fila-b
 
Examen parcial computo1
Examen parcial  computo1Examen parcial  computo1
Examen parcial computo1
 
Interbloqueosproyect ofinal
Interbloqueosproyect ofinalInterbloqueosproyect ofinal
Interbloqueosproyect ofinal
 
Bloqueos _
Bloqueos _Bloqueos _
Bloqueos _
 
Informe Categorizar la cartera GA5-210301097-ATA1-EV02. PAULA MELO.docx
Informe Categorizar la cartera GA5-210301097-ATA1-EV02. PAULA MELO.docxInforme Categorizar la cartera GA5-210301097-ATA1-EV02. PAULA MELO.docx
Informe Categorizar la cartera GA5-210301097-ATA1-EV02. PAULA MELO.docx
 

Kürzlich hochgeladen

redes informaticas en una oficina administrativa
redes informaticas en una oficina administrativaredes informaticas en una oficina administrativa
redes informaticas en una oficina administrativa
nicho110
 

Kürzlich hochgeladen (10)

investigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXIinvestigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXI
 
Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estos
 
Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21
 
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
 
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptxEVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
 
Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvana
 
Guia Basica para bachillerato de Circuitos Basicos
Guia Basica para bachillerato de Circuitos BasicosGuia Basica para bachillerato de Circuitos Basicos
Guia Basica para bachillerato de Circuitos Basicos
 
How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.
 
Buenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptxBuenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptx
 
redes informaticas en una oficina administrativa
redes informaticas en una oficina administrativaredes informaticas en una oficina administrativa
redes informaticas en una oficina administrativa
 

Algoritmo del baquero

  • 1. ALGORITMO DEL BANQUERO Integrantes: -Baylon Huerta, Kevin William -Del Portal Chiarrella, Gonzalo Abrahan -Montero Atencia, Lizbeth Giovanna -Ortiz Saenz, Briceida Sneth
  • 2. ALGORITMO DEL BANQUERO  El Algoritmo del banquero es una forma de evitar el interbloqueo, propuesta por primera vez por Edsger Dijkstra  Analogía: Funcionamiento de un banco:  Los clientes representan a los procesos, que tienen un crédito límite  El dinero representa a los recursos.  El banquero es el sistema operativo.
  • 3. ALGORITMO DEL BANQUERO  El banco confía en que no todos los clientes necesitaran su crédito máximo otorgado en forma inmediata, por ello reserva menos unidades (recursos) de las totales necesarias para dar servicio a los clientes.  El banco también asume que si un cliente maximiza su crédito será capaz de terminar sus negocios y devolver el dinero a la entidad, permitiendo servir a otros clientes.
  • 4. ALGORITMO DEL BANQUERO  Así, el uso de este tipo de algoritmo permite impedir el interbloqueo, pero supone una serie de restricciones:  Se debe conocer la máxima demanda de recursos por anticipado.  Los procesos deben ser independientes, es decir que puedan ser ejecutados en cualquier orden. Por lo tanto su ejecución no debe estar forzada por condiciones de sincronización.  Debe haber un número fijo de recursos a utilizar y un número fijo de procesos.  Los procesos no pueden finalizar mientras retengan recursos.
  • 5. ALGORITMO DEL BANQUERO  Para comprender éste algoritmo es necesario que tengamos claros los siguientes conceptos:  Estado. Es la asignación actual de los recursos a los procesos.  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.
  • 6. ALGORITMO DEL BANQUERO PARA UN SOLO RECURSO Tres estados de asignación de recursos: Tiene Máx. Tiene Máx. Tiene Máx. A 0 6 A 1 6 A 1 6 B 0 5 B 1 5 B 2 5 C 0 4 C 2 4 C 2 4 D 0 7 D 4 7 D 4 4 Libres: 10 Libres: 2 Libres: 1 a b c  A cada cliente se le ha otorgado cierto numero de unidades de crédito.  El banquero sabe que no todos los clientes van a necesitar su crédito máximo de inmediato, así que solo ha reservado 10 unidades para atenderlos, en lugar de 22
  • 7. ALGORITMO DEL BANQUERO PARA UN SOLO RECURSO  En cierto momento, la situación es la que muestra en la figura b. el banquero puede aplazar cuales quiera de las solicitudes, excepto las de C, para así dejar que C termine y libere sus cuatro unidades. Con cuatro unidades disponibles el banquero puede otorgar a D o a B las unidades que necesite, y así de forma sucesiva.  Pero si B solicitara una unidad mas y se le concediera. Tendríamos la situación de la figura c. Que es insegura. Si todos los clientes pidieran repetidamente sus préstamos máximos, el banquero no podría satisfacer uno de ellos y tendríamos un bloqueo irreversible.  El algoritmo del banquero examina cada solicitud en el momento en el que se hace y determina si otorgar lo que se le pide conducirá a un estado seguro o no. Si es así concede la solicitud; de lo contrario, la pospone.
  • 8. ALGORITMO DEL BANQUERO PARA VARIOS RECURSOS Tenemos 2 matrices: La de la izquierda indica cuantas instancias de cada recurso están asignadas en la actualidad a cada uno de los 5 procesos. Se indica que: La matriz de la derecha cuantos los recursos existen, E recursos necesita todavía cada los recursos poseídos, P proceso para terminar. los recursos disponibles, A
  • 9. ALGORITMO DEL BANQUERO PARA VARIOS RECURSOS  Aquí, los procesos deben plantear sus necesidades de recursos totales antes de ejecutarse, para que el sistema pueda calcular la matriz de la derecha en cada momento.  El vector E nos indica que el sistema tiene seis unidades de cinta, tres graficadores, cuatro impresoras, y dos unidades de Cd-ROM. De estos recursos, 5 unidades de cinta, 3 graficadores, 2 impresoras y 2 de Cd-ROM están asignados actualmente. Estos pueden verse sumando las 4 columnas de recursos de las matrices de la izquierda. El vector de los recursos disponibles no es más que la diferencia entre lo que el sistema tiene y lo que se está usando en el momento.  El estado actual es seguro.
  • 10. ALGORITMO DEL BANQUERO PARA VARIOS RECURSOS  Ahora supongamos que el proceso B solicita una impresora. Esta solicitud puede concederse porque el estado resultante sigue siendo seguro (el proceso de D puede terminar, y luego el proceso A o el E, seguidos del resto).  Ahora imaginemos que después de entregar al B uno de las dos impresoras restantes, E quiere la última impresora; satisfacer esa solicitud reducirá el vector de recursos disponibles a (1000), y eso conduciría a un bloqueo irreversible. Es evidente que la solicitud de E debe aplazarse por el momento.
  • 11. DEBILIDADES DEL ALGORITMO DEL BANQUERO  Requiere que exista un número fijo de recursos asignables, pero generalmente no se puede contar con que el número de recursos se mantenga siempre constante.  Requiere que la población de usuarios se mantenga constante, lo cual es irrazonable.  Requiere que el S. O. garantice que todas las peticiones serán concedidas en un tiempo finito, pero en la realidad se requieren mayores garantías.  Requiere que los procesos reintegren los recursos en un tiempo finito, pero en la realidad se requieren mayores garantías.  Requiere que los procesos indiquen sus necesidades máximas de recursos por adelantado, lo cual generalmente no ocurre.  Generalmente no es utilizado en S. O. reales.