Cursul 13 - Sisteme de operare mobile

swarm.cs.pub.ro

Cursul 13 - Sisteme de operare mobile

Moto

Cursul 13

Sisteme de operare mobile

Utilizarea Sistemelor de Operare (USO)

10 ianuarie 2014

Android is free. Free like a puppy.

James DeBragga

General Manager of

Windows Consumer Product Marketing

Automatica si Calculatoare Cursul 13, Sisteme de operare mobile 1/40

Automatica si Calculatoare Cursul 13, Sisteme de operare mobile 2/40

Securitate

Security Question

principii

riscuri

parole

security

engineering

resurse

privilegii

shadow

acces

sudo

ACL

fi ewall

recunoaștere

http://www.funnyjunk.com/funny_pictures/2018640/Qualifying/

root

umask

criptare

Automatica si Calculatoare Cursul 13, Sisteme de operare mobile 3/40

Automatica si Calculatoare Cursul 13, Sisteme de operare mobile 4/40

Cuprins

Sisteme de operare mobile

Sisteme de operare mobile

Android

iOS

Windows Phone

Examen

Sisteme de operare gândite a rula pe dispozitive mobile

(telefoane, tablete, PDA, etc)

◮ Resurse hardware limitate (CPU, memorie, spațiu de stocare)

◮ Cerințe stricte de consum de resurse (energie, putere de

procesare, lățime de bandă)

◮ Suport pentru hardware specific

◮ Touchscreen, GSM/3G/4G, Bluetooth, WiFi, GPS, camera,

NFC, etc.

Concluzie

Automatica si Calculatoare Cursul 13, Sisteme de operare mobile 5/40

Automatica si Calculatoare Cursul 13, Sisteme de operare mobile 7/40

Istoric selectiv

◮ 1996 - Palm Pilot 1000 Personal Digital Assistant (Palm OS)

◮ 1996 - Windows CE apare pe mai multe Handheld PC-uri

◮ 2000 - Symbian este lansat o dată cu Ericsson R380

◮ 2002 - BlackBerry lansează primul telefon cu BlackBerry OS

◮ 2005 - Nokia introduce Maemo OS

◮ 2007 - Apple introduce iPhone și iOS

◮ 2007 - Open Handset Alliance (OHA) anuntă Android

◮ 2009 - Palm lansează webOS

◮ 2010 - Microsoft introduce Windows Phone OS

◮ 2011 - Maemo și Moblin sunt combinate în MeeGo

◮ 2011 - Intel anunță Tizen

◮ 2012 - Mozilla lanzează Firefox OS

◮ 2013 - Ubuntu for Smartphones

Cele mai folosite SO mobile

http://en.wikipedia.org/wiki/File:World_Wide_Smartphone_Sales_Share.png

Automatica si Calculatoare Cursul 13, Sisteme de operare mobile 8/40

Automatica si Calculatoare Cursul 13, Sisteme de operare mobile 9/40


Ce este Android

Istoric

◮ Sistem de operare bazat pe Linux

◮ Gândit să funcționeze pe dispozitive cu ecran tactil

◮ Proiect open-source, sub licență Apache

◮ Principalul dezvoltator: Google

◮ Cel mai utilizat sistem de operare pentru dispozitive mobile

începând cu 2011

◮ Principala problemă: fragmentarea pieței (existența pe piață a

multor versiuni vechi)

◮ 2003 - Andy Rubin fondează Android, Inc. în Palo Alto,

California

◮ 2003 - 2005 - Android Inc. lucrează în secret, nu fac public

nici un produs

◮ 2005 - Google cumpără Android, Inc.

◮ 2005 - 2007 - Rubin continuă să lucreze pentru Google și

dezvoltă un sistem de operare bazat pe Linux

◮ 2007 - Open Handset Alliance, consorțiu de companii ce

include Google, anunță platforma Android

Automatica si Calculatoare Cursul 13, Sisteme de operare mobile 11/40

Automatica si Calculatoare Cursul 13, Sisteme de operare mobile 12/40

Istoric

Aplicații

◮ 2008 - Este lansat primul telefon ce rulează Android 1.0 (HTC

Dream)

◮ 2009 - Android 1.5 Cupcake, Android 1.6 Donut, Android

2.0/2.1 Eclair

◮ 2010 - Android 2.2 Froyo, Android 2.3 Gingerbread

◮ 2011 - Android 3 Honeycomb, Android 4.0 Ice Cream

Sandwich

