Structure du Projet TP Serveur en C
Ce document détaille la structure du projet, les instructions de compilation et les modes d'exécution pour le Travaux Pratiques (TP) du serveur.
La structure suivante doit être respectée pour l'organisation des fichiers source et des en-têtes :
tp_final/
├── src/
│ ├── server.c # Serveur principal (tout-en-un ou modulaire)
│ ├── daemon.c # Fonctions de démonisation (si séparé)
│ ├── handler.c # Gestionnaires de clients
│ └── utils.c # Fonctions utilitaires (compteur, mutex, etc.)
├── include/
│ └── server.h # Prototypes, constantes, inclusions
├── Makefile # Compilation obligatoire
├── syslog.conf.example # Exemple de configuration syslog
└── rapport.md # Rapport d'analyse (5 pages max)
Pour compiler le projet, utilisez la commande make à la racine du dossier :
make
Le serveur supporte différents modes de gestion des connexions. Voici les commandes pour lancer chaque partie du TP :
./server --iterative
./server --fork
./server --threads
./server --select
Note : Nécessite des privilèges administrateur pour écrire le fichier PID.
sudo ./server --daemon
Pour tester si le serveur fonctionne correctement, ouvrez un second terminal et utilisez la commande nc (Netcat) :
nc localhost 9999
Résultat attendu : Après avoir tapé un message, le serveur doit vous renvoyer : [Connexion #X] Echo : <votre_message> """