Disclaimer: The contents in this document are only my personal opinions, do not reflect the opinions of my employer or anyone else.

Size: px
Start display at page:

Download "Disclaimer: The contents in this document are only my personal opinions, do not reflect the opinions of my employer or anyone else."

Transcription

1 Disclaimer: The contents in this document are only my personal opinions, do not reflect the opinions of my employer or anyone else. Android overview From a system design perspective Xiao-Feng Li xiaofeng.li@gmail.com /9/21 Android Overview - Xiao-Feng Li 1

2 Android overview From a system design perspective PART I Design principles 2012/9/21 Android Overview - Xiao-Feng Li 2

3 Question 1 Q: What do you expect from a mobile phone? 2012/9/21 Android Overview - Xiao-Feng Li 3

4 Answer To Q1 Q: What do you expect from a mobile phone? A: (no correct answer, but reasonable answer) Easy communications Long battery life Fast boot-up/shutdown Smooth operations Delicate industry design Applications Could be a close environment 2012/9/21 Android Overview - Xiao-Feng Li 4

5 Question 2 Q: What do you expect from a smart-phone? 2012/9/21 Android Overview - Xiao-Feng Li 5

6 Answer To Q2 Q: What do you expect from a smart-phone? A: (no correct answer, but reasonable answer) All of those features with a mobile phone, plus PC features Programming environment Portal to Internet And security risks Gaming station features Sensors, 3D Must be an open environment 2012/9/21 Android Overview - Xiao-Feng Li 6

7 Question 3 Q: What build an open pleasant environment? 2012/9/21 Android Overview - Xiao-Feng Li 7

8 Answer To Q3 Q: What build an open pleasant environment? A: (no correct answer, but reasonable answer) Favorable APIs to developers Choices of applications to users Seamless access to Internet/Cloud services Pleasant user experience Maximize information flow 2012/9/21 Android Overview - Xiao-Feng Li 8

9 Question 4 Q: What prevent an open environment? 2012/9/21 Android Overview - Xiao-Feng Li 9

10 Answer To Q4 Q: What prevent an open environment? A: (no correct answer, but reasonable answer) Openness vs. Security User experience vs. Battery life Cloud readiness vs. Local computation Law of conservation of energy ITJ paper: Mobile OS Architecture Trends, Xiao-Feng Li, et. al. 16(4), /9/21 Android Overview - Xiao-Feng Li 10

11 Question 5 Q: What does Android do? APIs Applications Internet/Cloud Security User experience Battery life 2012/9/21 Android Overview - Xiao-Feng Li 11

12 Answer To Q5 Q: What does Android do? A: (no correct answer, but reasonable answer) APIs: SDK, NDK, RS, HTML/JS Applications: Google Play, web apps Internet/Cloud: Chrome/webview/HTML5 Security: Java, Permission, Linux security, sig User experience: touch, mem, perf Battery life: Linux PM, wake lock Feature list does not tell the truth 2012/9/21 Android Overview - Xiao-Feng Li 12

13 Question 6 Q: How does Android put them together? 2012/9/21 Android Overview - Xiao-Feng Li 13

14 Answer To Q6 Q: How does Android put them together? A: (no correct answer, but reasonable answer) 1. Java as the primary API language Top popularity is not without rationality 2. Application framework Service-oriented, component-based 3. Applications are wired into framework 4. Hardware abstraction layer (HAL) 5. Linux kernel Holistic design makes the cathedral 2012/9/21 Android Overview - Xiao-Feng Li 14

15 Android Stack Layers make the holistic design possible 2012/9/21 Android Overview - Xiao-Feng Li 15

16 Question 7 Q: What does a common OS distribution do? APIs Applications Internet/Cloud Security User experience Battery life 2012/9/21 Android Overview - Xiao-Feng Li 16

17 Answer To Q7 Q: What does a common Linux distro do? A: (no correct answer, but reasonable answer) APIs: open choices Applications: abundant Internet/Cloud: Mozilla Firefox, etc. Security: Linux security User experience: Gnome, KDE, etc. Battery life: Linux PM More features may not always excel 2012/9/21 Android Overview - Xiao-Feng Li 17

18 Question 8 Q: How does a common Linux distro put them together? 2012/9/21 Android Overview - Xiao-Feng Li 18

19 Answer to Q8 Q: How does a common Linux distro put them together? A: (no correct answer, but reasonable answer) APIs: open choices Applications: abundant Internet/Cloud: Mozilla Firefox, etc. Security: Linux security User experience: Gnome, KDE, etc. Battery life: Linux PM Bazar is still bazar 2012/9/21 Android Overview - Xiao-Feng Li 19

20 Question 9 Q: What does J2ME do? 2012/9/21 Android Overview - Xiao-Feng Li 20

21 Answer to Q9 Q: What does J2ME do? A: (no correct answer, but reasonable answer) APIs: roughly ok Applications: roughly ok Internet/Cloud: roughly ok Security: roughly ok User experience: roughly ok Battery life: roughly ok Roughly ok is not ok 2012/9/21 Android Overview - Xiao-Feng Li 21

22 Question 10 Q: How does J2ME put them together? 2012/9/21 Android Overview - Xiao-Feng Li 22

23 Answer to Q10 Q: How does J2ME put them together? A: (no correct answer, but reasonable answer) APIs: ok + OS Applications: ok + OS Internet/Cloud: ok + OS Security: ok + OS User experience: ok + OS Battery life: ok + OS Who are you, J2ME or OS? 2012/9/21 Android Overview - Xiao-Feng Li 23

24 Question 11 Q: What does Windows desktop do? A: (no correct answer, but reasonable answer) APIs Applications Internet/Cloud Security User experience Battery life 2012/9/21 Android Overview - Xiao-Feng Li 24

