0% found this document useful (0 votes)
80 views49 pages

Cloud Computing: SOA, Web 2.0 & 3.0 Insights

The document discusses cloud deployment and service models, emphasizing the role of Service-Oriented Architecture (SOA) in cloud computing. It outlines the technological drivers such as multicore technology, Web 2.0, and Web 3.0 that enhance cloud computing, while detailing the benefits and differences between SOA and cloud computing. Additionally, it highlights how SOA facilitates the integration and management of cloud services, ultimately leading to increased agility and scalability for enterprises.
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
80 views49 pages

Cloud Computing: SOA, Web 2.0 & 3.0 Insights

The document discusses cloud deployment and service models, emphasizing the role of Service-Oriented Architecture (SOA) in cloud computing. It outlines the technological drivers such as multicore technology, Web 2.0, and Web 3.0 that enhance cloud computing, while detailing the benefits and differences between SOA and cloud computing. Additionally, it highlights how SOA facilitates the integration and management of cloud services, ultimately leading to increased agility and scalability for enterprises.
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOC, PDF, TXT or read online on Scribd

UNIT - II

Cloud Deployment Models, Cloud Service Models, Technological


Drivers for Cloud Computing:

1. SOA and Cloud


 SOA and SOC
 Benefits of SOA
 Technologies Used by SOA
 Similarities and Differences between SOA and Cloud Computing
 How SOA Meets Cloud Computing
2. Multicore Technology
 Multicore Processors and VM Scalability
 Multicore Technology and the Parallelism in Cloud
3. Web 2.0
 Characteristics of Web 2.0
 Difference between Web 1.0 and Web 2.0
 Applications of Web 2.0
 Social Media
 Marketing
 Education
 Web 2.0 and Cloud Computing
4. Web 3.0
 Components of Web 3.0
 Semantic Web
 Web Services
 Characteristics of Web 3.0
 Convergence of Cloud and Web 3.0
 Case Studies in Cloud and Web 3.0
 Connecting Information: Facebook
 Search Optimization and Web Commerce
Best Buy
 Un derstanding Text: Millward Brown.

5. Pervasive Computing
 How Pervasive Computing Works?
 How Pervasive Computing Helps Cloud Computing?
6. Operating System
 Types of Operating Systems
 Role of OS in Cloud Computing
 Features of Cloud OS
 Well-Defined and Abstracted Interfaces
 Support for Security at the Core
 Managing Virtualized Workloads
 Management of Workloads
 Cloud OS Requirements
 Cloud-Based OS
7. Application Environment
 Need for Effective ADE
 Application Development Methodologies
 Distributed Development
 Agile Development
 Power of Cloud Computing in Application Development
 Disadvantages of Desktop Development
 Advantages of Application Development in the
Cloud.
 Cloud Application Development Platforms
 Windows Azure
 Google App Engine
 [Link]
 Manjrasoft Aneka
 Cloud Computing APIs
 Rackspace
 IBM
 Intel

Introduction:
 Cloud computing enables service providers to offer various resources
such as infrastructure, platform, and software as services to the
requesting users on a pay-as-you-go model.
 The cloud service consumers (CSCs) are benefitted from the cost
reduction and the quality of service (QoS). Nowadays, more
companies and enterprises are entering the cloud scenario either as
service providers or as service consumers. There has been a
considerable increase in the adoption rate of cloud computing among
service providers and users across the globe.
 The success of cloud computing can be closely associated with the
technological enhancements in various areas such as service-
oriented architecture (SOA), virtualization, multicore technology,
memory and storage technologies, networking technologies, Web
2.0, and Web 3.0.
 Also, the advancements in programming models, software
development models, pervasive computing, operating systems
(OSs), and application environment have contributed to the
successful deployment of various clouds.
 The various benefits provided by these technological drivers to
different stakeholders such as service providers and service
consumers are emphasized.

1. SOA and Cloud


 Many people are confused thinking that SOA and cloud computing
are the same, or cloud computing is another name for SOA. This is
not true.
 SOA is a flexible set of design principles and standards used for
systems development and integration. A properly implemented
SOA-based system provides a loosely coupled set of services that
can be used by the service consumers for meeting their service
requirements within various business domains.
 Generally, SOA is used by enterprise applications, and cloud
computing is used for availing the various Internet-based services.
 SOA (Service-Oriented Architecture) is like a design style for
building software. Instead of making one big program, you break it
into small, independent services that can talk to each other. Each
service does one specific job and can be reused in different situations.
 Cloud computing is about getting services (like storage, servers, or
software) over the internet instead of buying and maintaining
everything yourself.
 When you combine these ideas:Cloud provides the building blocks
(CPU, memory, storage, platforms). SOA provides the method to
organize and connect those blocks into useful applications.
Example:Imagine an online shopping site.
The cloud gives servers, databases, and payment systems. SOA
makes each part (like product search, payment, delivery tracking) is
built as a separate service. These services can be combined (some from
the cloud, some built by the company itself) to create the full shopping
application.
 In short: Cloud = resources and services delivered online. SOA = way
to organize and connect those services into flexible applications.
 Cloud provides different services (like storage, servers, databases, AI
tools, etc.). These services can be combined (composed) to build
applications. Cloud offers infrastructure Just like renting instead of
buying: you can rent CPU, memory, and storage from the cloud.
 It also gives you platforms (like AWS, Azure, Google Cloud) to build
and run your [Link] services are offered through APIs (like
menus in a restaurant).Your program asks for what it needs through
an API, and the cloud service responds.
 Programs running on the cloud can be built using SOA (Service-
Oriented Architecture). That means each part of the program is a
separate service (like login service, payment service, delivery
service).
 A cloud user (like a company) can combine: Services from a cloud
provider (like AWS database, Google Maps API), Services from their
own systems (in-house), Services from other public clouds, Together,
these form a composite application — one app made from many
services.

SOA and SOC:

 The service-oriented computing (SOC) paradigm utilizes the


services for the rapid and low-cost development of interoperable
distributed applications in heterogeneous environments.
 In this paradigm, services are autonomous and platform-
independent entities that can be described, published, discovered,
and loosely coupled using various protocols and specifications.
 SOC makes it possible to create cooperating services that are loosely
coupled, and these services can be used to create dynamic business
processes and agile applications in heterogeneous computing
platforms.
 SOC uses the services architectural model of SOA as shown in Figure
. This model consists of entities such as service provider and
service requestor.
 Service providers publish the details of their services in the service
registry using an Extensible Markup Language (XML) called Web
Services Description Language (WSDL).
 Service requestors find the suitable services from the service
registry using specifications such as Universal Description,
Discovery, and Integration (UDDI).
 Service providers and service requestors communicate with each
other using protocols such as Simple Object Access Protocol
(SOAP). SOAP allows a program or service running on one platform
to communicate with another program or service running on a
different platform, using the Hypertext Transfer Protocol (HTTP) and
its XML as the mechanisms for information exchange.
Benefits of SOA:
 SOA enables mutual data exchange between programs of different
vendors without the need for additional programming or services.
 The services should be independent, and they should have
standard interfaces that can be called to perform their tasks in a
standard way. various benefits of SOA are as follows:

1. Reuse of services: Various services can be reused by different


applications, which results in lower development and maintenance costs.
Same services can be used by many applications → saves cost & time.
2. Agility: · Agility means the ability to adapt quickly when business
needs change. In SOA, agility comes from the use of standard services
(like web services) that are loosely coupled and independent. When a
business process changes (for example, adding a new payment method in
an online store), the system does not need to be rebuilt from scratch.
 Instead, changes can often be made at the configuration layer (by re-
arranging or reusing existing services) rather than redeveloping the
entire application. This makes the enterprise faster, more flexible,
and cost-effective in responding to business changes. So, SOA
agility proved the way for quick adaptation to business changes by
reusing and reconfiguring services instead of redeveloping the whole
system.

3. Monitoring: It helps to monitor the performance of various services to


make the required changes.
4. Extended reach: it means that an organization can use services from
outside its own system (like from another company or partner) to
complete a task.
 In business collaborations, different enterprises often need to share
