Unix Programacion Avanzada (3ª Edición)

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).

El conjunto de llamadas al sistema es la interfaz entre el sistema operativo y el programador que utiliza sus recursos y constituye el núcleo de estudio de este libro, junto con técnicas de programación avanzada que nos permitirán aprovechar al máximo la potencia y flexibilidad de UNIX.

El libro está estructurado en tres partes, de acuerdo con la siguiente distribución de capítulos:

-Introducción.
Parte 1. El sistema de ficheros.
-Arquitectura del sistema de ficheros.
-Manejo de ficheros ordinarios.
-Manejo de directorios y ficheros especiales.
Parte 2. Procesos e hilos.
-Estructura de un proceso.
-Gestión de procesos e hilos.
-Señales y funciones de tiempo.
-Perfilado, contabilidad y depuración.
Parte 3. Comunicación entre procesos.
-Comunicación mediante tuberías.
-Comunicación local entre procesos e hilos.
-Comunicaciones en red.

Para ayudar a la comprensión del texto se utilizan alrededor de 90 programas de ejemplo elegidos no sólo por su interés didáctico, sino también porque muchos de ellos responden a la funcionalidad de programas estándar UNIX. Estos programas pueden servirle al lector como elementos de referencia para la construcción de aplicaciones o de nuevas herramientas del sistema.

Escritor
Colección
Profesional
Materia
Sistemas operativos de código abierto y otros
Idioma
  • Castellano
EAN
9788478976034
ISBN
978-84-7897-603-4
Páginas
632
Ancho
17 cm
Alto
24 cm
Peso
1.049 g
Edición
1
Fecha publicación
18-05-2004
Edición en papel
34,90 €
607,19 MX$35,84 US$
También disponible en

Índice de contenido

Í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

Libros relacionados