Está en la página 1de 8

Sistemas Operativos Distribuidos

Referencias Básicas

Sistemas Operativos Distribuidos • Distributed Operating Systems


A. S. Tanenbaum
Prentice-Hall, 1995
• Distributed Systems: Concepts and Design
Presentación G. Coulouris, J. Dollimore, T. Kindberg
Addison-Wesley, 2001
• Pattern-Oriented Software Architecture: Patterns for
Concurrent and Networked Objects (Vol 2).
D. Schmidt, M. Stal, H. Rohnert, F. Bruschmann
Wiley, 2000

Sistemas Operativos Distribuidos Fernando Pérez Costoya


1 José María Peña Sánchez

Referencias Básicas Índice del Curso

• Distributed Operating Systems: Concepts & Practice Índice de Temas


D. L. Galli • Introducción y conceptos
Prentice-Hall, 2000 • Comunicación en sistemas Tecnologías

Entornos Distribuidos
distribuidos

Casos de Estudio
• Distributed Operating Systems & Algorithms •CORBA
• Sistemas de ficheros distribuidos
R. Chow, T. Johnson y servicios de directorio.
•DCOM
Addison-Wesley, 1997 •DCE

y
• Sincronización y coordinación
• Sistemas de memoria distribuida •Java:
•Jini
Traducción al Castellano • Gestión de procesos
•RMI
• Sistemas Operativos Distribuidos • Seguridad en sistemas •EJB
distribuidos
A. S. Tanenbaum
Prentice-Hall, 1996
Sistemas Operativos Distribuidos Fernando Pérez Costoya Sistemas Operativos Distribuidos Fernando Pérez Costoya
2 José María Peña Sánchez 3 José María Peña Sánchez

Objetivos Direcciones de Contacto

• Conceptos (Objetivo Principal) Información Actualizada:


– Diseño de sistemas distribuidos (No sólo sistemas operativos). • Página de la asignatura:
– Problemática de sistemas distribuidos: – http://laurel.datsi.fi.upm.es/~ssoo/SOD/
• Transacciones y concurrencia.
• Nombrado y organización.
• Seguridad. Profesores Responsables:
• Configuración y optimización.
• Fernando Pérez Costoya
– <fperez@fi.upm.es>
• Técnicas (Objetivo Secundario) • José María Peña Sánchez
– Tecnologías y entornos de desarrollo distribuidos. – <jmpena@fi.upm.es>
– Herramientas de desarrollo.
– “Guía de referencias”.

Sistemas Operativos Distribuidos Fernando Pérez Costoya Sistemas Operativos Distribuidos Fernando Pérez Costoya
4 José María Peña Sánchez 5 José María Peña Sánchez

1 - Introducción 1
Sistemas Operativos Distribuidos

Contenidos del Tema

Sistemas Operativos Distribuidos • Evolución de los sistemas operativos:


– Definición de sistema centralizado.
– Definición de sistema distribuido.
• Ventajas y desventajas de los sistemas distribuidos.
Introducción y • Sistemas operativos distribuidos.
Conceptos • Sistemas operativos de red.
• Middlewares.
• Objetivos de un sistema distribuido.
• Componentes de un sistema distribuido.
• Notación y formalismos.

Sistemas Operativos Distribuidos Fernando Pérez Costoya


7 José María Peña Sánchez

Arquitectura de Sistemas Centralizados Arquitectura de Sistemas Distribuidos

• Único computador (caro y de gran potencia) con terminales • Conjunto de procesadores conectados por una red
alfanuméricos directamente conectados. • Cada usuario tiene capacidad de procesamiento local que
• Entornos de empresa: permite interfaces de usuario sofisticadas.
– Soporte multiusuario • Uso intensivo de la red para compartir recursos:
– Uso de mainframes o minicomputadores – dispositivos
• Entornos científicos: – datos
– Ejecución eficiente de aplicaciones – procesadores (migración de procesos)
– Uso de supercomputadores • Capacidad global de procesamiento disponible para:
• Uso ocasional de la red: – Servicio a múltiples usuarios
– Transferir ficheros o logins remotos – Ejecución paralela de una aplicación
• Interfaz de usuario poco amigable
– Interfaces gráficas gastan muchos recursos
Sistemas Operativos Distribuidos Fernando Pérez Costoya Sistemas Operativos Distribuidos Fernando Pérez Costoya
8 José María Peña Sánchez 9 José María Peña Sánchez

