Android

Friday, 23 August 2013

CLOUD COMPUTING

Cloud computing is a colloquial expression used to describe a variety of different types of computing concepts that involve a large number of computers connectedthrough a real-time communication network (typically the Internet).

Cloud computing is a jargon term[citation needed] without a commonly accepted non-ambiguous scientific or technical definition.

In science, cloud computing is a synonym for distributed computing over a network and means the ability to run a program on many connectedcomputers at the same time. The phrase is also, more commonly used to refer to network based services which appear to be providedby real server hardware, which in fact are served up by virtual hardware, simulated by software running on one or more real machines.
Such virtual servers do not physically exist and can therefore be moved around and scaled up (or down) on the fly without affectingthe end user - arguably, rather like a cloud.
The popularity of the term can be attributed to its use in marketing to sell hosted services in the sense of applicationservice provisioning that run client server software on a remote location.

Advantages
Cloud computing relies on sharing of resources to achieve coherence and economies of scale similar to a utility (like the electricity grid) over a network.At the foundation of cloud computing is the broader concept of converged infrastructure and shared services.

The cloud also focuses on maximizing the effectiveness of the shared resources.
Cloud resources are usually not only shared by multiple users but as dynamically re-allocated per demand.
This can work for allocating resources to users. For example, a cloud computer facility, which serves European users during European business hours with a specific application (e.g. email) while the same resources are getting reallocated and serve North American users during North America's business hours with another application (e.g. web server).
This approach should maximize the use of computing powers thus reducing environmental damage as well.
Since less power, air conditioning, rackspace, and so on, is required for a variety of functions.
The term "moving to cloud" also refers to an organization moving away from a traditional CAPEX model (buy the dedicated hardware and depreciate it over a period of time) to the OPEX model (use a shared cloud infrastructure and pay as you use it).
Proponents claim that cloud computing allows companies to avoid upfront infrastructure costs,
and focus on projects that differentiate their businesses instead of infrastructure.
Proponents also claim that cloud computing allows enterprises to get their applications up and running faster, with improved manageability and less maintenance, and enables IT to more rapidly adjust resources to meet fluctuating and unpredictable business demand.

Service models

Cloud computing providers offer their services according to several fundamental models:infrastructure as a service (IaaS), platform as a service (PaaS), and software as a service (SaaS) where IaaS is the most basic and each higher model abstracts from the details of the lower models. Other key components in anything as a service (XaaS) are described in a comprehensive taxonomy model published in 2009,[55] such as Strategy-as-a-Service, Collaboration-as-a-Service, Business Process-as-a-Service, Database-as-a-Service, etc. In 2012, network as a service (NaaS) and communication as a service (CaaS) were officially included by ITU (International Telecommunication Union) as part of the basic cloud computing models, recognized service categories of a telecommunication-centric cloud ecosystem.


Infrastructure as a service (IaaS)

