Publisher's Synopsis
Con material y ejemplos de codigo fuente disponibles en libropctr.com
El diseno y la programacion de sistemas concurrentes representa, como Ingeniero Informatico, un reto complejo. Si consideramos la evolucion de los dispositivos de procesamiento, el estandar actual se basa en la integracion de cada vez mas unidades de procesamiento que, potencialmente, accederan a datos compartidos. Asi, resulta mas que fundamental que cualquier programador, independientemente del dominio de trabajo en el que se desenvuelva, conozca las herramientas basicas para incrementar la eficiencia de sus programas sin provocar las tan temidas condiciones de carrera o los interbloqueos. En otras palabras, la gestion de la concurrencia desde el punto de vista de la programacion es un aspecto esencial en la formacion de cualquier Ingeniero en Informatica.
Entrevista de trabajo de IBM: -Describe a deadlock condition-
Entrevista de trabajo en Dropbox: -What's a race condition?-
Este libro pretende ser una contribucion, desde una perspectiva principalmente practica, al diseno y desarrollo de sistemas concurrentes, haciendo especial hincapie en las herramientas que un programador puede utilizar para llevar a cabo dicha tarea. En particular, se hace uso del lenguaje de programacion C y, entre otras herramientas, de los semaforos y los buzones de mensajes POSIX. Asi mismo, en este libro se introduce la importancia de estos aspectos en el ambito de los sistemas de tiempo real.
- Conoce los fundamentos de la programacion concurrente.
- Maneja adecuadamente las secciones criticas y evita las tan temidas condiciones de carrera para evitar interbloqueos.
- Aprende a manejar los semaforos y buzones de mensajes POSIX utilizando el lenguaje de programacion C.
- Adentrate en las posibilidades que te ofrece Ada para gestionar la concurrencia desde una perspectiva de mas alto nivel.
- Domina los conceptos relativos a la planificacion de sistemas de tiempo real.