This essay has been submitted by a student. This is not an example of the work written by our professional essay writers.
Currently, the high level smart device are widely using in our daily life. Such as smart mobile phone and MID Molded Interconnect Device. The high level smart device could be able to provide powerful mobile computing, high scalability and portability for users. In the operating system level, the smart device operating system should be able provide fully accessibility of all smart device resources to the user. The operating system has to be able to process complexity task and the large number of data when it is working. However the smart device only provides limited hardware resources for those tasks and data. Example of low capability battery and less performance CPU. Therefore the smart device has to be built on a good enough architecture. This paper will focus to analyze architecture for Android. It is current main Smart Device Operating System in the world. After that, the paper will find out some issues for Android operating system. Also some solution should be providing for these issues.
What is Smart Device
The smart device is a kind of digital computing device that can provide enough computing ability and high portability for daily life or work. The device includes mobile phone, media player and tablet computer. The Smart Device has following feature:
Small Size - Most smart devices have very small size. it can provide high portability for daily work. Example of Mobile Phone and MID
Ubiquitous computing - The smart device does not like a typical personal computer. All components have been integrated in small space. that means smart device can work at everywhere.
Networked computing - The smart device should be able to connect to other smart device and work together.
Humanization Usability - The smart device can be easily using in the daily life. The user interface should be simply understood.
As you can see the smart device provides different ability between with typical personal computer. Therefore, the operating system of the smart device should also work different with typical operating system.
Main Operating System for Smart Device
Symbian [i] - Symbian is the classical operating system for smart phone. it is developed by Noika.
iOS [ii] is currently popular mobile devise system. It is developed by Apple. Currently it is used at the iPhone, iPod and iPod devise that product by Apple.
BlackBerry [iii] OS is a kind of smart phone OS. It is developed by Research In Motion (RIM) for Blackberry mobile device.
Android [iv] is other popular mobile devise operating system. Currently, Android is wildly used at a lot of high level smart devise, such as media player and eBook reader and. Android is developed by the Google. This paper will focus on the Android system.
Android is a widely open operating system for smart device. it is developed by Google Android team. Android provide wildly support for a huge number of smart device platform. This is why it is very popular in the smart device industry. High capability and performance is strong feature of this operating system.
Android has 3 main versions. The first version has been stagnated for development. the second version especially version 2.3 is current and popular version for the mobile devise. The third version has been released.
Android provide following feature:
2D and 3D graphic Interface and process - comparison with other boring user interface of other smart operating system. Android has beautiful 2D interface. Android also could be able to process high level 2D and 3D graphic computing.
High Level Application Development - Android provide software development kit for third party developer. It allow them to develop application for the android platform. The most important there is no charge for development. it is free.
Support More hardware component - Android provide support for a huge number of component of smart device, such as the GPS module, wireless module and multiple touch screen.
Open sources Project - all sources of android are opened to the public. everyone can download it and building android operating system by themselves.
Customized System - high level user can customize android by themselves, include kernel and the graphic user interface.
Advantage of Android system
Compare between other smart device systems. The android system have following advantages:
Easy to understanding and development - Android is easy to understanding for any level users. The system provide simply GUI for enter level user. Make sure they can understand the interface. The android application development is based on the Java. Nearly all developer can quickly start their application project on the android system.
Widely support for device - android is using Linux kernel as the system kernel. The Linux has very good capability for many type of smart device.
Open project - Open project android can invoke as many as developer to join the development team. that means the android project will quickly grow up.
In this part, as you can see, we talk about the main smart device operating system in the world. There are four main smart operating system, Symbian, iOS, BlackBerry OS and Android. After that, we brief the detail information for the android system. the advantage of the Android system have been listed. In next part we will analyze the architecture of the android core. the main technology of the android core will be describe one by one.
Last part, we talk about the smart device operating system. Four main operating systems have been descripted in the last part. There is one operating system has been pick up as the main research object in this paper. It is Android.
In this part, we will analyze architecture of the android system. the detail inside android will be discuss at following one by one. the architecture of android system include four main part [v] . They are:
Figure : Android Architecture
Kernel - Kernel is core of the android system. Android operating system use Linux kernel as the system kernel.
Libraries and runtime - Android provide Java libraries for the application running.
Application framework - it is the framework for third party to development application.
Application - the application face to the public user.
The kernel of android system is a high level customized Linux kernel based on the version 2.6. The kernel is the basic layer in the architecture. It provides four main supports for every smart device.
Figure : Android Kernel
In the first part, the kernel should be able to handle memory page of the smart device. Because most smart device have very limited size of memory. The memory page exchange should be very carefully. The application should be allocated enough memory for running.
In the second part, kernel will manager power support of the smart device. the smart device has two sources of power. One is inside battery. Other one is outside power adapter. if smart device is using outside power adapter, the device should be fully work for the user's task. But if it is using inside battery. Kernel will be able to provide lower power consumption for user's task.
In the third part, kernel provides driver for a lot of components such as the Display, external memory, wireless and audio. this is a big part of kernel, the model driver will be hold inside of kernel.
in the last part, kernel will provide support for network. The network could be wire or wireless network. The driver of network components will be handled in last part. But network protocol and network stack should be implementing in this part.
Libraries and Run-time environment.
Figure : Libraries and Run-time environment
In this layer, there are two components. First one is Libraries; next one is run-time environment.
in the libraries, there are a lot of libraries for system level application example of C/C++. we will introduce three main libraries.
First one is graphic libs. The graphic libs will provide support for graphic user interface or digital graphic application, example of data visualization. the 2D and 3D graphic libs is based on the openGL. it is a open sources project.
Second one is Local database; Android system uses SQLite as the local database system for application. The SQLite is very fast and simple database system. Libraries provide support for SQLite.
Third one is Security, android libraries using openSSL as the security solution for data and communication security. Which means the system and user level application will be able to call openSSL library when they running.
Other component of this layer is Run-time environment. it include a minimum java virtual machine and necessary java running library inside for the user level application and application framework. Android uses redesigned Java virtual machine. It can run faster than normal java VM. And it uses less resources of smart device.
The application framework is face to third party developer who want developed application based on the android system. Android provide software development kit for developer. At the same time application framework also provides simply way that user can manage their applications. The application framework is a high layer in the android architecture. It include following components.
Window manager - the Window manager will handle placement and appearance of application interface. It provides basic screen location service for user application.
MVC - Model-view-controller is popular content application framework. The android application is based on this framework.
Resource manager the resource manager provide support accessibility of system libraries or hardware component for the application. The application could be able using hardware such as GPS component. It also can call openGL libs for graphic computing.
Notification - Notification provide a system level communication between user and android application. The application could be able to send notification to user without running.
Package manager - it provides easy way to let user install, remove and update application package.
Logs Manager - android system could keep system and application log for high level user or developer debug the application.
This is the last layer in the android architecture. This layer face to public smart device user and developer. The application could cover everywhere in daily life and working. The default application that builds inside android system will cover following area.
Mobile Phone - it is basic application will handle voice or video call between users.
Web Browser - it provide internet web access by using smart device. the web browser can access online web page via wire or wireless network.
Message - email and short message. This part include email client which can access email box on the internet. a short message application which can send SMS between users.
Personal Detail management - calendar and Contact are supported by personal detail management application.
Map and location service android provide location services which can using inside GPS module to get location information.
System configuration - this application will handle system level setting. user can customize a android system.
In this part, we analyzed architecture of the android system. There are four layers in the architecture. First one is kernel, android kernel based on the Linux kernel 2.6. It is core system in the architecture of android. Second one is libraries and run time environment. It provide basic library for application and system. The third one is application framework, it faces to application development. The last one is application layer.
In the next, we are going to talk about some issues for android system. Issues will be discussing. And some solutions will be provided.
Issues and Solutions
In the last part, the architecture of android system has been analyzed. There are four layers in the architecture; they are kernel, libraries, application framework and application.
In this part, we will talk about some issues in the android system. as you can see, android system is still under development. We will focus five main important issues in the android. These five issues may cause problem in the daily working. following list show these issues.
Security: user data security issue [vi]
Power Issues: high power consumption
Multiple task process: More than two applications can work at same time
Background service system - user should be able to control background service.
Open sources for hardware detail - open sources in the hardware component.
The Security is the most important issue in the android system. Android system provides opened API to third party developer. API allows application to access personal data that saved in the smart devices. Example personal detail, contacts and location information. if application collect user data without user's permission or any notification. The user's detail will be expose to public. Some malicious software can steal user financial detail such credit card information. Therefore, Android system should be able to provide protect function for user's personal data.
In order to protect user's personal data. There are two way to do this. First one, the android should block third party software to access the personal. They cannot access personal detail directly. The third party software only can send their request to android system if they need a personal detail. The android will process the request. Second one, the android should be able to field some malicious request for personal detail.
Moreover, the Android provides a sandbox for third party application [vii] . That allows application to run at sandbox. It can be used to protect android system from some malicious software.
Currently, most of smart device have high level CPU, GPU and RAM. They will spend a lot of energy when large application is running such as game playing. The wireless module include WiFI ,Bluetooth module and Internet data module. The data sending and retrieving will spend energy of the battery. Most smart device application will continually transfer data between device and the data center.
The system should check the battery automatically. If the device's battery is in low power situation. System should able to shut down unnecessary tasks and service. Reducing screen brightness, switch off unnecessary hardware component and sound volume to save energy. the process will use loop to continually run analyze for the battery.
The android system provides ability to run more than one task process at the same time. That means user could be able to do more task at the same time. It is very useful. Because most of time. We are work on the different situation. We need some application work together. However, android system is using different way to handle multiple tasking. If user put task on the background, the task will no long be process. It only exists on the memory. The task only is re process when it has been active again by user.
Android system need to improve the multiple task function. The current task and inactive task both need to be process by CPU. Not only current. The inactive task should be able send notification to user or exchange data with other application. By this way, the android system can be calling multiple task support.
Same as the multiple tasks, the background service is an important feature in the operating system. It will handle important data exchange in the daily work, example of short message exchange. The android background service is hard to control. For example the background service can be easily to shut down and start. The user should be able to check current status of background services.
Open sources issue
as we can see the android is an open sources, that means the source code is opened to public world. The source codes can be viewed by anyone. It's one of most important features of android system. Because, a huge number of high level developers can join the android project. The bug of android can be found very quickly. On the other hand, the open sources cause other problem to android. Many hardware component providers don't like to open platform or Architecture of product to the open sources area. It may cause some patent technology are steal by opponent. It is a big problem that block android development.
In this section, five main issues of android system have been discussing. We can found out android should be able to improve security for personal detail. The power management could be more effective. Android need to build a multiple tasks system and make sure user can fully control background services. The open sources feature may case component provider lost patent technology.
In the next section, we will discuss the cases of above solutions. We can find how much above solution can improve for android operating system.
In last part, we found five issues in the android system. They are security issues, power management, multiple task, background service and open sourcesã€‚
In this section, we will analyze some cases for above solution of issues.
The following picture show an android application that can protect fully protect for smart phone device. The name is Lookout Mobile Security [viii] . It provides anti-virus, data backup and find device. This is an application level program that can protect devices.
Figure : Lookout Mobile Security
The android market provides an application called Battery doctor [ix] for the android system. it can used to manage battery charging for android smart devices. User could make a full cycle charge for battery when using this application. The battery life cycle can be increased 30% to 50% by using this application. But the battery doctor is a third party application. The android system should be able to provide inside function to handle battery charging.
Figure : Battery doctor
The personal computer also provides the power solution to handle battery life time, example of laptop. The system make different rule when PC is using battery or external power sources, if smart devices operating system provide same solution. It will be more effective for battery life cycle.
Devices' users are not being able to see the background running services. However, they can user a graphic interface to control the running services. The graphic interface only provides less information about current running background services. This interface can only be used by advantage user. The usability is very poor.
Figure : Background Services
In this section, there are two application cases have been descripted. One can provide protect to device's user. Other one can improve battery life time.
In first part, the smart device has been introduced. There are some features about smart devices such as small size and Ubiquitous computing. Then, four typical smart devices operating system have been introduced. This part gives more detail about the android operating system.
In the second part, the architecture of the android system has been descripted. There are four components in the architecture of android system. First one is a Linux kernel. Second one is the system level libraries and run time environment. Next one is application framework; it is face to application developer. Last one is application layer.
In the third part, some issues have been listed. There are five main issues will block development of android system. The first one is security issues, the smart device always face the security problem. The second one is power control; smart device should work with energy effective. The third one is multiple tasks. The android system has to provide support run more tasks together. Next one is background services, user need to fully control the system and background service. The last one is open sources issues.
In the last part, the cases of solution have been analyzed.