close
test_template

An Overview of Android Architecture & Different Versions

Human-Written
download print

About this sample

About this sample

close
Human-Written

Words: 1802 |

Pages: 4|

10 min read

Published: Jul 17, 2018

Words: 1802|Pages: 4|10 min read

Published: Jul 17, 2018

Android is a Linux kernel based operating system and currently developed by Google. The Android operating system is one of the most widely used operating systems. Android Operating System has a middleware and other key applications. Android Operating System is divided into four main layers: the Kernel, Application Framework, Libraries, and Applications. Android Operating System is mainly designed for different touchscreen mobile devices i.e. smartphones, tablets, Android TV, Android Auto for cars, Android wear for wrist watches. The Android Operating System uses different touch inputs like swiping, tapping pinching and reverse pinching for manipulation of the on-screen objects and a virtual keyboard. Android Operating System also has been used in digital cameras, Gaming Consoles, PCs and other electronic devices. Different versions and their features of Android Operating System are discussed.

The Android operating system is based on Linux Kernel and developed by Google Inc. These days Android Operating System is widely used in smartphones and other electronic devices. The open source feature makes the rapid growth in the popularity of Android Operating System. Consumers and developers give preference to Android due to its open source feature. Moreover, to meet the requirements of the latest mobile technologies, the developers can easily add and modify features in it. Using the Powerful development framework, the developers can create applications for a large range of devices. The users of Android download more than 1.5 billion applications and games from Google Play every month.

Some of the key features of the Android operating system are Powerful Application Framework, Dalvik virtual machine, Integrated browser, Optimized Graphics, SQLite, Media Support, GSM Technology, Bluetooth, Edge, 3G, Wi-Fi, Camera, and GPS etc. Android provides (SDK) Software Development Kit for better software development. Java programming Language is used for application development. SDK kit includes a debugger, a handset emulator, libraries, sample code, tutorials, and documentation. Android has various versions and their names are in alphabetic order.

BACKGROUND & HISTORY

Initially Android Inc. developed the Android mobile operating system, and later on, was sold to Google in 2005. Android is based on Linux Kernel 2.6. Google and other members of the Open Handset Alliance (OHA) collaborated on Android design, development and distribution. Maintenance of Android and development cycle is currently governed by the Android Open Source Project (AOSP).

The Android Operating System is based on a modified Linux 2.6 kernel. For the efficiency and effectiveness of mobile devices i.e. smartphones and tablets, several libraries and drivers have been either modified or newly developed. Some of these libraries are open source but the other has licensing issues. Therefore, the Android Community decided to create their own c library(Bionic), and specific Java runtime engine called Dalvik Virtual Machine(DVM).

The optimization of the infrastructure is focused due to limited resources available on mobile devices. Therefore, Android application framework was designed and implemented. Android is a complete solution stack consisting of Operating System, Middle-wear components, and key applications. The modified Linux 2.6 kernel behaves as the hardware abstraction layer (HAL) in Android. The Android Operating System can be labeled as:

An open source platform for mobile application development;

A hardware reference design for mobile devices;

A system based on modified Linux 2.6 kernel;

An application and user interface (UI) framework;

A runtime environment.

ARCHITECTURE OF ANDROID OPERATING SYSTEM

Android Operating System is a stack of software components. These main components of Android Operating System Architecture or Software Stack include Linux Kernel, Application Framework, Android Runtime, Native Libraries, and Applications. Core system services are managed by the Linux Kernel. Core system services include virtual memory, drivers power management, and networking.

A. Linux Kernel

Linux Kernel (Linux 2.6) is at the bottom layer of the software stack. With some modification made by the Google in Linux Kernel, the whole Android Operating System is built on this layer. Modified Linux Kernel provides the functionalities such as Memory Management, Process Management, and Device Management. The Android operating system interacts with the hardware of the device with this layer. Hardware Device Drivers are included at this layer. Linux kernel is also responsible for managing the resources such as virtual memory, networking, drivers, and power management. Android was the first product built on Linux Kernel version 2.6.25.

