Sistemas Operativos Distribuidos por Andrew S. Tanenbaum

| marzo 26, 2012 | 1 Comentario
Sistemas Operativos Distribuidos - Andrew S. Tanenbaum
DESCRIPCIÓN DEL TEXTO
Este libro abarca con detalle los sistemas operativos distribuidos incluyendo la comunicación, la sincronización los procesos, los sistemas de archivos y la administración de la memoria pero ahora en el contexto de los sistemas distribuidos se proporcionan cuatro ejemplos detallados de sistemas distribuidoa Amoeba, Mach, Chorus y DCE.  Cuenta con el respaldo de más de 250 figuras, 200 referencias, lecturas sugeridas y casi 200 problemas.
Amoeba esta disponible en forma gratuita para universidades y usos educativos, se puede ejecutar en los procesadores Intel 386/486 SPARC y Sun 3.  Los usuarios potenciales deben advertir que Amoeba es más complejo que MINIX, la sola documentación (disponible mediante FTP) tiene mas de 1000 páginas y el sistema necesita al menos cinco máquinas grandes y Ethernet para una buena ejecución.
TABLA DE CONTENIDO

1. INTRODUCCIÓN A LOS SISTEMAS DISTRIBUIDOS

1.1. ¿Que es un sistema distribuido?

1.2. Objetivos

1.2.1. Ventajas de los sistemas distribuidos con respecto de los centralizados
1.2.2 Ventajas de los sistemas distribuidos con repecto de las PC indeependientes
1.2.3. Desventajas de los sistemas distribuidos

1.3. Conceptos de Hardware

1.3.1. Multiprocesadores con base en buses
1.3.2. Multiprocesadores con conmutador
1.3.3. Multicomputadoras con base en buses
1.3.4. Multicomputadoras con conmutador

1.4. Conceptos de software

1.4.1. Sistemas operativos de redes
1.4.2. Sistemas realmente distribuidos
1.4.3. Sistemas de multiprocesador con tiempo compartido

1.5. Aspectos del diseño

1.5.1. Transparencia
1.5.2. Flexibilidad
1.5.3. Confiabilidad
1.5.4. Desempeño
1.5.5. Escalabilidad

1.6. Resumen

2. COMUNICACIÓN EN LOS SISTEMAS DISTRIBUIDOS

2.1. Protocolo con capas

2.1.1. La capa física
2.1.2. La capa de enlace de datos
2.1.3 . La capa de red
2.1.4. La capa de transporte
2.1.5. La capa de sesión
2.1.6. La capa de presentación
2.1.7. La capa de aplicación

2.2. Redes con modo de transferencia asíncrona

2.2.1. ¿Qué es el modo de transferencia asíncional?
2.2.2. La capa física ATM
2.2.3. La capa ATM
2.2.4. La capa de adaptación ATM
2.2.5. conmutación ATM
2.2.6. Algunas implicaciones del ATM para sistemas distribuidos

2.3. El modelo cliente servidor

2.3.1. Clientes y servidores
2.3.2. Un ejemplo cliente servidor
2.3.3. Direccionamiento
2.3.4. Primitivas con bloqueo  sin bloqueo
2.3.5. Primitivas almacenadas en buffer  no almacenadas
2.3.6. Primitivas confiables no confiables
2.3.7. Implantación del modelo cliente servidor

2.4. Llamada a un procedimiento remoto (RPC)

2.4.1. Operación básica de RPC
2.4.2. Transferencia de parámetros
2.4.3. Conexión dinámica
2.4.4. semática de RPC en presencia de fallas
2.4.5. Aspectos de la implantación
2.4.6. Áreas de problemas

2.5. Comunicación en grupo

2.5.1. Introducción a la comunicación en grupo
2.5.2. Aspectos del diseño
2.5.3. comunicación en grupo en ISIS

2.6. Resumen

3. SINCRONIZACIÓN EN SISTEMAS DISTRIBUIDOS

3.1. Sincronización de relojes

3.1.1. Relojes lógicos
3.1.2. Relojes físicos
3.1.3. Algoritmos para la sincronización de relojes
3.1.4. Uso de relojes sincronizados

3.2. Exlusión mutua

3.2.1. Un algoritmo centralizado
3.2.2. Un algoritmo distribuido
3.2.3. Un algoritmo de anillo de fichas
3.2.4. Comparación de los tres algoritmos

3.3. Algoritmos de elección

3.3.1. El algoritmo del glandulón
3.3.2. Un algoritmo de anillo

3.4. Transacciones atómicas

3.4.1. Introducción a las transacciones atómicas
3.4.2. El modelo de transacción
3.4.3. Implantación
3.4.4. Control de concurrencia

3.5. Bloqueos en sistemas distribuidos

3.5.1. Detección distribuidas de bloqueos
3.5.2. Prevención distribuida de bloqueos

3.6. Resumen

4. PROCESO Y PROCESADORES EN SISTEMAS DISTRIBUIDOS

4.1. Hilos

