COMMON INTERFACE FOR EMBEDDED SOFTWARE CONFIGURATION by
10 Slides1.52 MB
COMMON INTERFACE FOR EMBEDDED SOFTWARE CONFIGURATION by Yatiraj Bhumkar Advisor Dr. Chung-E Wang Department of Computer Science CALIFORNIA STATE UNIVERSITY, SACRAMENTO
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.
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.
Common Gateway Interface (CGI) CGI Executable Embedded device 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.
Solutions to CGI drawbacks CGI Fast threads: In-process CGI: CGI: – Spawn Intelligent Once a CGI a approach separate process is toTHREAD spawned, save spawning instead it converts of separate all Process. function process calls into PER inline request. functions. – Spawning Similar kind Reduces theofof overhead requests threadsof are still function serviced incurs calls.context by one process – switching. Greater each. image size because of inline – For The Linux, functions. process threads keepsand running processes listening are for oneother and such same requests. at kernel-level. – the It still spawns a separate process per request. – Wastage of resources. – Ad hoc intelligence reduces scalability
My 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.
Advantages 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.
Drawbacks 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.
Future 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.