Progetto ed implementazione di un tool di supporto allo sviluppo di applicazioni per Linux LibeRTOS



Documenti analoghi
Progettazione ed implementazione di un tool per lo sviluppo di applicazioni in Esperanto

Realizzazione di uno strumento web-based per la simulazione remota di reti di sensori senza filo

Memorizzazione affidabile di dati in un ambiente di Griglia

Realizzazione di un prototipo di un software web based per la gestione di un inventario comunale

Progetto ed implementazione di un tool di supporto allo sviluppo di applicazioni per Linux LibeRTOS

Il sistema operativo TinyOS

Un applicazione per il trasferimento file in ambiente Symbian

Realizzazione di un tool di instrumentazione automatica a supporto della failure analysis

Un architettura per la gestione dei log di applicazioni distribuite

Università degli studi Roma Tre Dipartimento di informatica ed automazione. Tesi di laurea

Strumenti per la gestione della configurazione del software

Analisi e utilizzo di un framework per lo sviluppo di applicazioni web

Il software impiegato su un computer si distingue in: Sistema Operativo Compilatori per produrre programmi

Tecniche di riuso del software: applicazione ad un caso di studio reale

Il Pattern MVC nei Framework di sviluppo per applicazioni Web. Analisi e comparazione di SPRING MVC Framework e ASP.NET MVC Framework.

Un approccio innovativo alla tecnica di robustness testing del sistema operativo Linux

Implementazione di tecniche di tolleranza ai guasti in un middleware per la Data Distribution Service

Sviluppo e integrazione di strumenti a supporto del reverse engineering di applicazioni flash

Realizzazione di un Tool per l iniezione automatica di difetti all interno di codice Javascript

Il Sistema Operativo. Introduzione di programmi di utilità. Elementi di Informatica Docente: Giorgio Fumera

Sviluppo di processi per l automatizzazione del testing per applicazioni Android

UN SUPPORTO AUTOMATICO PER LA RACCOLTA E L ANALISI DI DATI SPERIMENTALI DI UN MIDDLEWARE PER LA DISTRIBUZIONE DI DATI

Uno strumento per il deployment automatico di performance test su piattaforme per la distribuzione di dati

Un Sistema Informativo per il Monitoraggio di Apparati Radar mediante l uso di Griglie Computazionali

Analisi della dependability di un middleware per la

Reingegnerizzazione di un Content Management System verso l accessibilità secondo la normativa italiana

Un sistema per l'emulazione delle reti su cluster di macchine virtuali Anno Accademico 2007/2008

MANUALE UTENTE. In questo manuale verranno descritte tutte le sue funzioni. Il sistema OTRS è raggiungibile al seguente link:

Tesi di Laurea Automazione del testing delle Interfacce utente di applicazioni WEB:

PROTOTIPAZIONE DI UN TRADUTTORE DA SORGENTE PLC AD ASSEMBLY DI UNA MACCHINA VIRTUALE

Confronto sperimentale tra tecniche di testing automatico per applicazioni Android

Strumenti per il testing di applicazioni in ambiente Android

Sviluppo e manutenzione di un applicazione CAD tramite le WPF e l MV-VM

Il calcolatore - Applicazioni

Capitolo 3 Guida operativa del programma TQ Sistema

Progettazione e sviluppo di un Network Management System per reti wireless in configurazione Mesh-AP

FIRESHOP.NET. Gestione Lotti & Matricole.

Scuola Digitale. Manuale utente. Copyright 2014, Axios Italia

Esercitazioni di PROGETTAZIONE DEL SOFTWARE A.A

Creare diagrammi di Gantt con Visio 2003

Progettazione e Sviluppo dell Applicazione Web Share Mobile per Dispositivi Mobili Multipiattaforma. Elaborato di Laurea di: Marco Stanzani

Analisi e sviluppo di un componente per un ESB open source

con ANTLR tesi di laurea Anno Accademico Relatore Ch.mo prof. Porfirio Tramontana Candidato Fabio Canova Matr

Casi di studio sulla migrazione di applicazioni web verso servizi REST Anno Accademico 2008/2009

Prova Finale a.a. 2011/2012. Laboratorio 1: Introduzione a Java e Eclipse

LEX-ARC PROFESSIONAL Il SOFTWARE GESTIONALE PER AVVOCATI PRATICO, EFFICIENTE ED ECONOMICO

Progettazione e realizzazione di una GUI multi-piattaforma per applicazioni mediche in 2D

Progetto e sviluppo di unʼapplicazione iphone per lʼaccesso a reti di sensori senza fili."

Un sistema di identificazione basato su tecnologia RFID

Componente evalue. ZUFFELLATO SERVICE s.r.l.

