Il sistema operativo Android
|
|
- Angelica Longhi
- 6 anni fa
- Visualizzazioni
Transcript
1 Il sistema operativo Android Introduzione ed Architettura Letture consigliate: Il sistema operativo Android 1
2 Introduzione Cos è un sistema operativo È un unità organizzativa all interno di un computer L interfaccia tra le applicazioni e l hardware La sua funzione primaria è quella di amministrare le risorse operative disponibili Cos è un dispositivo mobile È un calcolatore munito di caratteristiche similari a quelli di un computer ma caratterizzato da dimensioni più ridotte e dall essere portatile e leggero Tali caratteristiche fisiche distintive ne consentono l'utilizzo in mobilità La dotazione hardware disponibile (GPS, accellerometro, magnetometro, giroscopio) unita all assenza di vincoli geografici supporta lo sviluppo di applicazioni specifiche (navigatore, augmented-reality AR) 2
3 Caratteristiche di un dispositivo mobile Limitate risorse computazionali Processori più potenti richiedono maggiori capacità di alimentazione e dissipazione di calore Built-in storage ridotto Possibilità di espansione mediante memoria esterna Gestione dell energia Vita della batteria, il salvataggio dei dati è un problema in caso di perdita di energia Compattezza e dimensioni ridotte dello schermo Non molto spazio per UI e per l applicazione stessa Il riutilizzo di componenti comuni è fondamentale Affidabilità Le funzionalità di telefonia hanno sempre la priorità più alta 3
4 Caratteristiche dei sistemi operativi mobili (1) Portabilità: essere trasportabile da un luogo ad un altro e/o adoperare il sistema operativo su qualsiasi smartphone senza preoccuparsi del brand e modello Affidabilità: il sistema deve essere in grado di offrire le funzioni richieste nelle condizioni fissate per uno periodo di tempo stabilito Connettività: possibilità di connettere due sistemi attraverso tecnologie wireless, bluetooth o infrarossi Diversità del prodotto: i fattori chiave che rendono il prodotto unico (strategia di marketing) Sistema Aperto: collezione di software, hardware e componenti che interagiscono mediante interfacce ben definite e disponibili pubblicamente Possibilità di espandere il sistema per qualsiasi scopo 4
5 Caratteristiche dei sistemi operativi mobili (2) Dimensione del kernel: il kernel è primo componente che viene caricato e rimane nella memoria del sistema operativo, influenzandone le capacità rilevante importanza Standard: adozione di moderni standard riguardanti il linguaggio di programmazione, la connettività, lo scambio di informazioni e la rete Sicurezza: le caratteristiche che il sistema operativo deve possedere al fine di essere sicuro in qualsiasi situazione 5
6 Introduzione ad Android Android è un sistema operativo open source per dispositivi mobili Stack software comprendente Un sistema operativo Linux-Based (gestione memoria, dispositivi e processi) Un middleware con librerie per la telefonia, video, grafica, programmazione UI e numerosi altri aspetti del dispositivo Un insieme di applicazioni basilari La piattaforma Android mostra caratteristiche di un framework desktop full-featured Google rende tale framework disponibile agli sviluppatori Java attraverso l SDK Android (Software Development Kit) che comprende: gli strumenti di sviluppo un emulatore del dispositivo un sistema di aggiornamenti dell SDK la documentazione i tutorial di base per acquisire familiarità con il sistema 6
7 Perché open? E' open perchè: Utilizza tecnologie open (linux kernel) Le librerie e le API utilizzate per realizzare Android sono le stesse che possiamo usare per le nostre applicazioni Il kernel linux è rilasciato sotto GNU General Public Licence (GPL) La piattaforma Android è rilasciata sotto Open Source Apache Software Licence 2.0 (ASL) Agli utenti è consentito usare il software per ogni scopo, distribuirlo, modificarlo e distribuire versioni modificate del software Le modifiche al kernel producono un worked derived, in fase di distribuzione è necessario rilasciare il codice sorgente con tutte le modifiche apportate utilizzando la stessa licenza GPL Tutto il resto può essere rilasciato con la licenza che si vuole (quindi NON necessariamente secondo i termini della stessa licenza o come software libero) 7
8 Cenni storici 2003: Andy Rubin, Rich Miner, Nick Sears e Chris White fondano la Android Inc. 2005: Android Inc. viene acquisito da Google 2007: Viene fondata la Open Handset Alliance, consorzio comprendente 84 (2015) membri tra cui produttori di hardware, di software e compagnie di telecomunicazione (oltre a Google stessa), con lo scopo di realizzare congiuntamente tutto il necessario per la diffusione del sistema standard aperti in ambito mobile 2007: viene rilasciato con licenza Apache una prima versione Android Beta SDK 2008: Android 1.0 (eseguibile su un unico dispositivo, HTC G1 ) 2009: Android 1.5 Cupcake (prima vera versione supportata da dispositivi ad ampia diffusione commerciale) 8
9 Caratteristiche Innovative Alcune delle caratteristiche innovative del sistema Android sono: L utilizzo di un kernel Linux Sistema aperto (trasparenza, accessibilità, codice open source); Basato sui componenti Le applicazioni possono così interagire tra loro e favorire il riuso di componenti L utilizzo del linguaggio di programmazione Java per lo sviluppo di applicazioni Nessun limite al tipo di applicazioni sviluppabili Sviluppo semplice ed immediato 9
10 Architettura del S.O. Java C/C++ Kernel 10
11 Linux Kernel (1) Android adopera un kernel Linux modificato, utilizzato nella versione 2.6 (Android < 4.0) 3.x (versione di Android dalla 4.0 alla 4.2) SELinux (Android 4.3) per la gestione della sicurezza, memoria, processi, rete e dispositivi. Il kernel fornisce un livello di astrazione tra l hardware ed il resto dello stack software Power Management: modulo per la gestione energetica costruito al di sopra di quello standard utilizzato in sistemi linux, con politiche di gestione molto restrittive: La CPU non dovrebbe consumare energia se nessuna applicazione o servizio la richiede I vari componenti richiedono risorse alla CPU mediante i cosiddetti wake locks. Se non ci sono wake locks attivi Android mette in pausa il processore Binder (IPC) Driver: driver basato su OpenBinder che permette la comunicazione tra processi (IPC) con un costo computazionale minore e quindi un più basso consumo di batteria 11
12 Linux Kernel (2) Low Memory Killer: basato su feedback provenienti dalle applicazioni utente, tale modulo è in grado di terminare i processi in modo da liberare spazio nella memoria centrale per soddisfare le richieste di altri processi Offre una maggiore flessibilità rispetto all Out Of Memory (OOM) killer presente nel kernel standard. Android ION Memory Allocator: (>= Android 4,0) è il driver (unificato) utilizzato per fornire regioni di memoria fisica contigue a librerie utente e altro hardware (<= Android 4,0: PMEM, Tegra, CMEM) Android Alarm: un driver che fornisce timer che possono risvegliare il dispositivo da uno stato di pausa ed un timer monotono che si avvia quando il dispositivo è attivo un applicazione può essere eseguita ad un tempo prefissato anche se il dispositivo è in sleep mode M-System: per memory card e altri dispositivi di memorizzazione flash Altri driver convenzionali Bluetooth Display Keypad, audio, etc 12
13 Runtime - Overview È un componente vitale nello stack Android ed è costituito da due parti fondamentali: La macchina virtuale Dalvik in futuro sarà integrata/sostituita da ART Le core libraries La VM Dalvik è stata sviluppata da Dan Bornstein ed è caratterizzata da tre principali obiettivi progettuali: Gira su dispositivi con memoria (RAM) ridotta e processori meno performanti Non si avvale di alcuno spazio swap Gira su dispositivi con potenza (energia) limitata Ogni applicazione su Android ha un proprio processo, una propria zona dati e la corrispondente istanza di Dalvik Virtual Machine La Dalvik VM è stata ottimizzata in modo che uno stesso dispositivo embedded sia in grado di eseguirne più istanze in modo efficiente 13
14 Runtime - Dalvik VM L utilizzo di una VM rende le applicazioni Android indipendenti dalla piattaforma sottostante (sistema operativo e hardware) La Dalvik VM esegue un bytecode incompatibile con quello della Java VM e che viene detto Dalvik Executable (.dex), ottimizzato per avere una occupazione di memoria minima Il ciclo di sviluppo (più comune e suggerito dagli svillupatori di Andoid stesso) prevede che una applicazione venga dapprima sviluppata in Java, e successivamente un tool (dx) converte i file.class, ottenuti dalla normale compilazione java, in file ottimizzati.dex la versione Java di riferimento è J2SE, NON J2ME La Dalvik VM è register-based (mentre la Java VM è stack-based) riduzione del numero di istruzioni e accessi in memoria 14
15 Runtime - Dalvik vs ART Dalvik è basata sull approccio Just-in-time (JIT): in fase di esecuzione l app viene compilata solo in parte in codice macchina nativo (tali segmenti prendono il nome di «traces»), il resto del bytecode viene eseguito previa traduzione (interpretazione) in real-time E stata introdotta una nuova virtual machine Android RunTime (ART) Sperimentale in Android 4.4 Kit Kat, si affianca alla Dalvik e deve essere abilitata manualmente A partire da Android 5.0 Lollipop è l unica VM ART è basata su tecnologia Ahead-of-time (AOT): l app viene interamente compilata in codice macchina nativo durante l installazione sul device e non durante l esecuzione utilizzando il dex2oat tool Il codice compilato dell applicazione è direttamente eseguibile Ciò riduce notevolmente i tempi di esecuzione rispetto ad un compilatore JIT (Just- In-Time) come quello integrato in Dalvik di conseguenza c è anche un corrispondente risparmio energetico Aumenta, invece, il consumo di spazio sulla memoria del dispositivo e il tempo di installazione della app Salvo eccezioni, è garantita la compatibilità delle applicazioni (il dex compilato è anche l input per la ART) 15
16 Runtime Core Libraries Le Core Libraries forniscono molte delle funzionalità delle analoghe librerie disponibili per il linguaggio di programmazione Java necessarie per lo sviluppo di applicazioni Funzionalità di I/O Collezioni Accesso ai file Android Standard Development Kit (SDK) è il contenitore di tutti gli strumenti fondamentali per lo sviluppo di applicazioni Android in Java Supporta la maggior parte della Java Platform, Standard Edition (SE) ad eccezione dell AWT (Abstract Window Toolkit) e Swing Al loro posto è reso disponibile un proprio e moderno framework per la realizzazione di interfacce grafiche utente (UI) 16
17 Librerie Native (1) Tale livello contiene le librerie che forniscono la maggior parte delle funzionalità messe a disposizione da Android core del sistema. Sono implementate in C/C++. Le capabilities di queste librerie sono esposte agli sviluppatori attraverso l'application Framework. BioniC: è un implementazione della standard C library, derivata da BSD e ottimizzata per l esecuzione su dispositivi portatili Linux-based. Dimensioni molto inferiori alla GNU C Library (glibc) ~200 kb vs ~ 400 kb. Ottimizzazione per processori low-clock. Implementazione basata su thread molto piccola e veloce del sistema POSIX (Pthread). 17
18 Librerie Native (2) SQLite: un potente e leggero DBMS relazionale disponibile per tutte le applicazioni, per la memorizzazione di qualsiasi tipo di dato strutturato. Zero-configuration non è un processo standalone, viene quindi linkato come libreria C Il database consiste di un unico file il cui formato interno è indipendente dalla piattaforma backup e trasferimento semplificato. L applicazione può accedere a SQLite attraverso semplici e convenzionali chiamate a funzioni no client-server. Surface Manager: modulo che gestisce le View, cioè i componenti di un'interfaccia grafica Ciascuna applicazione è associata ad un processo e disegna quindi la propria interfaccia in tempi diversi. Il SM coordina le diverse superfici che le applicazioni vogliono visualizzare sul display. Le superfici da visualizzare sono passate come buffer attraverso chiamate del componente Binder (IPC). In questo modo non si avranno finestre che si accavallano in modo scoordinato sul display. Gestisce l'accesso al sottosistema di visualizzazione su schermo e compone livelli di grafica 2D e 3D provenienti dalle varie applicazioni consentendone la visualizzazione contemporanea. Adopera gli acceleratori grafici hardware 3D e 2D. 18
19 Librerie Native (3) Le due librerie SGL e OPENGL/ES gestiscono rispettivamente la grafica 2D la prima e la grafica 3D la seconda. Sono specializzate per dispositivi mobili e permettono di accedere alle funzionalità degli (se disponibili) acceleratori grafici hardware. Il Media Framework si basa sulla libreria open source OpenCore di PacketVideo (uno dei membri fondatori dell OHA). OpenCore offre una struttura universale per applicazioni multimediali mobili. Gestisce i diversi CODEC per i vari formati di acquisizione e riproduzione audio e video (MPEG4, MP3, AAC, AMR, JPG, PNG e H.264). FreeType è uno strumento, scritto in C, adoperato per rasterizzare i caratteri in bitmap e fornire supporto per altre operazioni legate ai font (rendering). Il LibWebCore (WebKit) è browser-engine open source basato su WebKit (un framework utilizzato anche dai browser Safari e Chrome). Può essere integrato in qualunque applicazione sia Android browser che web view integrata. Rendering delle pagine in full-view (desktop). Supporta le moderne tecnologie web: CSS, JavaScript, DOM, AJAX. 19
20 Application Framework (1) 1 Tale livello comprende una serie di gestori toolkit di uso generale, insieme di API Java che sfruttano le librerie in C/C++ definite nello strato inferiore, per dare origine a operazioni ben precise, richiamate attraverso lo strato Applications. Pieno accesso alle stesse API del framework che vengono utilizzate dalle applicazioni di base. Gli sviluppatori possono concentrarsi nella risoluzione di problemi non ancora affrontati, avendo sempre a propria disposizione il lavoro già svolto da altri riuso e sostituzione dei componenti, «All applications are equals.». Content Providers: permettono alle applicazioni di accedere ai dati di altre applicazioni (es. la rubrica) o di mettere in condivisione i loro stessi dati. View System: gestisce l'insieme degli elementi grafici utilizzati nella costruzione dell'interfaccia verso l'utente (bottoni, griglie, text boxes). 20
21 Application Framework (2) Resource Manager: garantisce l accesso a risorse che non rappresentano codice (stringhe, grafici, immagini, file di layout e configurazione) Notification Manager: permette a tutte le applicazioni di gestire alert personalizzati verso l utente sotto forma di vari eventi (icona nella barra di notifica, accensione LED, suoni o vibrazioni) Activity Manager: le Activity sono entità associate ad una schermata dell'applicazione. Gestisce il ciclo di vita delle activity e fornisce un meccanismo elementare per la navigazione tra le varie schermate. Telephony Manager: gestisce l interazione con le funzionalità caratteristiche di un telefono (avviare una telefonata, controllarne lo stato, SMS). Location Manager: consente alle Location Based Application (LBA) di utilizzare API per accedere a funzioni legate alla location, tra cui le operazioni di georeferenziazione (e attivare eventi date delle precondizioni) Window Manager: permette di gestire le finestre delle diverse applicazioni, gestite da processi diversi, sullo schermo del dispositivo. Astrazione con API Java, dei servizi nativi del Surface Manager. Package Manager: gestisce i processi di installazione e rimozione delle applicazioni dal sistema. 21
22 Applications Lo strato finale con cui l utente interagisce con il sistema. Android corredato di un insieme di applicazioni di base: client per , programmi per l invio di SMS, calendario, mappe, browser, contatti, etc Ogni applicazione è scritta (generalmente) in Java. L applicazione compilata è impachettata attraverso il tool aapt in un package Android.apk. Come i formati.jad e.jar in J2ME, i file.apk sono distribuiti ed installati su dispositivi Android. Ogni applicazione è un singolo processo Linux, ha la propria istanza di VM ed ha assegnato un unico Linux user ID. Una caratteristica chiave di Android è che: Ogni applicazione può pubblicare le sue capabilities e le altre possono farne uso. Le applicazioni Android non hanno un singolo entry point. 22
23 Android vs Linux 23
Fondamenti di sviluppo mobile su Android
Fondamenti di sviluppo mobile su Android Dott. Ing. A. Tedeschi antonio.tedeschi@uniroma3.it Corso di Telecomunicazioni Wireless a.a. 2016-2017 1 Chi sono Dott. Ing. Antonio Tedeschi Ph.D. Student Signal
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
DettagliCORSO PROGRAMMAZIONE ANDROID
I.I.S. G. COSSALI - ORZINUOVI CORSO PROGRAMMAZIONE ANDROID Febbraio Maggio 2017 Prof. Dario Tomasoni 1 CHI Dario Tomasoni; Docente di Informatica; 1984; Ing. Delle Telecomunicazioni; Altro, curiosità?
DettagliANDROID. Mobile Web Design. Corso di programmazione di sistemi mobile 1
ANDROID Mobile Web Design Corso di programmazione di sistemi mobile 1 Cos è Android Android è un sistema operativo per dispositivi mobili (mobile OS) sviluppato da Google Inc. e basato su kernel Linux.
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
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?
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
DettagliAnalisi e comparazione dei Framework OpenSwing e Google Web Toolkit per lo sviluppo di interfacce utente con paradigma MVC.
tesi di laurea Analisi e comparazione dei Framework OpenSwing e Google Web Toolkit. Anno Accademico 2009/2010 relatore Ch.mo prof. Porfirio Tramontana correlatore Ing. Luca Anniciello candidato Gianluca
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
DettagliIntroduzione ad Android. Lucidi del corso di Programmazione III A.A. 2015/16
Introduzione ad Android Lucidi del corso di Programmazione III A.A. 2015/16 Indice Cellulari e mobile computing Android Applicazioni e loro componenti Activity e loro ciclo di vita Presentazione del tool
DettagliCorso di Laurea Ingegneria Informatica Laboratorio di Informatica
Corso di Laurea Ingegneria Informatica Laboratorio di Informatica Capitolo 4 Traduzione ed esecuzione di programmi Ottobre 2006 Traduzione ed esecuzione di programmi 1 Nota bene Alcune parti del presente
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?
DettagliL00_Introduction. E. Falzone ITIS Magistri Cumacini
L00_Introduction 1 Chi sono? Emanuele Falzone Contatti: emanuele.falzone@mail.polimi.it @emanuele_falzone Telegram 2 Perchè siamo qui? 3 Cosa vedremo oggi? Breve storia di android Presentazione del corso
DettagliIl Sistema Operativo
Il Sistema Operativo Il sistema operativo Con il termine sistema operativo si intende l insieme di programmi e librerie che opera direttamente sulla macchina fisica mascherandone le caratteristiche specifiche
DettagliSistemi Operativi: Concetti Introduttivi
Sistemi Operativi: Concetti Introduttivi 1.1 Principali funzioni di un Sistema Operativo 1.2 Cenni Storici 1.3 Classificazione dei Sistemi Operativi 1.4 Struttura dei Sistemi Operativi 1.5 Processi e gestione
DettagliSistemi Operativi. Gianluca Della Vedova. Sistemi Operativi. Gianluca Della Vedova. Sistemi Operativi. Gianluca Della Vedova.
Programmi applicativi Un programma applicativo (o applicativo) è un eseguibile che può essere utilizzato dall utente e che ha funzionalità di alto livello (word processor, spreadsheet, DBMS) Univ. Milano-Bicocca
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
DettagliIntroduzione ad Android
Capitolo 1 Introduzione ad Android La fine del precedente millennio è stata sicuramente caratterizzata da Internet: una vera e propria rivoluzione non solo tecnologica, ma soprattutto culturale. Il fatto
DettagliIntroduzione ad Android
Capitolo 1 Introduzione ad Android La fine del precedente millennio è stata sicuramente caratterizzata da Internet: una vera e propria rivoluzione non solo tecnologica ma soprattutto culturale. La possibilità
DettagliCorso di Informatica
Corso di Informatica Modulo T1 3-Equipaggiamento di un SO 1 Prerequisiti Hardware e software Uso pratico elementare di un sistema operativo Struttura a strati del SO 2 1 Introduzione In questa Unità vogliamo
DettagliProf. Pagani corrado JAVA
Prof. Pagani corrado JAVA NASCITA DI JAVA Java è stato creato, a partire da ricerche effettuate alla Stanford University agli inizi degli anni Novanta, da un gruppo di esperti sviluppatori capitanati da
DettagliSistema operativo & file system 1
Il software (sw) Software di sistema e file system Lezione 1b L esecuzione di programmi è lo scopo di un elaboratore I programmi sono algoritmi codificati in un particolare linguaggio di programmazione
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
DettagliHorizone Server IN00B02WEB. Horizone PDK
Horizone Server IN00B02WEB Horizone PDK Prodotto: -- Descrizione: Horizone PDK - Manuale Utente Data: 10/07/2017 Eelectron Spa IN00B02WEBFI00080102_PDK_MANUAL.DOCX 1/12 Qualsiasi informazione all interno
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
DettagliI THREAD O PROCESSI LEGGERI
I THREAD O PROCESSI Processi (pesanti): LEGGERI entità autonome con poche risorse condivise (si prestano poco alla scrittura di applicazioni fortemente cooperanti) Ogni processo può essere visto come Immagine
Dettagliv. 1.0.1 App Inventor
v. 1.0.1 App Inventor Argomenti trattati MIT App Inventor 2 Introduzione Google Android Android SDK, Android Market Utilizzo di App Inventor Architettura Sviluppo di applicazioni etc Storia Introduzione
DettagliTraduzione e interpretazione
Traduzione e interpretazione Parte dei lucidi sono stati gentilmente forniti dal Prof. Salza VII.1 Linguaggi di programmazione Linguaggi ad alto livello Maggiore espressività Maggiore produttività Migliore
DettagliL hardware da solo non è sufficiente per il funzionamento dell elaboratore È necessario introdurre il software:
Il Software L hardware da solo non è sufficiente per il funzionamento dell elaboratore È necessario introdurre il software: un insieme di programmi che permettono di trasformare un insieme di circuiti
DettagliMacchina Astratta: struttura e realizzazione.
Macchina Astratta: struttura e realizzazione. Sommario Macchina Astratta e l interprete di Macchina Hight e Low Level Languages Implementazione di un Linguaggio Macchina Intermedia Gerarchia di Macchine
DettagliI sistemi operativi. Prof. Daniele Contarino
I sistemi operativi Prof. Daniele Contarino Indice dei contenuti Introduzione Classificazione e struttura dei S.O. Graphics User Interface (GUI) Il filesystem Windows 7 & Ubuntu Il copyright Domanda di
DettagliLivelli del sottosistema di I/O
Input/Output 1 Livelli del sottosistema di I/O Software di I/O di livello utente Software di sistema indipendente dal dispositivo Driver dei dispositivi Gestori delle interruzioni Hardware Modo utente
DettagliOpen Source::accenni. Definizioni: software proprietario
Operatore Informatico Giuridico Informatica Giuridica A.A 2003/2004 I Semestre Open Source::accenni Lezione 6 prof. Monica Palmirani Definizioni: software proprietario Software proprietario software sviluppato
DettagliSistema Operativo. (hardware e software) della della macchina
Sistema Operativo Senza Sistema Operativo (SO) un computer è solo un macchinario inutile... Il SO rende possibile la gestione, elaborazione e immagazinamento dell informazione. Il Il SO SO è il il software
DettagliI SISTEMI OPERATIVI. Insieme di programmi che implementano funzioni essenziali per l uso di un sistema elaboratore.
I SISTEMI OPERATIVI Insieme di programmi che implementano funzioni essenziali per l uso di un sistema elaboratore. Le funzioni di un S.O. non sono definibili in modo esaustivo e puntuale così come non
DettagliDescrizione generale dell architettura del sistema e dell interazione tra i suoi componenti. Descrizione del sottosistema di sicurezza locale.
Descrizione generale dell architettura del e dell interazione tra i suoi componenti. Descrizione del di sicurezza locale. Descrizione delle tecniche supportate dal per l organizzazione e la protezione
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
DettagliUn'applicazione per lo scambio di contenuti multimediali in ambiente Android
tesi di laurea Un'applicazione per lo scambio di contenuti multimediali in ambiente Android Anno Accademico 2009/2010 relatore Ch.mo prof. Simon Pietro Romano correlatori Ing. Lorenzo Miniero Ing. Alessandro
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
DettagliIl sistema operativo Android
Il sistema operativo Android Kernel Android e Dalvik/ART Virtual Machine Letture consigliate: Il sistema operativo Android http://www-ictserv.poliba.it/piscitelli/doc/lucidiso_eltlc_270/il%20sistema%20operativo%20android.pdf
DettagliIntroduzione al corso. Obiettivo del corso
Università della Calabria Corso di Laurea in Ingegneria Elettronica Programmazione Orientata agli Oggetti A.A. 2006/2007 Introduzione al corso Paolo Trunfio * * DEIS, Università della Calabria http://si.deis.unical.it/~trunfio
DettagliTESI DI LAUREA IN INFORMATICA
UNIVERSITA DEGLI STUDI DI NAPOLI FEDERICO II TESI DI LAUREA IN INFORMATICA UNA WEB APPLICATION SU INFRASTRUTTURA PER IL PROGETTO DAME Tutor Accademico: Dott.ssa Anna Corazza Tutor Aziendale: Dott. Massimo
DettagliStrumenti per l automazione del testing di applicazioni web Javascript-based
tesi di laurea Strumenti per l automazione del testing di applicazioni web Javascript-based Anno Accademico 2005/2006 relatore Ch.mo prof. Porfirio Tramontana 1 candidato Salvatore Agnello Matr. 41/2612
DettagliMA GLI ANDROIDI SOGNANO PINGUINI ELETTRICI? Introduzione ad Android. Il futuro prossimo dei telefoni cellulari.
MA GLI ANDROIDI SOGNANO PINGUINI ELETTRICI? Introduzione ad Android. Il futuro prossimo dei telefoni cellulari. 8 aprile 2008 Case delle Culture di Ponziana via Orlandini 38 - Trieste Cos'è Android? Android
DettagliArchitetture Applicative Altri Esempi
Architetture Applicative Altri Esempi Alessandro Martinelli alessandro.martinelli@unipv.it 15 Aprile 2014 Architetture Applicative Altri Esempi di Architetture Applicative Architetture con più Applicazioni
DettagliUNIVERSITA CA FOSCARI VENEZIA - CT0090 INGEGNERIA DEL SOFTWARE 2016/2017 ARRIFORNISCETE. Documento di Analisi e Specifica 1.
UNIVERSITA CA FOSCARI VENEZIA - CT0090 INGEGNERIA DEL SOFTWARE 2016/2017 ARRIFORNISCETE Documento di Analisi e Specifica 1.1 TEAM CODROT 853540 BONOTTO MIRKO 854763 CERVELLIN GIULIO 853780 ROSSETTO MOSE
DettagliNota Tecnica UBIQUITY 7 TN0023. Il documento descrive le novità introdotte con la versione 7 della piattaforma software ASEM Ubiquity.
UBIQUITY 7 Introduzione Il documento descrive le novità introdotte con la versione 7 della piattaforma software ASEM Ubiquity. Versione Descrizione Data 1 Prima emissione 29/02/2016 Disclaimer Le informazioni
DettagliArchitettura di un calcolatore
Architettura di un calcolatore Processore: CPU Componente elettronico costituito da minuscole componenti di silicio, chiamate CHIP. Esegue le istruzioni implementate nel SW, tramite una serie di operazioni
DettagliAMBIENTI DI PROGRAMMAZIONE
AMBIENTI DI PROGRAMMAZIONE È l'insieme dei programmi che consentono la scrittura, la verifica e l'esecuzione di nuovi programmi (fasi di sviluppo) Sviluppo di un programma Affinché un programma scritto
DettagliComponenti di un sistema operativo
Componenti di un sistema operativo Dipartimento di Informatica Università di Verona, Italy Componenti di un S.O. Gestione dei processi Gestione della memoria primaria Gestione della memoria secondaria
DettagliIl Sistema Operativo. Informatica Sistema Operativo 1
Il Sistema Operativo Informatica Sistema Operativo 1 O.S.:.: un intermediario SW Applicativo Sistema Operativo HW Informatica Sistema Operativo 2 O.S. vs applicativi Applicativi accesso a un insieme ridotto
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...
DettagliLa piattaforma Android
Sistemi Embededd a.a. 2013/2014 La piattaforma Android Raffaele Di Natale raffaele.dinatale@dieei.unict.it rdinatale@dieei.unict.it Bibliografia Web sites http://developer.android.com/ E-books http://it-ebooks.info/book/659/
DettagliTecnologie di virtualizzazione
Tecnologie di virtualizzazione Obiettivo: disaccoppiare il comportamento delle risorse hardware e software di un sistema di elaborazione, così come viste dall utente, dalla loro realizzazione fisica. Disaccoppiamento
DettagliLE ALTRE BOARD ARDUINO
LE ALTRE BOARD ARDUINO Nel corso degli anni la scheda Arduino si è evoluta. Dalla versione Diecimila alla versione Uno sono state apportate diverse migliorie. L ultima release della Board Uno, la REV3,
DettagliIntroduzione a Java. Prof. Francesco Accarino IIS Altiero Spinelli Via Leopardi132 Sesto San Giovanni
Introduzione a Java IIS Altiero Spinelli Via Leopardi132 Sesto San Giovanni Linguaggi di programmazione Ogni programma viene scritto utilizzando un linguaggio specializzato, formale e comprensibile da
DettagliStrumenti Java. Fondamenti di informatica L-B A.A Alessandra Toninelli
Strumenti Java Fondamenti di informatica L-B A.A. 2006-2007 Alessandra Toninelli atoninelli@deis.unibo.it Cosa installare? J2SE SDK Software Development Kit (JDK): Contiene: tutte le classi con relativo
Dettagli2) Sistemi operativi. Lab. Calc. AA 2006/07
2) Sistemi operativi Introduzione Il sistema operativo è un programma dedicato alla gestione del calcolatore. All'accensione di un calcolatore viene eseguito un programma di base memorizzato su una memoria
DettagliCosa è un programma. Informatica di Base -- R.Gaeta 18
Cosa è un programma Il programma è la scatola nera che risolve il problema computazionale; Il programma è una sequenza di istruzioni che devono essere eseguite; Il programma è la traduzione per il computer
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
DettagliInformatica Generale 06 - Introduzione ai Sistemi Operativi
Informatica Generale 06 - Introduzione ai Sistemi Operativi Cosa vedremo: Funzionalità dei sistemi operativi Bootstrap Stato utente e stato supervisore Componenti di un Sistema Operativo Cos è un sistema
DettagliCHE COSA FA? P.S. io comunque dissento sul 4. Ing. Luca Frigerio
CHE COSA FA? P.S. io comunque dissento sul 4. Ing. Luca Frigerio ? NON SEMBRANO APPARTENERE ALLO STESSO MONDO 334.000.000.000 L'ANNO IN EUROPA MMMMM + 11.000.000 DI POSTI DI LAVORO Elaborazione Dell'informazione
DettagliMobile apps. Android - I
Mobile apps Cloud Computing SaaS enables Ubiquitous Computing servizi e dati nella nuvola accessibili in modalità ubiquitous (anywhere and anytime) NB L'accesso da device mobile ha caratteristiche diverse
DettagliAndroid per sistemi embedded
Android per sistemi embedded Valter Minute valter@valterminute.com Vminute By PresenterMedia.com Agenda or Summary Layout A second line of text could go here 1 2 3 4 5 Cos è Android Parenti serpenti Android
DettagliMultimedia e Grafica 3D. 5 Corso sul Software Libero SaLUG! - autore Marco Pagliara aka MarcPag released under Creative Commons 3.
Multimedia e Grafica 3D Multimedia e Grafica 3D Oggi giorno sono davvero tante le applicazioni mediante le quali è possibile creare contenuti multimediali, di vario genere, utilizzando sistemi operativi
DettagliInformatica di base 6/ed
Informatica di base 6/ed Autori: Dennis P. Curtin, Kim Foley, Kunal Sen e Cathleen Morin A cura di: Agostino Marengo e Alessandro Pagano Capitolo 5 Il sistema operativo Copyright 2016 McGraw-Hill Education
DettagliConfigurazione di riferimento di IP Office Server Edition IP Office 8.1
Configurazione di riferimento di IP Office Server Edition IP Office 8.1 15-604135 Dicembre 2012 Sommario Capitolo 1: Introduzione... 5 Scopo del documento... 5 Destinatari... 5 Documenti correlati...
DettagliFilippo Druda LO SVILUPPO IN ANDROID
1 Classe 5 A Candidato Filippo Druda LO SVILUPPO IN ANDROID 2 L'EVOLUZIONE TECNOLOGICA NON HA MAI DANNEGGIATO NESSUNO.. ABSTRACT Istituto Tecnico Industriale Don Orione Fano 3 Il progresso tecnologico
DettagliIl software di sistema
Il software di sistema Il software in un calcolatore è organizzato in due parti distinte: Il Software di Sistema o Sistema Operativo, che comprende una serie di programmi atti a gestire le risorse fisiche
DettagliPAT/RFS116-21/02/ Allegato Utente 2 (A02)
PAT/RFS116-21/02/2017-0099415 - Allegato Utente 2 (A02) Piano Trentino Trilingue 2017 Guida all utilizzo della Piattaforma FaD Introduzione La piattaforma utilizzata per le attività di verifica delle competenze
DettagliTraduzione ed Interpretazione
Traduzione ed Interpretazione Queste sconosciute Siano L Linguaggio ad alto livello M L Macchina astratta di L M 0 Macchina ospite Implementazione interpretativa di L Implementazione compilativa di L Simulazione
DettagliTraduzione ed Interpretazione. Queste sconosciute
Traduzione ed Interpretazione Queste sconosciute Siano L Linguaggio ad alto livello M L M 0 Macchina astratta di L Macchina ospite Implementazione interpretativa di L Simulazione software di M L su M 0
DettagliINFORMATICA. L informatica comprende:
Varie definizioni: INFORMATICA Scienza degli elaboratori elettronici (Computer Science) Scienza dell informazione Definizione proposta: Scienza della rappresentazione e dell elaborazione dell informazione
DettagliSistemi Operativi ed interazione con HW e CAD
Sistemi Operativi ed interazione con HW e CAD Corsi di Informatica Grafica Prof. Manuel Roveri Indice Il Sistema Operativo Software di sistema e applicativo Architettura di un sistema operativo Classificazione
DettagliAlgoritmo. La programmazione. Algoritmo. Programmare. Procedimento di risoluzione di un problema
Algoritmo 2 Procedimento di risoluzione di un problema La programmazione Ver. 2.4 Permette di ottenere un risultato eseguendo una sequenza finita di operazioni elementari Esempi: Una ricetta di cucina
DettagliDAGLI OPEN DATA ALL INTERNET OF THINGS
DAGLI OPEN DATA ALL INTERNET OF THINGS Smart Data: le progettualità Progetto di R&S della Regione Piemonte nel 2013 per Internet Of Things (IOT) Piattaforma della Regione Piemonte dal 2012 per Open Data
DettagliUniversità di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A Pietro Frasca.
Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2016-17 Pietro Frasca Lezione 5 Martedì 25-10-2016 Definizione di processo Esiste una distinzione concettuale
DettagliSviluppo di un applicazione di front-end per il monitoraggio di un Isola Ecologica
Sviluppo di un applicazione di front-end per il monitoraggio di un Isola Ecologica Candidato: Lorenzo D Eri Relatore: Prof. Sergio Carrato Correlatore: Ing. Vojko Croselli 2 dicembre 2015 Università degli
DettagliTCL PAD: UN EDITOR DI TESTO ESTENDIBILE, INCORPORABILE E CON INTERFACCE DI TEXT-PROCESSING
Tesi di Laurea Triennale in Ingegneria Informatica TCL PAD: UN EDITOR DI TESTO ESTENDIBILE, INCORPORABILE E CON INTERFACCE DI TEXT-PROCESSING Relatore: Prof. SERGIO FLESCA Laureando: ANTONIO BONIFATI MATR.
DettagliTesina esame Programmazione di Sistemi Mobile realizzata da Roberto Giuliani matricola Sicurezza e Permission in Android
Tesina esame Programmazione di Sistemi Mobile realizzata da Roberto Giuliani matricola 633688 Sicurezza e Permission in Android La sicurezza al giorno d oggi è uno degli aspetti più importanti dell informatica!
DettagliContenitori. Subhraveti, D. Containers Beyond the Hype. AppOrbit, 2015.
Luca Cabibbo Architettura dei Sistemi Software dispensa asw640 marzo 2017 Containers are much faster to provision than full-fat virtual machines. Sam Newman 1 - Fonti Subhraveti, D. Containers Beyond the
DettagliSistemi Operativi. A.M. Fanelli Architettura dei Sistemi a. a Livello di Sistema Operativo. Livello di Linguaggi Applicativi
Sistemi Operativi A.M. Fanelli Architettura dei Sistemi a. a. 2008-09 1 Livello di Sistema Operativo Livello di Linguaggi Applicativi Livello di Linguaggio Assembly Livello di Sistema Operativo Livello
DettagliNome e indirizzo del datore di lavoro
per scaricare la versione Pdf clicca qua -> Esperienze Lavorative Date (da a) 2001 Attualmente Attivo Nome e indirizzo del datore di lavoro Studio R.S s.a.s 1 / 16 via Nuova,126 Migliarino P.No (Pisa)
DettagliSISTEMI OPERATIVI. Struttura dei. Sistemi Operativi. Giorgio Giacinto 2015
SISTEMI OPERATIVI Struttura dei Sistemi Operativi 2 Panoramica dei servizi del sistema operativo 3 4 Cos è una chiamata al sistema?» Il SO mette a disposizione i suoi servizi ai programmi utente attraverso
DettagliELABORAZIONE CONDIVISA DI TESTI CON ANDROID
Alma Mater Studiorum Università di Bologna FACOLTÀ DI SCIENZE MATEMATICHE, FISICHE E NATURALI Corso di Laurea in Scienze di Internet ELABORAZIONE CONDIVISA DI TESTI CON ANDROID Tesi di Laurea in Programmazione
DettagliProgramma didattico. Sviluppare Applicazioni Distribuite in ambiente. Spring MVC
Programma didattico Sviluppare Applicazioni Distribuite in ambiente Spring MVC Programma del corso 1.Progettazione e Sviluppo Database Relazionali Questa competenza permette di Progettare e Sviluppare
DettagliCorso di programmazione
Corso di programmazione per android 1 Introduzione (corso completo per imparare a programmare con il S.O. Google) Android è il sistema operativo per dispositivi mobili più diffuso al mondo. Si è imposto
DettagliRiproduzione multimediale in Windows Phone. Brando Mordenti Matricola
Riproduzione multimediale in Windows Phone Brando Mordenti Matricola 661278 INTRODUZIONE In questa tesina sarà sviluppato un discorso sulle linee guida per creare un app multimediale elaborata per Windows
DettagliSistemi Operativi (prima parte) Appunti di TPI Elaborati dal prof. Ing. Mario Catalano Per la classe 3 Einf.
Sistemi Operativi (prima parte) Appunti di TPI Elaborati dal prof. Ing. Mario Catalano Per la classe 3 Einf. Il Sistema Operativo (O.S. Operating System) è un insieme di programmi che governa e controlla
DettagliArchitettura dei calcolatori e Software di sistema
Università degli Studi di Palermo Dipartimento di Ingegneria Chimica, Gestionale, Informatica, Meccanica Lezioni di Informatica di Base per la Facoltà di Lettere e Filosofia Anno Accademico 2012/20103
DettagliFarete 7 e 8 Settembre
Farete 7 e 8 Settembre 2015 1 La piattaforma ideale per la tua presenza su Internet è uno dei sistemi maggiormente diffusi nel mondo per la gestione dei contenuti web e per la realizzazione di siti e portali
DettagliRoma, 19 ottobre 2012 ROMA CAPITALE. OPENDATA Proposta per lo sviluppo di un APP per l offerta di servizi innovativi ai cittadini
Roma, 19 ottobre 2012 ROMA CAPITALE OPENDATA Proposta per lo sviluppo di un APP per l offerta di servizi innovativi ai cittadini Indice 1. L opendata nel Comune di Roma 2. La proposta di Engineering: ifamily
DettagliServizi web. Crazione & restyling di siti professionali DESIGN LA NOSTRA PASSIONE
Agenzia di design & comunicazione Servizi web Crazione & restyling di siti professionali Servizi di design & implementazione informatica Web design Programmazione & Sviluppo Gestionale web, (SITE) per
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 PalmOS Symbian OS
Dettaglila traduzione dei programmi ed introduzione a Java
la traduzione dei programmi ed introduzione a Java programmi descrizioni di algoritmi effettuate tramite linguaggi di programmazione lo stesso algoritmo, fissato un linguaggio di programmazione, può essere
DettagliUnità di apprendimento 6. Il software: dal linguaggio alla applicazione
Unità di apprendimento 6 Il software: dal linguaggio alla applicazione Unità di apprendimento 6 Lezione 4 Le applicazioni dell informatica In questa lezione impareremo: i campi di utilizzo dell informatica
DettagliElementi di Informatica
Elementi di Informatica Capitolo 1 - Concetti Generali Si definisce: Hardware, l'insieme degli elementi fisici che costituiscono un computer (vedi capitolo 2). Software, l'insieme dei programmi che consentono
DettagliCONCETTI E ARCHITETTURA DI UN SISTEMA DI BASI DI DATI
CONCETTI E ARCHITETTURA DI UN SISTEMA DI BASI DI DATI Introduzione alle basi di dati (2) 2 Modelli dei dati, schemi e istanze (1) Nell approccio con basi di dati è fondamentale avere un certo livello di
DettagliServer LDAP. File Server. Domain Controller. Installazione di una piattaforma Linux Alessandro Brusò 24/05/2012
791522 Alessandro Brusò Installazione di una piattaforma Linux Server LDAP File Server Domain Controller 2 1 1 2 3 Analisi Creazione del server virtuale Installazione e configurazione dei servizi 3 Analisi
DettagliIl Software programmabili programma algoritmo
Il Software La proprietà fondamentale dei calcolatori e` quella di essere programmabili cioè in grado di svolgere compiti diversi a seconda delle istruzioni fornite dall utente mediante un programma, ossia
Dettagli