processes.
Example:
 A travel booking website doesn’t build its own payment gateway or
flight database.
 Instead, it uses services from banks (for payments) and airlines (for
flight availability).
 These external services are integrated seamlessly into the travel site’s
system.
Hence, SOA enables integration of services, and cloud computing
provides those services on-demand. Together, they allow enterprises to be
more flexible, cost-effective, and scalable.

Technologies Used by SOA


 There are many technologies and standards used by SOA, which
could also be utilized in the cloud computing domain for delivering
services efficiently to cloud customers. Some of the standards or
protocols are given in the following:
 1. Web services: A web service is a software component that
provides some functionality (like checking bank balance, booking a
ticket, or verifying login) and makes it available over the Internet.
These services are platform-independent. UDDI specification defines
a way to publish and discover information about web services.
Example: An e-commerce site wants to integrate a payment service.
 It looks up a UDDI registry, finds a PaymentGateway web service,
and connects to it via standard protocols.

 This allows smooth integration without worrying about what


language or platform the service was built on.
2. SOAP: The SOAP protocol is used to describe the communications
protocols.
3. RPC: Remote procedure call (RPC) is a protocol that helps a
program to request a service from another program located in
another computer in a network, without the need to understand
network details.
4. RMI-IIOP: This denotes the Java Remote method invocation (RMI)
interface over the Internet Inter-ORB Protocol (IIOP). This protocol is
used to deliver Common Object Request Broker Architecture
(CORBA) distributed computing capabilities to the Java platform. It
supports multiple platforms and programming languages and can be used
to execute RPCs on another computer as defined by RMI.

5. REST: REpresentational State Transfer (REST) is a stateless


architecture that runs over HTTP. It is used for effective interactions
between clients and services.
6. DCOM: Distributed Component Object Model (DCOM) is a set of
Microsoft concepts and program interfaces in which client program can
request the services from a server program running on other computers in
a network.
 COM (Component Object Model): A Microsoft technology that
allows software components to communicate within the same
machine. DCOM: Extends COM to work across different computers
in a network.

7. Windows Communication Foundation (WCF): WCF is a Microsoft


framework in .NET for building service-oriented applications. Provides
APIs to build secure, reliable, and scalable communication between
distributed [Link] supports multiple communication methods like
Web Services (SOAP/REST), TCP.

Similarities and Differences between SOA and Cloud Computing:


There are certain common features that SOA and cloud computing share
while being different from one another in certain other areas.

Similarities:

1. Service Concept
Both are based on the idea of services.
Cloud computing → provides IT resources (like storage, servers,
applications) as services.
SOA → organizes business/application functions as reusable services.
2. Service Delegation
In Cloud Computing: Tasks are delegated to a cloud service provider
(CSP) (e.g., AWS, Azure).
In SOA: Tasks are delegated to other applications or business
components inside the enterprise.
In both, the user doesn’t worry about how the service is implemented or
maintained.
3. Loose Coupling
Components or services have minimum dependencies. A change in one
service will not heavily impact others. This ensures flexibility, scalability,
and easier system maintenance.

4. Technology Independence
Services are built using different platforms/languages, but can still work
together. Achieved through standards and protocols (XML, WSDL, IDL,
CDR).
Example: A Java service and a .NET service can still communicate.
5. Transparency (in Cloud with SOA)
Users don’t need to know where the service is running or what
technology it uses. Services appear location-independent and technology-
independent. SOA principles help make cloud services more transparent
and interoperable.

Hence, Cloud Computing and SOA are similar because both are service-
based, use delegation, promote loose coupling, ensure technology
independence, and provide transparency.

Differences:
There are also some differences between the SOA and the cloud
computing paradigm.
1. Focus of Services
SOA: Services focus on business processes.
Example: OrderProcessingService, PaymentService, InventoryService.
These services can be combined to solve a specific business problem.
Cloud Computing: Services focus on IT resources.
Example: Infrastructure (IaaS) → storage, servers; Platform (PaaS) →
app hosting; Software (SaaS) → Gmail, Office 365.
2. Service Orientation (Horizontal vs Vertical)
SOA: Services are horizontal → each represents a part of a business
process. They are combined to form a complete business solution.
Cloud Computing: Services are vertical (layered) → Infrastructure →
Platform → Software. Lower layers support higher layers.
3. Purpose
SOA: Defines application architecture → how to structure and connect
business/application services.
Cloud Computing: Provides a delivery mechanism for IT resources over
the internet.
4. Reuse
SOA: Services can be reused across applications to build different
business solutions.
Cloud Computing: Services (like storage, databases, APIs) can also be
reused by many applications/users without needing to redesign them.

SOA provides a design approach (how to build applications using


business services).
Cloud Computing provides a delivery model (how IT resources are
provided as services over the internet).
SOA services are business-oriented & horizontal, while Cloud
services are layered & vertical.

How SOA Meets Cloud Computing:

 SOA (Service-Oriented Architecture) is an architectural style that


organizes applications into reusable services.
 Cloud computing is a deployment model that delivers IT resources
(like servers, storage, apps) as services.
 Cloud computing requires encapsulation (hiding details),
virtualization (no fixed resource location), and isolation (keeping
users’ data separate). These features are already supported by SOA
principles.
 SOA uses web service standards like WSDL (to describe services)
and SOAP (for communication). These standards are also used in
cloud computing to solve issues such as:Asynchronous messaging,
Metadata exchange.
 SOA is a general architectural style (technology-independent).
 Cloud is an instance (deployment option) of that style — it delivers
resources as services via the internet.
 Example: In a business, Database could be hosted with CSP A,
Application platform with CSP B. SOA makes all these distributed
services work together seamlessly.
 Cloud + SOA provides agility: systems can be changed quickly to
meet business needs. Services can be configured or recombined at the
process layer, instead of being rebuilt from scratch.
 Service Visibility & Governance: SOA governance = managing the
lifecycle of services (creation, monitoring, retirement). Cloud can
benefit from SOA governance to handle service discovery, visibility,
and management.
 This prevents creating new overhead — cloud can reuse SOA’s
governance model.b
 Multitenancy in Cloud (linked to SOA): Multitenancy = one
application instance serving many customers simultaneously (e.g.,
Gmail, Hotmail). Cloud requires service orientation → which SOA
provides.
 If an enterprise already has SOA, moving to cloud is easier, faster,
and more secure.
Benefits include:
 Better collaboration
 Higher customer satisfaction
 Hence, SOA has design approach (how to structure applications as
services).
 Cloud has deployment model (how to deliver those services on the
internet).
 SOA enables cloud → without SOA, cloud adoption would be more
complex.
 Together they provide agility, scalability, cost-effectiveness, and
better service governance.

Cloud computing open architecture (CCOA) is an architecture for the


cloud environment that incorporates the SOA. The goals of the CCOA are
as follows:
1. To develop an architecture that is reusable and scalable. That means, in
future, the architecture should incorporate any further changes without
the need for replacing the entire architecture.
2. To develop a uniform platform for the cloud application development.
This will allow the cloud users to switch between the CSPs without the
need to make significant changes in the application.
3. To enable the businesses to run efficiently. This goal helps the CSPs to
make more money by delivering quality services [Link], the
CCOA provides the required general guidelines and instructions for the
design and development of scalable, reusable, and interoperable cloud
applications incorporating SOA principles into them.

2. Multicore Technology
 In multicore technology, two or more CPUs are working together on
the same chip. In this type of architecture, a single physical processor
contains the core logic of two or more processors.
 These processors are packaged into a single integrated circuit (IC).
These single ICs are called a die.
 Multicore technology can also refer to multiple dies packaged
together. This technology enables the system to perform more tasks
with a greater overall system performance.
 It also helps in reducing the power consumption and achieving more
efficient, simultaneous processing of multiple tasks. Multicore
technology can be used in desktops, mobile personal computers
(PCs), servers, and workstations.
 Hence, this technology is used to speed up the processing in a
multitenant cloud environment. Multicore architecture has become the
recent trend of high-performance processors, and various theoretical
and case study results illustrate that multicore architecture is scalable
with the number of cores.