25 Answer to Q11 Q: What does Windows desktop do? A: (no correct answer, but reasonable answer) APIs: Win API in C++ Applications: abundant Internet/Cloud: IE Security: oops! User experience: (Not responding) Battery life: Time does not solve all problems 2012/9/21 Android Overview - Xiao-Feng Li 25

26 Question 12 Q: How does Windows put them together? 2012/9/21 Android Overview - Xiao-Feng Li 26

27 Answer to Q12 Q: How does Windows put them together? A: (no correct answer, but reasonable answer) Win API Kernel Time freezes at 80s 2012/9/21 Android Overview - Xiao-Feng Li 27

28 Windows Stack Services built on top of API 2012/9/21 Android Overview - Xiao-Feng Li 28

29 Bonus Slide: Windows 8 Stack Much better as a smartphone OS as I expected API built on top of services 2012/9/21 Android Overview - Xiao-Feng Li 29

30 Android Design Explained Complete, consistent, modular API: Full sets of high level APIs for all the tasks Apps: components to be wired into the system App framework: rich set of services/abstractions Security: every application is a Linux user User experience: mem/power/perf, smoothness/responsiveness 2012/9/21 Android Overview - Xiao-Feng Li 30

31 Android overview From a system design perspective PART II Runtime model 2012/9/21 Android Overview - Xiao-Feng Li 31

32 Android Application Not a standalone application, but components of the system 2012/9/21 Android Overview - Xiao-Feng Li 32

33 Activity Lifecycle Activity is integrated with Activity Manager Service through binder 2012/9/21 Android Overview - Xiao-Feng Li 33

34 Android Service Android is service-oriented design 2012/9/21 Android Overview - Xiao-Feng Li 34

35 Android Startup Launch all the system services 2012/9/21 Android Overview - Xiao-Feng Li 35

36 Android Running Sanboxed applications (and services) 2012/9/21 Android Overview - Xiao-Feng Li 36

37 Android Binder Core IPC mechanism that enables Android client/server modular design Like CORBA, but much simpler and more efficient Only for intra-os IPC AIDL to define the service interface (stub, proxy) Support both C++ and Java binding Linux kernel modified to support binder Also for IPC performance and security 2012/9/21 Android Overview - Xiao-Feng Li 37

38 Binder Running 2012/9/21 Android Overview - Xiao-Feng Li 38

39 Example: Alarm Service 2012/9/21 Android Overview - Xiao-Feng Li 39

40 Binder Threads Binder threads exist invisibly for IPC Binder threads created by system automatically 2012/9/21 Android Overview - Xiao-Feng Li 40

41 Android Application Structure Role of binder thread Activity main thread Message Handling Message queue Binder thread Post a message to main thread queue Incoming binder call Binder interface implementation 2012/9/21 Android Overview - Xiao-Feng Li 41

42 Binder Threads Running Binder #1: IApplicationThread Activity lifecycle transition callback is triggered by the incoming call on binder IApplicationThread, that was initiated by AM service. Binder #2: IWindow.stub UI events handling triggered by IWindow.stub binder calls 2012/9/21 Android Overview - Xiao-Feng Li 42

43 Start Activity (1/2) Activity thread IAppThread Activity Manager Service :startactivity (IAppThread..) Check permission, check if new task, change activities sequence, new activity record and queue it into stack startactivitylocked() Post msg :schedulepauseactivity () resumetopactivitylocked () startpausinglocked () Activity1.OnPause() :activitypaused() completepauselocked () Queue the activity into stopping list If target process is not present, call startprocesslocked() to create the process and exit. Following steps will be triggered by the binder call attach() that is first thing main thread does. resumetopactivitylocked () Post msg :schedulelaunchactivity () startspecificactivitylocked () realstartactivitylocked () 2012/9/21 Android Overview - Xiao-Feng Li 43

44 Start Activity (2/2) Activity thread IAppThread Activity Manager Service Activity2.OnCreate() Activity2.OnStart() Activity2.OnResume() activitypause() completeresumelocked () ensureactivitiesvisiblelocked () Activity stop transition is executed at idle time. TIMEOUT activityidleinternal () Get all activities in stopping list and no long visible Post msg Activity1.OnStop() :schedulestopactivity () :activitystopped () processstoppingactivitieslocked () stopactivitylocked() If the finish flag is set in the activity record (in scenario of calling finish), activitystopped() will continue the destroy transition. 2012/9/21 Android Overview - Xiao-Feng Li 44

45 Activities And Tasks (1/2) 2012/9/21 Android Overview - Xiao-Feng Li 45

46 Application A Activities And Tasks (1/2) Application A Activities Map Application B Activity Manager Service Activity Records Stack Activities Map 4 3 Task Stack T1 T2 2012/9/21 Android Overview - Xiao-Feng Li 46

47 Android overview From a system design perspective (Not yet put together here ) PART III Framework design 2012/9/21 Android Overview - Xiao-Feng Li 47

48 Summary Smartphone OS has to be open and elegant Comprehensive and consistent API Service oriented framework to back the API App components are wired into the framework HAL to hide hardware differences UID/process based security support to apps Traditional OS kernel for platform management 2012/9/21 Android Overview - Xiao-Feng Li 48

49 Acknowledgements Some of the figures are taken from materials of their respective owners 2012/9/21 Android Overview - Xiao-Feng Li 49

Overview of CS 282 & Android

Overview of CS 282 & Android Overview of CS 282 & Android Douglas C. Schmidt d.schmidt@vanderbilt.edu www.dre.vanderbilt.edu/~schmidt Institute for Software Integrated Systems Vanderbilt University Nashville, Tennessee, USA CS 282

