Click here to load reader

Linux/UNIX Programming Linux on Android 문양세 강원대학교 IT 대학 컴퓨터과학전공

  • Upload
    amable

  • View
    82

  • Download
    0

Embed Size (px)

DESCRIPTION

Linux/UNIX Programming Linux on Android 문양세 강원대학교 IT 대학 컴퓨터과학전공. 안드로이드 정의. 안드로이드는 운영체제 (operating system), 미들웨어 (middleware), 핵심 애플리케이션 들 (key applications) 을 포함하고 있는 모바일 디바이스를 위한 소프트웨어 스택 (software stack) 이다 . - PowerPoint PPT Presentation

Citation preview

Discrete Mathematics

Linux/UNIX Programming

Linux on Android

IT (operating system), (middleware), (key applications) (software stack).

, , API , , , (OSS: open source software) . 2

3

4

, (contact), , , , SMS app . app Java . app layer .

(1/3)5

App / .Core system serviceHardware serviceNative app , API .Java , C/C++ .

(2/3)6

Core system serviceActivity manager: life cycle , navigation history( ) .View system: , , , () .Content provider: .Resource manager: (strings, graphics ) .Notification Manager: Status bar .

(3/3)7

Hardware serviceLocation managerTelephony managerBluetooth serviceWiFi service, USB service, sensor service

8

C/C++ . . C : BSD libc : MPEG4, H.264, JPG Surface : 2D 3D SGL(2D graphics engine), 3D SQLite: Lightweight

9

(Dalvik) Core , app . CPU interpret, .() Java .class .jar dex .

10

(, , , ) 2.6

(revisit)11

12 13

.adb s emulator-5554 shell5554 .

14

.adb s serial_number shell

(1/7)15

(2/7)16

(3/7)17

(4/7)18

(5/7)19

(6/7)20

(7/7)21

apk ~ (1/2)22

, , .

native applicationsNative apk: /system/app apk ~ (2/2)23

third party applications(, application )

Third party apk: /data/app app .App , . , app . virtual machine . app user ID . permission scheme . App 24

User ID