Sie sind auf Seite 1von 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

Analoga:

Funcionamiento de un banco:

Los clientes representan a los procesos, que


tienen un crdito lmite
El dinero representa a los recursos.
El banquero es el sistema operativo.

ALGORITMO DEL BANQUERO

El banco confa en que no todos los clientes


necesitaran su crdito mximo otorgado en forma
inmediata, por ello reserva menos unidades
(recursos) de las totales necesarias para dar
servicio a los clientes.
El banco tambin asume que si un cliente
maximiza su crdito 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 mxima demanda de recursos por


anticipado.
Los procesos deben ser independientes, es decir que
puedan ser ejecutados en cualquier orden. Por lo tanto
su ejecucin no debe estar forzada por condiciones de
sincronizacin.
Debe haber un nmero fijo de recursos a utilizar y un
nmero fijo de procesos.
Los procesos no pueden finalizar mientras retengan
recursos.

ALGORITMO DEL BANQUERO

Para comprender ste algoritmo es necesario


tengamos claros los siguientes conceptos:

que

Estado.Es la asignacin actual de los recursos a los


procesos.
Matrizdemanda (o mximo necesario). Son las
exigencias mximas de recursospara cada proceso.
Matriz asignacin.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 asignacin de recursos:
Tiene

Mx.

Tiene

Mx.

C
D

Tiene

Mx.

Libres: 10

Libres: 2

Libres: 1

A cada cliente se le ha otorgado cierto numero de


unidades de crdito.
El banquero sabe que no todos los clientes van a necesitar
su crdito mximo 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 situacin 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. Tendramos
la situacin de la figura c. Que es insegura. Si todos los clientes
pidieran repetidamente sus prstamos mximos, el banquero no
podra satisfacer uno de ellos y tendramos 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
estn asignadas
en la actualidad a
cada uno de los 5
procesos.
Se indica que:
los recursos existen, E
los recursos posedos, P
los recursos disponibles, A

La matriz de la derecha cuantos


recursos necesita todava cada
proceso para terminar.

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 estn 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 ms
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 despus 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 conducira 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 nmero fijo de recursos asignables, pero


generalmente no se puede contar con que el nmero de recursos se
mantenga siempre constante.

Requiere que la poblacin de usuarios se mantenga constante, lo cual es


irrazonable.

Requiere que el S. O. garantice que todas las peticiones sern concedidas


en un tiempo finito, pero en la realidad se requieren mayores garantas.

Requiere que los procesos reintegren los recursos en un tiempo finito, pero
en la realidad se requieren mayores garantas.

Requiere que los procesos indiquen sus necesidades mximas de recursos


por adelantado, lo cual generalmente no ocurre.

Generalmente no es utilizado en S. O. reales.

Das könnte Ihnen auch gefallen