More information

Take full advantage of IBM s IDEs for end- to- end mobile development

Take full advantage of IBM s IDEs for end- to- end mobile development Take full advantage of IBM s IDEs for end- to- end mobile development ABSTRACT Mobile development with Rational Application Developer 8.5, Rational Software Architect 8.5, Rational Developer for zenterprise

More information

Android Operating System:

Android Operating System: Android Operating System: An in depth introduction CS423 Project Mohammad Alian, Shuomeng Guang, Bo Teng Outline 1. What is Android 2. History 3. Android architecture 4. Android vs Linux 5. Process Management

More information

A Short Introduction to Android

A Short Introduction to Android A Short Introduction to Android Notes taken from Google s Android SDK and Google s Android Application Fundamentals 1 Plan For Today Lecture on Core Android Three U-Tube Videos: - Architecture Overview

More information

Android Fundamentals 1

Android Fundamentals 1 Android Fundamentals 1 What is Android? Android is a lightweight OS aimed at mobile devices. It is essentially a software stack built on top of the Linux kernel. Libraries have been provided to make tasks

More information

Extending Tizen Native Framework with Node.js

Extending Tizen Native Framework with Node.js Extending Tizen Native Framework with Node.js Nishant Deshpande Hyunju Shin Ph.D. Samsung Electronics Contents Native or Web? Why JavaScript, Node.js? Proposed Architecture Sample Applications Going Forward

More information

Introduction to Android Development. Jeff Avery CS349, Mar 2013

Introduction to Android Development. Jeff Avery CS349, Mar 2013 Introduction to Android Development Jeff Avery CS349, Mar 2013 Overview What is Android? Android Architecture Overview Application Components Activity Lifecycle Android Developer Tools Installing Android

More information

Admin. Mobile Software Development Framework: Android Activity, View/ViewGroup, External Resources. Recap: TinyOS. Recap: J2ME Framework

Admin. Mobile Software Development Framework: Android Activity, View/ViewGroup, External Resources. Recap: TinyOS. Recap: J2ME Framework Admin. Mobile Software Development Framework: Android Activity, View/ViewGroup, External Resources Homework 2 questions 10/9/2012 Y. Richard Yang 1 2 Recap: TinyOS Hardware components motivated design

More information

Mobile Devices - An Introduction to the Android Operating Environment. Design, Architecture, and Performance Implications

Mobile Devices - An Introduction to the Android Operating Environment. Design, Architecture, and Performance Implications Mobile Devices - An Introduction to the Android Operating Environment Design, Architecture, and Performance Implications Dominique A. Heger DHTechnologies (DHT) dheger@dhtusa.com 1.0 Introduction With

More information

Graduate presentation for CSCI 5448. By Janakiram Vantipalli ( Janakiram.vantipalli@colorado.edu )

Graduate presentation for CSCI 5448. By Janakiram Vantipalli ( Janakiram.vantipalli@colorado.edu ) Graduate presentation for CSCI 5448 By Janakiram Vantipalli ( Janakiram.vantipalli@colorado.edu ) Content What is Android?? Versions and statistics Android Architecture Application Components Inter Application

More information

ITG Software Engineering

ITG Software Engineering Basic Android Development Course ID: Page 1 Last Updated 12/15/2014 Basic Android Development ITG Software Engineering Course Overview: This 5 day course gives students the fundamental basics of Android

More information

Android Architecture. Alexandra Harrison & Jake Saxton

Android Architecture. Alexandra Harrison & Jake Saxton Android Architecture Alexandra Harrison & Jake Saxton Overview History of Android Architecture Five Layers Linux Kernel Android Runtime Libraries Application Framework Applications Summary History 2003

More information

Example of Standard API

Example of Standard API 16 Example of Standard API System Call Implementation Typically, a number associated with each system call System call interface maintains a table indexed according to these numbers The system call interface

More information

ANDROID BASED MOBILE APPLICATION DEVELOPMENT and its SECURITY

ANDROID BASED MOBILE APPLICATION DEVELOPMENT and its SECURITY ANDROID BASED MOBILE APPLICATION DEVELOPMENT and its SECURITY Suhas Holla #1, Mahima M Katti #2 # Department of Information Science & Engg, R V College of Engineering Bangalore, India Abstract In the advancing

More information

Lecture 1 Introduction to Android

Lecture 1 Introduction to Android These slides are by Dr. Jaerock Kwon at. The original URL is http://kettering.jrkwon.com/sites/default/files/2011-2/ce-491/lecture/alecture-01.pdf so please use that instead of pointing to this local copy

More information

Tablets in Data Acquisition

Tablets in Data Acquisition Tablets in Data Acquisition Introduction In the drive to smaller and smaller data acquisition systems, tablet computers bring a great appeal. Desktop personal computers gave engineers the power to create

More information

Our software strategy

Our software strategy Our software strategy Contents 1. Executive Summary 2. Architecture for differentiation and efficiency 3. Device platforms for all needs Mobile Computers Maemo Smartphones Symbian Mobile Phones Series

More information

Here to take you beyond Mobile Application development using Android Course details

Here to take you beyond Mobile Application development using Android Course details Here to take you beyond Mobile Application development using Android Course details Mobile Application Development using Android Objectives: To get you started with writing mobile application using Android

More information

Research and Design of Universal and Open Software Development Platform for Digital Home

Research and Design of Universal and Open Software Development Platform for Digital Home Research and Design of Universal and Open Software Development Platform for Digital Home CaiFeng Cao School of Computer Wuyi University, Jiangmen 529020, China cfcao@126.com Abstract. With the development

More information

Kerberos + Android. A Tale of Opportunity. Slide 1 / 39. Copyright 2012 yassl

