Title: COMMON%20INTERFACE%20FOR%20EMBEDDED%20SOFTWARE%20CONFIGURATION
1(No Transcript)
2- Expensive hardware increases overall cost.
- Lesser degree of scalability.
- Most of the visible hardware is required to
control the invisible hardware or software.
Purchased in 1970 by UNT, the IBM 360/50 CPU was
acquired to support academic and administrative
computing. The original configuration of the
360/50 was one multiplexer channel, one selector
channel, 256K core memory, a 1403 line printer, a
2540 card reader/punch, three 30KB tape drives,
and five 2314 single density disk drives. The
original operating system was OS/MFT/HASP
supporting a maximum of three user partitions.
3(No Transcript)
4- With the help of one web server and several web
pages per software, we can configure all hardware
and software at no extra hardware cost. - Very high degree of scalability.
5Common Gateway Interface (CGI)
- CGI as a separate process hampers optimization
goals static resources (PCB), run-time resource
(context switching time). - Several web pages of several different software
and hardware and their corresponding CGI
executables make management clumsy, wastage of
file-system space.
6Solutions to CGI drawbacks
- Fast CGI
- Intelligent approach to save spawning of separate
process PER request. - Similar kind of requests are serviced by one
process each. - The process keeps running listening for other
such requests. - Wastage of resources.
- Ad hoc intelligence reduces scalability
- In-process CGI
- Once a CGI process is spawned, it converts all
function calls into inline functions. - Reduces the overhead of function calls.
- Greater image size because of inline functions.
- It still spawns a separate process per request.
- CGI threads
- Spawn a separate THREAD instead of Process.
- Spawning of threads still incurs context
switching. - For Linux, threads and processes are one and the
same at kernel-level.
7My approach of CGI
- CGI as function call
- Instead of spawning process or thread, if CGI can
be called as a function, it would save enormous
amount of resources.
8Advantages of CGI Function
- No spawning of process, no context switching.
- Saves memory and other critical resources,
improves overall speed and performance. - No inline functions involved, maintaining small
web server footprint. - Same interface with web server as normal CGI
process. - Migration from CGI process to CGI function is
easy.
9Drawbacks of CGI Function
- Allows code isolation but NO execution isolation
from web server. If CGI function crashes, whole
web server crashes. - Sequential execution so the web server has to
wait for the CGI function to finish.
10Future Extensions
Questions Please!!!
- Universal file manipulation library
- XML parsing tool.
- Configuration on the fly
- Software restarts to read from configuration file
, entails Unaffordable downtime. - Software should export functions that are
dynamically linked with web server. - These functions change the variable values on the
fly.