B. Native Libraries Layer

On the top of the Linux Kernel layer is Android's native libraries. Different types of hardware specific data are handled on this layer. The programming language used to write these libraries are C++ or C. Java Interface is used to call these libraries. Some important native libraries are:

WebKit: HTML contents are displayed by using this browser engine.

Media framework: Media framework provides playbacks and recording of various audio, video and picture formats. ( for example MP3, AAC, AMR, JPG, MPEG4, H.264, and PNG).

Surface Manager: it is used to manage the display of the device. Surface Manager used for composing windows on the screen.

SQLite: SQLite is the relational database used in Android applications.

Free Type: Bitmap and Font Rendering

OpenGL | ES: Used to render 2D or 3D graphics content to the screen libc: It contains System related C libraries.

C. Android Runtime

Android Runtime is composed of Dalvik Virtual Machine (DVM) and Core Java Libraries. Android Runtime and Library layer are located on the same level. Dalvik Virtual Machine (DVM) is developed by Dan Bornstein from Google. Dalvik Virtual Machine (DVM) is used to run the applications on Android device. To run an Android application a process is created with its own instance in Dalvik Virtual Machine(DVM). The multiple instances can be created simultaneously providing security, memory management, isolation and threading support. The Dalvik Virtual Machine(DVM) is register-based while the Java Virtual Machine is a process-based. The dx tool is used to create a .dex files from .class file. Then .dex files are executed on Dalvik Virtual Machine. Android SDK kit includes dx tool. Dalvik Virtual Machine is optimized for processing and memory environments.

D. Application Framework

Android provides the tools to the developers to create interactive applications with rich graphics and then deployed to Google Play Store. Java libraries and APIs of the core applications can be accessed by the developers. These APIs and services are in the form of Java classes. The application developer can make use of these services in their applications. Developer’s applications can directly interact with these blocks. These are some important blocks in Application Framework.

Activity Manager: It manages the lifecycle of applications.

Content Providers: It is used to manage the data sharing between applications, manages how to access data from other applications.

Telephony Manager: it manages all voice call related functionalities.

Location Manager: It is used for Location management, using GPS or cell tower.

Resource Manager: Manage the various types of resources used in Application.

E. Application Layer

The Applications Layer is the top layer in the Android architecture. Some applications come pre-installed with every device, such as SMS client app, Dialer, Web browser and Contact manager. A developer can write his own application and can replace it with the existing application.

VERSIONS

Android 1.0 was released in September 2008 and it was the first commercial version of Android mobile operating system. In 2005, Google and Open Handset Alliance (OHA) taken the Android Operating System in their supervision. Afterward, the modification in the base operating system of Android had been made in form of updates. These updates are developed under a confectionery-themed code name and named in the alphabetical order; In each version, the user interface, functionality, and behavior are upgraded from the earlier version.

1. ANDROID ASTRO (1.0)

Astro is the first version of the Android. It was released in the beta form in November 2007 and then released in September 2008 on HTC Dream. Astro version of Android had many core features of the Android Operating System and included many Android apps that gain popularity and interest of Android Operating System Users. These Android apps include a Web Browser, e-mail/ Gmail, Android Market, Messaging, Google Maps, Youtube, Media Player, and various other apps.

2. ANDROID CUPCAKE 1.5

CUPCAKE 1.5 is released in the year 2009 April 30 after the Android Astro(1.0). Android Cupcake 1.5 is based on Linux Kernel version 2.6.27. Android cupcake 1.5 had the features of the third party keyboard as well as its own virtual keyboard. Android Cupcake 1.5 also includes the features of living and update of widgets. Video recording and playback added a significant feature in the version 1.5. Multi-task friendly support in this version also added the significant feature while uploading the videos on youtube and Picasa.