Infrastruttura di produzione INFN-GRID

I database relazionali (Access)

Esercitazione 1 primi passi e uso dei file

Una Soluzione di NAT Traversal per un sistema di comunicazione VOIP per una PMI

POSTECERT POST CERTIFICATA GUIDA ALL USO DELLA WEBMAIL

L informatica INTRODUZIONE. L informatica. Tassonomia: criteri. È la disciplina scientifica che studia

xmlegeseditor un editore open-source per la redazione di testi normativi

ControlloCosti. Cubi OLAP. Controllo Costi Manuale Cubi

Addition X DataNet S.r.l.

Analisi e sviluppo di un portale di e-commerce

Obiettivi d esame PHP Developer Fundamentals on MySQL Environment

Android. Implementare una interfaccia utente

Manuale d uso Software di parcellazione per commercialisti Ver [05/01/2015]

tesi di laurea Anno Accademico relatore Ch.mo prof. Stefano Russo correlatore Ing. Generoso Paolillo candidato Marco Leoni Matr.

Introduzione alle basi di dati. Gestione delle informazioni. Gestione delle informazioni. Sistema informatico

ARCHIVIO GRAFICO ESTESO

1. BASI DI DATI: GENERALITÀ

Università degli Studi di Bologna Bologna, 12/12/2002 Corso di Laurea In Informatica. Alessandro Valenti. Sessione II

15 - Packages. Programmazione e analisi di dati Modulo A: Programmazione in Java. Paolo Milazzo

Plurima Protocollo. Soluzione di gestione Protocollo Informatico e Flusso documentale

Anagrafica. Check-List. Autocomposizione guidata

Telerilevamento e GIS Prof. Ing. Giuseppe Mussumeci

Gestione Rapporti (Calcolo Aree)

Guida all uso dell ambiente di sviluppo 1 integrato o IDE. JCreator LE 4.50

C++ E QT, BINOMIO PERFETTO

Un architettura per lo streaming multimediale in ambiente distribuito

Progettaz. e sviluppo Data Base

Gestione di Banche Dati Georeferenziati attraverso Web Mapping Conclusioni del Seminario --

FACOLTÀ DI INGEGNERIA CORSO DI LAUREA IN INGEGNERIA INFORMATICA DIPARTIMENTO DI INFORMATICA E SISTEMISTICA. Presentazione

Compilatore risorse display grafico LCD serie IEC-line

Punto Print Il programma per stampare. Documentazione Tecnica

Microsoft Word Microsoft Word 2002

Working Draft 0.5 (Telefonia)

REALIZZAZIONE DI UN LABORATORIO REMOTO PER ESPERIENZE DI ROBOTICA EDUCATIVA: LATO CLIENT

AlboTop. Software di gestione Albo per Ordini Assistenti Sociali

Un applicazione client per la localizzazione via Bluetooth e Wi-Fi di dispositivi Smartphone Anno Accademico 2005/2006

SMD: a sensor data distribution service for FIN-BOX middleware for the interoperability in systems of systems Anno Accademico 2011/2012

Realizzazione di un framework di monitoring per l'analisi di sistemi critici Anno Accademico 2013/2014

14 - Packages. Programmazione e analisi di dati Modulo A: Programmazione in Java. Paolo Milazzo

Un sistema di identificazione basato sulla tecnologia RFID

Lezione Power Point. Eleonora Di Maria. Corso di Marketing

Installazione LINUX 10.0

SOFTWARE. È l insieme delle istruzioni che è necessario fornire alla macchina per il suo funzionamento. Vi sono due categorie di software:

CORSO ACCESS PARTE II. Esistono diversi tipi di aiuto forniti con Access, generalmente accessibili tramite la barra dei menu (?)

FONDAMENTI di INFORMATICA L. Mezzalira

Università degli studi di Ferrara. Sviluppo di un Web Service per la classificazione del suolo e sua integrazione sul Portale SSE

Il menu File contiene tutti i comandi relativi alle seguenti operazioni:

Un framework a supporto della sperimentazione di tecniche euristiche. per l ottimizzazione di pagine Web per Screen Readers

SIRED Sistema informativo di raccolta ed elaborazione dati sul movimento turistico

Generazione Automatica di Asserzioni da Modelli di Specifica

Transcript:

tesi di laurea Anno Accademico 2005/2006 relatore Ch.mo Prof. Ing. Domenico Cotroneo correlatore Ing. Armando Migliaccio candidato Giuseppe Di Luca Matr. 534/1493