Kerberos + Android. A Tale of Opportunity. Slide 1 / 39. Copyright 2012 yassl Kerberos + Android A Tale of Opportunity Slide 1 / 39 Platform Decisions The Statistics Slide 2 / 39 Why Go Mobile? 80% of the world's population now has a mobile phone. ( 5 Billion Phones ) Slide 3 /

More information

Basic Trends of Modern Software Development

Basic Trends of Modern Software Development DITF LDI Lietišķo datorsistēmu programmatūras profesora grupa e-business Solutions Basic Trends of Modern Software Development Mobile Development Trends Need an App... 3 4 Popular Devices in Latvia

More information

ANDROID OPERATING SYSTEM

ANDROID OPERATING SYSTEM ANDROID OPERATING SYSTEM Himanshi Grover,Devesh Agrawal IT Department, Dronacharya College Of Engg Gurgaon,Haryana,India Abstract - Android has become need rather than luxury these days. The computing

More information

Android Sensors 101. 2014 This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License. CC-BY Google

Android Sensors 101. 2014 This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License. CC-BY Google Android Sensors 101 Atilla Filiz atilla@mind.be 2014 This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License CC-BY Google These slides are made available to you under

More information

Module Title: Software Development A: Mobile Application Development

Module Title: Software Development A: Mobile Application Development Module Title: Software Development A: Mobile Application Development Module Code: SDA SDA prerequisites: CT1, HS1, MS001, CA Award of BSc. In Information Technology The Bachelor of Science in Information

More information

General Introduction

General Introduction Managed Runtime Technology: General Introduction Xiao-Feng Li (xiaofeng.li@gmail.com) 2012-10-10 Agenda Virtual machines Managed runtime systems EE and MM (JIT and GC) Summary 10/10/2012 Managed Runtime

More information

Mobile Devices - An Introduction to the Android Operating Environment. Design, Architecture, and Performance Implications

Mobile Devices - An Introduction to the Android Operating Environment. Design, Architecture, and Performance Implications Mobile Devices - An Introduction to the Android Operating Environment - Design, Architecture, and Performance Implications 1.0 Introduction With the worldwide proliferation of mobile devices, reliability,

More information

Analysis of advanced issues in mobile security in android operating system