Nacimiento de los Sistemas Distribuidos Características de un Sistema Distribuido

Causas: Definición: [Tan95]


• Tecnología de microprocesadores: relación potencia/coste. Un sistema distribuido es una colección de computadoras
independientes que aparece ante los usuarios del sistema como
• Tecnologías de comunicaciones: una única computadora.
– Protocolos de comunicaciones.
– Redes de área local (LAN): Coste y prestaciones.
– Internet ★ Recursos distribuidos para un trabajo común.
★ N computadoras ➙ Un “servicio” único a los usuarios.
• Factores comerciales:
– Comercio electrónico: e-comerce. Tradicionalmente (1972):
– Información distribuida (WWW). – Clasificación de Flynn: SISD, SIMD, MISD, MIMD
– Reducción de costes.

Sistemas Operativos Distribuidos Fernando Pérez Costoya Sistemas Operativos Distribuidos Fernando Pérez Costoya
10 José María Peña Sánchez 11 José María Peña Sánchez

1 - Introducción 2
Sistemas Operativos Distribuidos

Características de un Sistema Distribuido Evolución de los Sistemas Operativos

Un sistema distribuido implica las siguientes consecuencias: • Sistemas Operativos Sistema Objetivos
• No existe un reloj común: Afecta a cualquier aspecto de Centralizados. Sistema Operativo
Gestión de recursos,
“Máquina extendida”,
coordinación y mensajes. Centralizado
(Virtualidad)
• Concurrencia global: Los elementos del sistema se ejecutan • Sistemas Operativos
realmente en paralelo. en Red Sistema Operativo Compartición de recursos,
en Red (Interoperabilidad)
• Fallos independientes: Los modos de fallo del sistema
pueden ser locales a un subconjunto de sus componentes. • Sistemas Operativos Sistema Operativo
Vista única de varias
computadoras
Distribuidos Distribuido
(Transparencia)

Sistema Trabajo cooperativo,


• Sistemas Cooperativa (Autonomía)
Cooperativos
Sistemas Operativos Distribuidos Fernando Pérez Costoya Sistemas Operativos Distribuidos Fernando Pérez Costoya
12 José María Peña Sánchez 13 José María Peña Sánchez

Capas de un Sistema Operativo Responsabilidades del Kernel

La visión esquemática de un sistema operativo comprende los Servicios Kernels Monolíticos:


siguientes niveles: Kernel
Muchas funcionalidades dentro del kernel:
planificador, gestión de memoria, drivers,...
Computadora
• Hardware. Usuarios µ−Kernels:
Kernels:
µ−Kernels
• Núcleo (kernel). Se sacan funcionalidades del kernel. Sólo quedan: Servicios
Aplicaciones
(i) comunicación entre procesos, (ii) administración µ−Kernel
µ−Kernel
• Servicios del sistema. de memoria, (iii) administración y planificación de
Servicios
Computadora
• Programas de aplicación. bajo nivel y (iv) entrada/salida de bajo nivel
Kernel
• Usuarios. Servicios Distribuidos:
Hardware
Servicios Estructura de sistema distribuido. Dependiendo
del nivel se habla de: Sistema Operativo
µ− Kernel
µ−Kernel Kernel
µ−Kernel
µ− Kernel
µ−Kernel
µ−
Distribuido, Sistema en Red o (Cooperativo).

Sistemas Operativos Distribuidos Fernando Pérez Costoya Sistemas Operativos Distribuidos Fernando Pérez Costoya
14 José María Peña Sánchez 15 José María Peña Sánchez

Heterogeneidad de un Sistema
Ventajas de los Sistemas Distribuidos
Distribuido
Un sistema distribuido puede estar formado por multitud de • Economía: Buena relación rendimiento/coste
elementos conectados por redes LAN o WAN: – Ley de Grosch (obsoleta):
– Terminales X y Estaciones Java (Network Computer). Prestaciones = cte x (Precio)2
– PCs y estaciones de trabajo. • Alto rendimiento: Procesamiento paralelo.
– Sistemas portátiles (redes móviles: GSM, WAP y ...) • Soporte de aplicaciones inherentemente distribuidas.
– Minicomputadores.
– Por ejemplo: empresa distribuida geográficamente
– Supercomputadores.
– Multiprocesadores con memoria compartida o no. • Capacidad de crecimiento: Escalabilidad.
– Servidores especializados (de almacenamiento, de impresión, ...). • Fiabilidad y disponibilidad: Tolerancia a (ciertos) fallos.
– Sistemas empotrados.
• Carácter abierto y heterogéneo:
Fomentada por los siguientes factores: – Estándares de interoperabilidad.
– Extensibilidad de los sistemas distribuidos.
• Compartir recursos y datos.
– Especialización de los servidores.
Sistemas Operativos Distribuidos Fernando Pérez Costoya Sistemas Operativos Distribuidos Fernando Pérez Costoya
16 José María Peña Sánchez 17 José María Peña Sánchez

