Web Operating System
Web Operating System
SEMINAR
REPORT
By
P.SURYA
PRAKASH
DEPARTMENT OF COMPUTER
SCIENCE
2013-2017
SRI SIVANI COLLEGE OF ENGINEERING
CHILAKAPALEM, SSCE
ABSTRACT
One of the hottest topics that emerged these days between the area of Internet and
distributed computing and the area of operating system is Web Operating System (WOS).
The objective of WOS is to deliver the full benefit of the World Wide Web. WOS will
include mechanisms for resource discovery, resource collaboration, persistent storage,
remote process execution, resource management, authentication and security. Web
operating systems can simplify collaborative projects. Many Web operating systems
allow users to share files. A Web OS allows you to access applications stored not on your
computer, but on the Web. The applications exist wholly or in part on Web servers within
a particular provider network.
WOS is designed as a distributed system. The WOS framework enables a new paradigm
for Internet services. Internet computing resources and all the way to the client. WOS
goal is to provide a platform which allows the user to benefit from the computational
potential offered by the web. Its aimed is to make available to all sites of the network
resources to execute computations for which local resources are missing .
This paper presents an overview of a typical WOS. It describes the WOS process,
components, communication protocols. Additionally, the paper discusses all the resolved
and unresolved issues and difficulties surrounding the implementation and design of
WOS
INDEX
TOPIC
Abstract
Chapter-1
Introduction to WEBOS
1.1
History
1.2
WOS overview
1.3
Chapter -2
2.1
WOS NODES
2.2
Global Naming
2.3
Resource Discovery
2.4
2.5
WOS process
2.6
2.7
Process Control
2.8
WOS Protocols
2.9
Applications of WEBOS
2.10
CONS of WEBOS
2.11
Conclusion
References
PAGE NO
ACKNOWLEDGEMENT
We are very much grateful to our Seminar Guide Smt. B.GOVINDA LAXMI,
Assoc.Prof in Department of Computer Science and Engineering, SSCE,
Chilakapalem for her help, guidance and patience .she rendered to us in the
completion of our Seminar successfully.
We are glad to express our sincere thanks and respect to our Head of the
Department Prof. G .Rajendra Kumar, for supporting us in our project.
We extend our sincere gratitude to our Principal, Dr. G Ramesh Babu who has
made the atmosphere so easy to work.
Last but not the least we thank the lab authorities and staff members of Computer
Science and Engineering Department and everyone else who extended their help
and guidance in the completion of our project.
Sincerely
Seminar Associate
P.SURYA PRAKASH
INTRODUCTION
(13W61A0515)
Development of a new single operating system enabling global computing is a hot issue
these days. Such an operating system is called the Web Operating System, or WOS.
Major Internet users use WOS to download files, execute of servers programs remotely,
fetching client scripts, etc. The common model of these services consists of client-server
or master-slave configuration with a network as a transportation media. WOS offers
variety of services. These services could be software or hardware (computation,
communication channels, storage capacity, specialized drivers, etc.). The use of web
resources is highly motivated by different reasons. These include reliability, availability,
fault tolerance, load sharing, function sharing, and performance aggregation. The many
various real applications exhibit very different requirements. For example, 3D animation
rendering is massively matrices computation. To take advantage of distributed
infrastructure, mechanisms for efficient resource management and access are needed.
However, the heterogeneous and dynamic nature of the web infrastructure ensures that it
is impossible to provide a complete catalog of all resources available on the web.
Therefore, new approaches are needed which take into account the inherently
decentralized and dynamic properties of the Internet and distributed system in general.
In order to meet the need for such requirements, WOS has a framework for supporting
applications that are geographically distributed, highly available, incrementally scalable,
and dynamically reconfiguring. It will also include fetures for resource discovery,
resource collaboration, persistent storage, remote process execution, resource
management, authentication and security.
1.1 HISTORY
The first webOS and web-based desktop environment was invented by Sandro Pasquali in 1998,
with patents filed in January 1999 Pasquali's invention of an online desktop environment led to
the foundation of Simple.com (which domain was recently sold to an online bank), which offered
a complete online enterprise solution for the creation of online services within a desktop
environment ( Simple.com demo sample ), and of InternetOne, which sold the core webOS
technology invention.[10]
Simple.com was involved in several lawsuits involving its webOS invention, notably with
Computer Associates and with McAfee and Associates
WebOS gained popularity in 1999 when a much touted start up, WebOS Inc. (at first known
as Hyper Office and later known as MyWebOS), was founded by Berkeley grad Shervin Pishevar
and Emory grad Drew Morris. WebOS licensed the webOS technologies from Duke
University and University of Texas at Austin and recruited Dr. Amin
Vahdat,Professor of Computer Science at Duke, who had pioneered the webOS technologies at
University of California at Berkeley where he got his PhD on his webOS research. WebOS
acquired WebOS.org, which was created by a young Swedish programmer, Fredrik Malmer.
WebOS competed with another start up, Desktop.com, which was aimed more at the consumer
market. WebOS was covered by many media outlets such as the Wall Street Journal, Financial
Times, LA Times, Power Lunch on CNBC, Fox News and CNN and helped spread the WebOS
meme further. WebOS launched Hyperoffice, a full office suite, back in 1999.
A 2003 scientific publication was made about BolinOS, a "Web Operating System for Internet /
Radiology" based on works started in 1995 by the University of Geneva in Switzerland, and
relates the diverse aspects of this kind of online platform, based on client and server
side distribution of applications using platform independent software. The technology was
adopted by Palm and released as Palm webOS in 2009. In 2010, Palm was acquired by Hewlett
Packard and the technology was further developed into Open webOS.
WOS is designed as a distributed system. The WOS framework enables a new paradigm for
Internet services. Internet computing resources and all the way to the client [1]. WOS goal is to
provide a platform which allows the user to benefit from the computational potential offered by
the web. Its aimed is to make available to all sites of the network resources to execute
computations for which local resources are missing.To account for the dynamic nature of the
Internet, generalized software configuration techniques, based on demand driven technique
called eduction are developed for theWOS. The kernel of a WOS node is a general eduction
engine, a reactive system responding to requests fromusers or other eduction engine. A WOSnode integrates thus client, server, and broker/trader functions. It is capable of providing a set of
services, which can pass on to each other requests when appropriate. Again, because of web is
dynamically changing, there exist some warehouses that associated with the WOS node provide
the necessary information and components for meeting requested services.
Each WOS node is using its own warehouses to store and continuously update information about
the node and available services and resources.
The left side of this figure shows the server, while the right side represents the client
features of each WOSNode. Services available on the WOSNode are described using
profiles. Profiles describe resources with a list of key-value pairs, each pair defining a
special feature of a resource.
For instance, a printer has a special type (inkjet, laser etc.), is able to print black and
white or color, and may handle Postscript files. Each resource also has a corresponding
access-object describing its methods; e.g., for a printer, we might have self-test, economy
mode, etc. That means that the user does not need to use the command line anymore.
Restrictions on resource usage are described using the same data structure.
Warehouse
_
Many wide-area services are geographicallydistributed. To provide the best overall system
performance, a client application must be able to dynamically locate the server able to deliver the
highest quality of service. In WebOS, global naming includes mapping a service name to
multiple servers, an algorithm for balancing load among available servers, and maintaining
enough state to perform fail-over if a server becomes unavailable. These operations are
performed through Smart Clients, which flexibly extend service-specific functionality to the
client machine.
privileges. Restricting the rights available to a process is further detailed in Section 6. In the wide
area, it is vital for principals to restrict the rights they cede to their jobs. For example, when
logging into a machine, a principal implicitly authorizes the machine and the local OS to speak
for the principal for the duration of the login session. It is often convenient to associate names
with a specific subset of a principal's privileges. This functionality is achieved in CRISIS
through named roles. A principal (user) creates a new role by generating an identity certificate
containing a new public/private key pair and a transfer certificate that describes a subset of the
principal's rights that are transferred to that role; an OLA chosen by the principal is responsible
for endorsing the certificates. Thus, in creating new roles, principals act as their own certification
authority [33]. The principal stores the role identity certificate and role transfer certificate in a
purse of certificates that contains all roles associated with the principal.
2.6.2 Authorization
Once a request has been securely transmitted across the wide area, and properly authenticated,
the remaining task is authorization, determining whether the principal making the request should
be granted access. CRISIS employs Access Control Lists (ACLs) to describe the principals and
groups privileged to access particular resources. File ACLs contain lists of principals authorized
for read, write, or execute access to a particular file. Process execution ACLs are a simple list
describing all principals permitted to run jobs on a given node. To determine whether a request
for a particular operation should be authorized, a reference monitor first verifies that all
certificates are un-expired and signed by a public key with a current endorsement from a trusted
CA and OLA. In doing so, the reference monitor checks for a path of trust between its home
domain and the domains of all signing principals. The reference monitor then reduces all
certificates to the identity of single principals. For transfer certificates, this is accomplished by
working back through a chain of transfers to the original granting principal. Finally, the reference
monitor checks the reduced list of principals against the contents of the object's ACL, granting
authorization if a match is found.
The WOS has its own Communication Layer (WOSCL) and it uses two
protocols.
2.8.1 WOSRP
At first, a WOS client will broadcast a request to all machines in its immediate
neighborhood. Any WOS server being able to provide a positive answer will respond.In
this case, more detailed requests may be submitted to those WOS servers.Otherwise, the
WOS client broadcasts a request to all the machines at the next network level, and so on.
Client could use WOSRP to obtain information about other WOS servers.
These messages may be lost without any disruption of service.Furthermore, WOS nodes
may decide to propagate these messages to other items.Eventually, replies may be
returned to the node which made the original request.
2.8.2 WOSP
It allows WOSNode administrators to implement a set of services, called a service class,
dedicated to specific users needs. WOSP is in fact a generic protocol defined through a
generic grammar. A specific instance of this generic grammar provides the
communication support for a service class of the WOS.
This specific instance is also referred to as a version of WOSP; its semantics depends
directly on the service class supported by that version. Several versions of WOSP can
cohabit on the same WOSNode. The WOSP is used to execute a service, to transmit the
results of the execution, and to search the WOSNet.
This section provides an overview of four applications designed using the WebOS framework.
The first two applications have been completed, while the last two are under development. In the
next section, we describe in detail the design and performance of a fifth application, RentAServer.
1)Internet Chat
Internet chat allows for individuals to enter and leave chat rooms to converse with others present
in the same logical room. In our implementation, chat rooms are implemented as WebFS files
accessed by Smart Clients. The file system interface is well-matched to chat semantics in a
number of ways: (i) file appends and reads abstract away the need to send messages (ii) the chat
file provides a persistent log of chat activity, and (iii) access control lists allow for private and
secure (throughWebFS encryption) chat rooms. For scalability, we allow multiple WebFS servers
to handle client requests for a single file (room). Each WebFS server accumulates updates, and
periodically propagates the updates to other servers in the WebFS group, who in turn transmit the
updates to local clients. Smart Clients choose the least loaded WebFS server for load balancing
and connect to alternative servers on host failure or network partition for fault transparency. To
quantify the benefits available from the WebOS framework,we implemented two versions of chat
with identical semantics, both with and without WebOS. The initial implementation consisted of
1200 lines of Java code in the client and 4200 lines of C++ code in the server. By using WebFS
to handle message transmission, failure detection, and storage, the size of the chat client code
was reduced to 850 lines, while the WebFS interface entirely replaced the 4200 lines of chat
server code. The main reason for this savings in complexity was the replacement of separate
code for managing communication and persistent storage of chat room contents with a single
globally accessible and consistent file. As an added benefit, this common WebFS interface is
similarly available for other distributed applications. For example, we are currently
implementing a shared distributed whiteboard application using this interface.
Sites with unique computing resources, such as supercomputer centers, often wish to make their
resources available over the Internet. UsingWebOS, we allow remote programs to be invoked in
the same way as local programs and can allow access to the same files as local programs. WebOS
functionality is used to address a number of issues associated with such access: the identity of
requesting agents is authenticated, programs are provided secure access to private files on both
local and remote systems, and programs run in a restricted virtual machine isolated from other
programs to protect the local system from malicious users. At our site, WebOS provides compute
access to a research cluster of 100 machines. Resource allocation within the virtual machine
allows external users to take advantage of the aggregate computing resources, while ensuring
system developers have the requisite priority.
4) InternetWeather
A number of sites are currently attempting to provide regular updates of congestion, latency, and
partitions in the Internet .[12,13,14] Such information is invaluable for services making
placement and load balancing decisions.
However, all current efforts take network measurements from a centralized site, making it
difficult to measure network characteristics between two arbitrary sites. We are addressing this
limitation by using the WebOS framework to generate more comprehensive snapshots of Internet
conditions.
In our implementation, a centralized server provides Smart Client applets for those wishing to
view thecurrent Internet weather. In exchange for the weather report, the user implicitly agrees to
allow the applet to execute traceroute to a subset of server-determined sites and to transmit the
result back to the server. Using these results from multiple sites, the service is able to construct
fairly comprehensive snapshots of Internet weather.
Rent -A-Server
This section describes the design, implementation, and performance of Rent-A-Server, a general
model for graceful scaling across temporal and geographic spikes in client demand for a
particular service. Our particular implementation focuses onWeb service, and enables overloaded
HTTP servers to shed load onto idle third-party servers called surrogates that use the WebOS
framework to coherently cache data fromthe primary server. The surrogate is able to satisfy the
same HTTP requests as the original server, including requests for both static and dynamically
generated objects (e.g. data pages and CGI script results). The goal of the implementation of
Rent-A-Server is to demonstrate the power of using a unified system interface to wide-area
resources and of moving a service out across the Internet.
2.11 CONCLUSION
There are many cloud applications and web OS that become used in various fields recently. Most
of these applications are used to synchronies files and photos on different device using a third
party device which is the cloud server. Our proposed cloud model is a complete OS web based
application that enables the users not only to synchronize their file but also they can manage
them at the cloud server side. This cloud web OS can be also used by developer to compile and
run Java and C++ applications. It can be also used to edit and update documents, sheets and
office applications files. Social web account can be defined on the cloud web OS to simplify the
access of the social media web sites. E-mail accounts can be also added on the e-mail software
with allowing to make voice call via the VOIP tools implanted inside our cloud system. All of
that and more can be added to let the user access the cloud web OS and keep use it, basically, it
gives the user all the traditional OS gives to the user. In addition, it can be accessed from any
web browser on any device.
WOS has the potential of being an important distributed computing system for the Internet. It
promises supporting applications that are geographically distributed with high reliability,
security, scalability, and manageability.
Some research and prototyping of WOS have been underway to overcome some of the
challenges and difficulties pertaining to the design and implementation of such a system.
However, many issues remain to be resolved. Some of these remaining difficult issues include
volunteering user system or resources, global on-line resource prediction, and the heterogeneous
nature of many Internet components and protocols.
REFERENCES
[1] D. Walsh, B. Lyon, G. Sager, J. M. Chang, D. Goldberg, S. Kleiman, T. Lyon, R. Sandberg, and P.
Weiss. Overview of the Sun Network File System. In Proceedings of the 1985 USENIX Winter
Conference, pages 117124, Jan. 1985.
[2] M. Nelson, B. Welch, and J. Ousterhout. Caching in the Sprite Network File System. ACM
Transactions on Computer Systems, 6(1):134154, Feb. 1988.
[3] J. Howard, M. Kazar, S. Menees, D. Nichols, M. Satyanarayanan, R. Sidebotham, and M. West. Scale
and Performance in a Distributed File System. ACM Trans. Comput. Syst., 6(1):5182, Feb. 1988.
[4] J. J. Kistler andM. Satyanarayanan. Disconnected Operation in the Coda File System. ACM
Transactions on Computer Systems, 10(1):325, Feb. 1992
[5] T. E. Anderson, M. D. Dahlin, J. M. Neefe, D. A. Patterson, D. S. Roselli, and R. Y. Wang. Serverless
Network File Systems. In Proceedings of the 15th ACM Symposium on Operating Systems Principles,
pages 109126, Dec. 1995.
[6] I. Goldberg, D.Wagner, R. Thomas, and E. Brewer. A Secure Environment for Untrusted Helper
Applications. In Proceedings of the Sixth USENIX Security Symposium, July 1996.
[7] A. Chankhunthod, P. Danzig, C. Neerdaels, M. Schwartz, and K. Worrell. A Hierarchical Internet
Object Cache. In Proceedings of the 1996 USENIX Technical Conference, Jan. 1996.
[8] M. M. Feeley, W. E. Morgan, F. H. Pighin, A. R. Karlin, H. M. Levy, and C. A. Thekkath.
Implementing Global Memory Management in a Workstation Cluster. In Proceedings of the 15th ACM
Symposium on Operating Systems Principles, December 1995
[9] P. Sarkar and J. Hartman. Efficient cooperative caching using hints. In Operating Systems Design and
Implementation, pages 3546, October 1996.
[10] http://en.wikipedia.org/wiki/Web_operating_system
[11] http://www.smallbusinesscomputing.com/biztools/article.php/10730_3939126_2/The-Pros-andCons-of-WebBased-Operating-Systems
[12] Matrix Information and Directory Services, Inc. MIDS Internet Weather Report, 1996. See
http://www2.mids.org/- weather/index.html
[13] Internet Weather Report, 1997. http://www.internetweather.com/.
[14] R. Wolski. Dynamically Forecasting Network Performance to Support Dynamic Scheduling Using
the NetworkWeather Service. In Proceedings of the 6th High-Performance Distributed Computing
Conference, August 1997
A seminar report on
WEB OPERATING SYSYEM
Submitted By
P.SURYA PRAKASH
13W61A0515
CERTIFICATE
This is to certify that this seminar work entitled WEB OPERATING SYSTEM is the bonafide work
carried out by P.SURYAPRAKASH (13W61A0515) submitted in Partial fulfillment of the requirement
for the Award of Degree of Bachelor of Technology in Computer Science & Engineering, during the
year 2013-2017.
Faculty In-Charge
Seminar Supervisor
(Smt B Govinda Lakshmi)