Android (Shubham)
Android (Shubham)
Android is a software stack for mobile devices that includes an operating system, middleware and key applications
System Architecture
The software stack is split into Four Layers:: The application layer
The kernel
LINUX KERNEL
Acts as an abstraction layer between the hardware and the rest of the software stack. Relies on Linux version 2.6 for core system services such as security, memory management, process management, network stack, and driver model.
Includes libraries such as OpenGL, SQLite, Media Framework etc. Includes a set of core libraries of JAVA that provides most of the functionality Runs in its own process, with its own instance of the Dalvik Virtual Machine The Dalvik VM executes files in the Dalvik Executable (.dex)
Application Framework
Access location information, run background services, set alarms, add notifications to the status bar, and much, much more. Build an application, including lists, grids, text boxes, buttons, and even an embeddable web browser Providing access to non-code resources such as localized strings, graphics, and layout files
Applications
Set of core applications including an email client, SMS program, calendar, maps, browser, contacts. All applications are written using the Java programming language.
Features
Dalvik virtual machine optimized for mobile devices Integrated browser based on the open source Web Kit engine
Media support for common audio, video, and still image formats (MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, GIF)
GSM Telephony (hardware dependent) Bluetooth, EDGE, 3G, and Wi-Fi (hardware dependent) Camera, GPS, compass, and accelerometer (hardware dependent) Rich development environment including a device emulator, tools for debugging, memory and performance profiling, and a plug-in for the Eclipse IDE
THANK YOU!!!