distributed systems – exercises - eth z systems – exercises | 1 distributed systems ......

20
Distributed Systems – Exercises 1 | Distributed Systems – HS 2014 Leyna Sadamori Leyna Sadamori [email protected] Distributed Systems – Exercises

Upload: vancong

Post on 07-May-2018

222 views

Category:

Documents


5 download

TRANSCRIPT

Distributed Systems – Exercises 1 | Distributed Systems – HS 2014 Leyna Sadamori

Leyna Sadamori [email protected]

Distributed Systems – Exercises

Distributed Systems – Exercises 2 | Distributed Systems – HS 2014 Leyna Sadamori

§  Programming exercises §  Three assignments §  One open project §  Can be carried forward from last year

§  Theoretical exercises §  Exam preparation for Part 1 (Mattern) §  Assignments for Part 2 (Wattenhofer)

VS Exercises

Distributed Systems – Exercises 3 | Distributed Systems – HS 2014 Leyna Sadamori

§  Written exam counts 180 points §  Assignment 1-3 count 10 points each §  Open project counts 15 points §  à Total achievable points are 180 + 45 = 225 points

§  Final grade is derived from the ratio

Final Grade

achieved points

225 points

Distributed Systems – Exercises 4 | Distributed Systems – HS 2014 Leyna Sadamori

Mobile Platform for Distributed Systems

Distributed Systems – Exercises 5 | Distributed Systems – HS 2014 Leyna Sadamori

Android Smartphone Market Share Worldwide

Source: http://stats.areppim.com/stats/stats_mobiosxtime.htm

0%

10%

20%

30%

40%

50%

60%

70%

80%

90%

100%

Other

SymbianOS

Windows Phone

BlackBerry OS

iOS

Android

Distributed Systems – Exercises 6 | Distributed Systems – HS 2014 Leyna Sadamori

Platform Internals

Hardware

Linux Kernel

Memory Management

Process Management

Network Stack

I/O Display Keypad

Touchscreen

Power Management

Other Drivers WiFi, Bluetooth, Camera, Audio, Telephony, Flash,

Sensors

Dalvik Virtual Machine

Android Application A

Dalvik Virtual Machine

Android Application B

Dalvik Virtual Machine

Android Application C

Security

Linux User A

Linux User B

Linux User C

Distributed Systems – Exercises 7 | Distributed Systems – HS 2014 Leyna Sadamori

Android Key Terms

§  «Activity» §  Logical unit of a user activity

(like window in a computer program) §  Usually full-screen (cf. Fragments)

§  «View» §  Hierarchical UI element §  Combined in layouts and

extended to Widgets with more functionality

§  «Service» §  Background activity without UI, e.g., music player or FTP server

Distributed Systems – Exercises 8 | Distributed Systems – HS 2014 Leyna Sadamori

Android Key Terms

§  «Intent» §  Starts or switches between «Activities» §  Passive data structure §  Describes the action

§  An explicit class to activate §  Or implicit components that match an «Intent filter»

§  «BroadcastReceiver» §  Listens for global events (Intents)

e.g., «headphones were plugged» sent by system §  Can delegate to preferred Activity §  Can inform the user

Distributed Systems – Exercises 9 | Distributed Systems – HS 2014 Leyna Sadamori

Activity Lifecycle

§  Multi-Tasking §  OS keeps apps alive

as long as possible §  On memory shortage,

processes are killed according to their priority

§  States of an Activity §  Running (Resumed) §  Paused §  Stopped §  Finished/killed

Distributed Systems – Exercises 10 | Distributed Systems – HS 2014 Leyna Sadamori

Online Help

§  You’ll find a lot of resources in the Internet

§  For general introductions, you can start here: §  http://developer.android.com/guide/index.html

§  For specific problems à Google!

Distributed Systems – Exercises 11 | Distributed Systems – HS 2014 Leyna Sadamori

Programming Exercises

Distributed Systems – Exercises 12 | Distributed Systems – HS 2014 Leyna Sadamori

Team

Hông-Ân Cao Leyna Sadamori Marian George Mihai Bace

Distributed Systems – Exercises 13 | Distributed Systems – HS 2014 Leyna Sadamori

Organization

§  Teams of three §  Develop with the emulator §  Test on the actual phone

§  Smart phones §  Use your own Android – no rooting required §  Nexus 5 with Android 4.4.3 available by us

§  Grading §  Per group §  Can be carried forward from/to last year

Distributed Systems – Exercises 14 | Distributed Systems – HS 2014 Leyna Sadamori

Schedule

§  A1: GUI and hardware §  29 Sep 2014 – 08 Oct 2014 (1.5 weeks)

§  A2: Client/server, Web services §  06 Oct 2014 – 20 Oct 2014 (2 weeks)

§  A3: Group communication and logical time §  20 Oct 2014 – 03 Nov 2014 (2 weeks)

§  A4: Open project (with presentation) §  31 Oct 2014 – 19 Dec 2014 (7 weeks)

Distributed Systems – Exercises 15 | Distributed Systems – HS 2014 Leyna Sadamori

Homework

Distributed Systems – Exercises 16 | Distributed Systems – HS 2014 Leyna Sadamori

Create Groups

§  Log in to submission system §  https://www.vs.inf.ethz.ch/edu/vs/submissions/

§  First „exercise“ is to register a group §  Leader starts a group §  Add partners §  Specify which phone you will be using

§  Own Android §  Lecture phone (Nexus 5)

Distributed Systems – Exercises 17 | Distributed Systems – HS 2014 Leyna Sadamori

Get a phone if necessary

§  A number of Nexus 5 are available §  Android 4.4.2 pre-installed §  For the BLE task, you have to update to 4.4.3! §  Pick-up today, after 1 p.m. in CNB H 108

§  Activate debugging

§  «Settings > About phone > Build number» – Tab several times §  «Settings > Developer options > Android debugging»

Distributed Systems – Exercises 18 | Distributed Systems – HS 2014 Leyna Sadamori

Install the Toolchain

§  Java SE JDK §  http://www.oracle.com/technetwork/java/javase/downloads/index.html

§  Android SDK: ADT Bundle including Eclipse §  http://developer.android.com/sdk/index.html

§  Use Android SDK Manger to get at least §  Android 4.3 (API Level 18) §  Android 4.4.2 (API Level 19)

§  Device driver §  Android Composite ADB Interface §  Google for your OS / device combination

§  E.g. for Google phones (windows only) §  http://developer.android.com/sdk/win-usb.html

Distributed Systems – Exercises 19 | Distributed Systems – HS 2014 Leyna Sadamori

Test Your Toolchain

§  Create an AVD in the «Android Virtual Device Manager» §  Device: Nexus 5 §  Target: Android 4.4.2 - API Level 19 §  CPU: ARM §  Emulator Options: Host GPU

§  Create an «Android Sample Project» in Eclipse §  New > Other > Android Sample Project §  Sample: ApiDemos

§  Run the project as Android application §  On the AVD §  On your phone

Distributed Systems – Exercises 20 | Distributed Systems – HS 2014 Leyna Sadamori

Android Tutorial

§  Monday, 29 September 2014 §  Introduction to Android programming §  «Live-Hacking» together with you

à Be prepared!

§  Monday, 29 September 2014 §  Assignment 1