4.1.1. Introducción a los hilos
4.1.2. Uso de hilos
4.1.3. Aspectos del diseño de paquetes de hilos
4.1.4. implantación de un paquete de hilos
4.1.5. Hilos y RPC

4.2. Modelos de sistemas

4.2.1. El modelo de estación de trabajo
4.2.2. uso de estaciones de trabajo inactivas
4.2.3. El modelo de la pila de procesadores
4.2.4. Un modelo híbrido

4.3. Asignación de procesadores

4.3.1. modelos de asignación
4.3.2. aspectos del diseño de algoritmos de asignación de procesadores
4.3.3. Aspectos de la implantación de algoritmos de asignación de procesadores
4.3.4. Ejemplo de algorítmos de asignación de procesadores

4.4. Planificación en sistemas distribuidos

4.5. Tolerancia de fallas

4.5.1. fallas de componentes
4.5.2. Fallas de sistema
4.5.3. Sistemas síncronos y asíncronos
4.5.4. Uso de redundancia
4.5.5. Tolerancia de fallas mediante réplica activa
4.5.6. Tolerancia de fallas mediante respaldo primario
4.5.7. Acuerdos en sistemas defectuosos

4.6. Sistemas distribuidos de tiempo real

4.6.1. ¿Qué es un sistema de tiempo real?
4.6.2. Aspectos del diseño
4.6.3. Comunicación en tiempo real
4.6.4. Planificación de tiempo real

4.7. Resumen

5. SISTEMAS DISTRIBUIDOS DE ARCHIVOS

5.1. Diseño de los sistemas distribuidos de archivos

5.1.1. La interfaz del servidor de archivos
5.1.2. La interfaz del servidor de directorios
5.1.3. Semántica de los archivos compartidos

5.2. Implantación de un sistema distribuido de archivos

5.2.1. Uso de archivos
5.2.2. Estructura del sistema
5.2.3. Ocultamiento
5.2.4. Réplica
5.2.5. Un ejemplo el sistema de archivos de red (NFS) de Sun
5.2.6. Lecciones aprendidas

5.3. Tendencias en los sistemas distribuidos de archivos

5.3.1. Hardware reciente
5.3.2. Escalabilidad
5.3.3. Redes de área amplia
5.3.4. Usuarios móviles
5.3.5. Tolerancia de fallas
5.3.6. Multimedia

5.4. Resumen

6. MEMORIA COMPARTIDA DISTRIBUIDA

6.1. Introducción

6.2. ¿Qué es la memoria compartida?

6.2.1. Memoria en circuitos
6.2.2. Multiprocesadores basados en un bus
6.2.3. Multiprocesadores basados en un anillo
6.2.4. Multiprocesadores con conmutador
6.2.5. Multiprocesadores NUMA
6.2.6. Comparación de los sistemas con memoria compartida

6.3. Modelos de consistencia

6.3.1. Consistencia estricta
6.3.2. Consistencia secuencial
6.3.3. Consistencia causal
6.3.4. Consistencia PRAM y consistencia del procesador
6.3.5. Consistencia débil
6.3.6. Consistencia de liberación
6.3.7. Consistencia de entrada
6.3.8. Resumen de modelos de consistencia

6.4. Memoria compartida distribuida con base en páginas

6.4.1. Diseño básico
6.4.2. Réplica
6.4.3. Granulidad
6.4.4. Obtensión de la consistencia secuencial
6.4.5. Busqueda del propietario
6.4.6. Busqueda de las copias
6.4.7. Reemplazo de página
6.4.8. Sincronización

6.5. Memoria compartida distribuida con variables compartidas

6.5.1. Munin
6.5.2. Midway

6.6. Memoria compartida distribuida basada en objetos

6.6.1. Objetod
6.6.2. Linda
6.6.3. Orca

6.7. Comparación

6.8. Resumen

7. ESTUDIO 1: AMOEBA

7.1. Introducción a Amoeba

7.1.1. Historia de Amoeba
7.1.2. Objetivos de investigación
7.1.3. La arquitectura del sistema Amoeba
7.1.4. El micronucleo de Amoeba
7.1.5. los servidores de Amoeba

7.2. Objetos y posibilidades en Amoeba

7.2.1. Posibilidades
7.2.2. Protección de objetos
7.2.3. Operaciones estándar

7.3. Administración de procesos en Amoeba

7.3.1. Procesos
7.3.2. Hilos

7.4. Administración de memoria en Amoeba

7.4.1. Segmentos
7.4.2. Segmentos asociados

7.5. Comunicación en amoeba

7.5.1. Llamada a un procedimiento remoto (RPC)
7.5.2. Comunicación en grupo en amoeba
7.5.3. El protocolo Internet Fast Local (FLIP)

7.6. Los servidores de Amoeba

7.6.1. El servidor de archivos
7.6.2. El servidor de directorios
7.6.3. El servidor de réplicas
7.6.4. El servidor de ejecución
7.6.5. El servidor de arranque
7.6.6. El servidor TCP / IP
7.6.7. Otros servidores

