Historical Development Of The Chosen Os Computer Science
Android is currently the fastest growing smartphone operating system in the market platform in a few years due as to its tremendous traction with a wide spectrum of users.
So, android can be defined as an open-source platform founded in October 2003 by Andy Rubin.
Android is owned by Google and is a Linux-based operating system and powered by the Linux kernel.
Android was unveiled in 2007 along with the founding of the Open Handset Alliance: a major of hardware and software developers.
The software suite included on the phone consist if integration with Google's proprietary applications, such as calendar, maps, Gmail, and a full HTML web browser.
Android supports the execution of native applications and a preemptive multitasking capability.
The first Android-powered phone was sold in October 2008 is HTC Dream.
Android has seen numerous updated by adding features an fixing bugs in previous release.
Each release is 1.5 Cupcake, 1.6 Donut, 3.0 Honeycomb, 4.0 Ice Cream Sandwich, 4.2 Jelly Bean, Gingerbread and many more.
The development environment of android from Google is using a plug-in to provide necessary facilities.
The configuration can be specified an Android Virtual Device that the code can be executed on the host-based emulator or a real device.
Android uses the Dalvik Virtual Machine to run Dalvik 'dex-code' (Dalvik Executable).
The main hardware platform for Android is the ARM architecture.
Android's Linux kernel has been changed by Google outside the typical Linux kernel development cycle.
The features of Linux include the autosleep and wakelock capabilities.
Android device owner are not given root access to the operating system and sensitive partitions.
Android is designed to manage RAM to minimum the power consumption and also manages the application stored automatically in memory.
Android have an active community of developers and enthusiasts.
New features and updates release by community-developed to make devices faster than official manufacturer.
While in updating the latest, Google provides the updates to Android every six to nine months.
The latest updated is Android 4.2 Jelly Bean.Thoroughly the OS's basic concept.
Android is an open source toolkit for developing Android mobile applications.
Even though Android application written in Java and then compiled into a Dalvik executable is deployed to Android devices.
These have four basic concepts is activities, intents, services and broadcast receivers.
http://books.google.com.my/books?id=Gn1fnqBIUEgC&pg=PA429&dq=Android%27s+OS+basic+concept&hl=en&sa=X&ei=b61gUdjSMMLtrQeT6oCwDg&ved=0CDsQ6AEwAg#v=onepage&q=Android%27s%20OS%20basic%20concept&f=falseThoroughly discuss the OS' overall architecture.
The Android OS have a software stack of different layers, where each layer is a several group of the different architecture includes operating system, middleware and important applications.
Each layer in the architecture provides different services to every layer.
The system architecture of an Android device consists of four main layers kernel, libraries, Android runtime, applications framework and applications.
The basic layer architecture is the Linux kernel.
The Linux kernel acts as an abstraction and management layer for the hardware.
It presents the different Android devices in a standard way so that folks like you can develop an application just once and be able to run it on all Android devices.
The whole Android OS is built on top of the Linux 2.6 Kernel with some further architectural changes made by Google.
It is this Linux that interacts with the hardware and contains all the essential hardware drivers.
Drivers are programs that control and communicate with the hardware.
For example, consider the Bluetooth function.
All devices has a Bluetooth hardware in it.
Therefore the kernel must include a Bluetooth driver to communicate with the Bluetooth hardware.
The Linux kernel also acts as an abstraction layer between the hardware and other software layers.
Android uses the Linux for all its core functionality such as memory management, security, process management, networking and drivers for devices such as the touch screen, keyboard and so on.
As the Android is built on a most popular and proven foundation, it made the porting of Android to variety of hardware, a relatively painless task.
The second architecture of Android is a libraries.
The native libraries layer provides Android with the capabilities for its core features and written in C or C++ language.
These have some of the important native libraries include are OpenGL.
Android is shipped with SGL which acts as the primary 2D graphics renderer and counterpart which provides 3D graphics.
Android comes packaged with SQLite is database engine which takes care of most data storage.
The WebKit web rendering engine is also shipped with Android and has been tailored to render web pages for smaller screen sizes in HTML content.
The surface manager is used for compositing window manager with off-screen buffering.
That means it is combined with other drawings and form the final screen the user will see.
The media framework provides different media codec's allowing the recording and playback of different media formats.
The android runtime consists of Dalvik Virtual machine and Core Java libraries.
Dalvik virtual machine which is a part of this layer highly optimized for executing on the mobile platform.
The byte codes are converted Java binaries that are very quick and efficient to run on smaller processors which normally be available in a Java virtual machine.
Other than that, application framework are the blocks that our applications directly interacts with.
These programs manage the basic functions of phone like resource management, voice call and so on.
As a developer, you just consider these are some basic tools with which we are building our applications.
The important blocks of application framework are activity manager to manages the activity life cycle of applications.
The content provider is manage the data sharing between applications.
The telephony manager is manages all video calls to access voice calls in our application.
Location management are using GPS and resource manager to manage the various types of resources we use in our application.
Applications are the top layer in the Android architecture and this is where our applications are going to fit.
Several standard applications comes pre-installed with every device, such as SMS client applications, Web browser and contact manager.
As a developer we are able to write an application which replace any existing system application.
That is, you are not limited in accessing any particular feature.
You are practically limitless and can whatever you want to do with the Android.
Thus Android is opening endless opportunities to the developer.Thoroughly the OS's facilities and services (e.g., concurrent processing capabilities), privileges, user interface, IO device access/control, and management of resources.
The iOS configuration profiles to enforce related policies, including minimum length and complexity, reuse, maximum failed attempts, and auto-lock and grace periods.
However, these device-level access controls cannot be replaced by third-party methods that might be required in some use cases.
It's also cannot be unlocked by more than one PIN or passcode, as may be required when tablets are shared by several users.
To overcome these limits, some organizations install self-authenticating apps and using them as secondary access control for business data.
It's can support simple PINs and complex alphanumeric passcodes to use Android device administration APIs to enforce policies that go slightly beyond iOS.
This including minimum lower or upper case, digit and symbol rules.
For example,all Android devices support OS to defined swipe and pattern unlocks like iOS, apps that provide secondary access control can be installed on Android tablets including fingerprint scan unlock apps.Critically outline the OS's strengths and weaknesses (based upon your given answers to bullet points 2-4).
Can use for no5
ANDROID ADVANTAGE & LIMITATIONS
Advantages of an Android are listed as:
Time for a change.
Android scales to every device.
it's supported by some hardware manufacturers and more to come in the future.
Third party development is encouraged.
In contrast to advantages Android has following limitations:
Not supported by any big company yet except HTC
Does not support some applications like Firefox
Some limitations exist in blue tooth.