24-02-2011, 03:07 PM
presented by:
Saurabh Kumar Sinha
[attachment=9093]
Mobile Operating System
What is Android?
Android is a software stack for mobile devices that includes an OS, middleware and key applications.
User applications can be developed using Android SDK which supplies a host of API’s needed for development using Java programming language.
A slice of history
Google acquired Android Inc.USA in 2005 with establishing OHA.
Announced Android in 2007 and released source code.
reached version 2.1 releasing Google’s Nexus.
The architecture.
consists of five software layers:
Linux;
Libraries;
Runtime;
Application Framework; and
Applications.
Linux—the bottom layer is the Linux OS itself—version 2.6.3x .This provides process and memory management, security, networking and an array of relevant device drivers.
Libraries—
reside on top of the OS.
includes Google’s version of standard C system library
(libc), called bionic, and tuned for embedded Linux based devices.
media and graphics libraries and
SQLite (~500kb
Runtime—
on top of the OS, is the Android runtime—the Dalvik VM.
designed specifically for Android and is register based to conserve memory and maximize performance.
separate instance of the Dalvik VM is used to execute each Android application.
The underlying OS is used for memory management and multi-threading.
Application framework—
provides a number of services to apps implemented as Java classes.
Any application can “publish” its capabilities for use by other
Applications—
email, SMS, calendar, contacts and Web browser.
Applications are written in Java.
processed with the standard Java tools with a converter being used to translate to the Dalvik VM byte codes.
SQLite:
powerful and lightweight(approx.225kb) relational database engine (RDBMS).
SQLite library is linked in an application program.
The library can be called dynamically.
Application development
An Eclipse-based development environment is available from Google.
An Android application consists of a number of resources that are bundled into an archive, an Android package.
There is no single entry point to a program (like main())