The 7 Things I Know About Cyber Security After 25 Years | April 2024
Android architecture
1. ANDROID ARCHITECTURE
N. Hari Krishna B.S.S.Prasad.C
PSCMR College Of Engg&Tech PSCMR College Of Engg&Tech
II-CSE II-CSE
10KT1A0565 10KT1A0527
hkrishna192@gmail.com bssprasad.c@gmail.com
Abstract:
Android is a software stack for mobile devices that includes an operating system,
middleware and key applications. Android is a software platform and operating system for
mobile devices based on the Linux operating system and developed by Google and the Open
Handset Alliance. It allows developers to write managed code in a Java-like language that
utilizes Google-developed Java libraries, but does not support programs developed in native
code. The unveiling of the Android platform on 5 November 2007 was announced with the
founding of the Open Handset Alliance, a consortium of 34 hardware, software and telecom
companies devoted to advancing open standards for mobile devices. When released in 2008,
most of the Android platform will be made available under the Apache free-software and open-
source license. Google developed Android collaboratively as part of the Open Handset Alliance,
a group of more than 30 mobile and technology companies working to open up the mobile
handset environment. Android's development kit supports many of the standard packages used
by Jetty, and so, due to that fact and Jetty's modularity and lightweight footprint, it was possible
to port Jetty to it so that it will be able to run on the Android platform. Android is a freely
downloadable open source software stack for mobile devices that includes an operating system,
middleware and key applications based on Linux and Java. This paper on Android deals with
History of Android, Architecture of Android, Layer to Layer working of Android, Advantages,
Limitations and future possibilities of this software
2. ANDROID ARCHITECTURE
INTRODUCTION
reported that Google had already lined up a
WHAT IS ANDROID? series of hardware component and software partners
and signaled to carriers that it was open to various
Android is a software platform and degrees of cooperation on their part.
operating system for mobile devices, based on the
Linux kernel, and developed by Google and later the OPEN HANDSET ALLIANCE
Open Handset Alliance. It allows developers to write
managed code in the Java language, controlling the On 5 November 2007, the Open Handset
device via Google-developed Java libraries. Alliance, a consortium of several companies which
Applications written in C and other languages can be include Google, HTC, Intel, Motorola, Qualcomm, T-
compiled to ARM native code and run, but this Mobile, Sprint Nextel and NVIDIA, was unveiled
development path is not officially supported by with the goal to develop open standards for mobile
Google. The unveiling of the Android platform on 5 devices. Along with the formation of the Open
November 2007 was announced with the founding of Handset Alliance, the OHA also unveiled their first
the Open Handset Alliance, a consortium of 48 product, Android, an open source mobile device
hardware, software, and telecom companies devoted platform based on the Linux operating system
to advancing open standards for mobile devices.
Google released most of the Android code under the ARCHITECTURE OF ANDROID
Apache license, a free-software and open source
license. LINUX KERNEL :
Android relies on Linux version 2.6 for core
system services such as security, memory
THE BIRTH OF ANDROID management, process management, network stack,
and driver model. The kernel also acts as an
In July 2005, Google acquired Android Inc., abstraction layer between the hardware and the rest
a small startup company based in Palo Alto, CA. of the software stack.
Android's co-founders who went to work at Google It helps to manage security, memory management,
included Andy Rubin (co-founder of Danger), Rich process management, network stack and other
Miner (co-founder of Wildfire Communications, Inc), important issues. Therefore, the user should bring
Nick Sears (once VP at T-Mobile), and Chris White Linux in his mobile device as the main operating
(one of the first engineers at WebTV). At the time, system and install all the drivers required in order to
little was known about the functions of Android Inc. run it.
other than they made software for mobile phones. At Developers have full access to the same framework
Google, the team, led by Rubin, developed a Linux-
APIs used by the core applications. The application
based mobile device OS which they marketed to
handset makers and carriers on the premise of architecture is designed to simplify the reuse of
providing a flexible, upgradeable system. It was components; any application can publish its
capabilities and any other application may then make
use of those capabilities (subject to security
constraints enforced by the framework). This same
3. mechanism allows components to be replaced by the and systems.
user. Underlying all applications is a set of services
ANDROID ARCHITECTURE BASED ON LINUX KERNEL VERSION 2.6
screen. So it's the surface manager that's responsible
for taking different windows that are owned by
different applications that are running in different
processes and all drawing at different times and
LIBRARIES: making sure the pixels end upon the screen when
they„re supposed to.
The next level up is the native libraries.
Everything that you see here in green is written in C OPEN GL/ES:
and C++. It's at this level where a lot of the core
power of the Android platform comes from. Open GL /ES is a 3D library. They have a
software implementation that is hardware
SURFACE MANAGER: acceleratable if the device has a 3D chip on it.
The surface manager is responsible for
composing different drawing surfaces on to the
4. SGL: on. One interesting thing about the Android graphics
platform is that you can combine 3D and 2D graphics
The SGL graphics are for 2D graphics and in the same application.
that is what most of the application drawing is based
MEDIA FRAME WORK: DALVIK VIRTUAL MACHINE:
The Media Framework was provided by It is extremely low-memory based virtual
Packet Video, one of the members of the open machine, which was designed especially for Android
handset alliance and that contains the entire codex to run on embedded systems and work well in low
that make up the core of the media experiences. So, power situations. It is also tuned to the CPU
in there you‟ll find IMPEG4, H.264, MP3, and AAC, attributes. The Dalvik VM creates a special file
all the audio and video codes you need to build a rich format (.DEX) that is created through build time post
media experience. processing. Conversion between Java classes and
.DEX format is done by included “dx” tool.
FREE TYPE:
CORE LIBRARIES:
They use Free Type to render our fonts. Free
Type is a free, high-quality and portable font engine. This is in blue, meaning that it's written in
the Java programming language.The core library
SQLITE: contains all of the collection classes, utilities, IO, all
the utilities and tools that you‟ve come to expected to
They have an implementation of SQLite; it use.
uses that as the core of most of its data storage.
APPLICATION FRAMEWORK
WEB KIT:
After that, there is Application Framework,
They have Web Kit which is the open source written in Java language. It is a toolkit that
browser engine, that's what they're using as a core of all applications use, ones which come with
mobile device like Contacts or SMS box, or
Android‟s browser.It's the same browser that's
applications written by Google and any
powering Safari from Apple and they‟ve worked with Android developer. It has several
that engine to make it render well on small screens components.
and on mobile devices.
ACTIVITY MANAGER:
ANDROID RUNTIME:
The Activity manager is what manages the
life cycle of the applications. It also maintains a
Android includes a set of core libraries that
common back stack so that application that is running
provides most of the functionality available in the
in different processes can have a smoothly integrated
core libraries of the Java programming language.
navigation experience.
Every Android application runs in its own process,
with its own instance of the Dalvik virtual machine.
Dalvik has been written so that a device can run
multiple VMs efficiently. .
5. PACKAGE MANAGER: descriptions, all of the external parts of an application
that aren't code.
The package manager is what keeps track of LOCATION AND NOTIFICATION
which applications are installed on your device. So, if MANAGER:
you download new applications over the air or
otherwise install apps, it's the package manager that's
responsible for keeping track of what you have and Location manager, notification manager and
XMPP service are some APIs that I think will allow
what the capabilities of each of your applications are.
developers to create really innovative and exciting
applications.
WINDOW MANAGER:
APPLICATION LAYER:
The window manager manages Windows.
It's mostly a java programming language abstraction At the top of Android Architecture we have
on top of lower level services that are provided by the all the applications, which are used by the final user.
surface manager. By installing different applications, the user can turn
his mobile phone into the unique, optimized and
TELEPHONY MANAGER: smart mobile phone. All applications are written
using the Java programming language.
The telephony manager contains the APIs APPLICATIONS OF ANDROID:
that we use to build the phone application that's • The ability for anyone to customize the
central to the phone experience. Google Android platform
• The consumer will benefit from having a
CONTENT PROVIDERS: wide range of mobile applications to choose
from since the monopoly will be broken by
Google Android
Content providers are a unique piece of the • Men will be able to customize a mobile
Android platform. That's the framework that allows phones using Google Android platform like
applications to share their data with other never before
applications. • Features like weather details, opening
screen, live RSS feeds and even the icons on
the opening screen will be able to be
THE VIEW SYSTEM: customized
• As a result of many mobile phones carrying
Google Android, companies will come up
View System contains things like buttons with such innovative products like the
and lists, all the building blocks of the UI. It also location
handles things like event dispatching, layout drawing, • In addition the entertainment functionalities
. will be taken a notch higher by Google
RESOURCE MANAGER: Android being able to offer online real time
multiplayer games
The resource manager is what they use to
store local iStrings, bitmaps, and layout file
6. NAVIGATION TOOLS
ANDROID POWERED WATCHES
LIMITATIONS OF ANDROID:
Development requirements in FIREFOX MOBILE ISN'T COMING TO
Java ANDROID BECAUSE OF ANDROID
Android SDK LIMITATIONS
Eclipse IDE (optional)
Fennec won't play nice with Android Market
BLUETOOTH LIMITATIONS: because apps in Android Market need to be
programmed with a custom form of Java to run
Google Talk functions and only the simplest on Android. Mozilla and the Fennec peeps won't
implementation of Bluetooth. It'll work with have that and won't be releasing any form of
Bluetooth headsets but that's about it; no Bluetooth Firefox until Google amends the limitation of
stereo, no contacts exchange, no modem pairing and Android Apps.
no using wireless keyboards. Android uses a non-
standard jvm: there is no guarantee that the same
software will run on multiple devices. CONCLUSION:
We can only hope that the next versions of
Android have overcome the actual limitations and
that the future possibilities became a reality.
REFERENCES:
1. Ritesh Ambastha, Rajnikanth Joshi from
Android Development Workshop at NIT,
Warangal.
2 . Martin Jantscher, Mohammed Talhaoui, Denis
De Vos, Ivan Cunha, Artur Roszcyk from
www.scribd.com