|
Temarios de Oposiciones Generales > Textos de apoyo ProgramaciÓn Para Sistemas Operativos Unix/linux. ColecciÓn Universidad en EspaÑol
|
|
Ed. Cep(Ed. Cep)
Precio:15€
226 páginasISBN: 848368053X. (20/02/2007). Entrega: De 1 a 7 días contra reembolso por agencia urgente*
|
FECHA DE PUBLICACIÓNmartes, 20 de febrero de 2007 INDICEPrólogo. Antes de empezar. Capítulo 1: Introducción a los sistemas operativos UNIX/Linux 1.1. Concepto de sistema operativo. 1.2. Evolución de los Sist. Operativos UNIX/Linux. 1.3. Características básicas de UNIX 1.4. Comenzando a trabajar con UNIX/Linux. 1.5. Arranque y acceso al sistema 1.6. El intérprete de línea de comandos o shell. 1.6.1. Sintaxis de las órdenes para la shell 1.6.2. Agrupamiento de órdenes para la shell. 1.6.3. Caracteres especiales (meta caracteres) de la shell 1.7. El sistema de archivos. 1.7.1. Árbol de directorios y rutas de acceso a los archivos. 1.7.2. Algunos subdirectorios importantes. 1.7.3. Permisos de acceso para los archivos. 1.8. Órdenes de la shell de uso más frecuente. 1.8.1. Órdenes para la gestión de directorios 1.8.2. Órdenes para la gestión de archivos 1.8.3. Órdenes para la gestión de procesos. 1.8.4. Otras órdenes de utilidad. 1.9. Ejercicios propuestos. Capítulo 2: Introducción al lenguaje de programación C 2.1. El lenguaje C: orígenes y principales características. 2.2. Estructura básica de un programa en C. 2.3. Compilación y ejecución de un programa C.. 2.4. Archivos fuente y archivos de cabecera. 2.5. El primer programa en C. 2.6. Un programa con archivos fuente y archivos cabecera. 2.7. El léxico del Lenguaje C. 2.8. Tipos de datos fundamentales o primitivos. 2.9. Variables, constantes y literales 2.10. Operadores y expresiones. 2.11. Mostrando elementos por salida estándar 2.12. Lectura de valores desde teclado. 2.13. Sentencias de control de flujo 2.13.1. Sentencias de Bifurcación 2.13.2. Sentencias de Iteración (Bucles). 2.14. Punteros. 2.14.1. Conceptos básicos 2.14.2. Utilización de punteros en funciones: Paso de argumentos por valor y por referencia. 2.14.3. Punteros a funciones. 2.15. Arrays 2.16. Reserva dinámica de memoria 2.17. Enumeraciones, estructuras y tipos definidos por el usuario. 2.18. Ejercicios propuestos. Capítulo 3: Llamadas al sistema para la gestión de procesos. 3.1. Introducción. 3.2. Conceptos básicos para la gestión de procesos. 3.3. Creación de procesos. 3.4. Espera por la terminación de un proceso: Las llamadas wait() y waitpid() 3.5. Sustitución de la imagen de un proceso: la llamada exec(). 3.6. Ejercicios Propuestos Capítulo 4: Planificación de procesos 4.1. Introducción. 4.2. Planificación de procesos en Solaris 4.2.1. Conceptos básicos 4.2.2. Las clases de planificación de Solaris. 4.2.3. Comprobación de la ejecución de procesos con planificación Round-Robin. 4.2.4. Comandos para la gestión de prioridades 4.2.5. La llamada al sistema priocntl() 4.3. Los comandos nice y renice 4.4. Las llamadas nice(), getpriority() y setpriority(). 4.5. Llamadas POSIX para la planificación de procesos. 4.6. Ejercicios propuestos. Capítulo 5: Sincronización y comunicación de procesos 5.1. Introducción 5.2. Señales 5.2.1. Especificación de un manejador de señal 5.2.2. Funciones para configurar la máscara de señales. 5.2.3. La llamada al sistema sigwait(). 5.3. Tuberías (pipes). 5.3.1. Creación de tuberías anónimas. 5.3.2. Tuberías con nombre (named pipes o FIFO). 5.3.3. Cierre de accesos a una tubería 5.3.4. Escritura de datos en una tubería 5.3.5. Lectura de datos de una tubería 5.3.6. Código fuente ejemplo 5.4. Colas de mensajes POSIX (POSIX messages queues). 5.4.1. Creación y destrucción de una cola de mensajes. 5.4.2. Envío y recepción de mensajes. 5.4.3. Código fuente ejemplo: El problema de los productoresconsumidores 5.5. Memoria compartida POSIX (POSIX shared memory). 5.5.1. Creación de una zona de memoria compartida. 5.5.2. Liberación de una zona de memoria mapeada. 5.5.3. Código fuente ejemplo: Contador compartido incrementado por dos procesos 5.6. Semáforos POSIX (POSIX semaphores). 5.6.1. Semáforos con nombre (named semaphores). 5.6.2. Semáforos sin nombre o sobre memoria (memory based semaphores). 5.6.3. Código fuente ejemplo 5.7. Ejercicios propuestos. Capítulo 6: Hilos de ejecución (threads) 6.1. Introducción: Concepto de hebra. 6.2. Tipos de hebras. 6.3. Funciones Posix para la gestión básica de hebras 6.3.1. Creación de hebras: La función pthread_create() 6.3.2. Obtención del identificador de una hebra: Las funciónes pthread_self(). 6.3.3. Terminación de una hebra: La función pthread_exit() 6.3.4. Reunión de hebras: La función pthread_join(). 6.4. Atributos de las hebras POSIX. 6.5. Planificación de las hebras POSIX. 6.6. Código fuente ejemplo. 6.7. Ejercicios Propuestos Capítulo 7: Comunicación y sincronización en aplicaciones multihebra 7.1. Introducción. 7.2. Condiciones de carrera y necesidad de exclusión mutua 7.3. Semáforos para la sincronización de hebras. 7.4. Semáforos de exclusión mutua. 7.5. Código fuente ejemplo: El problema de los productoresconsumidores con hebras 7.6. Variables de condición 7.7. Construcción de un servidor multihebra 7.8. Problemas propuestos. Capítulo 8: Llamadas al sistema para la gestión de archivos 8.1. Introducción. 8.2. Estructuras del Sistema Operativo para la gestión de archivos 8.3. Tipos de archivos en UNIX/Linux 8.4. Llamadas al sistema para la gestión de archivos 8.5. Llamadas al sistema para la gestión de directorios. 8.6. Llamadas al sistema para la consulta de la tabla de inodos. . 8.7. Ejercicios propuestos. Anexo I: Introducción a la programación para la shell bash AI.1. Introducción. AI.2. Primeros pasos. AI.3. Metacaracteres de la shell bash AI.4. Redirección de entrada y de salida AI.5. Agrupamientos de órdenes de la shell. AI.6. Variables de entorno. AI.7. Ejecución de archivos shell-scripts. AI.8. Entrecomillado y sustitución. AI.9. Lectura de variables por teclado y expresiones aritméticas. AI.10. Parametros de un shell-script y la orden shift AI.11. La orden test AI.12. Sentencias de control de flujo |