LibeRTOS KUSP Contesto Linux based Real Time Operating System Implementato nell ambito del progetto KURT Linux KURT Linux: Kansas University Real Time Linux Particolare attenzione alle problematiche Real Time Parte integrante del progetto KUSP Kansas University System Programming Pacchetto con strumenti per la programmazione del sistema operativo LibeRTOS Supporto per l innovativo l meccanismo di schedulazione Group Scheduling Kusp Experiments: pacchetto contenente esempi di funzionamento Perché il Group Scheduling Inefficacia delle tradizionali politiche di scheduling per i Real Time tasks Superamento delle problematiche per i metodi di scheduling basati i su priorità Evita la composizione di varie politiche di scheduling con quelle e a priorità

Il concetto Il Group Scheduling Model Raggruppamento delle computazioni affini per la formazione di gruppi semanticamente omogenei Rendere computation-specific le politiche di scheduling del sistema La struttura Le entità del modello: i nodi Gruppo/Processo Organizzazione gerarchica dei nodi in un albero: lo Scheduling Decision D Tree (SDT e SSDT) Le politiche di scheduling: Scheduling Decision Functions (SDFs) Associazione ai nodi processo delle specifiche computazioni da svolgeres Esempi di funzionamento

Vantaggi Particolari del Group Scheduling Rappresentazione esplicita della struttura computazionale delle applicazioni Aumento della personalizzabilità del sistema Aumento della trasparenza del sistema Svantaggi API difficili da gestire per il programmatore Complessità nella costruzione del codice per applicazioni con elevato numero di nodi Programmi Group Scheduling difficilmente manutenibili Soluzioni Progettazione di un tool per la costruzione visuale dell albero di schedulazione Automatizzazione dei processi di generazione del codice per le strutture s create graficamente

Caratteristiche Il tool sviluppato: GS Graphic Tool/1 Possibilità di creare visivamente la struttura gerarchica Aggiunta/Rimozione/Modifica dei nodi dell albero Definizione delle caratteristiche e dei parametri di scheduling per i nodi Possibilità di definizione delle computazioni per i nodi Processo Configurabilità Definizione dei percorsi di inclusione per i files di intestazione ne che definiscono gli schedulers Generazione del codice Selezione del percorso di salvataggio Generazione del file di intestazione per l inclusione l dei prototipi delle primitive Group Scheduling e delle computazioni eventualmente implementate Generazione del sorgente effettivo dell applicazione Scrittura del Makefile per la compilazione del sorgente generato

Progettazione Il tool sviluppato: GS Graphic Tool/2 Definizione delle entità previste dal modello: Nodo e Albero Definizione di un interfaccia per la visualizzazione della struttura creata Definizione di un interfaccia generale per l inserimento l delle caratteristiche dei nodi Interfaccia text-editing editing per inserimento codice computazioni Architettura Pattern MVC

Le interfacce grafiche Dettagli implementativi Utilizzo del toolkit grafico GTK+: Gimp ToolKit Composizione degli oggetti grafici (widgets( widgets) ) secondo la teoria di packing Meccanismo di segnali ed eventi per la gestione delle interazioni GtkTreeView E un oggetto introdotto dalle versioni più recenti del toolkit GTK+ fornisce un Model implementato dall oggetto GtkTreeStore collegabile all oggetto View che visualizza i dati Il Controller dell applicazione gestisce gli aggiornamenti del Model in base alle interazioni dell utente View aggiornata automaticamente da GTK+ attraverso il meccanismo dei segnali GtkSourceView Estensione del widget GtkTextView di GTK+ Supporto al text editing con funzionalità di evidenziazione della sintassi di molti linguaggi Autoindentazione del codice, hi-lighting della riga corrente, evidenziazione delle parentesi corrispondenti

Schermate dell applicazione/1 Interfaccia principale di semplice utilizzo Look personalizzato grazie ai package forniti dal toolkit GTK+ Menubar per la scelta di funzioni di utilità Possibilità configurazione dei percorsi di inclusione (menù Modifica) Barra dei bottoni per l accesso l alle principali funzionalità del tool Suggerimenti (tooltips) definiti per i singoli bottoni

Schermate dell applicazione/2 Entry per l inserimento l del nome Radio button per la scelta del tipo Scelta della SDF per i gruppi Associazione delle computazioni ai processi Possibilità di inserimento per parametri scheduler-specific Possibilità di espansione del percorso creato

Contributi della tesi Conclusione Obiettivi raggiunti Progetto e realizzazione di un tool visuale per la costruzione di applicazioni per Linux LibeRTOS che sfruttino il Group Scheduling Automatizzazione dei processi di generazione dei files per le strutture costruite graficamente: file di intestazione per i prototipi file contenente il codice sorgente per la struttura Makefile per la compilazione del codice