Skip to main content

Android Architecture Stack

Hello Everyone!


In this article we are discussing about the android architecture. It is essential for all the android application developers to understand the android architecture to get a clearer idea about the structure on which the application is made. From the exam point of view, the android architecture stack question has been asked several times (sometimes along with the Dalvik Virtual Machine).


Android operating system is a stack of software components which is roughly divided into five sections and four layers.

The five sections of android architecture are-

  1. Linux kernel
  2. Libraries
  3. Android Runtime
  4. Application Framework
  5. Applications

This is a layered architecture with each section having a different functionality.

A) Linux Kernel -

It is the bottom most layer of the architecture. This is the kernel on which android is based. This layer provides a level of abstraction between the hardware devices. It also contains all the low-level device for the various hardware components like camera, keypad, etc.

B) Libraries-

Libraries contain defined code for all the main features of android OS. The set of libraries provide open-source web browser engine WebKit which can be used for web browsing, library for SQLite database which is useful to store and access data for applications. Other libraries are for playing audio, video and for internal security. Some of them are android.text (for text manipulation on display), android.widget ( to use predefined UI components), and android.view (for intents).

C) Android Runtime-

The android runtime provides Dalvik Virtual machine which is used to convert the android code. DVM is similar to Java Virtual machine but enables android application to run its own process with its own instance of DVM. Dalvik is specifically designed for Android and optimized for battery- powered mobile devices which has limited memory and CPU resources.

The android runtime also provides a set of core libraries which allows the developers to write the application using Java programming language.

D) Application framework-

This Layer provides high level services in the form of Java classes.  The developers can make use of these services in the applications. The services included are Activity Manager, Context providers, resource manager, notification manager, etc.

E) Application-

This is the top most layer in the android architecture. In this layer, all the applications that are preinstalled or required for an application to run are present. Example- Phone, Contacts, Browser, Radio, Camera, Calculator, Settings, etc.

The applications which are installed later from application store are also present in this layer.  
Example- WhatsApp, Instagram, Truecaller, Zomato, etc.


Android Architecture Stack



Comments

Popular posts from this blog

UML - Use Case Diagram for Vending Machine

Hello Everyone! Here is an example of an Use case Diagram of a Vending Machine System. Problem Statement - A vending machine accepts coins for variety of products. The user selects the drinks from products available through selection panel. If the drink is available the price of the product is displayed. The user then deposits the coins depending on the price of the product. Coin collector collects coin after stipulated time the controller will compare the deposited coin with price. If amount deposited is less than price then error message will be displayed and all deposited coin will be dispensed by the coin dispenser else the drink will be dispensed by the product dispenser. Check out other UML (Unified Modeling Language) Diagrams - Class Diagram   Object Diagram   Sequence Diagram Collaboration Diagram   Activity Diagram   State Diagram   Component Diagram   Deployment Diagram  

UML - Object Diagram for Hospital Management System

Hello Everyone! Here is an example of an Object Diagram for Hospital Management System. Problem Statement - The hospital wishes to maintain a database to assist with the administration of its wards and operating theatre and to maintain information related to its patients, surgeons and nurse. Most patients are assigned to a ward on admittance and each ward may contain many patients. However, consultants (senior surgeons) in the hospital may have private patients who are assigned to private room. A nurse may or may not be assigned to a ward and she cannot be assigned to more than one ward. A ward may have many nurses assigned to it. Each ward is dedicated to a particular type of patient. A nurse may or may not be assigned to a theatre and she cannot be assigned more than one theatre. Theatre may have many nurses assigned to it. A patient may have number of operations. The information to be recorded about the operation includes the type of operation, the patients, the surgeons involv...

UML - Component Diagram for Intranet development of a college/school

Hello Everyone! Here is an example of an Component Diagram for Intranet development. Problem Statement - An intranet is a computer network for sharing information, collaboration tools, operational systems, and other computing services only within an organization. An Internet Service Provider (ISP) provides LAN services, Application services, Email services, Domain and Web hosting services to an organization. The LAN service is provided through Switch to the terminals using Ethernet and other cables. The firewall feature is provided for web applications through Application services. All the students and staff members are provided with an official email account through email services. The college has its own domain and web hosting package provided by the ISP. All these services maintain a database which is stored on server. The database server and all the services are controlled and handled by the Administrator of the college. Check out other UML (Unified Modeling Language)...