TDs de Système

Introduction      FAQ   TD 1   TD 2   TD 3   TD 4   TD 5   TD 6

Retour au Cours.

Généralités

Sur le plan technique, nous rappelons trois objectifs principaux.

  1. Portabilité : vos programmes doivent fonctionner au moins sur les stations GNU/Linux en salle informatique, mais il doit pouvoir être facilement installé sur une nouvelle architecture ; vous êtes fortement encouragés à tester vos programmes sur d'autres versions (ou distributions) de GNU/Linux et sur d'autres systèmes UNIX.
  2. Sécurité : pensez tous vos programmes comme s'ils devaient devenir des composants d'un système multi-utilisateurs  il ne faut pas qu'un utilisateur puisse détruire des données d'un autre utilisateur, accéder à des informations privées, ou compromettre les structures de données du système.
  3. Facilité d'administration : le travail de l'ingénieur système doit être simplifié au maximum, pour la configuration et l'installation de vos programmes.

L'implémentation se fera en langage ISO C90 ou ISO C99. On prendra soin de rendre les programmes robustes, c'est à dire capables de prendre en compte des situations extrêmes, et sûrs, c'est à dire que vous expliciterez tous les problèmes de sécurité que vous aurez rencontré.