Analysis of advanced issues in mobile security in android operating system Available online atwww.scholarsresearchlibrary.com Archives of Applied Science Research, 2015, 7 (2):34-38 (http://scholarsresearchlibrary.com/archive.html) ISSN 0975-508X CODEN (USA) AASRC9 Analysis of

More information

How To Develop Android On Your Computer Or Tablet Or Phone

How To Develop Android On Your Computer Or Tablet Or Phone AN INTRODUCTION TO ANDROID DEVELOPMENT CS231M Alejandro Troccoli Outline Overview of the Android Operating System Development tools Deploying application packages Step-by-step application development The

More information

Using Chroot to Bring Linux Applications to Android

Using Chroot to Bring Linux Applications to Android Using Chroot to Bring Linux Applications to Android Mike Anderson Chief Scientist The PTR Group, Inc. mike@theptrgroup.com Copyright 2013, The PTR Group, Inc. Why mix Android and Linux? Android under Linux

More information

Understanding Android s Security Framework

Understanding Android s Security Framework Understanding Android s Security Framework William Enck and Patrick McDaniel Tutorial October 2008 Systems and Internet Infrastructure Security Laboratory (SIIS) 1 2 Telecommunications Nets. The telecommunications

More information

Технологии Java. Android: Введение. Кузнецов Андрей Николаевич. Санкт-Петербургский Государственный Политехнический Университет

Технологии Java. Android: Введение. Кузнецов Андрей Николаевич. Санкт-Петербургский Государственный Политехнический Университет Технологии Java Android: Введение Санкт-Петербургский Государственный Политехнический Университет Кузнецов Андрей Николаевич 1 2 Архитектура ОС Android See http://www.android-app-market.com/android-architecture.html

More information

Mobile Testing That s Just a Smaller Screen, Right?

Mobile Testing That s Just a Smaller Screen, Right? Mobile Testing That s Just a Smaller Screen, Right? Stephen Janaway Senior Software Test Manager Nokia Mobile Phones Who am I? Stephen Janaway 12 years experience in mobile software testing. Software testing

More information

Mobile Operating Systems. Week I

Mobile Operating Systems. Week I Mobile Operating Systems Week I Overview Introduction Mobile Operating System Structure Mobile Operating System Platforms Java ME Platform Palm OS Symbian OS Linux OS Windows Mobile OS BlackBerry OS iphone

More information

Università Degli Studi di Parma. Distributed Systems Group. Android Development. Lecture 1 Android SDK & Development Environment. Marco Picone - 2012

Università Degli Studi di Parma. Distributed Systems Group. Android Development. Lecture 1 Android SDK & Development Environment. Marco Picone - 2012 Android Development Lecture 1 Android SDK & Development Environment Università Degli Studi di Parma Lecture Summary - 2 The Android Platform Android Environment Setup SDK Eclipse & ADT SDK Manager Android

More information

Android (Basic + Advance) Application Development

Android (Basic + Advance) Application Development Android (Basic + Advance) Application Development You will learn how to create custom widgets, create animations, work with camera, use sensors, create and use advanced content providers and much more.

More information

Mobility Introduction Android. Duration 16 Working days Start Date 1 st Oct 2013

Mobility Introduction Android. Duration 16 Working days Start Date 1 st Oct 2013 Mobility Introduction Android Duration 16 Working days Start Date 1 st Oct 2013 Day 1 1. Introduction to Mobility 1.1. Mobility Paradigm 1.2. Desktop to Mobile 1.3. Evolution of the Mobile 1.4. Smart phone

More information

How to Run Your Existing Android APK on the Tizen Platform. Chandra Bajpai Matt O Keefe OpenMobile World Wide www.openmobileww.com

How to Run Your Existing Android APK on the Tizen Platform. Chandra Bajpai Matt O Keefe OpenMobile World Wide www.openmobileww.com How to Run Your Existing Android APK on the Tizen Platform Chandra Bajpai Matt O Keefe OpenMobile World Wide www.openmobileww.com OpenMobile Speakers Chandra Bajpai Vice President of New Technologies Matthew

More information

Statement of Direction

Statement of Direction Mobile First: Taking Mobile CRM to the Next Level 1 January 2013 Mobile First: Taking Mobile CRM to the Next Level Whitepaper Mobile First: Taking Mobile CRM to the Next Level 2 Table of Contents Notes...

More information

Lecture 17: Mobile Computing Platforms: Android. Mythili Vutukuru CS 653 Spring 2014 March 24, Monday

Lecture 17: Mobile Computing Platforms: Android. Mythili Vutukuru CS 653 Spring 2014 March 24, Monday Lecture 17: Mobile Computing Platforms: Android Mythili Vutukuru CS 653 Spring 2014 March 24, Monday Mobile applications vs. traditional applications Traditional model of computing: an OS (Linux / Windows),

More information

Programming the Android Platform. Logistics

Programming the Android Platform. Logistics Programming the Android Platform CMSC498G Logistics Professor Adam Porter 4125 AVW aporter@cs.umd.edu Course meets W 3:00 3:50 in CSI 3118 1 Goals Learn more about Mobile devices Mobile device programming

More information

Android Basics. Xin Yang 2016-05-06

Android Basics. Xin Yang 2016-05-06 Android Basics Xin Yang 2016-05-06 1 Outline of Lectures Lecture 1 (45mins) Android Basics Programming environment Components of an Android app Activity, lifecycle, intent Android anatomy Lecture 2 (45mins)

More information

LogMeIn Rescue Step-by-Step Connection Guide

LogMeIn Rescue Step-by-Step Connection Guide LogMeIn Rescue Step-by-Step Connection Guide Contents About this Guide...3 Starting a PIN Code Session: Windows + Internet Explorer...4 Starting a PIN Code Session: Windows + Firefox...6 Starting an Email

More information

Reminders. Lab opens from today. Many students want to use the extra I/O pins on

Reminders. Lab opens from today. Many students want to use the extra I/O pins on Reminders Lab opens from today Wednesday 4:00-5:30pm, Friday 1:00-2:30pm Location: MK228 Each student checks out one sensor mote for your Lab 1 The TA will be there to help your lab work Many students

More information

01. Introduction of Android

01. Introduction of Android 01. Introduction of Android Goal Understand the concepts and features of the Android Install the complete Android development environment Find out the one-click install Android development environment

More information

Developing and deploying mobile apps

Developing and deploying mobile apps Developing and deploying mobile apps 1 Overview HTML5: write once, run anywhere for developing mobile applications 2 Native app alternative Android -- Java ios -- Objective-C Windows Mobile -- MS tools

More information

Publishing to TIZEN Using the Automated Conversion/Repackaging of Existing Android Apps. Hyeokgon Ryu, Infraware Technology, Ltd.

Publishing to TIZEN Using the Automated Conversion/Repackaging of Existing Android Apps. Hyeokgon Ryu, Infraware Technology, Ltd. Publishing to TIZEN Using the Automated Conversion/Repackaging of Existing Android Apps Hyeokgon Ryu, Infraware Technology, Ltd. Talking about Needs of Automated Converting from Android To Tizen Introduce

More information

Host-based Intrusion Prevention on Windows and UNIX. Dr. Rich Murphey White Oak Labs

Host-based Intrusion Prevention on Windows and UNIX. Dr. Rich Murphey White Oak Labs Host-based Intrusion Prevention on Windows and UNIX Dr. Rich Murphey White Oak Labs Acknowledgements Niels Provos OpenBSD s systrace DT suggested this thread last year Greg Hoglund insights md5 at da ghettohackers

More information

A Review of Different Comparative Studies on Mobile Operating System

A Review of Different Comparative Studies on Mobile Operating System Research Journal of Applied Sciences, Engineering and Technology 7(12): 2578-2582, 2014 ISSN: 2040-7459; e-issn: 2040-7467 Maxwell Scientific Organization, 2014 Submitted: August 30, 2013 Accepted: September

More information

Last Class: OS and Computer Architecture. Last Class: OS and Computer Architecture

Last Class: OS and Computer Architecture. Last Class: OS and Computer Architecture Last Class: OS and Computer Architecture System bus Network card CPU, memory, I/O devices, network card, system bus Lecture 3, page 1 Last Class: OS and Computer Architecture OS Service Protection Interrupts

More information

Monitoring and control of users in open environments on the Android platform

Monitoring and control of users in open environments on the Android platform Monitoring and control of users in open environments on the Android platform DEGREE IN COMMUNICATIONS SYSTEMS ENGINEERING AUTHOR: TUTOR: Eric Bella Pulgarín Raúl Sánchez Reillo DIRECTOR: Aitor Mendaza

More information

Mobile Application Development

Mobile Application Development Web Engineering Mobile Application Development Copyright 2015 Slides from Federico M. Facca (2010), Nelia Lasierra (updates) 1 2 Where we are? # Date Title 1 5 th March Web Engineering Introduction and

More information

Access Database Hosting. An introduction to Cloud Hosting Access databases from Your Office Anywhere

Access Database Hosting. An introduction to Cloud Hosting Access databases from Your Office Anywhere Access Database Hosting An introduction to Cloud Hosting Access databases from Your Office Anywhere Microsoft Access is a powerful way of creating bespoke database applications for either your own business

More information

Synthesis for Developing Apps on Mobile Platforms

Synthesis for Developing Apps on Mobile Platforms Synthesis for Developing Apps on Mobile Platforms Jeff Foster University of Maryland, College Park Armando Solar-Lezama Massachusetts Institute of Technology Schedule for session Jeff Foster and Armando

More information

An Introduction to Android Application Development. Serdar Akın, Haluk Tüfekçi

An Introduction to Android Application Development. Serdar Akın, Haluk Tüfekçi An Introduction to Android Application Serdar Akın, Haluk Tüfekçi ARDIC ARGE http://www.ardictech.com April 2011 Environment Programming Languages Java (Officially supported) C (Android NDK Needed) C++

More information

SAP NetWeaver 7.4 Planning Product Availability Matrix (Planning PAM)

SAP NetWeaver 7.4 Planning Product Availability Matrix (Planning PAM) SAP NetWeaver 7.4 Planning Product Availability Matrix (Planning PAM) with all EHPs February, 2014 Disclaimer: This document represents current planning for NW only and not for the SAP products using NW

More information

TECHNOLOGIES MOBILE STRATEGY

TECHNOLOGIES MOBILE STRATEGY TECHNOLOGIES MOBILE STRATEGY CONFIDENTIAL AND COPYRIGHT NOTICE The information contained in this document is the exclusive property of IMQS Software (Pty) Ltd. and any respective copyright owners. This

More information

Review On Google Android a Mobile Platform

Review On Google Android a Mobile Platform IOSR Journal of Computer Engineering (IOSR-JCE) e-issn: 2278-0661, p- ISSN: 2278-8727Volume 10, Issue 5 (Mar. - Apr. 2013), PP 21-25 Review On Google Android a Mobile Platform Shyam Bhati 1, Sandeep Sharma

More information

CROSS PLATFORM DEVELOPMENT The HTML5 Way

CROSS PLATFORM DEVELOPMENT The HTML5 Way CROSS PLATFORM DEVELOPMENT The HTML5 Way A Whitepaper by Rahul Joshi Business Analysis & Consulting Division Abstract With over half a dozen mobile platforms out there and more in line to come up, it has

More information

Introduction to Android

Introduction to Android Introduction to Android Ref: Wei-Meng Lee, BEGINNING ANDROID 4 APPLICATION DEVELOPMENT, Ch1, John Wiley & Sons, 2012 1. What is Android Android is a mobile operating system that is based on a modified

More information

Expert Android Apps Development

Expert Android Apps Development Course Contents: 1. 2D Animations Frame-by-Frame Animation o Planning for Frame-by-Frame Animation o Creating the Activity o Adding Animation to the Activity Layout Animation o Basic Tweening Animation

More information

EMPLOYEE LOCATION TRACKING SERVICE

EMPLOYEE LOCATION TRACKING SERVICE WES T ST R EET AWE SOM E STR EET EMPLOYEE LOCATION TRACKING SERVICE Web & Android OVERVIEW GPS fleet tracking services have been on the market for some years now but with the explosion of smartphone usage,

More information

Kernel Types System Calls. Operating Systems. Autumn 2013 CS4023

Kernel Types System Calls. Operating Systems. Autumn 2013 CS4023 Operating Systems Autumn 2013 Outline 1 2 Types of 2.4, SGG The OS Kernel The kernel is the central component of an OS It has complete control over everything that occurs in the system Kernel overview

More information

Issues in Android on Mobile Platform and Their Resolution

Issues in Android on Mobile Platform and Their Resolution Issues in Android on Mobile Platform and Their Resolution 1 Monika A. Ganpate, 2 Dipika R. Shinde 1, 2 Institute of Management and Computer Studies, Thane (West), India, University of Mumbai, India Abstract:

More information

Last Class: OS and Computer Architecture. Last Class: OS and Computer Architecture

Last Class: OS and Computer Architecture. Last Class: OS and Computer Architecture Last Class: OS and Computer Architecture System bus Network card CPU, memory, I/O devices, network card, system bus Lecture 3, page 1 Last Class: OS and Computer Architecture OS Service Protection Interrupts

More information

VMware ThinApp Application Virtualization Made Simple

VMware ThinApp Application Virtualization Made Simple VMware ThinApp Application Virtualization Made Simple Rob Groenhuis Senior Systems Engineer VMware Netherlands BV 2009 VMware Inc. All rights reserved Agenda VMware s Vision Why Application Virtualization?

More information

How To Develop For A Powergen 2.2 (Tegra) With Nsight) And Gbd (Gbd) On A Quadriplegic (Powergen) Powergen 4.2.2 Powergen 3