In the most basic cloud-service model, providers of IaaS offer computers - physical or (more often) virtual machines - and other resources. (A hypervisor, such as Xen or KVM, runs the virtual machines as guests. Pools of hypervisors within the cloud operational support-system can support large numbers of virtual machines and the ability to scale services up and down according to customers' varying requirements.) IaaS clouds often offer additional resources such as a virtual-machine disk image library, raw (block) and file-based storage, firewalls, load balancers, IP addresses, virtual local area networks (VLANs), and software bundles.[57] IaaS-cloud providers supply these resources on-demand from their large pools installed in data centers. For wide-area connectivity, customers can use either the Internet or carrier clouds (dedicated virtual private networks).To deploy their applications, cloud users install operating-system images and their application software on the cloud infrastructure. In this model, the cloud user patches and maintains the operating systems and the application software. Cloud providers typically bill IaaS services on a utility computing basis: cost reflects the amount of resources allocated and consumed.Examples of IaaS providers include: Amazon EC2, Google Compute Engine, HP Cloud, Joyent, Linode, NaviSite, Rackspace,Windows Azure, ReadySpace Cloud Services, Terremark, and Internap Agile.Cloud communications and cloud telephony, rather than replacing local computing infrastructure, replace local telecommunications infrastructure with Voice over IP and other off-site Internet services.

Platform as a service (PaaS)

In the PaaS model, cloud providers deliver a computing platform, typically including operating system, programming language execution environment, database, and web server. Application developers can develop and run their software solutions on a cloud platform without the cost and complexity of buying and managing the underlying hardware and software layers. With some PaaS offers, the underlying computer and storage resources scale automatically to match application demand so that the cloud user does not have to allocate resources manually.Examples of PaaS include: AWS Elastic Beanstalk, Cloud Foundry, Heroku, Force.com, Engine Yard, Mendix, OpenShift, Google App Engine, AppScale, Windows Azure Cloud Services,OrangeScape and Jelastic.

Software as a service (SaaS)

In the business model using software as a service (SaaS), users are provided access to application software and databases. Cloud providers manage the infrastructure and platforms that run the applications. SaaS is sometimes referred to as "on-demand software" and is usually priced on a pay-per-use basis. SaaS providers generally price applications using a subscription fee.In the SaaS model, cloud providers install and operate application software in the cloud and cloud users access the software from cloud clients. Cloud users do not manage the cloud infrastructure and platform where the application runs. This eliminates the need to install and run the application on the cloud user's own computers, which simplifies maintenance and support. Cloud applications are different from other applications in their scalability—which can be achieved by cloning tasks onto multiple virtual machines at run-time to meet changing work demand. Load balancers distribute the work over the set of virtual machines. This process is transparent to the cloud user, who sees only a single access point. To accommodate a large number of cloud users, cloud applications can be multitenant, that is, any machine serves more than one cloud user organization. It is common to refer to special types of cloud based application software with a similar naming convention: desktop as a service, business process as a service, test environment as a service, communication as a service.The pricing model for SaaS applications is typically a monthly or yearly flat fee per user, so price is scalable and adjustable if users are added or removed at any point.
Examples of SaaS include: Google Apps, Microsoft Office 365, Petrosoft, Onlive, GT Nexus, Marketo, Casengo, TradeCard, Rally Software, Salesforce, ExactTarget and CallidusCloud.Proponents claim SaaS allows a business the potential to reduce IT operational costs by outsourcing hardware and software maintenance and support to the cloud provider. This enables the business to reallocate IT operations costs away from hardware/software spending and personnel expenses, towards meeting other goals. In addition, with applications hosted centrally, updates can be released without the need for users to install new software. One drawback of SaaS is that the users' data are stored on the cloud provider's server. As a result, there could be unauthorized access to the data.

Network as a service (NaaS)

A category of cloud services where the capability provided to the cloud service user is to use network/transport connectivity services and/or inter-cloud network connectivity services. NaaS involves the optimization of resource allocations by considering network and computing resources as a unified whole.
Traditional NaaS services include flexible and extended VPN, and bandwidth on demand. NaaS concept materialization also includes the provision of a virtual network service by the owners of the network infrastructure to a third party (VNP – VNO). 

Android Version History


The version history of the Android mobile operating system began with the release of the Android betain November 2007. The first commercial version, Android 1.0, was released in September 2008. Android is under ongoing development by Google and the Open Handset Alliance (OHA), and has seen a number of updates to its base operating system since its original release.
Since April 2009, Android versions have been developed under a codename and released in alphabetical order: Cupcake, Donut, Eclair, Froyo, Gingerbread, Honeycomb, Ice Cream Sandwich, and Jelly Bean. As of 2013, over 900 million active devices use the Android OS worldwide. The most recent major Android update was Jelly Bean 4.3, which was released on commercial devices on 24 July 2013.
Version history by API level

The following tables show the release dates and key features of all Android OS updates to date, listed chronologically by their official application programming interface (API) levels.

1.  Android 1.0 (API level 1)
2.  Android 1.1 (API level 2)
3. Android 1.5 Cupcake (API level 3)
4.  Android 1.6 Donut (API level 4)
5. Android 2.0 Eclair (API level 5)
6. Android 2.0.1 Eclair (API level 6)
7.Android 2.1 Eclair (API level 7)
8.  Android 2.2–2.2.3 Froyo (API level 8)
9.  Android 2.3–2.3.2 Gingerbread (API level 9)
10.  Android 2.3.3–2.3.7 Gingerbread (API level 10)
11.  Android 3.0 Honeycomb (API level 11)
12.  Android 3.1 Honeycomb (API level 12)
13.  Android 3.2 Honeycomb (API level 13)
14.Android 4.0–4.0.2 Ice Cream Sandwich (API level 14)
15. Android 4.0.3–4.0.4 Ice Cream Sandwich (API level 15)
16. Android 4.1 Jelly Bean (API level 16)
17.  Android 4.2 Jelly Bean (API level 17)
18. Android 4.3 Jelly Bean (API level 18)
19.Android 4.4 KITKAT (API Level 19)
20. "L" release (developer preview)

Google released Jelly Bean 4.3 under the slogan "An even sweeter Jelly Bean" on 24 July 2013 during an event in San Francisco called "Breakfast with Sundar Pichai". Most Nexus devices received the update immediately, although the 2nd generation Nexus 7 tablet was the first device to officially ship with it. A security update was released on 22 August 2013.


Google announced Android 4.4 KitKat on 3 September 2013 with a release date set for October.The release had long been expected to be called 'Key Lime Pie'.