Android Introduzione all architettura, alla programmazione e alla sicurezza. Alessandro Tanasi alessandro@tanasi.
|
|
- Emilio Barone
- 8 anni fa
- Visualizzazioni
Transcript
1 Android Introduzione all architettura, alla programmazione e alla sicurezza Alessandro Tanasi alessandro@tanasi.it
2 Fun & profit Fun Sviluppo applicazioni Invenzione di nuove applicazioni per soddisfare vecchie e nuove esigenze Attività di ricerca Profit Vendita delle applicazioni Sviluppo applicazioni su commissione Vendita o abuso dei risultati di ricerca
3 Architettura
4 Android Software stack per device mobili Middleware Sistema operativo Linux con kernel 2.6 Driver per l'hardware (GPS, accelerometri,..) Librerie Android runtime Application framework Applicazioni Native: telefono, contatti, browser, Di terze parti
5 Kernel Linux kernel e driver che fanno da hardware abstraction layer Core system services per security, memory management, process management, network stack
6 Librerie e runtime Librerie (per la gran parte in linguaggio nativo) esposte attraverso l'application framework Android runtime: Dalvik Virtual Machine e sue librerie core
7 Application framework API ad alto livello Le applicazioni native Android e quelle di terze parti usano le stesse API
8 Sequenza di avvio Il bootloader carica il kernel Demoni per la gestione low level dell'hardware Zygote e Dalvik VM Il service manager viene avviato (binders e comunicazioni IPC) Altri manager App rimanenti
9 Dalvik Virtual Machine Bytecode interpreter (no JIT) Register based Lente CPU ( MHz), poca RAM (64MB) Senza swap Alta densità semantica Istruzioni speciali Ottimizzata per istanze multiple Ottimizzata per avere un memory footprint minimale Esegue file.dex su OS POSIX compliant Si appoggia al kernel per threading e memory management di basso livello
10 Dalvik Executable Format Riduzione delle dimensioni Sostanziale differenza semantica con il bytecode Java Nessuna compressione Comunque minori di un JAR nel caso medio Vengono gestiti in modo efficace da mmap() Dexdump, undx
11 Compilazione e building Compilazione con il compilatore standard Java Conversion in.dex con l'utility dx Nel caso si usino IPC, processing AIDL Le risorse sono incluse nel package apk
12 Sviluppo
13 Android SDK Android API Development tools Emulatore Android Dalvik Debug Monitoring Service (DDMS) Documentazione ed esempi
14 Native Development Kit (NDK) Permettono l'utilizzo di componenti in codice nativo ( C o C++) Cross-toolchains (compilatori, linkers, etc..) per generare binari ARM Libc, libm, OpenGL ES 1.1, JNI interface, libz Non permette di creare applicazione nativeonly Il runtime applicativo rimane la Dalvik VM
15 Android Scripting Environment Programmare in Python, Perlm, Jruby, BeanShell, Lua.. Per casi particolare in cui bisogna adottare paradigmi di programmazione diversi da quelli imposti dall'sdk Accesso semplificato e non completo alle API Es: web server in 4 righe di python
16 Development Tools Eclipse Plugin: Andreoid Dev Tools CLI: activitycreator.py Compila e crea il pacchetto automaticamente Lancia l'emulatore in debugging mode Genere la struttura del progetto Ant build.xml file IntelliJ project files DroidDraw, SensorSimulator
17 Esempio \
18 Anatomia di un'app
19 Lego per costruzioni Activity: Componente UI (tipicamente una schermata, presentation layer) Service: Task in background Content Provider: Gestisce e condivide dati tra applicazioni Intent: Messaggistica asincrona Intent filter: Dichiarazione XML dei messaggi che possono essere gestiti Broadcast Receiver: attende intents broadcast che corrispondono a certi criteri (Intent filter) Manifest: Proprietà dell'applicazione
20 User interface Composta da oggetti View e ViewGroup (vari tipi) Layout definito in file XML Stringhe memorizzate separatamente Sottoscrizione agli eventi dell'ui tramite listener o overriding callback Definizione dei menu e loro creazione automatica Notifiche Adapter per le viste dinamicamente Stili e temi
21 Esempio <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android=" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical" > <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="hello, I am a TextView" /> <Button android:id="@+id/button" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="hello, I am a Button" /> </LinearLayout>
22 Resource e asset Generalmente sono elementi esterni referenziati dall'applicazione Immagini, audio, video, stringhe di testo, layout, temi Directory per resource (res/) e directory per asset (assets/) La differenza è nel metodo di accesso I18n
23 Data Storage Tecniche differenti per memorizzare dati Shared preferences: meccanismo per memorizzare strutture chiavi-valore SQLite: DBMS relazionale per memorizzare dati articolati Files: RW di file sulla memoria locale ed SD card Network: Utilizzando java.net.* e android.net.*
24 Multimedia Grafica 2D e grafica 3D con OpenGL ES API Offre funzioni built-in di encoding/decoding per alcuni media types MediaPlayer e MediaRecorder android.location e Google Maps library Accelerometro, bussola
25 AndroidManifest.xml Ogni applicazione deve avere un AndroidManifest.xml file Descrive l'applicazione: Nome del package Java Descrive i suoi componenti Permessi richiesti dall'applicazione Permessi richiesti per interagire con i suoi componenti Opzionali informazioni per testing (profiling) Dipendenza dalla versione delle android API Librerie utilizzate
26 Esempio di manifest <manifest xmlns:android=" package="org.sipdroid.sipua" android:versionname="1.1.3 beta" android:versioncode="32"> <uses-sdk android:minsdkversion="3" /> <application <activity android:name=".ui.sipdroid" android:launchmode="singleinstance" android:configchanges="orientation keyboardhidden"> <intent-filter> <action android:name="android.intent.action.main" /> <category android:name="android.intent.category.launcher" /> </intent-filter> </activity> <receiver android:name=".ui.caller"/> <receiver android:name=".ui.receiver" android:enabled="true"> <intent-filter> <action android:name="android.intent.action.boot_completed" /> </intent-filter> </receiver> </application> <uses-permission android:name="android.permission.internet"></usespermission>
27 Life Cycle Le applicazioni running sono gestite in una gerarchia: foreground process (priorità critica) visible process (alta priorità) service process (bassa priorità) background process empty process Le Activity sono mantenute in un activity stack (LIFO) Un activity ha tre stati: running o active, paused, stopped
28 Life cycle in dettaglio
29 Pubblicare un'applicazione Iscriversi al market come sviluppatore (25 ) Dare un numero di versione Firmare il pacchetto Pubblicare l'applicazione Google trattiene il 30% degli incassi
30 Sicurezza
31 Android Security Model Ogni processo viene eseguito in una DVM separata File non condivisi tra applicazioni Linux + Android permission model UID e GID distinti assegnati all'installazione Stack address randomization
32 Android Permissions Limite alle funzionalità di un software: android.permission Granularità sulle azioni e sull'accesso ai dati Specificate nel file manifest <uses-permission android:name="android.permission.read_contacts"> </uses-permission> <uses-permission android:name="android.permission.write_contacts"> </uses-permission>
33 Ma... Bypass memory protections Vunerabilità riscontrate La sandbox è abbastanza granulare per far girare applicazioni non trusted? Marketing profiling, E.T. chiama sempre casa Non conoscenza del funzionamento interno di un'applicazione (client HTTP o HTTPS?) Rootkit, managed code rootkit
34 Conclusioni
35 Conclusioni L'architettura è disegnata pensando anche allo sviluppatore Lo sviluppo è semplice e veloce Sistemi di security granulari allo scopo di isolare le applicazioni in una sandbox Lo sviluppo può essere divertente e redditizio C'è ampio spazio per la ricerca
36 Approfondimenti
37 Domande
Android Introduzione all architettura, alla programmazione e alla sicurezza. Alessandro Tanasi - http://www.tanasi.it - alessandro@tanasi.
Android Introduzione all architettura, alla programmazione e alla sicurezza Alessandro Tanasi - http://www.tanasi.it - alessandro@tanasi.it Fun & profit Fun Sviluppo applicazioni Invenzione di nuove applicazioni
DettagliANDROID. Domenico Talia. Università della Calabria. talia@dimes.unical.it
ANDROID Domenico Talia Università della Calabria talia@dimes.unical.it Sistemi Operativi per Mobile! I sistemi operativi per sistemi mobili seguono i principi dei SO classici ma devono gestire risorse
DettagliAndroid world. Sviluppare app per Android. Un insieme di software per dispositivi mobili (smartphone, tablet, portatili...)
Android world Un insieme di software per dispositivi mobili (smartphone, tablet, portatili...) Contiene un Sistema Operativo, software middleware e applicazioni varie Sviluppato da Open Handset Alliance,
DettagliSistemi Mobili e Wireless Android Primi passi
Sistemi Mobili e Wireless Android Primi passi Stefano Burigat Dipartimento di Matematica e Informatica Università di Udine www.dimi.uniud.it/burigat stefano.burigat@uniud.it Ambiente di sviluppo L'ambiente
DettagliProgrammazione Android. Luca Morettoni <luca@morettoni.net> http://www.morettoni.net
Programmazione Android Luca Morettoni http://www.morettoni.net Android Programming Cos'è Android; Concetti di base sulla programmazione: Q&A AndroidManifest; Activities; Services;
DettagliTecniche di progettazione e sviluppo di applicazioni mobile
Slide del corso FSE Tecniche di progettazione e sviluppo di applicazioni mobile svolto presso AREA Science Park Padriciano - Trieste - Italy diegozabot@yahoo.it Android Introduzione diegozabot@yahoo.it
DettagliBasi Android. Android si definisce open. Con8ene tecnologie open source. Il codice di Android è open. Licenza Open Source Apache 2.
Basi Android 1 Android Cosa è Android? Android è un insieme di strumen8 e librerie per sviluppare applicazioni mobili è più di un SO Android si definisce open Con8ene tecnologie open source Linux Il codice
DettagliSviluppo su Android. Linux Day Torino 2010
Sviluppo su Android Linux Day Torino 2010 Francesco Ronchi francesco.ronchi@gmail.com - www.synesthesia.it Cos'è Android Sistema operativo dedicato ai device mobili: cellulari, palmari, tablet, navigatori...
DettagliProgrammazione in ambiente
Università Politecnica delle Marche Dipartimento di Ingegneria dell Informazione Programmazione in ambiente Android Laura Montanini - laura.montanini@univpm.it Corso di Tecnologie per le TLC 2013-2014
DettagliScuola Professionale e Filologica Geom. F.Borgogna Vercelli
Scuola Professionale e Filologica Geom. F.Borgogna Vercelli Corsi ANDROID 2013/2014 Benvenuti nel mondo dinamico dello sviluppo di applicazioni per smartphone e tablet Android Corsi ANDROID 2013/2014 L
DettagliProgrammazione Android
Programmazione Android Giovanni Perbellini, Stefano Cordibella Università di Verona EDALab S.r.l. Agenda Introduzione Android Overview Ambiente di sviluppo Esempi Helloworld Weather 2 1 Cos è Android?
DettagliSistemi Mobili e Wireless Android Introduzione alla piattaforma
Sistemi Mobili e Wireless Android Introduzione alla piattaforma Stefano Burigat Dipartimento di Matematica e Informatica Università di Udine www.dimi.uniud.it/burigat stefano.burigat@uniud.it Cos'è Android?
DettagliMagiCum S.r.l. Progetto Inno-School
MagiCum S.r.l. Progetto Inno-School Area Sviluppo Software Autore: Sergio Gandola Revisione: 2 Data: 07/06/13 Titolo: Documentazione Tecnica Diario File:Documentazione Tecnica.pdf Sito: http://inno-school.netsons.org/
DettagliSISTEMI OPERATIVI ANDROID
SISTEMI OPERATIVI ANDROID Argomenti» Introduzione al sistema Android» Generalità sull architettura del sistema» Architettura a livello Kernel» Architettura a livello applicazione» Gestione dei permessi
DettagliLa geolocalizzazione
La geolocalizzazione La maggior parte dei dispositivi mobili di ultima generazione è dotata di un antenna GPS che permette di conoscere, in breve tempo e con la precisione di qualche metro, la propria
DettagliAndroid. Android. Sviluppo di applicazioni. Dalvik 19/03/2011. A. Ferrari
Android Android A. Ferrari Android è un sistema opera8vo per disposi8vi mobili. Inizialmente sviluppato da Startup Android Inc. acquisita poi nel 2005 da Google Inc. Il cuore di Android è un kernel Linux.
DettagliAndroid. Anatomia di una applicazione
Android Anatomia di una applicazione Elementi di base Gli elementi di base per costruire una applicazione Android sono cinque: Activity Intent Broadcast Receiver Service Content Provider 2 Activity (1/3)
DettagliAndroid development. Sviluppo di Mobile Apps sul sistema operativo di Google
Android development Sviluppo di Mobile Apps sul sistema operativo di Google Agenda Giorni: Gio 14/04/2011 Ven 15/04/2011 Gio 21/04/2011 Ven 22/04/2011 Suddivisione: Mattina: teoria Pomeriggio: pratica
Dettagli14/10/2015 ALESSANDRAZULLO SVILUPPO DI APPLICAZIONI ANDROID- VERSIONE 1. http://alessandrazullo.altervista.org Alessandra Zullo
14/10/2015 ALESSANDRAZULLO SVILUPPO DI APPLICAZIONI ANDROID- VERSIONE 1 http://alessandrazullo.altervista.org Alessandra Zullo Indice Provvisorio INTRODUZIONE... 3 COMPONENTI PRINCIPALI... 3 PROCESSI...
DettagliSviluppo di un applicazione mobile per la gestione degli interventi tecnici tramite geolocalizzazione
UNIVERSITA DEGLI STUDI DI FERRARA Corso di Laurea in informatica Anno Accademico 2011-2012 Sviluppo di un applicazione mobile per la gestione degli interventi tecnici tramite geolocalizzazione Relatore:
DettagliIndice generale. Capitolo 1 Introduzione ad Android... 1
Prefazione Introduzione...xvii...xix Capitolo 1 Introduzione ad Android... 1 Che cos è Android... 2 Un po di storia... 3 Android e Java... 4 Confronto con J2ME... 6 La Dalvik Virtual Machine... 9 L architettura
DettagliSISTEMI OPERATIVI ANDROID. Argomenti
SISTEMI OPERATIVI ANDROID Argomenti» Introduzione al sistema Android» Generalità sull architettura del sistema» Architettura a livello Kernel» Architettura a livello applicazione» Gestione dei permessi
DettagliINTRODUZIONE ALLE PIATTAFORME
INTRODUZIONE ALLE PIATTAFORME Android ios Windows Phone 8 Android 2 Cos è Android? Un moderno open-source sistema operativo Componenti: Linux kernel Java Core applications 3 Perché è stato un successo
DettagliApproccio stratificato
Approccio stratificato Il sistema operativo è suddiviso in strati (livelli), ciascuno costruito sopra quelli inferiori. Il livello più basso (strato 0) è l hardware, il più alto (strato N) è l interfaccia
DettagliCorso App modulo Android. Antonio Gallo info@laboratoriolibero.com
Corso App modulo Android Antonio Gallo info@laboratoriolibero.com Strumentazione: PC + smartphone Android + cavo micro USB per connessione Framework Phonegap SDK di Android JDK (Java) Eclipse (opzionale)
Dettagli[AD.AGIO] ANDROID SDK
[AD.AGIO] ANDROID SDK 2013.06 Pag. 1 1. PREMESSA Il presente documento riporta informazioni riservate il cui utilizzo è confidenziale e permesso esclusivamente nell'ambito del rapporto di fornitura in
DettagliIntroduzione alla Virtualizzazione
Introduzione alla Virtualizzazione Dott. Luca Tasquier E-mail: luca.tasquier@unina2.it Virtualizzazione - 1 La virtualizzazione è una tecnologia software che sta cambiando il metodo d utilizzo delle risorse
DettagliPotenza Elaborativa, Sistemi Operativi e Virtualizzazione
Potenza Elaborativa, Sistemi Operativi e Virtualizzazione Roma, Febbraio 2011 Operating Systems & Middleware Operations Potenza Elaborativa e Sistemi Operativi La virtualizzazione Operating Systems & Middleware
DettagliArchitettura di un sistema operativo
Architettura di un sistema operativo Dipartimento di Informatica Università di Verona, Italy Struttura di un S.O. Sistemi monolitici Sistemi a struttura semplice Sistemi a livelli Virtual Machine Sistemi
DettagliCorso di programmazione di sistemi mobile 1. Android. Architettura, ambiente di sviluppo e struttura di un progetto
Corso di programmazione di sistemi mobile 1 Android Architettura, ambiente di sviluppo e struttura di un progetto Corso di programmazione di sistemi mobile 2 Android e Java Android non esegue bytecode
DettagliScaletta. Strumenti di sviluppo Prima applicazione Aspetti peculiari di Android. Conclusioni. Activity e Intent. MoBe s.r.l.
Scaletta Strumenti di sviluppo Prima applicazione Aspetti peculiari di Android Activity e Intent Conclusioni Strumenti di sviluppo Disponibili per Windows, Mac OS X (Intel) e Linux Strumenti JDK (Java
DettagliDefinizione Parte del software che gestisce I programmi applicativi L interfaccia tra il calcolatore e i programmi applicativi Le funzionalità di base
Sistema operativo Definizione Parte del software che gestisce I programmi applicativi L interfaccia tra il calcolatore e i programmi applicativi Le funzionalità di base Architettura a strati di un calcolatore
DettagliSistemi Mobili e Wireless Android Localizzazione utente
Sistemi Mobili e Wireless Android Localizzazione utente Stefano Burigat Dipartimento di Matematica e Informatica Università di Udine www.dimi.uniud.it/burigat stefano.burigat@uniud.it Localizzazione utente
DettagliLezione 1 Primi passi con Android
A cura di Carlo Pelliccia Meno di tre anni fa Google ha rilasciato una versione preliminare del kit di sviluppo di Android, il suo nuovo sistema operativo dedicato agli smartphone. Futurologi e semplici
DettagliLezione 1. Sviluppo di Applicazioni per ios. Panoramica Tecnologica ios e ios SDK Strumenti di sviluppo per ios. Università di Pisa
Lezione 1 Sviluppo di Applicazioni per ios Panoramica Tecnologica ios e ios SDK Strumenti di sviluppo per ios Oggi... ios e ios SDK Strumenti di sviluppo Linguaggio Objective C Fondamenti di OOP Dispositivi
DettagliINTRODUZIONE ALLA PROGRAMMAZIONE ANDROID
INTRODUZIONE ALLA PROGRAMMAZIONE ANDROID Giuseppe Marziale Bari, 27 Novembre 2013 About Me (Giuseppe Marziale) Sono Laureato in Ingegneria informatica specializzazione in sistema informativi e reti ( Ottobre
DettagliInstallazione e caratteristiche generali 1
Installazione e caratteristiche generali 1 Introduzione SIGLA Ultimate e SIGLA Start Edition possono essere utilizzati solo se sono soddisfatti i seguenti prerequisiti: Microsoft.Net Framework 3.5 (consigliato
DettagliLezione 1 Primi passi con Android
A cura di Carlo Pelliccia Android è una piattaforma software per smartphone e tablet realizzata dal consorzio noto come Open Handset Alliance, di cui Google è capofila e maggiore contributore, ed al quale
DettagliCon il termine Sistema operativo si fa riferimento all insieme dei moduli software di un sistema di elaborazione dati dedicati alla sua gestione.
Con il termine Sistema operativo si fa riferimento all insieme dei moduli software di un sistema di elaborazione dati dedicati alla sua gestione. Compito fondamentale di un S.O. è infatti la gestione dell
DettagliStrumenti per il testing di applicazioni in ambiente Android
tesi di laurea Strumenti per il testing di applicazioni in ambiente Android Anno Accademico 2010\2011 relatore Ch.mo prof. Marcello Cinque candidato Nome Domenico Paone Matr. 534\003571 Android Testing
DettagliSistemi Operativi STRUTTURA DEI SISTEMI OPERATIVI 3.1. Sistemi Operativi. D. Talia - UNICAL
STRUTTURA DEI SISTEMI OPERATIVI 3.1 Struttura dei Componenti Servizi di un sistema operativo System Call Programmi di sistema Struttura del sistema operativo Macchine virtuali Progettazione e Realizzazione
DettagliIl.NET Framework. By Dario Maggiari. L architettura del.net Framework è riassunta, nel complesso, nella figura seguente:
Il.NET Framework By Dario Maggiari L architettura del.net Framework è riassunta, nel complesso, nella figura seguente: Il cuore del.net Framework è costituito dal CLR (Common Language Runtime) che, secondo
DettagliCorso di Sistemi di Elaborazione delle informazioni
Corso di Sistemi di Elaborazione delle informazioni Sistemi Operativi Francesco Fontanella Complessità del Software Software applicativo Software di sistema Sistema Operativo Hardware 2 La struttura del
DettagliIl CMS Moka. Giovanni Ciardi Regione Emilia Romagna
Il CMS Moka Giovanni Ciardi Regione Emilia Romagna Moka è uno strumento per creare applicazioni GIS utilizzando oggetti (cartografie, temi, legende, database, funzioni) organizzati in un catalogo condiviso.
DettagliRealizzazione di un servizio per la rilevazione di malfunzionamenti in ambiente Android
Facoltà di Ingegneria Corso di Studi in Ingegneria Informatica tesi di laurea Realizzazione di un servizio per la rilevazione di malfunzionamenti in ambiente Android Anno Accademico 2011/12 relatore Ch.mo
DettagliIntroduzione alla programmazione Android. Emanuel Di Nardo
Introduzione alla programmazione Android 1 Emanuel Di Nardo emanuel.dinardo@gmail.com Architettura di base Insieme software composto da: Sistema operativo Middleware Applicazioni di base Utilizzo del linguaggio
DettagliImplementazione di MVC. Gabriele Pellegrinetti
Implementazione di MVC Gabriele Pellegrinetti 2 Come implementare il pattern Model View Controller con le tecnologie JSP, ASP e XML Implementazione del pattern MVC in Java (JSP Model 2) SUN è stato il
DettagliVirtualizzazione e Macchine Virtuali
Virtualizzazione e Macchine Virtuali Gabriele D Angelo, Ludovico Gardenghi {gda, garden}@cs.unibo.it http://www.cs.unibo.it/~gdangelo/ http://www.cs.unibo.it/~gardengl/ Università di Bologna Corso di Laurea
DettagliCorso Programmazione Java ed Android
Corso Programmazione Java ed Android Codice: ITAJ0114 Durata: 72 ore Descrizione corso Il corso Programmazione Java ed Android è rivolto agli amanti del mobile che intendono entrare in questo affascinante
DettagliIl Sistema Operativo. C. Marrocco. Università degli Studi di Cassino
Il Sistema Operativo Il Sistema Operativo è uno strato software che: opera direttamente sull hardware; isola dai dettagli dell architettura hardware; fornisce un insieme di funzionalità di alto livello.
DettagliArchitetture software. Virtualizzazione
Sistemi Distribuiti Architetture software 1 Virtualizzazione 2 1 Virtualizzazione (motivazioni) Sullo stesso elaboratore possono essere eseguiti indipendentemente d t e simultaneamente t sistemi i operativi
DettagliApprofondimenti. Contenuti
Approfondimenti dott. Stefano D. Fratepietro steve@stevelab.net C I R S F I D Università degli studi di Bologna stevelab.net Creative Commons license Stefano Fratepietro - www.stevelab.net 1 Contenuti
DettagliSommario. Oracle Database 10g (laboratorio) Grid computing. Oracle Database 10g. Concetti. Installazione Oracle Database 10g
Sommario Oracle Database 10g (laboratorio) Dr. Daniele Barone Dr. Simone Grega 1 2 Oracle Database 10g Offre alte qualità del servizio: Performance; Scalabilità; Sicurezza; Affidabilità. Gestione autonoma
DettagliCorso Android New Edition Corso Online Programmatore Android New Edition
Corso Android New Edition Corso Online Programmatore Android New Edition Accademia Domani Via Pietro Blaserna, 101-00146 ROMA (RM) info@accademiadomani.it Programma Generale del Corso di Programmatore
DettagliI Thread. I Thread. I due processi dovrebbero lavorare sullo stesso testo
I Thread 1 Consideriamo due processi che devono lavorare sugli stessi dati. Come possono fare, se ogni processo ha la propria area dati (ossia, gli spazi di indirizzamento dei due processi sono separati)?
DettagliAndroid. Elenco dei package
Android Elenco dei package Introduzione In questa lezione vedremo l'elenco completo dei package Android che raggruppano le classi che è possibile utilizzare per sviluppare una applicazione utilizzando
DettagliIntroduzione ai Sistemi Operativi
Introduzione ai Sistemi Operativi Sistema Operativo Software! Applicazioni! Sistema Operativo! È il livello di SW con cui! interagisce l utente! e comprende! programmi quali :! Compilatori! Editori di
DettagliCorso Programmazione Android
Corso Programmazione Android Codice: ITAM0114 Durata: 40 ore Descrizione corso Il corso Programmazione Android è rivolto agli amanti del mobile che intendono entrare in questo affascinante mondo, in continua
DettagliLaboratorio di Informatica
Laboratorio di Informatica SOFTWARE Francesco Tura francesco.tura@unibo.it 1 Le componenti del calcolatore: HARDWARE E SOFTWARE HARDWARE parti che compongono fisicamente il calcolatore componente multifunzionale
DettagliProgrammazione Fondi Strutturali 2007/2013 P.O.N. FSE A.S. 2013/2014 SCHEDA PROGETTUALE MODULO. Obiettivo: C Azione: 1 Riferimento interno:
ISTITUTO ISTRUZIONE SECONDARIA SUPERIORE GUGLIELMO MARCONI Piazza Poerio 2, 70126 Bari - Tel.080-5534450 Fax.080-5559037 - www.marconibari.it - info@marconibari.it Programmazione Fondi Strutturali 2007/2013
DettagliThe Onion PC. Virtualizzazione strato dopo strato
The Onion PC Virtualizzazione strato dopo strato Cos'è un livello di astrazione? Cos'è un livello di astrazione? Nell'esecuzione di un programma un livello di astrazione rappresenta i gradi di libertà
DettagliSistemi Operativi. Processi GESTIONE DEI PROCESSI. Concetto di Processo. Scheduling di Processi. Operazioni su Processi. Processi Cooperanti
GESTIONE DEI PROCESSI 4.1 Processi Concetto di Processo Scheduling di Processi Operazioni su Processi Processi Cooperanti Concetto di Thread Modelli Multithread I thread in diversi S.O. 4.2 Concetto di
DettagliAndroid Porting on a Mobile Device
Android Porting on a Mobile Device git commit --author Michael Trimarchi Simboli Parte abbordabile Parte che presenta alcune difficoltà Parte estremamente difficile Che cos'è
DettagliFondamenti di Informatica 1. Prof. B.Buttarazzi A.A. 2010/2011
Fondamenti di Informatica 1 Prof. B.Buttarazzi A.A. 2010/2011 Sommario Installazione SOFTWARE JDK ECLIPSE 03/03/2011 2 ALGORITMI E PROGRAMMI PROBLEMA ALGORITMO PROGRAMMA metodo risolutivo linguaggio di
DettagliComponenti di Sistemi Operativi. System Call Programmi di sistema Componenti di un SO Servizi di SO
Componenti di so 1 Componenti di Sistemi Operativi System Call Programmi di sistema Componenti di un SO Servizi di SO 2 System Call Le system call forniscono l'interfaccia tra running program e SO Generalmente
DettagliComunità Open Source e PMI. Il caso: Java Open Business
Comunità Open Source e PMI Il caso Java Open Business 5 ottobre 2007 Alessandro De Rossi Centro TeDIS Venice International University Indice I modelli di Business Il caso: Java Open Business 1 Modelli
DettagliLaboratorio di Elaborazione e Trasmissione Video
+ Laboratorio di Elaborazione e Trasmissione Video Prof. Christian Micheloni Dott. Marco Vernier Dipartimento di Matematica e Informatica Università degli studi di Udine Outline Lezione 1 - Il sistema
DettagliUniversità degli Studi di Catania Corso di Laurea Magistrale in Informatica Multimedia 2013/14. Cantarella Danilo. OpenCV Android
Università degli Studi di Catania Corso di Laurea Magistrale in Informatica Multimedia 2013/14 Cantarella Danilo Introduzione OpenCV (Open Source Computer Vision Library) è una libreria disponibile per
DettagliIl Software e Il Sistema Operativo. Prof. Francesco Accarino IIS Altiero Spinelli A.S. 09/10
Il Software e Il Sistema Operativo Prof. Francesco Accarino IIS Altiero Spinelli A.S. 09/10 Cosa Impareremo Programmi e Processi Struttura del Sistema Operativo Sviluppo di Programmi I files e la loro
DettagliDistribuire Applicazioni virtualizzate con APP-V
Distribuire Applicazioni virtualizzate con APP-V di Nicola Ferrini MCT MCSA MCSE MCTS MCITP Introduzione Application Virtualization è un tool integrato nel pacchetto MDOP (Microsoft Desktop Optimization
DettagliInformatica. Prof. A. Longheu. Introduzione a Java
Informatica Prof. A. Longheu Introduzione a Java 1 Code-Name Green Nome del progetto Sun con l obiettivo di fornire intelligent consumer-electronic devices. Il risultato fu Oak Un linguaggio basato su
DettagliCLOUD AWS. #cloudaws. Community - Cloud AWS su Google+ Amazon Web Services. Servizio Amazon SNS
Community - Cloud AWS su Google+ Amazon Web Services Servizio Amazon SNS Oggi vedremo il servizio di Amazon SNS per la gestione delle notifiche tra applicazioni e servizi esterni. Hangout 09 del 18.03.2014
DettagliIndice generale. Prefazione...xiii. Introduzione...xv
Prefazione...xiii Introduzione...xv Destinatari del libro...xvi Prerequisiti...xvi Versioni di Android...xvii Organizzazione del libro...xvii Convenzioni...xviii Ringraziamenti...xix L autore...xix Il
DettagliAndroid AppInventor. Argomenti trattati. Introduzione. AppInventor. etc. Google Android Android SDK, Android Market
Android v. 1.0.1 Argomenti trattati Android AppInventor Introduzione Google Android Android SDK, Android Market AppInventor Architettura Sviluppo di applicazioni etc Storia Introduzione Android Android
DettagliProgrammazione Android. Giovanni Perbellini Università di Verona EDALab S.r.l.
Programmazione Android Giovanni Perbellini Università di Verona EDALab S.r.l. Agenda Introduzione Android Overview Ambiente di sviluppo Esempi Java Helloworld Weather (HTTP) Esercizio SOAP per Android
DettagliProgettazione e Implementazione di API WebSocket per il Gateway Dog
Corso di Laurea in Ingegneria Informatica Tesi di Laurea Magistrale Progettazione e Implementazione di API WebSocket per il Gateway Dog Relatori: Fulvio Corno Luigi De Russis Candidato: Teodoro Montanaro
DettagliC++ E QT, BINOMIO PERFETTO
C++ E QT, BINOMIO PERFETTO Luca Ottaviano Software developer, Develer 1 CHI SONO Team leader e sviluppatore embedded presso Develer Sviluppo con Qt da 8 anni, mi occupo principalmente di realizzare interfacce
DettagliLezione 4 La Struttura dei Sistemi Operativi. Introduzione
Lezione 4 La Struttura dei Sistemi Operativi Introduzione Funzionamento di un SO La Struttura di un SO Sistemi Operativi con Struttura Monolitica Progettazione a Livelli di un SO 4.2 1 Introduzione (cont.)
DettagliLo sbarco di Google nel pianeta Mobile Internet: primo impatto ed esempi pratici.
Lo sbarco di Google nel pianeta Mobile Internet: primo impatto ed esempi pratici. Riccardo Solimena (Java Italian Portal) Stefano Sanna (JUG Sardegna Onlus) Outline Who we are Android: brevissima introduzione
DettagliSistemi Operativi per Sistemi di Elaborazione Ubiqui
Griglie e Sistemi di Elaborazione Ubiqui Sistemi Operativi per Sistemi di Elaborazione Ubiqui Griglie e Sistemi Ubiqui - D. Talia - UNICAL 1 Sistemi Operativi per Ubiquitous Computing Palm OS Symbian OS
DettagliLa genealogia di Windows. Windows NT e Windows 95/98. Dimensioni del codice. Parte IX. Windows
La genealogia di Windows Parte IX Windows Sistemi Operativi - prof. Silvio Salza - a.a. 2008-2009 IX - 1 DOS: sistema operativo monoutente Windows 3.1 interfaccia a finestre che gira su DOS Windows 95/98
DettagliParte IX. Windows. Sistemi Operativi - prof. Silvio Salza - a.a. 2008-2009 IX - 1
Parte IX Windows Sistemi Operativi - prof. Silvio Salza - a.a. 2008-2009 IX - 1 La genealogia di Windows DOS: sistema operativo monoutente Windows 3.1 interfaccia a finestre che gira su DOS Windows 95/98
DettagliSistemi Operativi MECCANISMI E POLITICHE DI PROTEZIONE. D. Talia - UNICAL. Sistemi Operativi 13.1
MECCANISMI E POLITICHE DI PROTEZIONE 13.1 Protezione Obiettivi della Protezione Dominio di Protezione Matrice di Accesso Implementazione della Matrice di Accesso Revoca dei Diritti di Accesso Sistemi basati
DettagliMECCANISMI E POLITICHE DI PROTEZIONE 13.1
MECCANISMI E POLITICHE DI PROTEZIONE 13.1 Protezione Obiettivi della Protezione Dominio di Protezione Matrice di Accesso Implementazione della Matrice di Accesso Revoca dei Diritti di Accesso Sistemi basati
DettagliInitZero s.r.l. Via P. Calamandrei, 24-52100 Arezzo email: info@initzero.it
izticket Il programma izticket permette la gestione delle chiamate di intervento tecnico. E un applicazione web, basata su un potente application server java, testata con i più diffusi browser (quali Firefox,
DettagliSistemi Mobili e Wireless Android Activity
Sistemi Mobili e Wireless Android Activity Stefano Burigat Dipartimento di Matematica e Informatica Università di Udine www.dimi.uniud.it/burigat stefano.burigat@uniud.it Activity Tipicamente, un'activity
DettagliDBMS e Linguaggi di programmazione nell'era di Internet
DBMS e Linguaggi di programmazione nell'era di Internet Crippa Francesco fcrippa@tiscalinet.it Crippa Francesco (GPL) 1 Programma del corso DBMS nati per il WEB: MySQL Postgres Il cuore del WWW, il web
DettagliSISTEMI OPERATIVI THREAD. Giorgio Giacinto 2013. Sistemi Opera=vi
SISTEMI OPERATIVI THREAD 2 Mo*vazioni» Un programma complesso può eseguire in modo concorrente più funzioni agraverso la creazione e ges=one di processi figli agraverso il meccanismo dei thread» La creazione
DettagliCapitolo 3: Strutture dei sistemi operativi
Capitolo 3: Strutture dei sistemi operativi Componenti del sistema Servizi di un sistema operativo Chiamate del sistema Programmi di sistema Struttura del sistema Macchine virtuali Progettazione e realizzazione
DettagliIl Linux che verrà... Francesco Crippa
Il Linux che verrà... Francesco Crippa Cosa ci attente? Tante novità per il mondo server side Tante novità per gli sviluppatori Tante novità per gli appassionati... e per gli utenti? Virtualizzare il sistema
DettagliOrganizzazione Monolitica
Principali componenti di un sistema Applicazioni utente Interprete di comandi (shell) Interfaccia grafica (desktop) Gestore del processore / Scheduler(s) Gestore della memoria Gestore delle periferiche/
DettagliRealizzazione di un applicazione per la visualizzazione grafica didattica e di debug per algoritmi in Java
La Sapienza Università di Roma Facoltà di Ingegneria Corso di Laurea in Ingegneria Informatica Anno Accedemico 2008-2009 Relazione finale su progetto interno Realizzazione di un applicazione per la visualizzazione
DettagliCorso Corso di di programmazione di di sistemi mobile 1 1. Android Laboratorio. Primo Progetto, Toast
Corso Corso di di programmazione di di sistemi mobile 1 1 Android Laboratorio Primo Progetto, Toast Corso Corso di di programmazione di di sistemi mobile 2 2 Android Studio Per realizzare le nostre applicazioni
DettagliGestVetrine 1.1 versione novembre 2014
GestVetrine 1.1 versione novembre 2014 0 GestVetrine 1.1 GestVetrine 1.0 Indice Indice pag.1 1. Finalità pag.2 2. Gestione screen pag.2 3. Come Accedere pag.3 4. Come Creare un negozio pag.4 5. Come Creare
DettagliProva Finale a.a. 2011/2012. Laboratorio 1: Introduzione a Java e Eclipse
Prova Finale a.a. 2011/2012 Laboratorio 1: Introduzione a Java e Eclipse 1 Java 6 Standard Edition Linguaggio Java (... (javac, Tool di sviluppo Librerie per l'interfaccia grafica Librerie di base Macchina
DettagliSilence Please! Gestore di profili audio per smartphone Android utilizzante geolocalizzazione GPS. Carmine Benedetto Luca Laudadio
Silence Please! Gestore di profili audio per smartphone Android utilizzante geolocalizzazione GPS Carmine Benedetto Luca Laudadio Silence Please! - Descrizione Generale Silence Please! è un'applicazione
DettagliGestione della Memoria
Gestione della Memoria Idealmente la memoria dovrebbe essere grande veloce non volatile Gerarchia di memorie Disco: capiente, lento, non volatile ed economico Memoria principale: volatile, mediamente grande,
DettagliIntroduzione a Dev-C++
Introduzione a Dev-C++ Università degli Studi di Brescia Docente: Massimiliano Giacomin Elementi di Informatica e Programmazione Università di Brescia 1 Note: Dev-C++ richiede Windows 95/98/NT/2000/XP
DettagliL ambiente di sviluppo Android Studio
L ambiente di sviluppo Android Studio Android Studio è un ambiente di sviluppo integrato (IDE, Integrated Development Environment) per la programmazione di app con Android. È un alternativa all utilizzo
DettagliIntroduzione all uso di Eclipse
Introduzione all uso di Eclipse Daniela Micucci Programmazione Outline Eclipse: concetti generali Definire un workspace Creare un project Importare un file Utilizzo 1 Introduzione Eclipse è un ambiente
Dettagli