How To Develop For A Powergen 2.2 (Tegra) With Nsight) And Gbd (Gbd) On A Quadriplegic (Powergen) Powergen 4.2.2 Powergen 3 Profiling and Debugging Tools for High-performance Android Applications Stephen Jones, Product Line Manager, NVIDIA (sjones@nvidia.com) Android By The Numbers 1.3M Android activations per day Android activations

More information

Operating System Components and Services

Operating System Components and Services Operating System Components and Services Tom Kelliher, CS 311 Feb. 6, 2012 Announcements: From last time: 1. System architecture issues. 2. I/O programming. 3. Memory hierarchy. 4. Hardware protection.

More information

Dr. Dimitar Valtchev. 24 June 2010, Stuttgart, Eclipse Embedded Day

Dr. Dimitar Valtchev. 24 June 2010, Stuttgart, Eclipse Embedded Day Dr. Dimitar Valtchev 24 June 2010, Stuttgart, Eclipse Embedded Day ProSyst is a leading company for end-to-end embedded software and OSGi solutions Founded 1997 in Cologne, Germany OSGi member since its

More information

Introduction to Android

Introduction to Android Introduction to Android Android Smartphone Programming Matthias Keil Institute for Computer Science Faculty of Engineering October 19, 2015 Outline 1 What is Android? 2 Development on Android 3 Applications:

