Destruir un semáforo

Muchos de los errores CoreDump que se producen al trabajar con semáforos están provocados por no haber eliminado previamente los semáforos en ejecuciones anteriores de nuestro código....

Man pages, Encontrando ayuda

Las páginas del manual (man pages) de linux nos dan el soporte y la ayuda para encontrar mucha documentación del sistema, entre otras, cuál es el prototipo de las funciones en C que utilizaremos o la sintaxis de un comando de Bash. Si usamos man para pedir ayuda del propio man ( $man man)...

Memoria compartida

La forma más rápida de comunicar dos procesos es hacer que compartan una zona de memoria. En esta entrada explicamos cuál es el mecanismo en linux para poder compartir memoria entre varios procesos. En otra entrada pondremos un ejemplo del uso de la memoria compartida entre procesos padre e hijos....

Sincronización Padre-Hijos con semáforos

En esta entrada vamos a ver un ejemplo de cómo sincronizar padre-hijos con semáforos utilizando lo expuesto en la entrada Semáforos Se parte del ejemplo Comunicación Padre-Hijos mediante señales, pero ahora quitamos las señales y ponemos semáforos. Definiremos una barrera para parar al padre y un semáforo que sincroniza a cada hijo....

Semáforos

En esta entrada mostramos cómo se implementan realmente los semáforos en C y en linux (POSIX), y cómo desarrollar una librería para facilitar su uso, con las funciones originales ofrecidas por el S.O. En otra entrada pondremos un ejemplo del uso de los semáforos para sincronizar a los padres e hijos....

Comunicación Padres-Hijos mediante señales

Os comento un programa para comunicar padres he hijos mediante señales, utilizando señales de tiempo real y normales. Los hijos envían al padre y el padre envía ACK a los hijos. Veremos cómo instanciar el manejador para ambos, como enviar y recibir las señales....

Pipes

Un pipe o tubería se puede considerar como un canal de comunicación entre dos procesos. Las hay de dos tipos, sin nombre y con nombre también llamadas fifos. Cuando un proceso crea una tubería sin nombre sus hijos la heredan y se podrán comunicar. En esta entrada os explico y pongo un ejemplo de...

Makefiles

¿Como hacer un makefile? En este pequeño tutorial os explico una de las muchas formas de cómo podéis hacer un makefile. Iremos haciéndolo cada vez más complejo. Podréis utilizar la versión que queráis para compilar vuestra práctica, pero os aconsejo que probéis todos, para comprender cómo se organiza el makefile y la sintaxis del...