1 - Introducción 3
Sistemas Operativos Distribuidos

Desventajas de los Sistemas Distribuidos Aplicaciones de los Sistemas Distribuidos

• Necesidad de un nuevo tipo de software: • Servicios Internet: correo, noticias, Web, ... nuevos servicios.
– Más complejo. • Redes corporativas e intranets.
– No hay todavía un acuerdo sobre cómo debe ser.
• Procesamiento paralelo:
• Red de interconexión introduce nuevos problemas: – Procesamiento masivo (solución a la eficiencia).
– Pérdida de mensajes y saturación. – Topología distribuida (problemas de naturaleza distribuida)
– Latencia puede provocar que al recibir un dato ya esté obsoleto.
– La red es un elemento crítico. • Sistemas distribuidos de gestión de bases de datos y
explotación de los mismos: e.g. Data Warehousing.
• Seguridad y confidencialidad
• Aplicaciones multimedia.
• Sistemas industriales distribuidos y aplicaciones de control.
• Sistemas distribuidos de tiempo real.
• ..... < y muchos más >
Sistemas Operativos Distribuidos Fernando Pérez Costoya Sistemas Operativos Distribuidos Fernando Pérez Costoya
18 José María Peña Sánchez 19 José María Peña Sánchez

Distribución de los Sistemas Operativos Sistemas Operativos para SMPs

• Sistemas operativos para multiprocesadores con memoria Arquitecturas de varios procesadores (2 a 8) con memoria
compartida (SMP): compartida de acceso uniforme (SMP: Simetric Multiprocesors)
– Software fuertemente acoplado
– sobre Hardware fuertemente acoplado
Características:
• Sistema operativo distribuido (SOD): – “Ligeras” variaciones sobre versiones tradicionales.
– Software fuertemente acoplado – Sólo hay una copia del sistema operativo.
– sobre Hardware débilmente acoplado – Concurrencia se traduce en paralelismo real (≠ tiempo compartido).
• Sistema operativo en red: – Comercialmente aceptados (Linux, WinNT, Solaris, AIX, ...).
– Software débilmente acoplado – Plantea retos para: la ejecución del núcleo en varios procesadores
– sobre Hardware débilmente acoplado (llamadas al sistema concurrentes) , los mecanismos de
sincronización (spin-locks), optimización y planificación (afinidad al
procesador), ...

Sistemas Operativos Distribuidos Fernando Pérez Costoya Sistemas Operativos Distribuidos Fernando Pérez Costoya
20 José María Peña Sánchez 21 José María Peña Sánchez

Sistemas Operativos Distribuidos (SOD) Sistemas Operativos Distribuidos (SOD)

Definición: [Gal00] Problemática:


Un sistema operativo distribuido es un conjunto de procesadores – Cada nodo tiene su copia del sistema operativo: ¿Qué tareas se
realizan localmente y cuáles son globales?
interconectados por redes que ocultan dicha característica
– ¿Cómo lograr exclusión mutua sin memoria compartida?
mostrando una visión al usuario de “uniprocesador virtual”. – ¿Cómo tratar los interbloqueos sin un estado global?
– Planificación de procesos: Cada copia del sistema operativo tiene su
Características: cola de planificación (migración de procesos).
– Ejecuta sobre un sistema distribuido haciendo creer a los usuarios – ¿Cómo crear un árbol de ficheros único?
que se trata de un sistema centralizado. – Implicaciones de la falta de reloj único, la presencia de fallos o la
– Trasparencia: Debe ocultar factores derivados de la distribución. heterogeneidad.
– Es fácil de decir pero no de hacer. Principal aportación:
– Cada sistema alcanza hasta cierto punto esta meta. – Se han desarrollado nuevos conceptos y planteamientos que se han
– Los fracasos pueden generar frustraciones en los usuarios. podido trasladar a los otros modelos de sistemas distribuidos.
Sistemas Operativos Distribuidos Fernando Pérez Costoya Sistemas Operativos Distribuidos Fernando Pérez Costoya
22 José María Peña Sánchez 23 José María Peña Sánchez

