Der
Webserver wurde auf dem Hightec Evalutionboard entwickelt. Er verwendet das
Echtzeitbetriebssytem PXROS und dessen TCP/IP Implementierung PXtcp. Mit dem
Evalutionboard wird ein Motor angesteuert (Links und Rechtslauf).
Um
den Vorteil der Verwendung eines Betriebssystems hervorzustreichen (den
modularen Aufbau von Applikationen), werden die Aufgaben in Tasks aufgeteilt.
Weiters
soll hier erwähnt werden, dass der Webserver mit Rücksicht auf Codebedarf entwickelt
wurde, da dieser im Fall dieses Programms schon hart an der Grenze des Hightec
Evalutionboards liegt.
Das
obige Blockschaltbild zeigt die im Programm aktiven Tasks nach Priorität
geordnet.
Der
Init Task wird dazu verwendet, alle anderen Tasks zu initialisieren.
Anschließend setzt er selbst seine Priorität herunter, um die anderen Tasks
aktiv werden zu lassen, und den eigentlichen Programmablauf zu starten.
Telnet
Task und HTTP Task kommunizieren mit dem TCP/IP Task über das Socket-
Interface. Es handelt sich dabei um bidirektionale Kommunikation.
Der
TCP/IP Task kommuniziert mit dem Ethernet Treiber über Nachrichtendienste des
PXROS.
Die
Kommunikation zwischen 'Http' und 'Motor' Task erfolgt unidirektional über das
Signalisieren von Ereignissen.
Der
HTTP- Task basiert auf dem HTTP 1.0 Protokoll. Obwohl das HTTP 1.0 Protokoll
die Methoden ‚GET‘, HEAD‘ und ‚POST‘ kennt, ist in diesem Programm lediglich
die ‚GET‘- Methode implementiert. Das HTTP 1.0 Protokoll erlaubt dies, wenn
entsprechende Fehlermeldungen zum Client zurückgesendet werden.
Screenshot des Webserver: