Você está na página 1de 5

PROS - An Omnipresent Operating System

Monika Shah, Rakshit Trivedi, Priyank Mehta, and Pratik Pattani


Department of Computer Science and Engineering, Institute of Technology, Nirma University, Ahmedabad, India.
Email: monika.shah@nirmauni.ac.in
{05bce079, 05bce135, 05bce061}@nirmauni.ac.in

Abstract—The central idea presented in this paper is to


show the architecture and working of an Operating System II. OBJECTIVE
running over the network, thus leading to global computing.
"PROS", as it is named, provides transparency meaning it Taking Concept of Web OS closer to “real OS”.
would work same as a real operating system on the PC The objective of our project is to develop a network
without need of static installation. PROS would load up on based virtual operating system that the user would be able
the user's PC irrespective of the location along with user’s to access on the network, independent of any other
personalized settings providing with the feel of pervasive browser or operating system. It would provide a virtual
computing. By real operating system, we mean that it would OS environment for any machine configuration without
provide all the features such as memory management, the need of storage media.
scheduling, on demand loading etc, thus making it different Today, various applications are provided on the web,
from the prevailing WEB OS's which are a collection of
which serve the purpose of the operating system to some
several Web Services clubbed together, and require a
browser and a base operating system to work on. PROS will extent. Such web applications, using
be able to work independently of other existing operating HTTP+JavaScript+XHTML+CSS+Flash technology,
systems and thereby would be the only operating system provide some of the conventional OS services and the
that the host machine has to interact with. Such an Graphical User Interface.
operating system will be much more economical and will Current WEB OS’s being web applications require a
also help the client machine to be less hardware dependent. browser and an operating system on the host machine on
In addition to operating system services on a local machine, the top of which it works. PROS would be the sole
it provides mobility to run operating system from any operating system dealing directly with the host machine.
computer system with configured settings.