More information

Mobile Security - Tutorial 1. Beginning Advanced Android Development Brian Ricks Fall 2014

Mobile Security - Tutorial 1. Beginning Advanced Android Development Brian Ricks Fall 2014 Mobile Security - Tutorial 1 Beginning Advanced Android Development Brian Ricks Fall 2014 Before we begin... I took your Wireless Network Security course in Spring... are you gonna have memes in this?

More information

Introduction to Android Programming (CS5248 Fall 2015)

Introduction to Android Programming (CS5248 Fall 2015) Introduction to Android Programming (CS5248 Fall 2015) Aditya Kulkarni (email.aditya.kulkarni@gmail.com) August 26, 2015 *Based on slides from Paresh Mayami (Google Inc.) Contents Introduction Android

More information

A Look through the Android Stack

A Look through the Android Stack A Look through the Android Stack A Look through the Android Stack Free Electrons Maxime Ripard Free Electrons Embedded Linux Developers c Copyright 2004-2012, Free Electrons. Creative Commons BY-SA 3.0

More information

ArcGIS Web Mapping. Sam Berg, esri sberg@esri.com

ArcGIS Web Mapping. Sam Berg, esri sberg@esri.com ArcGIS Web Mapping Sam Berg, esri sberg@esri.com Agenda ArcGIS and WebMaps The APIs ArcGIS for Flex Viewer ArcGIS for Silverlight Builder ArcGIS for Sharepoint ArcGIS Application Templates ArcGIS Runtime

More information

Hacking your Droid ADITYA GUPTA

Hacking your Droid ADITYA GUPTA Hacking your Droid ADITYA GUPTA adityagupta1991 [at] gmail [dot] com facebook[dot]com/aditya1391 Twitter : @adi1391 INTRODUCTION After the recent developments in the smart phones, they are no longer used

More information

OWB Users, Enter The New ODI World

OWB Users, Enter The New ODI World OWB Users, Enter The New ODI World Kulvinder Hari Oracle Introduction Oracle Data Integrator (ODI) is a best-of-breed data integration platform focused on fast bulk data movement and handling complex data

More information

IT Game Changers: How Cloud, Mobile, Social and Big Data are Redefining Your IT Environment

IT Game Changers: How Cloud, Mobile, Social and Big Data are Redefining Your IT Environment cecmg Annual Meeting / March, 2015 IT Game Changers: How Cloud, Mobile, Social and Big Data are Redefining Your IT Environment Glenn Anderson IBM Lab Services and Training 2013 IBM Corporation 2 (c) Copyright

More information

Workshop on Android and Applications Development

Workshop on Android and Applications Development Workshop on Android and Applications Development Duration: 2 Days (8 hrs/day) Introduction: With over one billion devices activated, Android is an exciting space to make apps to help you communicate, organize,

More information

Android Mobile App Building Tutorial

Android Mobile App Building Tutorial Android Mobile App Building Tutorial Seidenberg-CSIS, Pace University This mobile app building tutorial is for high school and college students to participate in Mobile App Development Contest Workshop.

More information

A Data Centric Approach for Modular Assurance. Workshop on Real-time, Embedded and Enterprise-Scale Time-Critical Systems 23 March 2011

A Data Centric Approach for Modular Assurance. Workshop on Real-time, Embedded and Enterprise-Scale Time-Critical Systems 23 March 2011 A Data Centric Approach for Modular Assurance The Real-Time Middleware Experts Workshop on Real-time, Embedded and Enterprise-Scale Time-Critical Systems 23 March 2011 Gabriela F. Ciocarlie Heidi Schubert

More information

ANDROID DEVELOPER RESUME USA

ANDROID DEVELOPER RESUME USA Android Developer resume usa 1 of 5 1/12/2015 2:28 PM ANDROID DEVELOPER RESUME USA.NET Developers/Architects Resumes Please note that this is a not a Job Board - We are an I.T Staffing Company and we provide

More information

Creating and Using Databases for Android Applications

Creating and Using Databases for Android Applications Creating and Using Databases for Android Applications Sunguk Lee * 1 Research Institute of Industrial Science and Technology Pohang, Korea sunguk@rist.re.kr *Correspondent Author: Sunguk Lee* (sunguk@rist.re.kr)

More information

CS420: Operating Systems OS Services & System Calls

CS420: Operating Systems OS Services & System Calls NK YORK COLLEGE OF PENNSYLVANIA HG OK 2 YORK COLLEGE OF PENNSYLVAN OS Services & System Calls James Moscola Department of Physical Sciences York College of Pennsylvania Based on Operating System Concepts,

More information

SAP NetWeaver 7.5 Browser Support PAM Table of Content

SAP NetWeaver 7.5 Browser Support PAM Table of Content SAP NetWeaver 7.5 Browser Support PAM Table of Content SAP Browser Support Summary SAP Desktop Browser Support Policy SAP Mobile Browser Support Policy Desktop Browser Support SAPUI5, Desktop & Mobile

More information

Software Development Kit

Software Development Kit Open EMS Suite by Nokia Software Development Kit Functional Overview Version 1.3 Nokia Siemens Networks 1 (21) Software Development Kit The information in this document is subject to change without notice

More information

Developing Mapping Applications with ArcGIS Runtime SDK for Windows Mobile. Jay Chen Justin Colville

