Professional Documents
Culture Documents
I. INTRODUCTION
A web server is a system which hosts a web site and
provides services for any requesting clients. The generalpurpose web servers compose of an operating system, the
web pages or the application and a huge amount of
memory and sometimes a special hardware.
94
2009 ACADEMY PUBLISHER
POSTER PAPER
International Journal of Recent Trends in Engineering, Vol. 1, No. 4, May 2009
The operating system manages all the tasks such as
sending the HTML pages, connecting to new users etc.
The RTOS manages all the required tasks in parallel, and
in small amounts of time. Web-based management user
interfaces using embedded web servers have many
advantages: ubiquity, user-friendliness, low development
cost and high maintainability. Embedded web servers
have different requirements, such as low resource usage,
high reliability, security and portability, for which general
web server technologies are unsuitable. There are also
design issues such as HTTP and embedded API.
B. System Design
The Fig 4 gives the overall system design. The main
components of the system are Hardware, RTOS, HTML
Pages, Transfer of Data.
Hardware: The hardware used for embedded web
server is ARM9 based board. The board has the html
pages saved on it.
RTOS: The application runs in the form of tasks. Each
user connecting to the server is treated as a task. To
manage the users, connections, an operating system is
required, that performs the operations in real time. The
embedded web server is implemented using C/OS-II a
powerful but small RTOS kernel. It is highly CPU
independent and has been ported to numerous
microprocessor platforms.
HTML Pages: To interact with the clients, the client
has to send the data to them. In the embedded web server,
web pages are selected as the media of interaction. The
web pages are designed using HTML. The designed web
pages look as in the Figure 5.
II. DESIGN
A. Design of the System Flow
Fig 3. Shows the basic block diagram of the embedded
web server. The necessary requirement analysis is done
on the RTOS, web server, TCP/IP and the target board.
Based on the requirement analysis, the C/OS-II is
configured, as per the target board. After configuring
C/OS-II, the port for STR9 is generated and targeted to
STR9 using Keil uVision3 tool using hyper terminal. The
target along with the RTOS is tested, by booting the
target with the RTOS. The application is written and is
made specific to the RTOS and both the web server and
the RTOS are ported on the target. The web server
application is tested for its functioning.
C. Porting C/OS-II
INCLUDES.H:INCLUDES.H is a MASTER include
file and is found at the top of all .C files.
INCLUDES.H allows every .C file in the project to be
written without concerns about which header file will
actually be needed. The INCLUDES.H includes header
files that are not pertinent to the actual .C file being
compiled.
OS_CPU.H:OS_CPU.H contains processor and
implementation specific #defines constants, macros, and
typedefs
OS_CPU_A.ASM: A C/OS-II port requires that need
to write four assembly language functions:
OSStartHighRdy (), OSCtxSw (), OSIntCtxSw (),
OSTickISR (),
OSStartHighRdy () function is called by OSStart () to
start
the
highest
priority
task
ready-to-run.
OSStartHighRdy() assumes that OSTCBHighRdy points
to the task control block of the task with the highest
priority
OSCtxSw() is executed when an interrupt is
encountered. OSCtxSw()
is a interrupt
service routine. The sequence of events that
leads C/OS-II to vector to OSCtxSw() is as
95
2009 ACADEMY PUBLISHER
POSTER PAPER
International Journal of Recent Trends in Engineering, Vol. 1, No. 4, May 2009
POSTER PAPER
International Journal of Recent Trends in Engineering, Vol. 1, No. 4, May 2009
one step if it is runable. Each state in a finite state
machine can check for the presence of data that is ready
to be processed at the entry point; if none is ready, the
finite state machine can block itself until data arrives.
When data becomes available at the entry point, the finite
state machine can then be unblocked so its handler can
perform the task of state, and turn over the result to the
next state by changing the state flag and pointer to the
handler.
II. EXPERIMENTAL SETUP
A. Experimental Setup of the Embedded Web Server:
The experimental setup of the embedded web server is
shown in Fig 7. The target is connected to the ethernet
controller of the network, the power to the target is given
through USB and the debugger is connected to the USB
of the system and the other end to the board.
97
2009 ACADEMY PUBLISHER
POSTER PAPER
International Journal of Recent Trends in Engineering, Vol. 1, No. 4, May 2009
web server replaces the PC, which is required for remote
labs with special hard- and software.
REFERENCES
[1]
[2]
[3]
[4]
Fig 10: Pinging the Embedded Web Server over the network
[5]
[6]
[7]
Fig 11: User Entering The IP Address
[8]
[9]
[10]
[11]
[12]
[13]
Fig 12: Application Running on Different Systems on Network
[14]
CONCLUSIONS
The embedded web server that has been designed can be
used in educational institutions, offices and many other
places. For web-based network element management
provide an administrator with a simple but enhanced and
more powerful user interface without additional
hardware. Software contention and architectures can
significantly affect web server performance. Poorly
designed and configured software architectures might
even generate high response times while the physical
resources display low utilization.
A remote user only requires a common Internet browser
to carry out experiments on real hardware. The embedded
[15]
[16]
[17]
[18]
98
2009 ACADEMY PUBLISHER