1 - Introducción 4
Sistemas Operativos Distribuidos

Evolución de los SOD Sistemas Operativos en Red

• Primeros SO de red: Definición: [Cho97]


– Incluir servicios de red en SO convencional Red de computadoras débilmente acopladas en las que no existe
– Ejemplo: UNIX 4BSD (≈1980)
un control externo directo sobre el hardware/software de cada
• Paulatina incorporación de más funcionalidad: computadora para la compartición de recursos.
– ONC de Sun (≈1985): incluye NFS, RPC, NIS
• Primeros SOD:
– Nuevos SO pero basados en arquitecturas convencionales Características:
(monolíticas) – No dan la visión de uniprocesador virtual (máquinas independientes).
– Ejemplo: Sprite de la Universidad de Berkeley (≈1988) – Cada una ejecuta una copia de sistema operativo (distinto).
– Sistema operativo convencional + utilidades de red.
• SOD basados en m-kernel. Ejemplos: – Protocolos de comunicación para intercambio de recursos y acceso a
– Mach de CMU (≈1986) servicios de alto nivel.
– Amoeba diseñado por Tanenbaum (≈1984) – Desde rcp/rlogin hasta Open Network Computing (ONC) de Sun.
– Chorus de INRIA en Francia (≈1988)
Sistemas Operativos Distribuidos Fernando Pérez Costoya Sistemas Operativos Distribuidos Fernando Pérez Costoya
24 José María Peña Sánchez 25 José María Peña Sánchez

Sistemas Cooperativos Middleware

Definición: [Cho97] Middleware:


Sistemas software orientados a servicios de alto nivel que – Capa de software que ejecuta sobre el sistema operativo local
ofreciendo unos servicios distribuidos estandarizados.
requieren el soporte de mecanismos de comunicación en base a
– Sistema abierto independiente del fabricante.
los cuales los protocolos de comunicaciones de alto nivel se – No depende del hardware y sistema operativo subyacente.
construyen. Ejemplos:
– DCE (Open Group).
Características: – CORBA (OMG).
– Se mantiene el grado de trasparencia sacrificando la visión de único – ... Middleware
sistema. Son sistemas autónomos independientes.
SO SO SO
– Se construyen en base a middlewares (CORBA, DCE, DCOM, ...)
– Los sistemas resultan de la integración de múltiples servicios Hardware Hardware Hardware
proporcionados por diferentes elementos de la red.
Sistemas Operativos Distribuidos Fernando Pérez Costoya Sistemas Operativos Distribuidos Fernando Pérez Costoya
26 José María Peña Sánchez 27 José María Peña Sánchez

Objetivos de un Sistema Distribuido Transparencia

En general el desarrollo de sistemas distribuidos intenta poner Existen varios perfiles de trasparencia:
solución a los siguientes objetivos: – Acceso: Manera de acceder a recurso local igual que a remoto.
– Transparencia. – Posición: Se accede a los recursos sin conocer su localización.
– Fiabilidad. – Migración: Recursos pueden migrar sin afectar a los usuarios.
– Rendimiento. – Concurrencia: Acceso concurrente no afecta a los usuarios.
– Capacidad de crecimiento. – Replicación: La existencia de réplicas no afecta a los usuarios.
– Flexibilidad. – Fallos: La ocurrencia de fallos no afecta a los usuarios.
– Seguridad. – Crecimiento: El crecimiento del sistema no afecta a los usuarios.
– Heterogeneidad:Carácter heterogéneo no afecta a los usuarios.
Sistemas operativos distribuidos, sistemas en red y sistemas
cooperativos requieren diferentes facetas de estos objetivos. ¿Es buena tanta transparencia?
– A veces el usuario precisa conocer cómo es el sistema subyacente

Sistemas Operativos Distribuidos Fernando Pérez Costoya Sistemas Operativos Distribuidos Fernando Pérez Costoya
28 José María Peña Sánchez 29 José María Peña Sánchez

1 - Introducción 5
Sistemas Operativos Distribuidos

Fiabilidad Rendimiento

Fiabilidad como disponibilidad: Rendimiento para un servicio multiusuario:


– Teóricamente: OR-lógico de sus componentes. – Objetivo: Rendimiento no peor que un sistema centralizado
– En ciertos casos: AND-lógico de varios componentes. Rendimiento para la ejecución paralela de aplicaciones:
– Mecanismos: redundancia y evitar componentes críticos. – Objetivo: Rendimiento proporcional a procesadores empleados
– Tolerancia a fallos: Los componuentes pueden no caerse pero
funcionan de forma errónea.
Fiabilidad como coherencia: Factores:
– Se dificulta con la redundancia: inconsistencias – Mayor número de procesadores
– Elementos críticos:
• Especialmente la red: Latencia de la comunicación, uso de caches, ...
La fiabilidad está relacionada con la seguridad (otro objetivo). – Grano de paralelismo (relación proceso/comunicación).
– Replicación de elementos/tareas.
– Equilibrado de carga.

Sistemas Operativos Distribuidos Fernando Pérez Costoya Sistemas Operativos Distribuidos Fernando Pérez Costoya
30 José María Peña Sánchez 31 José María Peña Sánchez

Capacidad de Crecimiento Flexibilidad

Diseño de un sistema distribuido debe evitar “cuellos de botella”: Capacidad para ampliarlo o extenderlo con nuevas
– Componentes centralizados funcionalidades de forma sencilla.
– Tablas centralizadas
– Algoritmos centralizados
Definición de responsabilidades:
– Sistemas con µ-kernel:
Problemática agravada por el número de elementos: • Comunicación entre procesos.
– Ninguna máquina tiene información completa del estado del sistema • Cierta administración de memoria.
– Las decisiones se basan sólo en información disponible localmente • Administración y planificación de procesos (limitada y de bajo nivel).
– El fallo de una máquina no debe invalidar el algoritmo • Entrada/salida de bajo nivel.
– No debe asumir la existencia de un reloj global
– El resto, servicios a nivel de usuario.

Sistemas Operativos Distribuidos Fernando Pérez Costoya Sistemas Operativos Distribuidos Fernando Pérez Costoya
32 José María Peña Sánchez 33 José María Peña Sánchez

Flexibilidad Componentes de un Sistema Distribuido

Un elemento fundamental de la flexibilidad son los sistemas El desarrollo de un sistema distribuido complejo requiere el uso
abiertos. de las siguientes funciones y servicios:
– Servicios de comunicación.
– Sistemas de ficheros y nombrado distribuido.
El desarrollo de estos sistemas requiere: – Servicios de sincronización y coordinación.
– Sus interfaces y protocolos deberían ser públicos. – Memoria compartida distribuida.
– Contrario a ”tecnología propietaria”. – Gestión de procesos.
– Uso de estándares siempre que sea posible. – Servicio de seguridad.
– Disponibilidad de su código fuente (libremente o no).
– Regulación por parte de un colectivo (usuarios u organizaciones) y
no por particulares (fabricantes). Estas funcionalidades se plasman en elementos concretos del
sistema: componentes, protocolos, algoritmos, soporte
hardware/software, ...
Sistemas Operativos Distribuidos Fernando Pérez Costoya Sistemas Operativos Distribuidos Fernando Pérez Costoya
34 José María Peña Sánchez 35 José María Peña Sánchez

1 - Introducción 6
Sistemas Operativos Distribuidos

Servicios de Comunicación Sistemas de Ficheros Distribuidos

• Modelos de interacción: Identificación, localización y acceso a elementos del entorno


– Cliente/servidor: (2-niveles, 3-niveles o n-niveles) distribuido.
– Peer-to-peer: Equilibrio de roles.
– Intermediarios: Proxy, Dispacher, Caches, ...
– Unicast vs Multicast Comprende:
– Fiabilidad. – Sistemas de ficheros distribuidos (SFD): NFS, AFS.
– Síncronos vs Asíncronos – Servicios de nombres: DNS, COS-Naming (CORBA).
– Servicios de directorio: X.500, LDAP, JNDI.
• Tecnologías de comunicación:
– Paso de mensajes: Berkeley sockets. Cuestiones:
– Llamada a procedimientos remotos: RPC. – Arquitectura de los servicios.
– Tecnologías de objetos distribuidos: CORBA, DCOM, EJB – Almacenamiento intermedio: caching.
– Código móvil: Entornos de agentes. – Replicación y coherencia.
Sistemas Operativos Distribuidos Fernando Pérez Costoya Sistemas Operativos Distribuidos Fernando Pérez Costoya
36 José María Peña Sánchez 37 José María Peña Sánchez

