Detalle del libro
Ver Índice
Índice de figuras
Índice de programas
Índice de tablas
Prólogo
1 Introducción 1
1.1 Estructura del sistema
1.2 Arquitectura del sistema operativo unix
1.3 Interfaz de las llamadas al sistema
1.4 Ejercicios
I El sistema de ficheros
2 Arquitectura del sistema de ficheros
2.1 Características del sistema de ficheros
2.2 Estructura del sistema de ficheros
2.3 Tipos de ficheros en unix
2.4 Extensiones del sistema bsd
2.5 Tablas de control de acceso a los ficheros
2.6 Administración de los sistemas de ficheros
3 Manejo de ficheros ordinarios
3.1 Introducción
3.2 Entrada/salida sobre ficheros ordinarios
3.3 Biblioteca estándar de funciones de entrada/salida
3.4 Control de ficheros abiertos (fcntl)
3.5 Administración de ficheros
3.6 Compartición y bloqueo de ficheros
3.7 Ejercicios
4 Manejo de directorios y ficheros especiales
4.1 Acceso a directorios
4.2 Acceso a ficheros especiales
4.3 Administración del sistema de ficheros
4.4 Ejercicios
II Procesos e hilos
5 Estructura de un proceso
5.1 Programas y procesos
5.2 Estados de un proceso
5.3 Tabla de procesos y área de usuario
5.4 Contexto de un proceso
5.5 Hilos y procesos ligeros
5.6 Distribución y planificación de procesos
5.7 Sistemas con requisitos de tiempo real
6 Gestión de procesos e hilos 183
6.1 Ejecución de programas mediante exec
6.2 Creación de procesos (fork)
6.3 Terminación de procesos (exit y wait)
6.4 Información sobre procesos
6.5 Control de la memoria asignada a un proceso
6.6 Creación de hilos
6.7 Tratamiento de los errores
6.8 Atributos de un hilo
6.9 Cancelación de hilos
6.10 Funciones seguras y reentrantes
6.11 Planificación de hilos
6.12 Ejercicios
7 Señales y funciones de tiempo 239
7.1 Concepto de señal
7.2 Tipos de señales
7.3 Señales en el unix System V
7.4 Señales en el sistema 4.3bsd
7.5 Gestión de señales en posix
7.6 Ejemplo de aplicación de las señales
7.7 Funciones de tiempo
7.8 Relojes, retardos y temporizadores en posix
7.9 Ejercicios
8 Perfilado, contabilidad y depuración 309
8.1 Perfil de un proceso
8.2 Contabilidad
8.3 Depuración de programas
III Comunicación entre procesos
9 Comunicación mediante tuberías
9.1 Comunicación entre procesos
9.2 Tuberías sin nombre
9.3 Comunicación bidireccional
9.4 Tuberías en los intérpretes de órdenes
9.5 Tuberías con nombre
9.6 Comunicación dúplex
9.7 Ejercicios
10 Comunicación local entre procesos e hilos
10.1 Mecanismos IPC del unix System V
10.2 Semáforos
10.3 Memoria compartida
10.4 Colas de mensajes
10.5 Semáforos en posix
10.6 Cerrojos en posix
10.7 Monitores con interfaz de procedimiento
10.8 Ejercicios
11 Comunicaciones en red
11.1 Mecanismos IPC del sistema bsd
11.2 Llamadas para elmanejo de conectores
11.3 Ejemplos de servidores y clientes
11.4 Miscelánea de llamadas y funciones
11.5 Ejemplo de aplicación. Transferencia de ficheros
11.6 Ejercicios
IV Apéndices
A El lenguaje de programación C
A.1 Introducción
A.2 Ciclo de creación de un programa
A.3 Tipos de
A.4 Expresiones y operadores
A.5 Sentencias de control de flujo
A.6 Funciones
B Desarrollo de aplicaciones en el entorno unix
B.1 Programaciónmodular
B.2 Fases de la compilación
B.3 Compilación de programas multimodulares
B.4 El preprocesador de C
B.5 Ejemplo de programa con varios ficheros
B.6 Gestión de bibliotecas de funciones
B.7 Distribución de los ficheros de una aplicación
B.8 Automatización de trabajos
B.9 Documentación
B.10Ejercicios
C Resumen de llamadas al sistema
Referencias
Índice alfabético
UNIX se ha convertido en uno de los sistemas operativos más populares en entornos industriales, académicos y, recientemente, incluso domésticos y brinda al usuario un conjunto de herramientas muy variado y completo. La mayor parte de los programas estándar en UNIX están escritos en lenguaje C, y hace uso de unas piezas básicas conocidas como llamadas al sistema (system calls).