Index Terms—PROS, virtual net-based OS, WEB OS, WEB III. FEATURES
FS, Operating System, RAC, Live CD, SOA, SaaS. Dynamic OS: PROS can be made available with
required customization even when accessed from
I. INTRODUCTION different machines. Generic drivers required for the client
In the present scenario, the basic needs of the humans machine will be loaded dynamically using the bootable
have changed drastically which consists of speed, disk provided to the user.
portability, mobility and security. Our effort is to present On demand File System: PROS will provide the user
an innovation which would give people an environment with an immediate access to his/her personal data store
to access and manage their work all round the globe and from any machine around the globe.
provide a very high security to their work thus giving Host Machine-independent processing to a large
them a flavor of pervasive computing. extent: PROS can be used over any client machine
The paper, initially introduces the concept of irrespective of its local resources as the main functioning
accessing the virtual net-based Operating System that of the operating system is handled on server side.
would be lively available all over the globe. It further Minimal hardware configurations at the client
gives a glimpse of the various features that would be machine: No storage devices such as hard drives will be
made available to the users of this operating system. required on client machine as data will be stored on
Secondly, it provides information about the various servers. So hardware requirements of the client machine
components required by the clients and the servers. It comes down to primary memory with minimal
then goes deeply into the explanation of the architecture configuration of 128 M (preferably 512 M), thereby
and the design issues to provide the in-core information facilitating use of low-cost "diskless" computers.
about the methodologies and functionalities to be used in Reduced Cost for large number of computers used
the development and for the deployment of the Operating in organization for some specific purpose in
System. distributed environment: PROS will be suitable option
The design issues are followed by the customizations for an organization, wherein a number of systems are
that will be provided to the PROS users. Further it used for only a specific set of applications, so that clients
presents the comparison and the advantages of PROS with minimal hardware configuration can be effectively
over the prevailing WEBOSes and LIVE CD technology used. Use of PROS will create a virtual net-based OS
while the practical implication of the project forms the framework for systems running in the distributed
concluding part of paper. environment.
Cache memory and Reserved memory On the network, all the conventional protocols like
configurations: Cache memory configurations will be TCP/IP, UDP, ARP, DHCP, and TFTP etc. would be
provided for getting the frequently used applications necessary for connection and communication.
loaded faster when required. Reserved memory area is
meant for providing better performance during the use of V. METHOLOGY AND FUNCTIONALITY
real time and memory intensive applications.
A. ARCHITECTURE
On demand software: Various applications will be
installed on the servers and made available to clients on PROS is an operating system which would consist of
demand using the concept of SaaS (Software as a a minimal configured client terminal on the user side and
Service) and SOA (Service Oriented Architecture). highly configured and efficient servers as its working
Maximum application resource utilization with environment. Hence it is required to be implemented
minimum user licensing: As software packages are using multi-tier Client-Server Architecture to make it
installed on the server, they will be made available to highly efficient and robust.
users on loading the OS which eliminates the need for
Client Tier
purchasing the individual licensed copy for various
applications or same application for several machines. The CLIENT TIER, comprising of a thin client,
Crash safe Transaction: This feature will be consists of minimal components both with respect to
achieved with the support of multiple online server and storage capacity and processing power. Server side Cache
efficient log managers. Moreover, Real Application memory is used to provide better and fast interaction with
Clusters (RAC) will be used to make the system 24 * 7 the frequently used components.
live and persistent with the help of regular backups. The boot loader (provided on the bootable disk) will
Seamless portability/mobility: PROS will provide download OS image (specific to each client) which would
boundless portability and mobility as its user will be be consisting of the necessary components such as the
required to posses only a bootable disk drive and an generic drivers, some components for the temporary
internet connection to access his personalized system processing, memory management, GUI components, and
from anywhere in the globe. network manager [2].
Customization: PROS will provide support for The Interfacing Application would be a GUI
customizations regarding the personal settings of user. It component which would provide an interface between the
will also be possible to customize PROS as per the needs server and the client for further interactions once the OS
of distributed environment. image has been loaded.
External Device Interface: Mounting of external The Client tier will consist of the reserved memory
devices can be done locally by downloading the required which can be used at the time of execution of real time
components in the reserved memory on the local and computation intensive applications.
machine. Transaction Tier
Components in Client tier interface with
IV. COMPONENTS INVOLVED
TRANSACTION Tier. This is the most vital tier in the
A. Hardware Components whole architecture as this tier is responsible for carrying
The servers would consist of large amount of data out various interactions of each user with PROS and for
storage devices such as tape drives and hard drives on validating users. It also consists of the transaction
repository servers. In case of the application and manager which implements scheduling algorithms to
transaction servers, due to very high amount of transfer request to the application tier for load balancing,
processing, large amount of the active memory and RAC and session management
efficient hardware components would be required. The Transaction tier primarily consists of the Client
On the client side the hardware requirements would Communication Module (CCM) which will communicate
be minimal. The client would fundamentally require a with each of the users on the network independently and
network card, main memory, cache support (for high will provide them with an interface that will make them
performance), and the external drive support like CD and feel of having their own operating system running locally.
USB drives. He may opt for static disk drives on the This tier also consists of three other modules viz.
machine at his will and may also use client side cache so transaction manager, request/response manager and
as to get faster access to his frequently used applications. failure handler. The transaction manager is responsible to
pass requests to appropriate transaction servers in
B. Software Components addition to carrying out its above cited tasks.
TFTP/DHCP Server. The request/response manager is responsible for
Generic Device Drivers. delivering the request to the various other tiers as
File System. required and delivers the response from these tiers to the
Interfacing Application. CCM which in turn will send this response to the client.
Memory Manager. The failure handler module consists of user log and
Application specific components. recovery mechanism. Whenever a failure occurs either in
Network Manager.
Figure 2. File System Structure
Communication Module (ACM) in this tier is responsible
for communicating with the Application Tier which
accesses file system of this tier.
Application Tier
The Application Tier is the heart of PROS. The
Application Tier consists of the Application Specific
Components (ASC) and Generic Components (GC). The
ASC includes various components necessary for the
functioning of different applications. The Generic
Components will include the components like framework
and runtime environment required for supporting various
applications.
PROS will use Real Application Clusters to keep the
system 24 * 7 live and persistent with the help of regular
backups.
B. DESIGN OF PROS
Figure 1. Architecture of PROS (Arrows depict communication path)
Kernel
client/server or the network, the failure handler will store On the client side, the OS image downloaded from
the user’s transactions into the log files which will later the network will consist of the microkernel. A
be used for recovery. microkernel is a minimal computer operating system
Repository Tier kernel which provides no operating-system services at all,
only the mechanisms needed to implement such services,
This tier consists of the file system structures, the
viz., low-level address space management, thread
physical and logical data storage, data structures, file
management, and inter-process communication (IPC) are
system and location manager, backup handler and
provided [6]. The microkernel of PROS will provide
modules to communicate with the Application tier.
some core functionalities which include:
Whenever the Transaction/Application server sends
the request for the required file to this tier, File Locator Mechanisms for dealing with address spaces — this
retrieves the required file and sends back to the is required for managing memory protection.
requesting tier. The file system structure consists of a root Inter-process communication — required to invoke
directory which is the root for all the users of the system servers running in their own address spaces.
and will contain the information of all the users and a log On the server side, the conventional monolithic kernel
to maintain their track. Next in the hierarchy will be the would work on the network comprising of the different
root directory of each user that is registered to access the tiers as described in the architecture. This kernel would
system. The system root will also consist of the server provide all the services such as scheduling, memory
configuration files. Each user directory will consist of the management, IPC, RPC and file management.
data files, the user profile which will consist of the saved
personalized settings of its owner and the log files which
will keep the track of user’s transactions and data storage.
The data is identified with the help of URI (Universal
Resource Identifier) thus giving rise to (Network File
System) NFS structure.
The Repository Tier also consists of the module for
handling backups which are most crucial for recovering
from the failures and also for maintaining the consistency
of the data. Moreover, the tier consists of the store of
Generic Drivers for various devices. The Application
Figure 3. WEBFS Architecture
File Management
PROS will use WEBFS which is a global file system
used for the management of the files for all users.
The WebFS system architecture (as shown in Fig. 3)
consists of two parts: A user-level daemon and a
loadable vnode module.
When an application makes the read system call
requesting a WebFS file, the operating system translates
the call into a vnode read operation. The vnode operation
checks to see if the read can be satisfied in the kernel
(i.e., if the page being requested is cached in the kernel).
If the operation cannot be satisfied in the kernel, the
vnode operation fills in a structure requesting a read of
the file page in question and wakes up one of the sleeping
threads in the work queue. The user level daemon is then
responsible for retrieving the page, by contacting a
remote HTTP or WebFS daemon. Once the page is
retrieved remotely, the reverse path is followed into the
Figure 4. Generic Flow diagram - Working of PROS. Here b, c, d are
kernel [1]. the modules for invoking applications, saving files and playing media
respectively.
Process Management
In PROS, there will be multiple processes running on VI. FINDINGS AND ANALYSIS
the different tiers of its architecture. The various
processes will be distributed among the multiple servers A. Proposed Models
so as to get high throughput, performance and optimal User customized settings stored on client machine: If
resource utilization. user uses the same client machine most of the time, the
PROS will provide the conventional process customized settings related to Generic GUI can be saved
management services that include: as a file by client onto any local storage device and used
Suspension and resumption of processes. every time the OS boots.
Mechanism for process synchronization and Frequently used Application Image stored onto client
deadlock handling. machine: Application specific components for the
Mechanism for IPC and RPC. frequently used applications can be stored onto the client
In PROS, RPC will be implemented for machines so that it is not required to be downloaded
communication among processes residing on different every time the application is initiated.
tiers. The context switching between various processes Load balancing by shifting some processes to client:
will occur according to the requirements and the requests Using an algorithmic approach some specific processes
made by various tiers or the user processes. can be carried out locally on client machine for
performance tuning whereby processing power of client
Scheduling may be utilized [1].
The scheduling of the various processes is a very The second approach of providing frequently used
crucial step. The scheduling module consists of three application image stored onto the client machine is
major components: a resource state information database, ideally suited for efficient working of PROS.
a module which computes request (object) mapping to
resources (hosts and vaults), and an activation agent B. Cost Analysis and Resource Utilization
responsible for implementing the computed schedule [5]. Whenever a user buys a PC, he has to spend a lot
more money as compared to his utilization. The
C. Working of PROS
utilization of a normal home user would be
approximately 5 hrs a day or even less than that. Now the
lifetime of a normal PC would be approximately around 5
yrs. According to a statistics, this results into 20 %
utilization of the system by the user. During this 20%
utilization also, the actual resource utilization turns out to
be only around 4%.
Considering the normal prevalent costs of the
resources available and comparing it with the
configurations of the components required to be present
in the system which will use PROS, the cost is estimated
to get reduced by 50%. This estimation includes the
consideration of the cost required for developing and
maintaining servers. With this cost we will move a step will be provided to the user on a small storage device
closer towards the ‘$99’ computer. through which he would be able to login and get access to
the file system and personalized settings stored under his
VII. SECURITY profile [4].
On booting, the necessary components of PROS
PROS will consist of various modules for providing
would be downloaded in the form of OS image from the
security and performs the following steps for the same:
server. After this download, a connection will be
Authentication Using Passwords. maintained for the data transfer. On the server various
Maintaining Sessions using Kerberos protocol. operating system services like file system management,
Periodic relocation of critical and confidential data. process management, etc will be handled in an efficient
Digital Certificates to identify genuine clients and way using optimal algorithms for each of them.
servers. There might be issues regarding the cost for
CD piracy not an issue: As the operating system can bandwidth required and speed but that can be overcome
be loaded only after passing various Authentication steps, with lapse of time and with suitable tools for getting
even if the CD is pirated the User would not get access committed Bandwidth [3].
unless and until user registers and validates himself.
CONCLUSION
VIII. COMPARISIONS
PROS will provide OS services to wide-area
A. Advantages applications, including mechanisms for resource
Optimal Resource Utilization. discovery, a global namespace, and remote process
No compatibility issues for various software execution, on demand file system, on demand
applications. applications, resource management, authentication, and
Data access available all around the world. security.
Client Resource Independence. Thus our paper is an effort towards providing the
Highly Economical. three basic necessities of user’s viz., speed, portability
and security in an innovative way along with providing
Minimum Client Hardware requirement.
them the feel of pervasive computing.
On demand software available from server.
B. Pitfalls in Prevalent WEB-OS ACKNOWLEDGEMENT
The Web Operating System prevailing at present is We are greatly thankful to Prof. K.P. Agrawal,
basically a web application better known as Web Department of Computer Science and Engineering,
Desktop rather than a real operating system. Institute of Technology, Nirma University, for guiding us
HTTP+JavaScript+XHTML+CSS+Flash technology in the exploration of our work and providing us all the
is not as robust in providing functionality and user required aids.
interaction as true desktop applications.
Scripting Errors and Cross browser compatibility REFERENCES
issues have always been there.
[1] Vahdat, P. Eastham, C. Yoshikawa, E. Belani, T.
Not 100% secure. Anderson, D. Culler, et al., “WebOS: Operating System
Resource Utilization is not proper. Services for Wide Area Applications,” The Seventh
Software Applications are not available on demand. International Symposium on High Performance Distributed
For most of the applications, software is required to Computing, pp. 52-63, July 1998.
be installed. [2] Yevgeniy Klimenko, “Technique for Reliable Network
Booting of an Operating System to a Client Computer,”
C. Benefits over Live CD 3Com Corporation, Santa Clara, California, March 1998.
Live CD requires storage media on the client [3] A. Vahdat, T. Anderson, D. Culler, R. Martin, "Effects of
machine to store the data and run various Communication Latency, Overhead, and Bandwidth in a
Cluster Architecture," 24th Annual International
applications. Moreover, the performance of various Symposium on Computer Architecture (ISCA'97), pp.85,
services depends on the local resources. In PROS, 1997.
servers are used for both storage and processing, [4] P. Miller, TCP/IP Explained, Chapter 9, "Booting Internet
making it highly economical and efficient to use as Hosts with BootP and TFTP," pp. 343-359.
compared to Live CD. [5] Legion World Wide virtual computer, “Philosophy of
Updates for services that will be offered by PROS Legion Scheduling and Resource Management,”
can be easily incorporated while it is difficult to University of Virginia, 1993.
update the operating system provided on Live CD. [6] Andrew S. Tannenbaum, “Modern Operating Systems,” 2nd
edition, 2001.
IX. IMPLICATIONS
The practical implication of PROS would be on a
very broad line. First of all the development of the client
side software viz., boot loader is to be carried out. This

Você também pode gostar