◮ 2012 - Android 4.1/4.2 Jelly Bean

◮ 2013 - Android 4.3 Jelly Bean, Android 4.4 KitKat

◮ Android - platformă pentru rularea de aplicații

◮ Suport pentru aplicații native (rulează direct în sistemul de

operare) și aplicații Java

◮ Mașină virtuală Java specifică - Dalvik

◮ Recomandare pentru aplicațiile standard: interfața Java

Automatica si Calculatoare Cursul 13, Sisteme de operare mobile 13/40

Automatica si Calculatoare Cursul 13, Sisteme de operare mobile 14/40

Arhitectura

Arhitectura

◮ Kernelul

◮ Bazat pe kernelul Linux

◮ Multe modificări specifice pentru securitate, consum de resurse

◮ Exemplu: Inter Process Communication specific

◮ Exemplu: Nu există swap

◮ Biblioteci din user space

◮ Bionic ca echivalent pentru libc

◮ SQLite, WebKit

◮ Mașina virtuală Java - Dalvik

◮ Java 1.5 SE (fără câteva componente)

◮ Optimizată pentru consumul de resurse

◮ Format de fișiere diferit (.dex în loc de .class)

◮ Set de biblioteci Java

http://en.wikipedia.org/wiki/File:Android-System-Architecture.svg

Automatica si Calculatoare Cursul 13, Sisteme de operare mobile 15/40

Automatica si Calculatoare Cursul 13, Sisteme de operare mobile 16/40

Instalarea aplicațiilor

Securitate

◮ Prin sistemul de pachete

◮ Format de fișiere APK

◮ Arhive de tip zip cu extensia .apk

◮ Un APK include: componentele aplicației, resurse (ex:

imagini), un manifest (fișier cu informații adiționale)

◮ Fiecare APK este semnat digital

◮ Google Play (Android Market) - platforma oficială de

distribuție a aplicațiilor

◮ Rol important al kernelului

◮ Sandboxing

◮ Fiecare aplicație rulează în contul altui utilizator

◮ Verificarea unui set strict de permisiuni (ex: accesarea agendei,

accesarea locației, etc)

◮ O aplicație poate scrie numai în /SDCard și

/data/nume.pachet.aplicație

◮ Implicit nu este permis accesul în contul de root

◮ Aplicațiile din Android Market sunt verificate de Google

Automatica si Calculatoare Cursul 13, Sisteme de operare mobile 17/40

Automatica si Calculatoare Cursul 13, Sisteme de operare mobile 18/40


Fragmentarea pieței

Ce este iOS

http://en.wikipedia.org/wiki/File:Android_chart.png

◮ Sistem de operare mobil dezvoltat de Apple, Inc.

◮ Lansat în 2007, simultan cu iPhone

◮ Rulează pe iPone, iPod Touch, iPad, Apple TV

◮ Nu poate fi licențiat pe hardware non-Apple

◮ Derivat din OS X, cu origini în Unix

◮ Limitare: introducerea târzie a suportului de multitasking

Automatica si Calculatoare Cursul 13, Sisteme de operare mobile 19/40

Automatica si Calculatoare Cursul 13, Sisteme de operare mobile 21/40

Istoric

Noutăți aduse de iOS

◮ 2007 - o dată cu lansarea iPhone este lansat și iPhone OS

◮ 2008 - este lansat SDK-ul ce permite realizarea de aplicații de

către dezvoltatori

◮ 2010 - este lansat iPad, iar interfața iPhone OS este scalată la

un ecran de dimensiuni mari

◮ 2010 - iPhone OS este redenumit iOS

◮ 2013 - versiunea curentă iOS 7

◮ A definit gesturile standard swipe, tap, pinch, și reverse pinch

◮ GUI Design (ex. Springboard - așezarea icon-urilor de aplicații

într-un grid)

◮ AppStore - platforma de distribuție a aplicațiilor

◮ Siri - Intelligent Personal Assistant

Automatica si Calculatoare Cursul 13, Sisteme de operare mobile 22/40

Automatica si Calculatoare Cursul 13, Sisteme de operare mobile 23/40

Gesturi standard iOS

Arhitectura

http://blog.iskysoft.com/gestures-for-ios-mac/

http:

//developer.bada.com/article/The-Basic-Architecture-and-UI-comparisons-between-bada-and-iOS

Automatica si Calculatoare Cursul 13, Sisteme de operare mobile 24/40

Automatica si Calculatoare Cursul 13, Sisteme de operare mobile 25/40

