</> CodeBooks
    ← Volver a Linux (página 1)
    Portada de Advanced Programming in the UNIX Environment, 3rd Edition

    Advanced Programming in the UNIX Environment, 3rd Edition

    Richard Stevens, Stephen Rago

    Editorial
    Addison Wesley
    Año
    2013
    Páginas
    ~1024
    Nivel
    Avanzado

    De qué trata

    Obra canónica y referencia definitiva sobre la programación de sistemas UNIX escrita por W. Richard Stevens y actualizada en su tercera edición por Stephen A. Rago para alinearse con los estándares POSIX.1-2008 y SUSv4 (Single UNIX Specification Version 4). Las explicaciones y llamadas al sistema se analizan y contrastan de manera simultánea en cuatro plataformas: Linux 3.2 (Ubuntu 12.04), FreeBSD 8.0, Apple OS X 10.6.8 (Darwin 10.8) y Solaris 10. Está dirigida a programadores intermedios y avanzados en lenguaje C, ingenieros de software y desarrolladores de infraestructura que necesitan comprender el funcionamiento interno del sistema operativo e interactuar con el kernel sin capas de abstracción intermedias.

    El texto desmenuza de forma exhaustiva la biblioteca estándar de C y las primitivas POSIX: entrada y salida sin búfer (`open`, `read`, `write`, `lseek`, `fcntl`) e I/O estándar (`stdio`), archivos y directorios (`stat`, inodos, enlaces duros y simbólicos), ciclo de vida y control de procesos (`fork`, familias `exec`, `waitpid`), manejo de señales e interrupciones (`sigaction`, máscaras de señales), programación multihilo con hilos POSIX (`pthread`, exclusión mutua con mutexes, variables de condición y bloqueos de lectura/escritura), procesos demonio y sesiones de terminal (`termios`). Asimismo, profundiza en la comunicación entre procesos mediante tuberías (pipes), FIFOs, memoria compartida, semáforos y sockets de red Berkeley utilizando `getaddrinfo`, `socket`, `bind`, `listen` y `connect`.

    A lo largo de sus capítulos se desarrollan implementaciones completas de referencia, entre las que destacan una biblioteca de base de datos indexada con concurrencia mediante bloqueo de registros (`fcntl`), un controlador de pseudoterminales (`pty`) y mecanismos de paso de descriptores de archivos entre procesos independientes. Todos los capítulos incorporan ejercicios técnicos con soluciones detalladas en el apéndice de la obra. Es un tratado indispensable de programación a bajo nivel que exige un sólido dominio de C y arquitectura de computadores; no cubre el desarrollo en modo núcleo (módulos o drivers), pero establece la base teórica y práctica esencial para construir software de alto rendimiento en entornos POSIX.

    • Programación de sistemas
    • UNIX / Linux
    • Lenguaje C
    • POSIX.1-2008
    • Gestión de procesos
    • POSIX Threads (pthreads)
    • Señales e interrupciones
    • Llamadas al sistema
    • IPC (Comunicación entre procesos)
    • Sockets de red
    • Pseudoterminales

    ¿Cómo enseña?

    TeóricoPráctico

    Teoría + práctica

    • ✓ Incluye ejercicios
    • ✓ Incluye proyectos

    Proyectos

    Biblioteca de base de datos indexada (db)

    Biblioteca de almacenamiento clave-valor en C con soporte para acceso concurrente seguro mediante hashing estático y bloqueo de registros con fcntl.

    Controlador de pseudoterminales (pty)

    Utilidad de línea de comandos que intercepta y gestiona sesiones interactivas de terminal emulando la capa termios y redirigiendo flujos estándar de entrada y salida.

    Más de Linux con nivel Avanzado