Multicore Technology and Parallelism in Cloud

 In cloud computing, multiple virtual machines (VMs) often run on the


same physical server.
 Multicore processors allow many VMs to scale up (i.e., handle more
workload) as long as system resources (cache, memory, bus, network
bandwidth) are not exhausted.
 Example: If you have an 8-core processor, different VMs can share
those cores for CPU-intensive and memory-heavy tasks.
 The scalability of VMs in cloud depends on how well the memory
and bandwidth architecture supports multiple cores working together.

Multicore Technology and Parallelism in Cloud

 Instead of building one very large processor, chip designers now build
multiple simpler cores in one chip. This exposes parallelism (the
ability to do many tasks at the same time).
 But to use this parallelism effectively: The software running on the
cloud servers must support concurrent programming (multi-threading,
parallel execution).Otherwise, the extra cores are underutilized.
Key Challenge in Cloud:
Just having multicore hardware is not enough. Cloud providers must
program and design their systems to efficiently use multicore processors.
Benefit: In multitenant cloud (many users sharing the same cloud),
multicore processors ensure faster processing, better efficiency, and
improved resource sharing.
Hence, In cloud: Multicore allows scalability of VMs (many users & apps
can run efficiently) and it Enables true parallelism if software is designed
with concurrency in mind. It Helps multitenant clouds achieve higher
performance & resource efficiency.

3. Web 2.0
 Web 1.0 (old web): Early internet was mostly read-only. Users could
only view content (like static HTML pages), not interact.
 Web 2.0 (new web): Shifted to read & write. Now users can create,
edit, share, and interact with content and each other(reading +
writing + collaborating).

Key Features of Web 2.0

User Participation – People can post blogs, comments, reviews, ratings.

Collaboration – Wikis (like Wikipedia) let users edit and add information.
Dynamic Content – Pages update in real time (thanks to Ajax and similar
tech).
Social Media – Social networking, sharing videos (YouTube, Facebook,
Twitter, Insta).
RSS feeds – Auto updates of news/content.
Feedback & Interaction – Users can comment, vote, or suggest
improvements.
Examples:
Wikipedia – Users can edit and update info, not just read.
Blogs & Forums – Users share opinions and knowledge.
YouTube / TikTok – Users upload and share videos.
Facebook / LinkedIn / Insta – Social networking & interactions.

Relation to Cloud Computing

Web 2.0 introduced interactivity and sharing.


Cloud computing builds on this by:
Hosting these apps/services on the cloud.
Providing hardware & software resources online (no need for local
storage or power).
Example: Google Docs → Users can collaborate live, hosted in the cloud.
So, Web 2.0 provides interactive, collaborative, dynamic web ,where
users contribute and share.
Cloud computing, provides the resources and platform to run these
interactive apps without depending on personal computers only.

Characteristics of Web 2.0

 Unlike Web 1.0 (read-only web), Web 2.0 allows users to read, write,
share, and collaborate on the internet. It is sometimes called
“network as a platform computing” because:

Software, computing power, and storage are all delivered through the
browser, not installed locally.
Example: Google Docs → You don’t need MS Word on your PC, you
just need a browser.
 The major applications of Web 2.0 include social networking sites,