Instalarea aplicațiilor

Securitate

◮ Prin sistemul de pachete

◮ Format de fișiere specific iTunes

◮ AppStore - platforma oficială de distribuție a aplicațiilor

◮ Control foarte riguros al aplicațiilor din iTunes

http://images.apple.com/ipad/business/docs/iOS_Security_May12.pdf

Automatica si Calculatoare Cursul 13, Sisteme de operare mobile 26/40

Automatica si Calculatoare Cursul 13, Sisteme de operare mobile 27/40


Securitate

Ce este Windows Phone

◮ Sandboxing

◮ Fiecare aplicație are acces doar în cadrul unui director ales

aleator la instalare

◮ Protecție avansată la nivel de memorie

◮ Clase de protecție pentru fișiere

◮ Criptarea sistemului de fișiere

◮ Semnarea kernelului pentru a preveni rularea iOS pe alte

platforme hardware și a altor versiuni de software pe

platformele Apple

◮ Sistem de operare mobil dezvoltat de Microsoft

◮ Succesorul sistemului de operare Windows Mobile

◮ Lansat în 2010

◮ Abordare diferită a interfeței grafice comparativ cu

iOS/Android (Metro și Live Tiles)

◮ Limitare: aplicațiile Windows Phone nu sunt compatibile cu

Windows Mobile

Automatica si Calculatoare Cursul 13, Sisteme de operare mobile 28/40

Automatica si Calculatoare Cursul 13, Sisteme de operare mobile 30/40

Istoric

Instalarea aplicațiilor

◮ 2010 - este lansat Windows Phone 7 (arhitectură bazată pe

Windows CE)

◮ 2012 - este lansat Windows Phone 8, care partajează

componente software cu Windows 8 (arhitectura bazată pe

Windows NT)

◮ Prin sistemul de pachete

◮ Format de fișiere specific Windows Phone Store

◮ Windows Phone Store - platforma oficială de distribuție a

aplicațiilor

◮ Selecție limitată de aplicații pe Windows Phone Store

Automatica si Calculatoare Cursul 13, Sisteme de operare mobile 31/40

Automatica si Calculatoare Cursul 13, Sisteme de operare mobile 32/40

Detalii despre verificarea finală

Examenul final

◮ Două etape de verificare:

◮ Examen final (grilă, din materia de curs) - 5p

◮ Colocviu laborator (test practic, din materia de laborator) -

2,5p

◮ http://swarm.cs.pub.ro/~george/uso/regulament

◮ Planificarea va fi anunțată pe http://acs.curs.pub.ro și

pe http://swarm.cs.pub.ro/~george/uso/

◮ Vineri 17.01.2013

◮ 3 săli: EG207, EG202, ED011

◮ Intervale de timp: 08:00-09:00 și 09:00-10:00

◮ Examen online (folosind moodle)

◮ 44 de intrebări grilă, timp de lucru 45 de minute

◮ Fără nici un material ajutător

Automatica si Calculatoare Cursul 13, Sisteme de operare mobile 34/40

Automatica si Calculatoare Cursul 13, Sisteme de operare mobile 35/40

Colocviu laborator

Cuvinte cheie

◮ Joi 16.01.2013: 10:00-12:00 și 12:00-14:00

◮ Vineri 17.01.2013: 10:00-12:00 și 12:00-14:00

◮ 2 săli: EG106 si EG207

◮ Examen practic

◮ 10 exerciții, timp de lucru 100 de minute

◮ Se poate accesa cartea de USO, în format electronic

Sisteme de operare mobile

◮ Android

◮ iOS

◮ Windows Phone

◮ Aplicații

◮ AppStore

◮ Gesturi

◮ Sandboxing

◮ Criptare

◮ Dalvik

Automatica si Calculatoare Cursul 13, Sisteme de operare mobile 36/40

Automatica si Calculatoare Cursul 13, Sisteme de operare mobile 38/40


Resurse utile

◮ http://en.wikipedia.org/wiki/Mobile_operating_system

◮ http://en.wikipedia.org/wiki/Comparison_of_mobile_

operating_systems

◮ http:

//en.wikipedia.org/wiki/Android_(operating_system)

◮ http://en.wikipedia.org/wiki/IOS_(Apple)

◮ http://en.wikipedia.org/wiki/Windows_Phone

Automatica si Calculatoare Cursul 13, Sisteme de operare mobile 39/40

More magazines by this user
Similar magazines