L'environnement POSIX du mini serveur embarqué en C

Magazine
Marque
GNU/Linux Magazine
Numéro
177
Mois de parution
décembre 2014
Spécialité(s)


Résumé
Après les explications données précédemment sur le fond et la forme de HTTaP [1][2], nous pouvons commencer à coder notre petit serveur embarqué. Nous nous concentrons sur les fonctions de bas niveau essentielles au support du protocole HTTP/1.1. En effet, nous devons d'abord régler de nombreux détails en langage C, comme la configuration et les droits d'accès, en utilisant des techniques de codage communes aux autres types de serveurs TCP/IP.

HTTaP est un protocole construit au-dessus de HTTP/1.1, dont il hérite certaines caractéristiques, mais qui ne supporte que celles qui sont strictement nécessaires. Notre serveur est constitué d'un seul ensemble de fonctions en C et il doit fonctionner dans deux modes (« pollé » et bloquant) et dans deux environnements : comme un programme autonome, ou bien embarqué dans un autre logiciel qui peut être dans un autre langage (nous utilisons le VHDL). Les fonctions spécifiques à l'application sont alors prises en charge par un  wrapper, du code qui interface l'application avec le serveur HTTaP.

Nous nous appuyons sur le code développé pour le serveur HTTP/0.9 qui contrôle une LED, branchée sur le port GPIO d'un Raspberry Pi [3]. La version de départ est téléchargeable sur le dépôt GitHub du magazine et nous allons :

- configurer le serveur (avec les variables d'environnement),

- modifier les droits d'accès POSIX,

- permettre de changer à la volée le mode de...

Cet article est réservé aux abonnés. Il vous reste 94% à découvrir.
S'abonner à Connect
  • Accédez à tous les contenus de Connect en illimité
  • Découvrez des listes de lecture et des contenus Premium
  • Consultez les nouveaux articles en avant-première
Je m'abonne


Article rédigé par

Abonnez-vous maintenant

et profitez de tous les contenus en illimité

Je découvre les offres

Déjà abonné ? Connectez-vous