Article de reference

Serveur HTTP intégré

Vues avant et arrière d'un petit serveur vidéo IP (Sensoray 2453S) avec entrées audio et vidéo composite servies via un serveur HTTP et d'autres protocoles. Un serveur HTTP emba...

Vues avant et arrière d'un petit serveur vidéo IP (Sensoray 2453S) avec entrées audio et vidéo composite servies via un serveur HTTP et d'autres protocoles.

Un serveur HTTP embarqué est un serveur HTTP utilisé dans un système embarqué .

Le serveur HTTP est généralement implémenté comme un composant logiciel d'un système d'application (embarqué) qui contrôle et/ou surveille une machine comportant des pièces mécaniques et/ou électriques.

Le serveur HTTP implémente le protocole HTTP afin de permettre la communication avec un ou plusieurs utilisateurs locaux ou distants via un navigateur . L'objectif est de permettre aux utilisateurs d'interagir avec les informations fournies par le système embarqué ( interface utilisateur , surveillance des données, enregistrement des données , configuration des données, etc.) via le réseau , sans utiliser les périphériques traditionnels requis pour les interfaces utilisateur locales ( écran , clavier , etc.).

Dans certains cas, les fonctionnalités fournies via le serveur HTTP permettent également des communications de programme à programme, par exemple pour récupérer les données enregistrées concernant la machine surveillée, etc.

client léger pour une application traditionnelle ;
  • fournir des outils d'indexation , de génération de rapports et de débogage pendant la phase de développement ;
  • mettre en œuvre un protocole pour la distribution et l'acquisition d'informations à afficher dans l'interface habituelle — éventuellement un service web , et éventuellement en utilisant XML comme format de données ;
  • développer une application web .
  • Avantages

    L'utilisation du protocole HTTP pour réaliser les opérations ci-dessus présente quelques avantages :les pare-feu et les routeurs intranet ;

  • Les clients HTTP (par exemple les navigateurs Web ) sont facilement disponibles sur tous les ordinateurs modernes ;
  • On observe une tendance croissante à utiliser des serveurs HTTP intégrés dans les applications, ce qui va de pair avec l'essor des réseaux domestiques et de l'informatique omniprésente .
  • Exigences typiques

    Les limitations inhérentes aux plateformes sur lesquelles s'exécute un serveur HTTP embarqué contribuent à la liste des exigences non fonctionnelles de ce serveur, ou plus précisément, de ce serveur HTTP embarquable. Voici quelques exemples de ces exigences :Empreinte mémoire RAM et ROM réduite . La taille exacte dépend du système, mais dans de nombreux cas, toute capacité supérieure à quelques mégaoctets est inutilisable.

  • Utilisation minimale du processeur .
  • Prise en charge de la compilation croisée pour plusieurs combinaisons de processeurs et de systèmes d'exploitation .
  • Intégration facile avec une application existante, y compris la liaison statique avec le système d'exploitation et l'application.
  • Servir les pages à partir de la mémoire de l'application s'il n'y a pas de système de fichiers .
  • Modularité .
  • Prise en charge mono- thread et multi-thread .
  • Les exigences varient considérablement d'un projet à l'autre. Par exemple, l'espace disponible en ROM et en RAM peut constituer une contrainte majeure et limiter les choix du concepteur système. La disponibilité de C++ ou de la JVM peut également être un facteur limitant. Les performances sont souvent un problème, car les systèmes embarqués exécutent généralement plusieurs tâches simultanées, dont un serveur HTTP qui peut être configuré comme une tâche de faible priorité .