3. ANDROID DONUT 1.6

The next release after Cupcake 1.5 is DONUT 1.6 in the year 2009 September 15, the kernel/common. git tree for Android has a 2.6.29 kernel. It had introduced many new features like Top paid, Top free, and newly released app categories and also screenshot capability. In this version, the first time you can preview of the downloading. Voice and Text search functions were also improved in this version. Searches from simple Google search were enhanced to incorporate bookmarks, browsing history, contacts, apps, folders and so on. Support for Wi-Fi security and Virtual Private Network(VPN) was enhanced. Gallery interfaces were also improved and Camera usage speed had been made much quicker and more responsive, additionally Virtual Private Network (VPN) support and Wi-Fi security options were enhanced.

4. ECLAIR 2.0

The next version ECLAIR 2.0 was released in the year 26th, October 2009 after the release of Donut 1.6, the kernel/common. git tree for Android has a 2.6.32 kernel. The search function for messaging was improved and it enhanced to search both in SMS and MMS messages. An auto-delete feature was also introduced in this version. In the auto-delete feature, the old messages could be deleted when the inbox is reached at its memory limits.

5. FROYO 2.2

Get a custom paper now from our expert writers.

The next release of the Android version is FROYO 2.2. It was released in the year 2010 May 20, after the release of clair 2.0. The kernel used in this version is 2.6.35. In this version, many updates and features were added, For optimization of the memory and performance of the Android Operating System RAM freed up feature was introduced. It speeds up the apps and performance stability. For the performance of the System, the Froyo version included the feature of JIT compilation. JIT compilation makes the performance of the system faster from the earlier version. The display support in this version was 320 pixels-per-inch(PPI) high. USB and WIFI hotspot tethering added a significant feature in Froyo version. WIFI hotspot tethering enabled the user to connect to the internet by using the phone. Additional changes allowed the optional use of PIN passwords rather than touch signatures.

Image of Alex Wood
This essay was reviewed by
Alex Wood

Cite this Essay

An Overview of Android Architecture & Different Versions. (2018, May 13). GradesFixer. Retrieved November 20, 2024, from https://gradesfixer.com/free-essay-examples/an-overview-of-android-architecture-different-versions/
“An Overview of Android Architecture & Different Versions.” GradesFixer, 13 May 2018, gradesfixer.com/free-essay-examples/an-overview-of-android-architecture-different-versions/
An Overview of Android Architecture & Different Versions. [online]. Available at: <https://gradesfixer.com/free-essay-examples/an-overview-of-android-architecture-different-versions/> [Accessed 20 Nov. 2024].
An Overview of Android Architecture & Different Versions [Internet]. GradesFixer. 2018 May 13 [cited 2024 Nov 20]. Available from: https://gradesfixer.com/free-essay-examples/an-overview-of-android-architecture-different-versions/
copy
Keep in mind: This sample was shared by another student.
  • 450+ experts on 30 subjects ready to help
  • Custom essay delivered in as few as 3 hours
Write my essay

Still can’t find what you need?

Browse our vast selection of original essay samples, each expertly formatted and styled

close

Where do you want us to send this sample?

    By clicking “Continue”, you agree to our terms of service and privacy policy.

    close

    Be careful. This essay is not unique

    This essay was donated by a student and is likely to have been used and submitted before

    Download this Sample

    Free samples may contain mistakes and not unique parts

    close

    Sorry, we could not paraphrase this essay. Our professional writers can rewrite it and get you a unique paper.

    close

    Thanks!

    Please check your inbox.

    We can write you a custom essay that will follow your exact instructions and meet the deadlines. Let's fix your grades together!

    clock-banner-side

    Get Your
    Personalized Essay in 3 Hours or Less!

    exit-popup-close
    We can help you get a better grade and deliver your task on time!
    • Instructions Followed To The Letter
    • Deadlines Met At Every Stage
    • Unique And Plagiarism Free
    Order your paper now