ABSTRACT ANDROID OPERATING SYSTEM : A CASE STUDY by Pankaj Research Associate, GGSIP University Android is a software stack for mobile devices that includes an operating system, middleware and key applications. Android provides a set of core applications: Email Client SMS Program Calendar Maps Browser Contacts INTRODUCTION Android uses Linux for its device drivers, memory management, process management, and networking. The next level up contains the Android native libraries. They are all written in JAVA. In this you can find the Surface Manager, 2D and 3D graphics, Media codecs, the SQL database (SQLite), and a native web browser engine (WebKit). The classes are compiled into Dalvik executables and run on Dalvik Virtual machine. A specialized virtual machine designed specifically for Android and optimized for battery-powered mobile devices with limited memory and CPU. ANDROID VERSIONS : 2.3 Gingerbread :- Refined the user interface, improved the soft keyboard and copy/paste features, improved gaming performance. 3.0 Honeycomb (feb 2011):- It was a tablet-oriented release which supports larger screen devices.the first device featuring this version, the Motorola Xoom tablet. Published by: Modern Rohini Education Society (Regd.) Paper Id: IJRDTM-05107 Page 1
3.1 Honeycomb:( May 2011) :- It added support for extra input devices, USB host mode for transferring information directly from cameras and other devices. 3.2 Honeycomb(July 2011):- It added optimization for a broader range of screen sizes, new "zoomto-fill" screen compatibility mode, loading media files directly from SD card, and an extended screen support API. Huawei MediaPad is the first 7 inch tablet to use this version. 4.0 Ice Cream Sandwich ( October 19, 2011):- Android 4.0.1 Ice Cream Sandwich is the latest Android version. It brought Honeycomb features t o smartphones and added new features including :- facial recognition unlock, network data usage monitoring and control, unified social networking contacts, photography enhancements and offline email searching. LICENSE: The source code for Android is available under free and open source software licenses Android is under version 2 of the Apache Software License (ASL). HARDWARE: The main hardware platform for Android is the ARM(Acorn RISC Computer) architecture. Android is not a single piece of hardware. it's a complete, end-to-end software platform that can be adapted to work on any number of hardware configurations. Everything is there, from the boot loader all the way up to the applications. 2. OPERATING SYSTEM Android uses Linux for its device drivers, memory management, process management, and networking. The next level up contains the Android native libraries. They are all written in JAVA. In this you can find the Surface Manager, 2D and 3D graphics, Media codecs, the SQL database (SQLite), and a native web browser engine (WebKit). The classes are compiled into Dalvik executables and run on Dalvik Virtual machine. NETWORK CONNECTIVITY It supports wireless communications using: GSM mobile-phone technology 3G Edge Wi-Fi networks Published by: Modern Rohini Education Society (Regd.) Paper Id: IJRDTM-05107 Page 2
SECURITY Android is a multi-process system, in which each application (and parts of the system) runs in its own process. Most security between applications and the system is enforced at the process level through standard Linux facilities, such as user and group IDs that are assigned to applications. Additional finer-grained security features are provided through a "permission" mechanism that enforces restrictions on the specific operations that a particular process can perform. Security firms such as AVG Technologies and Symantec have released antivirus software for Android devices. Android applications structure: SOFTWARE DEVELOPMENT:- DEVELOPMENT REQUIREMENTS Java Android SDK IDE AND TOOLS Feb 10 May 10 Apr 11 RIM 42.1% 41.7% 29% Apple 25.4% 24.4% 25% Google 9% 13% 33% Microsoft 15.1% 13.2% 7.7% Palm 5.4% 4.8% 2.9% Published by: Modern Rohini Education Society (Regd.) Paper Id: IJRDTM-05107 Page 3
Android SDK Class Library Developer Tools dx Dalvik Cross-Assembler aapt Android Asset Packaging Tool adb Android Debug Bridge ddms Dalvik Debug Monitor Service Emulator and System Images Documentation and Sample Code ADT (Android Development Tools) help us to :- Reduces Development and Testing Time Makes User Interface-Creation easier Makes Application Description Easier OHA (Open Handset Alliance): A business alliance consisting of 47 companies to develop open standards for mobile devices Phones: MarketShare:- Published by: Modern Rohini Education Society (Regd.) Paper Id: IJRDTM-05107 Page 4
ANDROID S/W STACK APPLICATION: Android provides a set of core applications: Email Client SMS Program Calendar Maps Browser Contacts Etc All applications are written using the Java language. Android S/W Stack App Framework:- Enabling and simplifying the reuse of components Developers have full access to the same framework APIs used by the core applications. Published by: Modern Rohini Education Society (Regd.) Paper Id: IJRDTM-05107 Page 5
Users are allowed to replace components. Android S/W Stack App Framework (Cont) FEATURE Feature Role View System Content Provider Resource Manager Notification Manager Activity Manager Used to build an application, including lists, grids, text boxes, buttons, and embedded web browser Enabling applications to access data from other applications or to share their own data Providing access to non-code resources (localized strings, graphics, and layout files) Enabling all applications to display customer alerts in the status bar Managing the lifecycle of applications and providing a common navigation backstack ANDROID S/W STACK LIBRARIES o Including a set of C/C++ libraries used by components of the Android system o Exposed to developers through the Android application framework ANDROID S/W STACK RUNTIME Core Libraries o Providing most of the functionality available in the core libraries of the Java language o APIs o Data Structures o Utilities o File Access o Network Access Published by: Modern Rohini Education Society (Regd.) Paper Id: IJRDTM-05107 Page 6
o Graphics o Etc Android S/W Stack Runtime (Cont) Dalvik Virtual Machine Providing environment on which every Android application runs Each Android application runs in its own process, with its own instance of the Dalvik VM. Dalvik has been written such that a device can run multiple VMs efficiently. Register-based virtual machine Android S/W Stack Runtime (Cont) Dalvik Virtual Machine (Cont) Executing the Dalvik Executable (.dex) format.dex format is optimized for minimal memory footprint. Compilation Relying on the Linux Kernel for: Threading Low-level memory management ANDROID S/W STACK LINUX KERNEL Relying on Linux Kernel 2.6 for core system services Memory and Process Management Network Stack Driver Model Security Providing an abstraction layer between the H/W and the rest of the S/W stack Published by: Modern Rohini Education Society (Regd.) Paper Id: IJRDTM-05107 Page 7
ANDROID APPLICATIONS ARE COMPILED TO DALVIK BYTECODE: ANDROID IS GROWING Uneven distribution of OS by regions FUTURE POSSIBILITIES Google Android Sales to Overtake iphone in 2012 The OHA is committed to make their vision a reality: to deploy the Android platform for every mobile operator, handset manufacturers and developers to build innovative devices Intel doesn t want to lose ownership of the netbook market, so they need to prepare for anything, including Android Fujitsu launched an initiative to offer consulting and engineering expertise to help run Android on embedded hardware, which aside from cellphones, mobile internet devices, and portable media players, could include GPS devices, thin-client computers and set-top boxes. More Android devices are coming and some will push the envelope even further. OVERALL EVALUATION : - 1. Advantages Published by: Modern Rohini Education Society (Regd.) Paper Id: IJRDTM-05107 Page 8
There are a host of advantages that Google s Android will derive from being an open source software. Some of the advantages include: The ability for anyone to customize the Google Android platform. The consumer will benefit from having a wide range of mobile applications to choose from since the monopoly will be broken by Google Android. Features like weather details, opening screen, live RSS feeds and even the icons on the opening screen will be able to be customized. In addition the entertainment functionalities will be taken a notch higher by Google Android being able to offer online real time multiplayer games. 2.Limitations : Android doesn't support: Bluetooth stereo Contacts exchange Modem pairing Wireless keyboards Firefox Mobile isn't coming to Android, Apps in Android Market need to be programmed with a custom form of Java. Mozilla and the Fennec won't have that 3. CONCLUSION We can only hope that the next versions of Android have overcome the actual limitations and that the future possibilities became a reality. Published by: Modern Rohini Education Society (Regd.) Paper Id: IJRDTM-05107 Page 9