Pages

Wednesday, 9 July 2014

Dalvik Virtual Machine

As we know the modern JVM is high performance and provides excellent memory management. But it need to be optimized for low-powered handheld devices.

The Dalvik Virtual Machine (DVM) is optimized for mobile devices. It optimizes the JVM for memory,battery life and performance.
Dalvik is a name of a town in Iceland. The Dalvik VM was written by Dan Bornstein.
The Dex compiler converts the class files into the .dex files that run on the Dalvik VM.
Let's see the compiling and packaging process from the source file:



The javac tool compiles the java source file into the class file.
The dx tool takes all the class files of your application and generates a single .dex file. It is a platform-specific tool.
The Android Assets Packaging Tool (aapt) handles the packaging process.

What is Android?

Android is a software package and linux based operating system for mobile devices such as tablet computers and smartphones.
It is developed by Google and later the OHA (Open Handset Alliance). Java language is mainly used to write the android code even though other languages can be used.
The goal of android project is to create a successful real-world product that improves the mobile experience for end users.


History of Android


The history and versions of android are interesting to know. The code names of android ranges from A to J currently, such as AestroBlenderCupcakeDonutEclairFroyoGingerbreadHoneycombIce Cream Sandwitch,Jelly Bean and KitKat. Let's understand the android history pointy:
  • Initially, Andy Rubin founded Android Incorporation in Palo Alto, California, United States in October, 2003.
  • In 17th August 2005, Google acquired android Incorporation. Since then, it is in the subsidiary of Google Incorporation.
  • The key employees of Android Incorporation are Andy RubinRich MinerChris White and Nick Sears.

Android Versions, Codename and API

Let's see the android versions codename and API provided by Google.
VersionCodenameAPI
1.5Cupcake3
1.6Donut4
2.1Eclair7
2.2Froyo8
2.3Gingerbread9 and 10
3.1 and 3.3Honeycomb12 and 13
4.0Ice Cream Sandwitch15
4.1, 4.2 and 4.3Jelly Bean16, 17 and 18
4.4KitKat19