self-publishing platforms, tagging, and social bookmarking.
The key features of Web 2.0 include the following:
• Folksonomy
• Rich user experience
• User as a contributor
• User participation
• Dispersion
Folksonomy (Tagging)
Users can classify and organize information themselves using tags.
Example: On Instagram or Twitter, users add hashtags (#AI, #Tech).
These tags make it easier for everyone to find related posts.
Rich User Experience
Websites respond dynamically to user actions (no full reloads).
Example: Facebook timeline scrolls infinitely, YouTube auto-suggests
videos.
User as Contributor
Users don’t just consume content → they create and update it.
Example: Writing reviews on Amazon, editing articles on Wikipedia.
User Participation
Users collaborate and contribute to large projects (crowdsourcing).
Example: Open-source software projects like Linux, or Waze traffic
updates shared by drivers.
Dispersion (Multiple channels for content delivery)
Content can reach users in different ways (websites, RSS feeds, social
media shares).

Example: News published on a site is also pushed via RSS, Twitter, and
email alerts.
Some of the characteristic features of Web 2.0 are as follows:
1. Blogging: Blogging allows a user to make a post to a web log or a
blog. A blog is a journal, diary, or a personal website that is maintained
on the Internet, and it is updated frequently by the user. Blogs increase
user interactivity by including features such as comments and links.
Personal online journals where users post [Link]: others can
comment and share.
Example: Medium, WordPress.
2. Usage of Ajax and other new technologies: Ajax is a way of
developing web applications that combines XHTML and CSS standards–
based presentation. It allows the interaction with the web page through
the DOM and data interchange with XML and XSLT. Example: Google
Maps → you can drag and zoom smoothly without reloading the whole
page.
3. RSS-generated syndication: RSS is a format for syndicating web
content. It allows to feed the freshly published web content to the users
through the RSS reader/aggregator.
RSS Feeds (Really Simple Syndication), A way to automatically deliver
fresh content to users.
Example: Subscribing to a news site → updates appear in your RSS
reader instead of visiting the site.
4. Social bookmarking: Social bookmarking is a user-defined taxonomy
system for storing tags to web contents. The taxonomy is also called
folksonomy, and the bookmarks are referred to as tags. Instead of storing
bookmarks in a folder on the user’s computer, tagged pages are stored on
the web increasing the accessibility from any computer connected to the
[Link]: Pinterest, Delicious (early example).
5. Mash-ups: A mash-up is a web page or an application that can
integrate information from two or more sources. Development
methodologies using Ajax can be used to create mash-ups. It helps to
create a more interactive and participatory web with user-defined
contents and services integrated.
Example: A travel website showing hotel locations on Google Maps, or
Yelp combining maps + reviews + business info.
Difference between Web 1.0 and Web 2.0

Authoring mechanism
Web 1.0: People made personal websites which were mostly static
(just reading).
Web 2.0: Anyone can write and share easily using blogs.
Information sources
Web 1.0: Knowledge came from fixed sources like Britannica Online.
Web 2.0: Knowledge comes from Wikipedia, where anyone can add
or edit.
Content creation & maintenance
Web 1.0: Content was made using CMS (Content Management
Systems), usually by experts.
Web 2.0: Content can be created and updated by users directly
through wikis.
Data storage
Web 1.0: Data was stored on your local computer.
Web 2.0: Data is stored online (cloud storage), accessible anywhere.
Online advertising
Web 1.0: Ads were just banner ads shown on websites.
Web 2.0: Smarter ads like Google AdSense, which show based on
user interest.
Online payment
Web 1.0: Payments were done through bank accounts only.
Web 2.0: Payments can be made online through PayPal and other
gateways.
Web 1.0 = Read-only, limited, static
Web 2.0 = Read + Write, interactive, user-friendly

Applications of Web 2.0

 Web 2.0 is used in many fields because it allows interaction, sharing,


and collaboration.
1. Social Media:
 Social media is the biggest use of Web 2.0. People can easily
communicate, share information, opinions, and experiences with
others.
 The social web offers a number of online tools and platforms that
could be used by the users to share their data, perspectives, and
opinions among other user communities.
 Examples: Facebook, Twitter, Instagram, YouTube.
 Web 1.0 was like reading a newspaper, but Web 2.0 is like chatting
with friends in a group.
2. Marketing:
 Companies use Web 2.0 to connect with customers.
 Customers can give feedback about products, suggest improvements,
and even help in promotions.
 Businesses use platforms like Twitter, Yelp, Facebook to advertise
and reach more people.
 Instead of only showing ads, companies now interact with customers
directly.
3. Education:
 Web 2.0 helps students and teachers collaborate and share knowledge.
 Students can discuss, share notes, and learn from each other.
 It provides customized learning options and helps focus on topics of
interest.
Examples: Google Classroom, Wikis, YouTube tutorials, Online
forums.
 Learning is no longer just from textbooks or teachers — students can
learn and share together online.

Web 2.0 and Cloud Computing

 In Web 2.0, web content has metadata (extra information about data),
written in formats like XML.
 This makes data readable by computers automatically.
Example: A blog post may contain tags (author, date, category) that a
computer can understand.
 XML is used along with SOAP, WSDL, UDDI (web protocols).These
protocols allow different applications (written in different languages,
running on different systems) to work together.
 This enables data sharing and communication across platforms.
Example: A travel website can combine airline, hotel, and taxi
services even though they run on different systems.
 Web services are applications that are hosted on the Internet and can
be used by anyone, anywhere.
 They are interoperable (work across different devices, OS, and
languages).
 They can even be discovered automatically without prior setup.
Example: Google Maps API, Weather API.
 Cloud computing takes this idea further. Instead of only sharing
applications, entire computing resources (CPU, storage, memory, OS,
development tools) are provided as services over the Internet. Users
pay only for what they use (pay-per-use model). Multiple users can
share the same pool of resources hosted by providers like AWS,
Azure, Google Cloud.
 service providers will be shared by multiple clients as and when
required. Cloud computing is based on the SOA of Web 2.0 and
virtualization of hardware and software resources stored hosted by
the service providers. Hence, cloud computing is considered as the
future of Internet computing because of the advantages offered by this
business model such as no capital expenditure, speed of application
deployment, shorter time to market, lower cost of operation, and
easier maintenance of resources for the clients.
 Web 2.0 tools (like social networks, collaboration platforms) showed
how powerful online sharing and collaboration could be.
 This success encouraged the development of SaaS (Software as a
Service) apps like Google Docs, Office 365, Dropbox.
 Cloud computing provides the platform that makes all this possible by
giving access to hardware, software, and data through the Internet.

4. Web 3.0

 The name Web 3.0 was given by John Markoff of The New York
Times to this third-generation of the web.
Web 1.0: Web 1.0 was the first generation of the Web in which the
main focus was building the web, making it accessible, and also
commercializing it. The key areas of interest in Web 1.0 included
protocols such as HTTP, open standard markup languages such as HTML
and XML, Internet access through ISPs, the first web browsers, platforms
and tools for web development, web-development software languages
such as Java and Javascript, and the commercialization of the web.
Web 2.0: The phrase Web 2.0 was coined by O’Reilly and it refers to
the second generation of Internet-based services, such as social
networking sites, wikis, and communication tools, that facilitate online
collaboration and sharing among various users.
Web 3.0: John Markoff of The New York Times coined the term Web
3.0 and it refers to the third generation of Internet-based services that is
collectively called the intelligent web. Web 3.0 includes services on the
Internet that use technologies such as semantic web, natural language
search, machine learning, recommendation agents, and artificial
intelligence to achieve machine-facilitated understanding of information
in order to provide a more productive and intuitive experience to the web
users.
At the same time, the Web 3.0 standard uses semantic web
technology, drag and drop mash-ups, widgets, user behavior, user
engagement, and consolidation of dynamic web contents depending on
the interest of the individual users. Web 3.0 uses the Data Web
technology, which features the data records that are publishable and
reusable on the web through query-able formats such as Resource
Description Framework (RDF), XML, and microformats. It is an
important component facilitating the semantic web, which enables new
levels of application interoperability and data integration among various
application and services, and also makes data dynamically linkable and
accessible in the form of web pages.
An example of a typical Web 3.0 application is the one that uses
content management systems along with artificial intelligence. These
systems are capable of answering the questions posed by the users,
because the application is able to think on its own and find the most
probable answer, depending on the context, to the query submitted by the
user. In this way, Web 3.0 can also be described as a machine to user
standard in the Internet.
 It is Also called as the Semantic Web or Intelligent Web.
 The Main Idea is Unlike Web 1.0 (static) and Web 2.0
(interactive/social), Web 3.0 is about making the Internet intelligent
and self-learning.
 The Key Point is Computers and devices will not just show data and
they will understand, interpret, and generate new data automatically,
even without human input.
 Web 1.0 (Read-only): You just read information from static pages.
Example: Early Yahoo directory.
 Web 2.0 (Read + Write): You can interact, share, and create content
(social networks, wikis, blogs). Example: Facebook, YouTube,
Wikipedia.
 Web 3.0 (Read + Write + Execute):Machines can understand and act
on information.
Example:
A music platform (like [Link] or Spotify) predicts your favorite songs
based on listening history. Smart assistants (Siri, Alexa, Google
Assistant) respond intelligently to natural questions.

Key Features of Web 3.0


Omnipresence: Internet is not just on computers — it’s in smartphones,
cars, smart TVs, IoT appliances, etc.
Semantic Understanding: Computers know the meaning of information,
not just keywords.
Machine Intelligence: AI + ML analyze patterns and make smart
suggestions.
Personalization: Services adjust automatically to your preferences and
behavior.
Automation: Smart web robots (agents) can take decisions without
needing user commands.

Components of Web 3.0:


Web 3.0 embeds intelligence in the entire web domain. It deploys web
robots that are smart enough of taking decisions in the absence of any
user interference. If Web 2.0 can be called a read/write web, Web 3.0
will surely be called a read/write/execute web. The two major
components forming the basis of Web 3.0 are the following:

1. Semantic Web:
The Semantic Web is an advanced vision of the web proposed by Tim
Berners-Lee (the inventor of the World Wide Web).

Main Idea: It’s about making web data understandable not just by
humans, but also by machines (software agents, AI, applications).

Goal: Allow machines to interpret the meaning (semantics) of


information so they can:

Find relevant data, Combine information from different sources, and


Make decisions or respond intelligently.

👉 Example: If you type “book me a flight from Delhi to Paris next


Monday under ₹50,000 and reserve a hotel near Eiffel Tower,” a
semantic web-enabled system could understand all parts of this request
and execute it across airlines, hotels, and maps — not just show links.

 Data is structured in a way that machines can understand.


 Uses semantic markup (like RDF, OWL, XML) to give meaning to
data.
 Machines don’t just show information — they can execute tasks
intelligently.
Challenge It Solves

Problem: Current web apps (especially in Web 1.0 & 2.0) can present
data, but they don’t understand context.

Example: If you search “Apple,” is it fruit, the company, or music label?

Solution: Semantic markup & data interchange formats give extra


context.

Helps software agents distinguish meanings, combine knowledge, and act


on it.
2. Web Services

A web service is essentially a software system/API that allows two


different computer applications to communicate with each other over the
internet, without needing to know each other’s internal details.

Computer-to-Computer Communication

Unlike normal websites meant for humans, web services are designed for
machines to talk to machines.

They exchange data in standardized formats (like XML, JSON, SOAP,


REST).

Example (Flickr)

Flickr (a photo-sharing site) offers a web service API.

Developers can write programs that “ask Flickr” for photos (e.g., all
photos tagged with "sunset").

Instead of manually browsing Flickr, software can fetch and use this data
automatically.

Widespread Availability

Thousands of web services exist: Google Maps API, Twitter API,


Weather services, Amazon product API, etc.

These are building blocks for developers to integrate functionalities into


apps/websites.

Role in Web 3.0

In Web 3.0 (semantic web era), web services + semantic markup make
the web smarter:

Applications can directly communicate and exchange data.

Searches become broader and more intelligent, because apps can


collaborate behind the scenes.
Simple Analogy

Think of websites as restaurants where you (the human) go to order food.

A web service is like a delivery API where restaurants talk to each other
automatically. Example: A food aggregator app (like Zomato/Swiggy)
doesn’t cook food, but it uses restaurants’ APIs to fetch menus, place
orders, and track deliveries.

How it connects to Semantic Web

Semantic markup → gives data meaning.

Web services → provide the mechanism for applications to share and act
on that data.

Together → Web 3.0 apps can “understand” data and perform tasks
automatically (not just show results).

Characteristics of Web 3.0

 Web 3.0 could be considered as the third generation of the


web and it is enabled by the convergence of several key
emerging technology trends as discussed earlier. The major
characteristics of this paradigm are the following:
1. Ubiquitous connectivity

Access the web anytime, anywhere using mobile devices, broadband, and
wireless networks.

Example: Using your phone to connect instantly to cloud services, apps,


and data no matter where you are.

2. Network computing

Uses cloud computing and SaaS (Software as a Service) models.

Instead of installing software, you just access it from the web.

Example: Google Docs (no need to install Word, just open it in a


browser).
3. Open technologies

Built on open standards, open APIs, open-source platforms, and open


data formats.

This makes different applications and services work well together


(interoperability).

Example: APIs that allow Facebook, Instagram, and other apps to share
data.

4. Open identity

Allows users to use the same digital identity across multiple platforms.

Example: OpenID lets you log into different services with the same
account.

5. The intelligent web

Uses semantic web + AI to make web services understand data better.

Technologies involved:

RDF, OWL, SWRL → knowledge representation

SPARQL → querying semantic data

Triplestores/tuplestores → databases for semantic information

Machine learning, NLP, reasoning → intelligent apps

Example: A virtual assistant that understands your natural language


queries and finds exactly what you need.

Why Web 3.0 is Powerful?

More connected → Seamless interaction between devices, services, and


users.
More open → No single company controls your data; interoperability is
built-in.
More intelligent → Machines can understand, reason, and make
decisions (not just display data).
Convergence of Cloud and Web 3.0

What does "Convergence of Cloud and Web 3.0" mean?

 Cloud computing = Storing and running applications/services on the


internet (instead of your personal PC).

 Web 3.0 = A more intelligent, open, and user-centered web


(personalization, portability, interoperability).

When these two come together, we get powerful, personalized, and


flexible cloud services that users can access anywhere, anytime, from any
device.
Key Points:
Web as a platform: Web 2.0 + Web 3.0 make the internet more than just
static pages—it becomes a platform where services, apps, and data can
run.
Cloud uses this to deliver its services (SaaS, storage, computation)
directly through the web.

Web 3.0 features improving cloud: Personalization → Cloud apps can


adapt to each user’s preferences.
Data portability → Your data isn’t stuck on one PC; you can move it
across services.
User-centric identity → You can use the same digital identity to access
different cloud services.
Result: Users can store data + apps in the cloud and use them whenever
needed, from anywhere.

Device independence: With Web 3.0 + cloud, you’re not limited to your
PC.
You can access cloud apps and data from phones, tablets, laptops, smart
devices, etc.
Example: You edit a file on your phone, continue on your laptop, and
present from a tablet seamlessly.

Evolution from Web 2.0: Web 2.0 made the web more interactive (not
just buying online but also sharing, collaborating, and socializing).

 Social media platforms (Facebook, Twitter) allowed users to connect,


share personal info, and form communities.
 These became powerful marketing tools for businesses, reaching
millions of users cheaply and creatively.

Why This Convergence Matters?

 For users, Freedom to access apps/data anytime, anywhere, on any


device.

 For businesses, Ability to deliver smarter, personalized, and portable


services; use social platforms for marketing.

 For the internet, Becomes a universal platform for computing,


communication, and collaboration.

Case Studies in Cloud and Web 3.0


 Web 3.0 = Smarter, more intelligent web that can understand data,
make connections, and perform tasks that once needed human
reasoning.

 It helps applications think, analyze, and recommend.

 Companies like Facebook, Best Buy, and Millward Brown are already
using these features.

Case Study 1: Connecting Information – Facebook

 Facebook Open Graph uses RDF (Resource Description Framework)


to mark up web pages.

 This means websites can add extra meaning to their content (not just
text, but what it actually means).

 Example: If a website describes a movie, Open Graph markup helps


Facebook know it’s a movie, not just random text.

 The Like button → A simple click gives Facebook valuable data


about your interests, friendships, and preferences.

 Benefit: Helps users find friends with similar interests, improves


recommendations, and enables smarter connections.
🔹 Case Study 2: Search Optimization & Web Commerce – Best Buy

 Problem: Online shopping depends on accurate and relevant search


results.

 Solution: Best Buy uses RDFa (a way to embed semantic data into
HTML) + GoodRelations vocabulary (a standard for e-commerce
data).

 This helps search engines better understand product details (price,


features, availability).

 Result: Shoppers get more accurate search results, making it easier to


find products.

 Internal reports showed 30% increase in consumer traffic because of


this approach.

Case Study 3: Understanding Text – Millward Brown

 Problem: Companies receive tons of customer feedback (surveys,


social media, blogs, forums). It’s hard to analyze manually.

 Solution: Millward Brown (a global branding research agency) uses


Web 3.0 text analysis tools from OpenAmplify.

 These tools perform sentiment analysis, automatically detect whether


customers feel positive, negative, or neutral about a brand.

 Benefit: Extracts strategically meaningful insights from big text data.

 Companies can then: Improve marketing messages, Adjust pricing


strategies, Enhance public relations, Improve customer service
responses.
[Link] Computing
 Pervasive computing (also called ubiquitous computing) means
computing everywhere, anytime, using any device.

 The idea is that computers are not just PCs anymore – everyday
objects (like clothing, cars, appliances, coffee mugs, even the human
body) can have embedded chips and connectivity.

 These devices form an invisible network, always connected and


available.
 Example: A smartwatch tracks your health, syncs with your phone,
and shares data with your doctor automatically.
 Pervasive computing combines: Internet capabilities → to stay
connected, Wireless computing → no cables, works anywhere,
Artificial Intelligence (AI) → smart decision-making, Voice
recognition → natural interaction with devices, Networking →
linking all devices together, Sensors & microprocessors → to capture
and process data, Middleware & mobile OS → to support different
platforms.
Goals of Pervasive Computing:
 Make computing invisible & natural → Devices should work in the
background without interrupting you.
 Always available → Devices are connected all the time.
 Smart communication → Devices share data automatically.

Applications of Pervasive Computing

 Home care & healthcare → Smart devices monitor health (like smart
glucose meters, heart-rate monitors).

 Geographical tracking → GPS in phones and cars for real-time


location.

 Intelligent transport systems → Smart traffic lights, connected


vehicles for smoother traffic.

 Smart homes → Appliances controlled remotely (lights, AC, water


heaters).

 Smart grids → Electricity systems that optimize energy usage.


Example: Smart Meters

Old electric meters had to be read manually.


Smart meters:
Send electricity usage in real time over the internet, Notify the power
company automatically if there’s a power outage, Can send alerts to home
display units, Even regulate devices like water heaters to save energy.

Other Names for Pervasive Computing:Physical computing,


Internet of Things (IoT), Things that think. All these names point
to the idea of everyday objects becoming smart and connected.
Key Difference
 Traditional computing (desktop) → You sit at one PC to use apps.
 Pervasive computing → You can use any device, anywhere, and the
computing happens in the background.

How Pervasive Computing Works?


 Pervasive (ubiquitous) computing works by connecting sensors,
networks, and smart applications into one seamless system.

 Sensors collect data from the environment, Networks transmit the


data, Applications analyze the data and act automatically.

 The result: A system that works in the background, makes smart


decisions, and supports users without them needing to ask.

Layers of Pervasive Computing Architecture:

1. Physical Layer (Sensors & Devices)


 The above Figure shows the architecture of a ubiquitous computing
stack. At the bottom of the stack is a physical layer. Tiny sensors are
attached (carried, worn, or embedded) to people, animals, machines,
homes, cars, buildings, campuses, and fields.
 Sensors capture various bits of information from the immediate
surroundings. Beyond the microphone and camera, multiple sensors
such as GPS, accelerometer, and compass can be integrated into it.

2. Wireless Communication Layer

 Once sensors collect data, they must send it to other


[Link] happens through technologies like:

 Wi-Fi (802.11 family) → high-speed wireless networks.


 Mesh networks → devices connect to each other directly (not just to a
central router).
 ZigBee → low-cost, low-power wireless connection for small sensors
(parent device controls child devices).
 NFC (Near Field Communication) → short-range communication,
often used with RFID tags (e.g., contactless payments, smart access
cards).
 This layer ensures that all devices remain connected seamlessly.

3. Application Services Layer

 The data collected by sensors is gathered, mined, and analyzed.


 Smart applications find patterns in the data and make decisions
automatically.
Example uses:

Healthcare: A cardiac patient wears a tiny ECG monitor. If it detects


irregular heartbeats:
It sends the data to the mobile device, The mobile app alerts the doctor
and emergency services.
Smart homes: Motion sensors detect no one in a room → lights turn off
automatically.
Transport: GPS + traffic sensors suggest a better driving route. This is
the intelligence layer where real value is created.
Hence, Sensors capture raw data (sound, movement, health signals,
location).Wireless networks transmit this data to other
[Link] analyze patterns and take smart actions
automatically.
Example Flow:
Patient → ECG Sensor → Mobile Phone (via ZigBee/Wi-Fi) →
Doctor/Emergency services notified.

How Pervasive Computing Helps Cloud Computing?

 Cloud computing = Accessing infrastructure, platforms, and software


over the internet on a pay-per-use basis.
 Pervasive computing = Computing that is available anytime,
anywhere, on any device.
 When combined, pervasive computing extends the reach of cloud
computing, making it more flexible, useful, and powerful.
How Pervasive Computing Supports Cloud Computing

1. Anytime, Anywhere, Any Device Access


 Cloud resources (storage, apps, services) can be accessed from
phones, laptops, wearables, or IoT devices.
 Example: A doctor can access patient records on a phone, tablet, or
smart glasses seamlessly.
2. Overcoming Device Limitations
 Portable devices (smartphones, wearables) have limited storage,
memory, processing power, and battery life.
 Pervasive computing + cloud helps by: Storing data on the cloud
instead of the device, Using secure connections to access and process
data in real time.
 Example: Instead of storing huge videos on your phone, they are
streamed from the cloud.
3. Machine-to-Machine (M2M) Communication
 Devices talk to each other automatically via the cloud.
Example scenario:
 An employee in New York requests a meeting using his mobile
device.
 Backend cloud systems check his location, his colleagues’ locations,
and their schedules.
 The system automatically:
Books a conference room, Sets up a video call with remote participants.
Drops relevant documents into a collaboration space, Records,
transcribes, and shares the meeting with the team, This shows automation
powered by pervasive computing + cloud.
4. Integration of Wearables & IoT
 Devices like Google Glass, smartphones, car sensors, GPS devices,
and smart tools generate large amounts of data.
 Pervasive computing ensures these devices connect seamlessly to the
cloud.
 The real power lies in backend analytics that:
Process this data.
Extract useful information.
Trigger appropriate actions.
Example: A car engine sensor detects an issue → data goes to the cloud
→ analytics suggest repair → notification sent to driver and service
center.
5. APIs for Interoperability
Different devices and systems expose APIs (Application Programming
Interfaces).
APIs let users build apps that can extract and combine information from
multiple systems.
Example: A fitness app pulls data from your smartwatch, phone GPS, and
cloud-based health service to give you a complete health report.
So, Cloud provides the resources; pervasive computing ensures you can
access and use them seamlessly everywhere.
6. Operating System
 An OS is a collection of softwares that manages the
computer hardware resources and other programs in
the computing system.
 The OS is an essential component of the system
software in a computer system as application
programs usually require an OS for their interface
with the hardware resources and other system
programs.
 For hardware functions such as input and output, and
memory allocation, the OS acts as an intermediary
between programs and the computer hardware.
Types of Operating Systems:
 The different variants of OSs are the following:
1. Network OSs:
 A network operating system (NOS) is a computer OS that is
designed primarily to support workstations, PCs that are
connected on a LAN.
 An NOS provides features such as printer sharing, common
file system and database sharing, application sharing,
security mechanisms, and also the ability to manage a
network name directory and other housekeeping functions of
the network.
 Novell’s NetWare and Microsoft’s LAN Manager are
examples of NOSs.
 In addition, some multipurpose OSs, such as Windows NT
and Digital’s OpenVMS, come with capabilities that enable
them to be described as an NOS.

2. Web OSs:
 Web OSs are basically websites that replicate the desktop
environment of modern OSs, all inside a web browser.
 They are installed onto web servers and live on the Internet.
Thus, a user can access his virtual desktop from any device,
anywhere, that is connected to the net.
 Web OSs are also called the dynamic computers. In this
case, the applications, hard disk, and OSs are all present at
the servers from where they are accessed.
 The web OS service provider manages the application and
database accesses of the various users.
 The user is provided with a graphical user interface similar to
the one available on a desktop PC, which can be used to
access the data and the applications from the server. Google
Chrome OS is an example of a web OS.

3. Distributed OS:
 A distributed OS is a software that is present over a
collection of independent, networked, communicating, and
physically separate computational nodes.
 Each individual node holds a specific software that is a
subset of the global aggregate OS. Each subset consists of
two distinct components of the distributed OS.
 The first one is a ubiquitous minimal kernel, or microkernel,
that directly controls the node’s hardware. The second one is
a higherlevel collection of system management components
that coordinate the node’s individual and collaborative
activities.
 The microkernel and the management components work
together. They support the distributed system’s goal of
integrating multiple resources and processing functionality
into an efficient and stable system.
 To a user, a distributed OS works in a manner similar to a
single-node, monolithic OS. That is, although it consists of
multiple nodes, it appears to the users and applications as a
single-node OS.

4. Embedded systems:
 Embedded systems are OSs present in electronic devices
used for various purposes in order to make them smart and
more efficient.
 Embedded systems present in devices such as routers, for
example, typically include a preconfigured web server,
DHCP server, and some utilities for its effective networking
operation, and they do not allow the installation of new
programs in them.
 Examples of embedded OSs for routers include Cisco
Internetwork Operating System (IOS), DD-WRT, and
Juniper Junos.
 An embedded OS can also be found inside an increasing
number of consumer gadgets including phones, personal
digital assistance (PDA), and digital media player for the
successful completion of their intended tasks.

Role of OS in Cloud Computing


 In the 1970s, IBM created an OS called VM (Virtual
Machine OS).
 It allowed one physical computer (mainframe) to run
multiple virtual systems (VMs) at the same time.
 This is the foundation of virtualization, which is the
backbone of cloud computing today.
 Most of the basic functions of current virtualization software
are inherited from this early VM OS. The virtualization
software is now represented with the term hypervisor.
 The concept of virtualization is physically implemented
using the hypervisor modules, and the operation and
processing of hypervisors are materialized by the OSs. In
other words, hypervisor modules are installed on top of OSs,
which act as an interface between hardware units and
hypervisor packages.
 Using virtualization, multiple VMs are generated according
to the requirement, and these VMs are made operational by
individually installing OSs on each VM. The below Figure
shows the virtualization of a single hardware of the CSP to
create different VMs, each installed with its own OS. Every
VM runs custom OS or guest OS that has its own memory,
CPU, and hard drives along with CD-ROMs, keyboards, and
networking, despite the fact that all of those resources are
shared among the VMs.

 In addition, an OS such as Linux supports the necessary


standards that enhance portability and interoperability across
cloud environments. OS platforms are designed to hide much
of the complexity required to support applications running in
complex and federated environments.
 It needs to work effectively in the background in order to
ensure that all the right resources (such as processing power,
required memory, and storage) are allocated when needed.
 In addition, the OS implements the level of Security and
QoS to ensure that applications are able to access the
resources needed to deliver an acceptable level of
performance, in an efficient and secure manner.
 OS Features that Help Cloud Computing, i.e, Portability &
Interoperability, Resource Management, Security & QoS
(Quality of Service), Hiding Complexity( OS simplifies how
apps interact with hardware and networks, making cloud
environments easier to use).
 OS in Hybrid Cloud Environments: Today, most companies
use a hybrid cloud (mix of different environments):
 Public cloud → for testing, development.
 Private cloud → for sensitive data (like customer
info).
 Traditional Data Center (DC) → for old systems (like
billing/finance).

 The OS plays a key role in federating (connecting and


managing) all these environments so they appear as one
system to the users and administrators.
 Without the OS, managing VMs, resources, security, and
hybrid models would be very complicated.
The OS ensures:
 Smooth resource sharing.
 Security and performance.
 Compatibility across different environments.
 A unified view of multiple clouds and data centers.

EX: The OS in cloud computing is like the manager of a big


hotel:
The hotel = physical hardware.
Rooms = Virtual Machines (VMs).
Guests = Applications.
The OS makes sure:
Each guest gets a proper room with resources.
Security and privacy are maintained.
Guests feel like they are in their own space, even though
resources are shared.
Different branches of the hotel (public, private, traditional data
center) still look like one brand to the customer.
Features of Cloud OS
To run a smooth hybrid cloud environment (mix of public, private,
and on-premise data centers), the Cloud OS needs these main features:

 Well-defined interfaces (APIs)

 Core security services

 Virtualization management

 Workload management for QoS & performance

1. Well-Defined and Abstracted Interfaces:

What it means:
The Cloud OS should provide APIs (Application Programming
Interfaces) that hide the complex internal details.

Why it matters:
 Applications don’t need to reinvent common functions like VM
monitoring, scheduling, security, memory management.

 If APIs are based on open standards, users are not locked into one
vendor’s cloud → gives flexibility to move between public cloud,
private cloud, and traditional DCs.

 Ensures data and service interoperability across multiple


environments.

Example: An app running on AWS should be portable to Azure or


Google Cloud if APIs follow open standards.

2. Support for Security at the Core:

Why security is critical:


 Cloud is highly distributed → resources are constantly being
added/removed. This increases attack surfaces.
 Security requirements in Cloud OS:
Protect user identity and data from threats.
 Track all IT assets (who is using what, and how).

 Ensure compliance with laws, policies, and governance.


Secure virtualization and multitenancy:
 Virtualization makes creating new VMs easy → but this
increases risks if hypervisor flaws are exploited.
 Multitenancy (multiple customers on same hardware) must
be isolated securely.
 Core principle: Security must be built into the OS itself (not
added later).
Example: If a hacker exploits one VM, the OS must stop it
from spreading to other VMs or tenants.

3. Managing Virtualized Workloads

 Virtualization = key enabler of cloud.


 Breaks the old rule of “one application per server.”
 Allows many VMs and applications to run on one physical
machine.
Role of the Cloud OS:
 Manage the hypervisor (software layer that runs VMs).
 Handle resource allocation (CPU, memory, I/O) for guest
VMs.
Why important:
 Ensures performance, reliability, and efficiency of cloud
services.
 Think of the hypervisor as a mini-OS that presents hardware
resources to VMs. The Cloud OS must control it effectively.

4. Management of Workloads:

 Workload = application or process running on cloud


resources.
 Cloud OS must:
 Isolate workloads (one customer’s workload shouldn’t
interfere with another’s).
 Ensure fair resource distribution (CPU, memory,
storage, networking).
 Provide QoS (Quality of Service) so each application
runs smoothly.
 Balance workloads across physical and virtual
resources.
Example: If one user is running a video streaming app, and
another is running financial transactions, the Cloud OS must
guarantee both get the performance they need without conflict.

Cloud OS Requirements
1. Autonomous Resource Management
 The Cloud OS should manage resources by itself without
requiring constant manual control.
 It should hide the complexity of multiple servers, clusters, or
low-level operations.
 To the user, the cloud should look like one unified system,
even though behind the scenes it’s made up of many
machines.
 Example: A developer requests “4 CPUs and 8 GB RAM” —
the OS automatically allocates it from any available node
without the user worrying where it comes from.
2. Fault Tolerance (Work Despite Failures)
 The Cloud OS must keep running even if some nodes,
clusters, or network connections fail.
It should have mechanisms for:
 Detecting failures quickly
 Recovering automatically (e.g., restarting workloads on
healthy nodes)
 Libraries and tools for fault tolerance & state recovery
should be provided.
Example: If one server in Amazon AWS goes down, your app
still runs smoothly because the OS shifts workloads to another
server.
3. Support for Multiple Application Types
 The Cloud OS must handle different kinds of applications
simultaneously, such as:
 High-performance computing (HPC): Needs powerful CPUs.

 High data availability: Needs strong storage and backup.

 High network throughput: Needs fast networking.

 Each application should get the resources that best fit its
needs.
Example: A cloud must be able to run a scientific simulation
(HPC), a banking database (data availability), and a video
streaming app (network throughput) at the same time.

4. Decentralized, Scalable & Cost-Effective Management

 Management should be decentralized (not dependent on one


central controller, which could become a bottleneck or fail).
 Cloud resources should scale automatically as demand
grows, without human intervention.
 User management should be simple:
 Just create user credentials on demand
 Credentials should then propagate automatically across the
whole cloud.
 Example: If thousands of new users join a cloud service, the
Cloud OS should scale resources and add user accounts
automatically without an admin manually configuring
everything.
5. Resource Accountability
 All resource usage must be tracked and monitored.
Reasons:
 Billing: Customers pay only for what they use (pay-per-use).
 Security: Track resource usage for auditing (who accessed
what).
 Dynamic pricing: Costs can change depending on demand or
congestion (like surge pricing in Uber).
 Example: A user running 10 VMs for 5 hours should be
billed exactly for that usage, and logs should be available for
auditing.

Think of it like running a smart city:


 The city manages electricity, water, and traffic (resources)
automatically.
 If one road is blocked (failure), traffic reroutes automatically.
 The city supports residents, factories, and businesses
(different applications).
 New people can move in without government approval every
time (scalable).
 Everyone’s usage is metered and billed fairly
(accountability).

7. Application Environment
 An application development environment (ADE) is the
hardware, software, and computing resources required for
building software applications.
 ADE is a composite set of computing resources that provides
an interface for application development, testing,
deployment, integration, troubleshooting, and maintenance
services.
 These are combined with the software engineering resources,
such as a programming language’s integrated development
environment (IDE), reporting and analysis software,
troubleshooting tools, and other performance evaluation
software utilities.
Need for Effective ADE:
As technology and user expectations evolve, ADEs must
become more effective. Here’s why:
Market Pressure & User Expectations:
 Mobile and web applications are everywhere.
 Users want fast, attractive, and feature-rich apps.
 To stand out in a competitive market, developers must
add value (better features, smoother design, innovative
functionality).
Example: A food delivery app must not just deliver — it
should also provide real-time tracking, personalized
recommendations, and secure payments.

Interoperability Across Devices:


Apps need to run on many different devices:
 PCs, laptops, smartphones, tablets, car dashboards, smart
TVs, even wearable devices.
 Challenge: Each device has different screen sizes, input
methods, and hardware limits.
 Solution: ADE should provide a common authoring
environment so developers don’t need to rewrite code for
every device.
 Example: The same e-learning app should work on a
desktop browser, a tablet, and a smartphone without separate
development for each.
Current Limitations of Web App Environments:
 Traditional environment: HTML + JavaScript + image
formats, processed by browsers.
 Extensions like Java applets and plug-ins add multimedia
but:
 Are device-specific
 Often need manual installation
 Reduce interoperability
Example: A video player plug-in may work on Windows but
not on Android, causing inconsistency.

What an Effective ADE Should Provide:


 Support for multiple content types → not just text/images,
but also audio, video, animations, 3D graphics.
 Support multimodal user interaction → allow interaction via
touch, voice, gesture, sensors (not just keyboard & mouse).
 Integration of new technologies → as new media formats or
devices emerge, they should be added seamlessly and
backward-compatible (so older apps still work).
Example:
 A fitness app should support video tutorials, audio coaching,
and smartwatch integration.
 If a new sensor device comes out in the future, ADE should
allow easy integration without breaking old versions of the
app.

Application Development Methodologies


Today, two main methodologies are widely used for application
development:
1. Distributed Development
2. Agile Development

1. Distributed Development: Distributed development is a


software development where team members are spread across
different locations (cities, countries, even continents).
 It’s a natural result of the Internet → companies no longer
need all their developers in the same office.
 Idea: “Not all coding geniuses live nearby, so let’s work
together online.”
Why it’s Important
 Allows companies to hire the best talent globally, not just
locally.
 Development can happen 24/7 (different teams in different
time zones).
 Supports remote work and flexible collaboration.

Challenges
Collaboration: Working across time zones and cultures makes
communication harder.
Code management: If many people edit the same code,
changes may conflict or overwrite each other.
Coordination: Keeping everyone updated and aligned is more
complex than in one office.
Solution → Code Management Tools
 To handle collaboration and versioning, teams use
Distributed Version Control Systems (DVCS) such as:
 Git → used with GitHub, GitLab, Bitbucket.
 Subversion (SVN) → an older but still used system.
These tools allow:
 Each developer to work on their own copy of the code.
 Changes to be merged into a main repository.

 A clear history of versions so nothing is lost.


 Easy collaboration, even if developers are thousands of miles
apart.

2. Agile Development:
Agile is a software development method that:
 Works in short cycles (sprints).
 Focuses on quick releases instead of waiting for one big
final product.
 Encourages continuous feedback and improvements.
Example: Instead of building a banking app for 1 year and
releasing it once, Agile teams release small working versions
every 2–3 weeks, test with users, and improve step by step.

How Cloud Helps Agile Development

The cloud makes Agile faster, easier, and more effective:


1. Instant Environments
 Cloud servers and configurations can be provisioned
instantly (no waiting for physical hardware).
 Any setup can be copied and activated quickly for testing.
 Developers can create a new test environment in minutes
instead of days.
2. Collaboration
 Agile teams need constant communication and coordination.
 Cloud platforms allow shared workspaces, task tracking, and
real-time updates.
 Developers, testers, and managers can collaborate globally.
3. Faster Deployment & Testing
 Prereleases (early versions) can be deployed on the cloud
instantly for customers to test.
 Even if a customer doesn’t have their own cloud, prereleases
can be posted on a public cloud for remote access.
 Customers test quickly, give feedback, and developers fix
issues in the next sprint.

4. Support for Bug Fixes and Sprints

 Emergency fixes can be developed and deployed instantly in


the cloud.
 Planned sprints can be coordinated better using cloud-based
tools.
Toolsets for Agile Cloud Development
 Code2Cloud → connects coding, building, and deployment
directly to the cloud.
 Tasktop → manages tasks, workflows, and project tracking.
 CollabNet → provides Agile project management,
collaboration, and version control.

Power of Cloud Computing in Application


Development:

Solving Financial & Infrastructure Problems:


 Before cloud: Companies had to spend heavily on
servers, storage, testing tools, deployment systems,
and maintenance.
 With cloud: No need for big upfront investment.
Developers rent what they need from cloud providers
(AWS, Azure, GCP).
 This reduces costs and removes the burden of
managing complex infrastructure.
Focus on Scalability & Innovation
 Cloud platforms give developers ready-made tools
and environments.
 This lets them focus only on coding and building
applications, not on setup.
 Applications can be built to scale automatically as
user demand grows.

Better Resource Utilization


 Cloud uses virtualized IT services → resources are shared
and optimized.
 Applications automatically adjust to demand (scaling up or
down).
 The pay-per-use model ensures companies only pay for what
they actually use, avoiding unnecessary expenses.
Faster Marketing & Delivery
 With cloud, applications can be built and delivered in weeks,
compared to months in traditional methods.
 This speed helps companies launch products faster and stay
competitive.
 Businesses can easily collaborate with partners and distribute
apps quickly.

Disadvantages of Desktop Development

1. Complicated setup
 Developers must install, configure, and maintain many
tools on their own computer.
 Each machine needs the same OS and hardware to work
properly.
 This is time-consuming and hard to manage.
2. Lower productivity
 IDEs (like Eclipse, Visual Studio) are heavy and slow to
start.
 They use too much memory and disk space → computer
runs slowly → less productivity.
3. Limited access
 Desktop workspaces usually cannot be accessed online.
 Remote access (e.g., GotoMyPC) is complex and slow.
4. Poor teamwork
 Developers must use separate tools (email, chat apps) to
communicate.
 This breaks the workflow because they need to keep
switching between coding and communication.

Solution → Move development to the cloud where everything


is centralized, easier to share, and team members can co-edit and
work together.

Advantages of Cloud Application Development

1. Faster development
 Developers can create testing and development
environments instantly (self-provisioning).
 No need for manual setup.
2. Quick deployment & scalability
 Applications can be deployed into production very
quickly.
 Apps can scale up or down depending on demand.
3. Better collaboration
 Multiple developers, architects, and designers can work
together online in the same workspace.
 Easier communication and teamwork.
4. Cost savings
 Platforms like AWS, Google Cloud, Microsoft Azure,
Salesforce provide cheaper and better services compared
to maintaining desktop environments.
Cloud Application Development Platforms
 Traditionally, developers used on-premise platforms like:
Microsoft .NET, WebSphere, JBoss, to build and run
applications inside their company’s data centers.
 With cloud computing, these platforms are now offered as
PaaS (Platform as a Service), where the cloud provider
(Microsoft, Google, Salesforce, etc.) manages the
infrastructure and gives developers everything they need to
build, deploy, and scale apps.

This shift is important because:


 Apps must serve millions of users.
 Resources need to be elastic (scale up and down
automatically).

 Platforms must handle security, billing, monitoring, and fault


tolerance.
 So, PaaS platforms are the new Application Development
Environments (ADEs).

Examples of Cloud Application Development Platforms

1. Windows Azure (Now Microsoft Azure)

 Provides Windows-based services to build and deploy


applications.
 Runs on Microsoft’s own cloud infrastructure.
Components:
 SQL Azure → database service.
 .NET Services → includes access control + service bus
(communication).
 Based on shared multitenant hardware (multiple customers
share the same infrastructure).
 Limitation: Developers must use SQL Azure as the database
for applications hosted in Azure.

2. Google App Engine


 Provides a runtime environment for web apps built with Java
or Python.
 Runs on Google’s massive IT infrastructure.
Key feature:
 Developers can build and test locally (on their machine)
using a simulated environment.
 Then deploy directly to the cloud without worrying about
infrastructure.
 Uses JVM (Java Virtual Machine), Jetty servlet engine, and
Java Data Objects for managing data.
3. [Link] (by Salesforce)
 A PaaS platform mainly for building CRM (Customer
Relationship Management) apps.

 Based on Java technology, but uses its own language called


Apex code.
Benefits:
 Simple to learn and fast development.
 Best suited for business apps (like customer management,
sales tracking).
4. Manjrasoft Aneka
 A distributed application platform → combines many
computers (physical or virtual) into a single execution layer.
 Works on both Windows and Linux.
Flexible:
 Can integrate with external clouds like Amazon EC2 and
GoGrid.
 Enterprises are not locked into one vendor.
Benefit: Companies can choose the best infrastructure and scale
up when needed without restrictions.

Cloud Computing APIs


 APIs are provided by some of the CSPs for the development
of cloud applications. Details of some of the APIs provided
by the CSPs such as Rackspace, IBM, and Intel are given in
the following.
Rackspace
 Developers have access to the API documentation and
software development kit (SDK) across all of Rackspace’s
services at their developer site,
[Link]
 Thus, Rackspace provides developers with the tools and
resources necessary to create new applications and services
on top of their APIs.
IBM
 IBM introduced new APIs, which can be found at the IBM
developer site, [Link]/developerworks/.
 The introduction of the new APIs focuses on arming
developers with the tools and resources to build new
products, applications, and services.

Intel
 Intel has several SDKs that aimed at cloud computing
developers. Intel has a cloud services platform beta where
developers can download the SDK for identity-based and
cross-platform services.
 The Intel Cloud Builders program brings together leading
systems and software solutions vendors to provide the best
practices and practical guidance on how to deploy, maintain,
and optimize a cloud infrastructure based on Intel
architecture. And for developers seeking to use public cloud
infrastructure services, the Intel Cloud Finder makes it easier
to select providers that meet a developer’s requirements.

You might also like