7.7. Resumen

8. ESTUDIO 2: MACH

8.1. Introducción a Mach

8.1.1. Historia de Mach
8.1.2. Objetivos de Mach
8.1.3. El Micronucleo de Mach
8.1.4. El servidor BSD UNIX de Mach

8.2. Administración de procesos en Mach

8.2.1. Procesos
8.2.2. Hilos
8.2.3. Planificación

8.3. Aministración de memoria en Mach

8.3.1. Memoria virtual
8.3.2. Memoria compartida
8.3.3. Administradores externos de la memoria
8.3.4. Memoria compartida distribuida en Mach

8.4. Comunicación en Mach

8.4.1. Puertos
8.4.2. Envío y recepción de mensajes
8.4.3. El servidor de mensajes de red

8.5. Emulación de Unix en Mach

8.6. Resumen

9. ESTUDIO 3: CHORUS

9.1. Introducción a Chorus

9.1.1. Historia de Chorus
9.1.2. Objetivos de Chorus
9.1.3. Estructura del sistema
9.1.4. Abstracciones del núcleo
9.1.5. estructura del núcleo
9.1.6. El subsistema UNIX
9.1.7. El subsistema orientadoa objetos

9.2. Administración de procesos en Chorus

9.2.1. Procesos
9.2.2. Hilos
9.2.3. Planificación
9.2.4. Señalamientos excepciones e interrupciones
9.2.5. Llamadas al núcleo para la administración de procesos

9.3. Administración de memoria en Chorus

9.3.1. Regiones y segmentos
9.3.2. Asociadores
9.3.3. Memoria compartida distribuida
9.3.4. Llamadas al núcleo para la administración de memoria

9.4. Comunicación en Chorus

9.4.1. Mensajes
9.4.2. Puertos
9.4.3. Operaciones de comunicación
9.4.4. Llamadas al núcleo para la comunicación

9.5. Emulación de UNIX FN Chorus

9.5.1. Estructura de un proceso en UNIX
9.5.2. Extensiones a UNIX
9.5.3. Implantación de UNIX en Chorus

9.6. COOL Un subsistema orientado a objetos

9.6.1. La arquitectura COOL
9.6.2. La capa base de COOL
9.6.3. El sistema genético de tiempo de ejecución de COOL
9.6.4. El sistema de tiempo de ejecución de lenguaje
9.6.5. Implantación de COOL

9.7. Comparación de Amoeba Mach y Chorus

9.7.1. Filosofía
9.7.2. Objetos
9.7.3. Procesos
9.7.4. Modelo de memoria
9.7.5. Comunicación
9.7.6. Servidores

9.8. Resumen

10. ESTUDIO 4: DCE

10.1. Introducción a DCE

10.1. 1. Historia de DCE
10.1.2. Objetivos de DCE
10.1.3. Componentes de DCE
10.1.4. Celdas

10.2. Hilos

10.2.1. Introducción a los hilos de DCE
10.2.2. Planificación
10.2.3. Sincronización
10.2.4. Llamadas a hilos

10.3. Llamada a procedimientos remotos

10.3.1. Objetivos de RPC de DCE
10.3.2. Escritura a una cliente con un servidor
10.3.3. Conexión de un cliente con un servidor
10.3.4. Realización de una RPC

10.4. Servicio de tiempo

10.4.1. Modelo de tiempo DTS
10.4.2. Implantación de DTS

10.5. Servicio de directorios

10.5.1. Nombres
10.5.2. El servicio d directorio de celda
10.5.3. El servicio de directorio global

10.6. Servicio de seguridad

10.6.1. Modelo deseguridad
10.6.2. Componentes de seguridad
10.6.3. Boletos y autenticadores
10.6.4. RPC autenticada
10.6.5. ACL

10.7. Sistema distribuido de archivos

10.7.1. Interfaz
10.7.2. Componentes DFS en el nucleo servidor
10.7.3. Componentes DFS en el núcleo cliente
10.7.4. Componentes DFS en el espacio del usuario

10.8. Resumen

11. LISTA DE LECTURAS Y BIBLIOGRAFIA

11.1. Sugerencias para lectura posterior

11.2. Bibliografía en orden alfabético

Índice

CARACTERÍSTICAS DE LA DESCARGA
Título: Sistemas Operativos Distribuidos
Autor: Andrew S. Tanenbaum
Idioma: Español
Año de Publicación: 1996
Edición: Primera – 1ra
Número de Páginas: 634
Formato: .pdf
Peso del Archivo: 22.67 MB
Compresor de Archivos: RAR
OPCIONES PARA DESCARGAR EL LIBRO GRATIS

Tags: ,

Categoría: Ingeniería de Sistemas, Ingeniería del Software

Sobre el autor (Perfil del autor)

Comentarios (1)

Trackback URL | Comentarios Feed RSS

  1. hector dice:

    Gracias!! la biblia de los sistemas distribuidos sin duda!

Deja un Comentario