Developing Mapping Applications with ArcGIS Runtime SDK for Windows Mobile. Jay Chen Justin Colville Developing Mapping Applications with ArcGIS Runtime SDK for Windows Mobile Jay Chen Justin Colville Agenda What is ArcGIS Runtime for Windows Mobile Software Development Kit Application SDK - Introduction

More information

Technology in Action. Alan Evans Kendall Martin Mary Anne Poatsy. Eleventh Edition. Copyright 2015 Pearson Education, Inc.

Technology in Action. Alan Evans Kendall Martin Mary Anne Poatsy. Eleventh Edition. Copyright 2015 Pearson Education, Inc. Technology in Action Alan Evans Kendall Martin Mary Anne Poatsy Eleventh Edition Technology in Action Chapter 4 System Software: The Operating System, Utility Programs, and File Management. Chapter Topics

More information

ANDROID DEVELOPER TOOLS TRAINING GTC 2014. Sébastien Dominé, NVIDIA

ANDROID DEVELOPER TOOLS TRAINING GTC 2014. Sébastien Dominé, NVIDIA ANDROID DEVELOPER TOOLS TRAINING GTC 2014 Sébastien Dominé, NVIDIA AGENDA NVIDIA Developer Tools Introduction Multi-core CPU tools Graphics Developer Tools Compute Developer Tools NVIDIA Developer Tools

More information

Programmazione di sistemi mobili e tablet

Programmazione di sistemi mobili e tablet Programmazione di sistemi mobili e tablet Android Development Carlo Menapace carlo.menapace@factorymind.com Jonny Fox WHO WE ARE Factory Mind is a young cooperative company formed by a team of engineers

More information

Developing Google Android Mobile Clients for Web Services: a Case Study

Developing Google Android Mobile Clients for Web Services: a Case Study tesi di laurea Developing Google Android Mobile Clients for Web Services: a Case Study Anno Accademico 2007/2008 relatore Ch.mo prof. Stefano Russo correlatore Ing. Marcello Cinque candidato Vito Daniele

More information

ODROID Multithreading in Android

ODROID Multithreading in Android Multithreading in Android 1 Index Android Overview Android Stack Android Development Tools Main Building Blocks(Activity Life Cycle) Threading in Android Multithreading via AsyncTask Class Multithreading

More information

Understand and Build Android Programming Environment. Presented by: Che-Wei Chang

Understand and Build Android Programming Environment. Presented by: Che-Wei Chang Real Time System Project 1 Understand and Build Android Programming Environment Advisor: Prof. Tei-Wei i Kuo Presented by: Che-Wei Chang Outline Introduction to Android Framework What is Android Android

More information

How Linux distros became boring

How Linux distros became boring How Linux distros became boring...and Fedora's plan to put boring in its place Presented by Matthew Miller Fedora Project Leader Creative Commons Attribution-ShareAlike 4.0 International (CC BY-SA 4.0)

More information

Cloud Computing for Mobile Devices - Reducing Energy Consumption 1 -

Cloud Computing for Mobile Devices - Reducing Energy Consumption 1 - Proceedings of the 28th EnviroInfo 2014 Conference, Oldenburg, Germany September 10-12, 2014 Cloud Computing for Mobile Devices - Reducing Energy Consumption 1 - Veronika Strokova 2, Sergey Sapegin 3,

More information

The Most Popular UI/Apps Framework For IVI on Linux

The Most Popular UI/Apps Framework For IVI on Linux The Most Popular UI/Apps Framework For IVI on Linux About me Tasuku Suzuki Qt Engineer Qt, Developer Experience and Marketing, Nokia Have been using Qt since 2002 Joined Trolltech in 2006 Nokia since 2008

More information

Introduction to Android

Introduction to Android Introduction to Android Poll How many have an Android phone? How many have downloaded & installed the Android SDK? How many have developed an Android application? How many have deployed an Android application

More information

Oracle Application Development Framework Overview

Oracle Application Development Framework Overview An Oracle White Paper June 2011 Oracle Application Development Framework Overview Introduction... 1 Oracle ADF Making Java EE Development Simpler... 2 THE ORACLE ADF ARCHITECTURE... 3 The Business Services

More information

Architecture (SOSP 2011) 11/11/2011 Minsung Jang

Architecture (SOSP 2011) 11/11/2011 Minsung Jang Cells: A Virtual Mobile Smartphone Architecture (SOSP 2011) Lunch TimeReading Group 11/11/2011 Minsung Jang Summary Novel Architecture for a Virtual Phone How to do away with overhead New way to virtualize

More information

SOFTWARE UNIT 1 PART B C O M P U T E R T E C H N O L O G Y ( S 1 O B J 2 2-3 A N D O B J 3-2)

SOFTWARE UNIT 1 PART B C O M P U T E R T E C H N O L O G Y ( S 1 O B J 2 2-3 A N D O B J 3-2) SOFTWARE UNIT 1 PART B C O M P U T E R T E C H N O L O G Y ( S 1 O B J 2 2-3 A N D O B J 3-2) SOFTWARE CATEGORIES There are two main type of software categories Operating Systems Software Application Software

More information

Mobile Application Marketplace 2015: Market Analysis and Assessment of Future Evolution and Opportunities

Mobile Application Marketplace 2015: Market Analysis and Assessment of Future Evolution and Opportunities Brochure More information from http://www.researchandmarkets.com/reports/3245389/ Mobile Application Marketplace 2015: Market Analysis and Assessment of Future Evolution and Opportunities Description:

More information

Chapter 2 System Structures

Chapter 2 System Structures Chapter 2 System Structures Operating-System Structures Goals: Provide a way to understand an operating systems Services Interface System Components The type of system desired is the basis for choices

More information