Está en la página 1de 3

Árbitro

Es el componente lógico encargado de resolver, en base a alguna política determinada, los


conflictos de acceso o de uso simultáneo de un elemento o recurso compartido del sistema.

Siendo en este caso el BUS el recurso compartido

Basado en el número de recursos que controlan

En un sistema puede existir un árbitro por cada recurso compartido o un solo árbitro global
que controle la asignación de todos los recursos.

Árbitros de un solo Recurso: Manejan un recurso solamente (por ejemplo, el bus común del
sistema), es decir, pueden recibir un máximo de N peticiones simultáneas, siendo N el numero
de procesadores, pero solo puede hacer una asignación a la vez.

Árbitros de varios Recursos: Es por lo general global al sistema. En un sistema con N


procesadores y M módulos de memoria, conectados entre si por B buses, el árbitro recibe
hasta un máximo de N peticiones simultáneas y gestiona B asignaciones de recursos o buses.

Basado en el algoritmo de asignación

Algoritmo FIFO: Las peticiones de asignación se atienden en el mismo orden en que llegan.

Algoritmo de Prioridad Fija o Estática: El algoritmo da a cada procesador una prioridad fija, o
sea, si varios procesadores solicitan asignación del recurso (bus), entonces el acceso al recurso
lo tendrá el que tenga mayor prioridad.

Algoritmo de Prioridad Rotativa o “Round Robin”: Las prioridades de los procesadores va


cambiando dinámicamente de forma rotativa debido a que el procesador que termina de usar
el recurso asignado, pasa a tener la prioridad mas baja de todos y no volverá a tener acceso al
recurso hasta que hayan accedido a este todos los procesadores que lo hubieran solicitado.

Algoritmo LRU (ultimo usado recientemente): Aquí también la prioridad cambia


dinámicamente. La máxima prioridad la obtiene, dentro de los procesadores que hayan
solicitado el acceso al bus, aquel que hace mas tiempo que no ha utilizado el recurso. Para que
esto se lleve a cabo es necesario que se cambien las prioridades después de cada asignación.

Algoritmo RANDOM (acceso aleatorio): En este algoritmo, la asignación del recurso se hace al
azar o de forma aleatoria entre todas las peticiones de uso de este.

Basado en su implementación Física

El arbitraje puede ser implementado directamente a nivel circuitos lógicos o lógica digital
(hardware) o a nivel de programa (software).
Árbitro en Software: Se construye con el mínimo soporte digital posible, siendo el sistema
operativo el encargado de realizar todas las funciones de arbitraje.

Árbitro en Hardware: El árbitro, incluyendo la circuitería de ejecución del algoritmo, se


implementa físicamente con tecnología digital.

Árbitro Microprogramado: El árbitro se construye por completo, en hardware, pero el


algoritmo de ejecución se encuentra grabado como un microprograma en una memoria ROM.

Árbitro de Algoritmo Programable: Es un árbitro que puede ejecutar varios algoritmos de


asignación.

Basado en su sincronización

Árbitros Sincrónicos: Son aquellos que funcionan con la misma señal de reloj de los elementos
para los cuales sirve de árbitro y se encargan de la sincronización de todos ellos. Las peticiones
de uso de un recurso se hacen a intervalos de tiempo fijos o regulares.

Árbitros Asincronicos: Son aquellos que controlan componentes que funcionan


asincrónicamente, o sea, con diferentes señales de reloj. Las peticiones de uso de un recurso
se hacen a intervalos de tiempo variables o irregulares.

Basado en su distribución Física

Árbitro Centralizado: Este árbitro tiene todo su hardware centralizado en una posición física y
recibe todas las peticiones de los procesadores y de el salen las asignaciones necesarias.

Árbitro Distribuído: La mayor parte de la lógica de control necesaria para arbitrar los recursos
se encuentra distribuida entre los procesadores. Cada árbitro recibe las peticiones de su
procesador asociado, además de otras señales necesarias provenientes de los demás árbitros
de los procesadores, y asigna el recurso en cuestión a su procesador según la lógica del
sistema.

Árbitro Semidistribuido: En este, parte de la lógica de control esta distribuida en los


componentes del sistema y, parte en una unidad central. Se coloca en una unidad central el
hardware que ha de realizar las funciones de comunicación entre varios procesadores y en los
módulos separados, las funciones exclusivas de cada procesador.

Bibliografía

David A. Patterson, Jhon L. Hennesy. "Estructura y Diseño de Computadores"


Randal E. Bryant, David R. O’Hallaron.  "Computer Systems. A Programmer’s Perspective"

Computer Architecture: A Quantitative Approach (3rd or 4th ed.), John L. Hennessy y David A.
Patterson. Morgan Kaufmann Publishers, Inc.

• Organización y arquitectura de computadores (7th ed.), William Stallings. Prentice Hall.

• Organización de Computadores, C. Hamacher, Z. Vranesic y S. Zaky. Mc Graw Hill, 2003.


• Computer Organization and Design: The hardware/software interface (3rd ed.), David A.
Patterson and John L. Hennessy. Morgan Kaufmann Publishers, Inc.

También podría gustarte