Servicios de Sincronización y
Memoria Compartida Distribuida (DSM)
Coordinación
Comprende los conceptos de: Hardware:
– Tiempo en entornos distribuidos: Sincronización de relojes y relojes – Memoria físicamente compartida.
lógicos. – Memoria distribuida (lógicamente compartida).
– Concurrencia y Paralelismo: Exclusión mutua e interbloqueos. – Acceso uniforme vs acceso no uniforme.
– Algoritmos distribuidos: Elección de líder, coordinación, ...
– Transacciones: Propiedades ACID, modelos de commit/rollback.
Distributed Shared Memory:
– Basada en páginas.
Afecta a otros servicios: – Basada en variables compartidas.
– Nombrado e identificación. – Basada en objetos.
– Seguridad y fiabilidad.
– Comunicaciones.
– ... Modelos de consistencia

Sistemas Operativos Distribuidos Fernando Pérez Costoya Sistemas Operativos Distribuidos Fernando Pérez Costoya
38 José María Peña Sánchez 39 José María Peña Sánchez

Gestión de Procesos Servicio de Seguridad

• Taxonomía de los procesos: Tipología de los ataques:


– Niveles de granularidad. – Privacidad y confidencialidad.
– Congelación de procesos (persistencia). – Autenticación (spoofing).
– Migración de procesos (estado/código). – Denegación de servicio.

• Planificación de procesos: Modelos y herramientas de seguridad:


– Planificación interna: Procesos y threads. – Cifrado: clave pública (RSA) y privada (DES).
– Planificación global. – Protocolos de seguridad: IPsec, SSL.
– Migración y equilibrado de carga. – Certificados y firmas digitales: X.509.
– Aprovechamiento de máquinas inactivas. – Elementos de seguridad: Firewalls.

Entornos seguros: e.g. Kerberos.


Sistemas Operativos Distribuidos Fernando Pérez Costoya Sistemas Operativos Distribuidos Fernando Pérez Costoya
40 José María Peña Sánchez 41 José María Peña Sánchez

1 - Introducción 7
Sistemas Operativos Distribuidos

Notación Notación y Formalismos

La asignatura tiene dos partes: • Objetivo de la notación: No atar ninguna solución a una
– Parte de la asignatura dependiente de “ciertas“ tecnologías: tecnología concreta.
• API de sockets.
• RPCs.
• CORBA. • Notaciones y formalismos usados:
• DCOM. – Pseudocódigo: Algoritmos y ejemplos.
• Java: RMI, EJB y Jini. – Objetos: Escenarios de interacción, patrones distribuidos.
– Parte de la asignatura independiente de tecnologías: – Formalismos matemáticos: Seguridad, sincronización.
• Conceptos. – Metodologías y arquitecturas: Nomenclatura y semántica.
• Técnicas.
• Algoritmos.
• Estrategias de diseño. • Se optará por el más apropiado en cada caso.
• No debe ser un impedimento para entender el concepto.

Sistemas Operativos Distribuidos Fernando Pérez Costoya Sistemas Operativos Distribuidos Fernando Pérez Costoya
42 José María Peña Sánchez 43 José María Peña Sánchez

Wrapper Facade Wrapper Facade

Patrón de diseño que encapsula los factores y características Ejemplo:


dependientes de las APIs de desarrollo del sistema operativo o – Semáforo genérico.
Protege un región de
class Thread_Mutex
tecnología usada. [SSR00]
exclusión mútua {
– acquire(): entrada public:
Escenario: Wrapper Facade llamadas
API FunciónA en la región.
llamadas Datos llamadas – release(): salida Thread_Mutex();
Aplicación API FunciónB
llamadas
API FunciónC de la región. Thread_Mutex();
método1(){ método1()
método1(){
... void acquire();
funciónA();
funciónA();
metodoN()
métodoN(){
métodoN(){ – Implementación:
funciónB();
funciónB(); funciónC();
funciónC(); Depende del SO. void release();
}} }}
};

Sistemas Operativos Distribuidos Fernando Pérez Costoya Sistemas Operativos Distribuidos Fernando Pérez Costoya
44 José María Peña Sánchez 45 José María Peña Sánchez

1 - Introducción 8

También podría gustarte