basic android os

20
Basic Android Operating System Yong Heui Cho @ Mokwon University Some of slides are referred to: [1] Nitin Ramchandani, Android OS, slideshare.

Upload: yong-heui-cho

Post on 06-Jan-2017

5.204 views

Category:

Engineering


0 download

TRANSCRIPT

Page 1: Basic Android OS

Basic Android Operating System

Yong Heui Cho @ Mokwon University

Some of slides are referred to:[1] Nitin Ramchandani, Android OS, slideshare.

Page 2: Basic Android OS

2

Smart Device Structure

1. Introduction to Smart Devices2. Android Studio Tutorial

3. Basic Android OS

4. Android – Application Framework

Page 3: Basic Android OS

3

Android

Page 4: Basic Android OS

4

Android History• Android Inc. was founded in Oct. 2003 by Andy

Rubin, Nick Sears, Chris White and Rich Miner.• Google acquired it in August 2005.• On November 5, 2007, the Open Handset

Alliance, a consortium of several companies which include Broadcom Corporation, Google, HTC, Intel, T-Mobile and Texas Instruments unveiled itself. 

□ Courtesy to Nitin Ramchandani, Android OS, slideshare.

Page 5: Basic Android OS

5

What is the Open Handset Alliance (OHA)?

• Devoted to advancing open standards for mobile devices

• Develop technologies that will significantly lower the cost of developing and distributing mobile devices and services.

License

Android is under of the Apache Software License (ASL).

Open Handset Alliance

□ Courtesy to Nitin Ramchandani, Android OS, slideshare.

Page 6: Basic Android OS

6

Android Operating System (OS)• A software platform and operating system for mobile devices

• Based on the Linux kernel

• Developed by Google and later the Open Handset Alliance (OHA)

• Allows writing managed code in the Java language

• Possibility to write applications in other languages and compiling it to native code.

• At least 2,000,000 Application available in 2016

• It run on java based and object-oriented based application

What is Android?

□ Courtesy to Nitin Ramchandani, Android OS, slideshare.

Page 7: Basic Android OS

7

Android Version List

Page 8: Basic Android OS

8

AndroidArchitecture

Page 9: Basic Android OS

9

Page 10: Basic Android OS

10

HW Abstraction Layer (HAL)

Page 11: Basic Android OS

11

Concept of OS• Operating System

– System SW that manages computer HW and SW resources and provides common services for computer programs

Page 12: Basic Android OS

12

Why OS?• Requirements of OS

– OS must shield the details of the HW from the application programs, and thus from the user.

– OS has to substitute a set of abstract services to the application programs, to replace the physical HW services. When applications use these abstract services, the operations must be translated into real HW operations.

– OS must act as a resource manager, optimizing the use of the resources, and protecting them against misuse and abuse. When a system provides multiuser or multitasking capabilities, resources must be allocated fairly and equitably amongst a number of competing requests.

Page 13: Basic Android OS

13

Linux Kernel• Android is built on Linux kernel, but it is not the Linux.

• No native windowing system (X window system)

• No glibc (GNU C Library) support

• Does not support all set of standard GNU libraries

□ Courtesy to Nitin Ramchandani, Android OS, slideshare.

Page 14: Basic Android OS

14

Concept of Kernel• A main part of OS that manages input/output

requests from software and translates them into data processing instructions for the CPU and other electronic components of a computer

Page 15: Basic Android OS

15

• Great memory and process management

• Great permissions based security model

• Proven driver model

• Support for shared libraries

• It’s already open source

Why Linux?

□ Courtesy to Nitin Ramchandani, Android OS, slideshare.

Page 16: Basic Android OS

16

• Based on the standard Linux Power Management, Android has its own component.

• Application uses user space library to inform the framework about its constrains..

• Constraints are implemented using lock mechanism..

Power Management

□ Courtesy to Nitin Ramchandani, Android OS, slideshare.

Page 17: Basic Android OS

17

• Driver to facilitate inter-process communication between applications and services..

• A pool of threads is associated to each application to process incoming IPC (Inter-Process Communication)

• The driver performs mapping off object between two processes

• “Binder” uses an object reference as an address in a process’s memory space

Binder

□ Courtesy to Nitin Ramchandani, Android OS, slideshare.

Page 18: Basic Android OS

18

Android and Security

• Application signing– Process of generating private and public keys and public-

key certificates, signing and optimizing the application• Permission

Page 19: Basic Android OS

19

Concept of Sandbox• Android uses Linux facilities such as process-level

security, user and group IDs that are associated with the application, and permissions to enforce what operations an application is allowed to perform

Page 20: Basic Android OS

20

Allowing Access• You first must sign those applications using the same private

key and you then must assign to them the same Linux user ID using the manifest file, by defining the manifest attribute android:sharedUserId with the same value/name.