Faire un programme C qui fabrique une instance aléatoire du
problème du "sac à dos" modulo 232 et qui cherche
à la résoudre par recherche exhaustive.
Le programme engrendre donc dans un premier temps 33 nombres
s, p1, ..., p32 de 32 bits de manière
pseudo-aléatoire.
Une solution du problème est un sous-ensemble I de {1,...,32} tel
que la somme modulo 232 des pi pour i dans I est
égale à s.
Une telle recherche est assez longue.
On cherche à pouvoir la lancer en arrière plan, tout en pouvant
continuer à dialoguer avec le processus.
On cherche essentiellement à lui transmettre plusieurs messages
différents:
- afficher ou la recherche en est (message
STATUS
),
- abandonner la recherche et recommencer avec une autre instance
(message
RESTART
),
- abandonner définitivement (message
STOP
),
- demander l'affichage des sous-ensembles I qui seraient des solutions
modulo 2n (message
DISP n
).
Définir un protocole de signaux pour coder ces messages, et faire une
application Perl qui envoie ce type de message à un processus
donné.
[corrigé recherche en C,
lanceur de message en Perl]