COMMON INTERFACE FOR EMBEDDED SOFTWARE CONFIGURATION by Yatiraj Bhumkar Advisor Dr. Chung-E Wang Department of Computer Science CALIFORNIA STATE UNIVERSITY,

Slides:



Advertisements
Similar presentations
MicroKernel Pattern Presented by Sahibzada Sami ud din Kashif Khurshid.
Advertisements

CS 443 Advanced OS Fabián E. Bustamante, Spring 2005 Resource Containers: A new Facility for Resource Management in Server Systems G. Banga, P. Druschel,
Elements of a Microprocessor system Central processing unit. This performs the arithmetic and logical operations, such as add/subtract, multiply/divide,
Threads, SMP, and Microkernels Chapter 4. Process Resource ownership - process is allocated a virtual address space to hold the process image Scheduling/execution-
Mi-Joung choi, Hong-Taek Ju, Hyun-Jun Cha, Sook-Hyang Kim and J
Threads Clients Servers Code Migration Software Agents Summary
Memory Management 1 CS502 Spring 2006 Memory Management CS-502 Spring 2006.
CS-3013 & CS-502, Summer 2006 Memory Management1 CS-3013 & CS-502 Summer 2006.
1/28/2004CSCI 315 Operating Systems Design1 Operating System Structures & Processes Notice: The slides for this lecture have been largely based on those.
Adaptive Content Delivery for Scalable Web Servers Authors: Rahul Pradhan and Mark Claypool Presented by: David Finkel Computer Science Department Worcester.
Threads CS 416: Operating Systems Design, Spring 2001 Department of Computer Science Rutgers University
Operating Systems: Principles and Practice
Chapter 51 Threads Chapter 5. 2 Process Characteristics  Concept of Process has two facets.  A Process is: A Unit of resource ownership:  a virtual.
Processes Part I Processes & Threads* *Referred to slides by Dr. Sanjeev Setia at George Mason University Chapter 3.
Measuring zSeries System Performance Dr. Chu J. Jong School of Information Technology Illinois State University 06/11/2012 Sponsored in part by Deer &
Virtualization Technology Prof D M Dhamdhere CSE Department IIT Bombay Moving towards Virtualization… Department of Computer Science and Engineering, IIT.
About the Presentations The presentations cover the objectives found in the opening of each chapter. All chapter objectives are listed in the beginning.
Computer System Architectures Computer System Software
9/13/20151 Threads ICS 240: Operating Systems –William Albritton Information and Computer Sciences Department at Leeward Community College –Original slides.
Threads, Thread management & Resource Management.
Eric Keller, Evan Green Princeton University PRESTO /22/08 Virtualizing the Data Plane Through Source Code Merging.
Chapter 4 Threads, SMP, and Microkernels Patricia Roy Manatee Community College, Venice, FL ©2008, Prentice Hall Operating Systems: Internals and Design.
1 Threads, SMP, and Microkernels Chapter 4. 2 Focus and Subtopics Focus: More advanced concepts related to process management : Resource ownership vs.
Chapter 2 (PART 1) Light-Weight Process (Threads) Department of Computer Science Southern Illinois University Edwardsville Summer, 2004 Dr. Hiroshi Fujinoki.
Multi-Threaded Application CSNB534 Asma Shakil. Overview Software applications employ a strategy called multi- threaded programming to split tasks into.
Threads, SMP, and Microkernels Chapter 4. Process Resource ownership - process is allocated a virtual address space to hold the process image Scheduling/execution-
11/13/20151 Processes ICS 240: Operating Systems –William Albritton Information and Computer Sciences Department at Leeward Community College –Original.
Chapter 2 Processes and Threads Introduction 2.2 Processes A Process is the execution of a Program More specifically… – A process is a program.
Computer Systems Week 14: Memory Management Amanda Oddie.
Lecture 5: Threads process as a unit of scheduling and a unit of resource allocation processes vs. threads what to program with threads why use threads.
Operating Systems CSE 411 CPU Management Sept Lecture 10 Instructor: Bhuvan Urgaonkar.
Department of Computer Science and Software Engineering
 The End to the Means › (According to IBM ) › 03.ibm.com/innovation/us/thesmartercity/in dex_flash.html?cmp=blank&cm=v&csr=chap ter_edu&cr=youtube&ct=usbrv111&cn=agus.
Full and Para Virtualization
Distributed (Operating) Systems -Processes and Threads-
Processes & Threads Introduction to Operating Systems: Module 5.
Hands-On Virtual Computing
1 CEG 2400 Fall 2012 Network Servers. 2 Network Servers Critical Network servers – Contain redundant components Power supplies Fans Memory CPU Hard Drives.
Threads, SMP, and Microkernels Chapter 4. Processes and Threads Operating systems use processes for two purposes - Resource allocation and resource ownership.
1 Chapter 2: Operating-System Structures Services Interface provided to users & programmers –System calls (programmer access) –User level access to system.
Advanced Operating Systems CS6025 Spring 2016 Processes and Threads (Chapter 2)
1 Chapter 5: Threads Overview Multithreading Models & Issues Read Chapter 5 pages
Introduction to Operating Systems Concepts
Threads Overview Benefits, User and Kernel Threads.
Introduction to threads
Topic 2: Hardware and Software
Processes and threads.
Threads vs. Events SEDA – An Event Model 5204 – Operating Systems.
EEE Embedded Systems Design Process in Operating Systems 서강대학교 전자공학과
CS 6560: Operating Systems Design
OPERATING SYSTEMS CS3502 Fall 2017
Process Management Presented By Aditya Gupta Assistant Professor
5 SYSTEM SOFTWARE CHAPTER
Chapter 4: Threads.
Capriccio – A Thread Model
Chapter 4 Multithreading programming
Background Energy efficiency is a critical issue for mobile device.
GEOMATIKA UNIVERSITY COLLEGE CHAPTER 2 OPERATING SYSTEM PRINCIPLES
Threads, SMP, and Microkernels
5 SYSTEM SOFTWARE CHAPTER
Threads Chapter 4.
Multithreaded Programming
Prof. Leonardo Mostarda University of Camerino
Operating System Introduction.
Chapter 3: Processes.
Chapter 3: Processes Process Concept Process Scheduling
CS703 – Advanced Operating Systems
Operating System Concepts
Operating System Concepts
Light-Weight Process (Threads)
Presentation transcript:

COMMON INTERFACE FOR EMBEDDED SOFTWARE CONFIGURATION by Yatiraj Bhumkar Advisor Dr. Chung-E Wang Department of Computer Science CALIFORNIA STATE UNIVERSITY, SACRAMENTO

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.  Expensive hardware increases overall cost.  Lesser degree of scalability.  Most of the visible hardware is required to control the invisible hardware or software.

 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 CCGI as a separate process hampers optimization goals: static resources (PCB), run-time resource (context switching time). S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 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.

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 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. Questions Please!!!