FACOLTÁ DI INGEGNERIA CORSO DI LAUREA INGEGNERIA INFORMATICA Progetto e Sviluppo di un Algoritmo di Scheduling per il Sistema RTAI Candidato: Luca Marzario.

Slides:



Advertisements
Presentazioni simili
Scheduling (Schedulazione) Susanna Pelagatti – Università di Pisa
Advertisements

CONCLUSIONE - Nucleo (o Kernel) Interagisce direttamente con lhardware Interagisce direttamente con lhardware Si occupa dellesecuzione.
Il Sistema Operativo Il Sistema Operativo fa parte del software di base; e` costituito da un insieme di programmi che interagiscono e cooperano per: gestire.
Gestione dei processi A. Ferrari.
Miglioramento della protezione dei dati mediante SQL Server 2005 Utilizzo della crittografia di SQL Server 2005 per agevolare la protezione dei dati Pubblicato:
Il Sistema Operativo.
Orario definitivo Martedì Aula 2 Polo Mercoledì Aula 1 Fondi Palazzina delle Scienze Giovedì 9-11 Aula 1 Fondi Palazzina delle Scienze Nota:
1 Processi e Thread Processi Thread Meccanismi di comunicazione fra processi (IPC) Problemi classici di IPC Scheduling Processi e thread in Unix Processi.
Gestione del processore
Relatore:. Prof. Fabrizio FERRANDI Correlatore:. Ing. Marco D
Time Sharing Il termine “Time Sharing” proviene dall'inglese e significa letteralmente “partizione di tempo”. Questa è una tecnica sviluppatasi negli.
Scheduling in Linux (Kernel 2.6)
Il sistema operativo.
Scheduling della CPU Concetti fondamentali Criteri di scheduling
Scheduling della CPU Concetti di base Criteri di scheduling
Dipartimento di Ingegneria dell’informazione Università di Siena
INTRODUZIONE AI SISTEMI OPERATIVI
1 12. Progettare Sistemi Real-Time Progettare sistemi software il cui comportamento è condizionato da vincoli di tempo Mostreremo perché i sistemi real-time.
1 9: Progettazione Architetturale Obiettivo: stabilire la struttura globale di un sistema software Descriveremo diversi tipi di modello di architettura,
Risorse condivise e sovraccarichi nei sistemi in tempo reale E.Mumolo
Sistemi e schedulazione in tempo reale E.Mumolo
1 Corso di Informatica (Programmazione) Lezione 4 (24 ottobre 2008) Architettura del calcolatore: la macchina di Von Neumann.
Le prestazioni (velocità) di un singolo disco sono limitate dalla tecnologia usata, -per aumentare le prestazioni si può pensare di far operare in parallelo.
Università degli Studi di Roma La Sapienza
Struttura dei sistemi operativi (panoramica)
L. Servoli - Corso Fisica dei Dispositivi Elettronici 1 Uno scheduler deve avere implementate almeno le seguenti funzionalità: 1) Inizializzatore: preparazione.
Laboratorio di Informatica
Sistemi Operativi SCHEDULING DELLA CPU.
1 LINUX: struttura generale The layers of a UNIX system. User Interface.
1 Scheduling in Windows 2000 Un thread entra in modalità kernel e chiama lo scheduler quando: Si blocca su un oggetto di sincronizzazione (semaforo, mutex,
Fondamenti di Informatica
Informatica giuridica Hardware e software: glossario Lucio Maggio Anno Accademico 2001/2002.
Distributed File System Service Dario Agostinone.
UNIVERSITÀ DEGLI STUDI DI PISA Facoltà di Ingegneria Corso di Laurea in Ingegneria Informatica ACQUISIZIONE DATI IN AMBIENTE REAL TIME E MONITORAGGIO VIA.
INTRODUZIONE l sistema operativo è il primo software che lutente utilizza quando accende il computer; 1)Viene caricato nella memoria RAM con loperazione.
Benvenuti a Un incontro informativo di grande valore ed alto contenuto sulla Virtualizzazione e sistemi ad alta disponibiltà per le PMI.
La schedulazione dei processi
ALGORITMI DI SCHEDULING PARTE II
IL PROBLEMA DELLO SCHEDULING
Seconda Università degli Studi di Napoli Facoltà di Economia Corso di Informatica Prof.ssa Zahora Pina.
1 Scheduling in Windows 2000 Un thread entra in modalità kernel e chiama lo scheduler quando: Si blocca su un oggetto di sincronizzazione (semaforo, mutex,
Wireless Sensor Networks e Sistemi Operativi Real-Time
Il Sistema Operativo (1)
Servizi Grid ed agenti mobili : un ambiente di sviluppo e delivering
Threads.
Sistema Operativo (Software di base)
Prima di iniziare… Durata attività: due lezioni frontali + una lezione laboratorio + compiti per casa Prerequisiti: elementi base architettura dei calcolatori.
Gli interrupt Quando una periferica richiede attenzione alla cpu genera un segnale detto di interrupt.
I processi.
1 Gestione del Processore (Scheduling). 2 Scheduling dei processi È l’attività mediante la quale il sistema operativo effettua delle scelte tra i processi,
Gestione del Processore (Scheduling)
Il nucleo del Sistema Operativo
Gestione del processore (Scheduler)
1 Sommario degli argomenti  Sistemi operativi: DOS, Unix/Linux,Windows  Word processors: Word  Fogli elettronici: Excel  Reti: TCP/IP, Internet, ftp,
1 Input/Output. 2 Livelli del sottosistema di I/O Hardware Gestori delle interruzioni Driver dei dispositivi Software di sistema indipendente dal dispositivo.
Corso di Laurea in Scienze e Tecnologie Chimiche corso di Informatica Generale Paolo Mereghetti DISCo – Dipartimento di Informatica, Sistemistica e Comunicazione.
1 Input/Output. 2 Livelli del sottosistema di I/O Hardware Gestori delle interruzioni Driver dei dispositivi Software di sistema indipendente dal dispositivo.
Sistema operativo Il Sistema Operativo gestisce le risorse hw e sw del sistema di elaborazione Facilita l'interazione tra utente e sistema Esistono diversi.
Sistemi operativi di rete Ing. A. Stile – Ing. L. Marchesano – 1/18.
1 Processi e Thread Processi Thread Meccanismi di comunicazione fra processi (IPC) Problemi classici di IPC Scheduling Processi e thread in Unix Processi.
Corso di Laurea in Biotecnologie corso di Informatica Paolo Mereghetti DISCo – Dipartimento di Informatica, Sistemistica e Comunicazione.
Corso di Laurea in Biotecnologie corso di Informatica Paolo Mereghetti DISCo – Dipartimento di Informatica, Sistemistica e Comunicazione.
Informatica Generale Marzia Buscemi
INTRODUZIONE AI SISTEMI OPERATIVI. Introduzione Il software può essere diviso un due grandi classi: Il software può essere diviso un due grandi classi:
I sistemi operativi Funzioni principali e caratteristiche.
Gli interrupt Richiesta di attenzione alla cpu. Viene generato un segnale detto di interrupt diretto alla cpu.
Scheduler e politiche di Marco Arcamone.
Gestione delle periferiche. Le periferiche sono dispositivi che permettono le operazioni di input/output.
1 Informatica di Base Facoltà di Lingue e Letterature Straniere Corso di laurea in Relazioni Pubbliche.
Il Sistema Operativo Processi e Risorse
Transcript della presentazione:

FACOLTÁ DI INGEGNERIA CORSO DI LAUREA INGEGNERIA INFORMATICA Progetto e Sviluppo di un Algoritmo di Scheduling per il Sistema RTAI Candidato: Luca Marzario

Sommario Motivazioni Obiettivi Architettura del sistema RTAI Implementazione Test Conclusioni

Motivazioni Applicazioni interattive e multimediali Quality of service Sistemi operativi general-purpouse (Windows, Linux,...) non offrono garanzie temporali Sistemi operativi real-time troppo costosi non offrono supporto adeguato alle applicazioni multimediali e interattive

Caratteristiche di Linux Linux non è un sistema operativo real-time Possiede molte caratteristiche che ne fanno un ottimo sistema operativo: robusto e affidabile ampio supporto di processori e periferiche networking avanzato strumenti di sviluppo e dubugging interfaccia grafica ampia disponibilità di software

Linux e Real-Time Linux non possiede le caratteristiche tipiche dei sistemi real-time: determinismo (prevedibilità) possibilità di preemtion specifica vincoli temporali programmazione fine del timer

RTAI Real-Time Application Interface (RTAI) Affianca a Linux un kernel real-time Schedula Linux come idle task Vantaggi Buone prestazioni real-time per i task RTAI Sistema di sviluppo basato su Linux Problemi Starvation di Linux in caso di alti carichi real-time Crash del sistema in caso di errori di programmazione o malfunzionamenti

Soluzioni Implementare un algoritmo di reservation su RTAI Riservare banda di utilizzo del processore a ogni task Tempo minimo di esecuzione garantito Protezione del sistema da errori di programmazione o malfunzionamenti Schedulare Linux con il CBS Shell di comandi sempre attiva Minor tempo di risposta delle applicazioni Linux

Real Time Application Interface (RTAI) Sistema real-time che permette lesecuzione di applicazioni tipo hard real-time Fa parte dei progetti Linux Real-Time Questo tipo di sistemi si definisce real time executive Solo il kernel real-time ha il pieno controllo dellhardware Principali sistemi: RTAI e RTLinux real time executive hardware LinuxTask 1Task n

RTAI vs RTLinux Prestazioni offerte paragonabili. Interfacce di programmazione (API) molto simili RTAI è meno intrusivo rispetto a RTLinux: Maggiore mantenutibilità Più facile aggiornamento delle modifiche kernel Linux RTLinux open-source non è più mantenuto RTAI costantemente aggiornato Ultima versione di RTAI rilasciata il 23 settembre 2002

RTAI Costituito di moduli da inserire nel kernel Linux precedentemente modificato Moduli principali Gestore interruzioni (interrupt dispatcher) Scheduler Moduli aggiuntivi FIFO shared memory POSIX etc. Task Real-Time Gest. Interr Scheduler FIFO Shared Mem POSIX RT task kernel Linux modificato Linux Task

Applicazione RTAI Costituita di due componenti Meccanismi di comunicazione fifo scambio di messaggi segnali memoria condivisa... Task RT1 RTAI Task RTn Task RT2 Linux P1 P2 Pk Real-time (acquisizione, elaborazione, controllo etc.) eseguita da task RTAI (real-time) Non real-time (visualizzazione, tracing etc.) eseguita da processi Linux non disturba le attività real-time

RTHAL Attivazione RTAI modifica dei puntatori dellrthal Linux disable interrupt RTHAL disable interrupt Hard disable Soft disable Disattivazione ripristino dei puntatori alle funzioni originali di Linux Modifiche kernel Linux Linux perde il controllo diretto dellhardware RTHAL hardware LinuxTask 1Task n

RTAI interrupt dispatcher RTAI dispatcher Salva registri rtai handler? rtai handler Linux in esec? Linux handler Linux handler? interruzione pendente Ripristina registri

Scheduler Architetture supportate monoprocessore multiprocessore Politiche di scheduling Prioritario Semplice Rate Monotonic Earliest Deadline First Gestione del Timer modalità periodica modalità one-shot

Resource reservation Ogni task ha riservato un tempo Q ogni periodo T Processi hard real-time e soft real-time possono convivere E possibile riservare una frazione del tempo macchina a Linux

Il Constant Bandwidth Server Resource reservation tramite CBS (Constant Bandwidth Server) Basato sul TBS e DSS Rispetto al TBS non richiede WCET Rispetto al DSS migliori prestazioni

Algoritmo CBS Ad ogni task viene associato un server schedulato con EDF capacità massima periodo Ad ogni istanza servita dal server viene associata una deadline dinamica Durante lesecuzione la capacità viene decrementata. Una volta esaurita, viene ricaricata al suo valore massimo e la deadline viene posposta (diminuzione priorità)

Applicazione di prova Linux P1 RT3 RT2 RT1 FIFO

Conclusioni Risultati ottenuti Diminuzione dei tempi di risposta delle applicazioni Linux Garanzia di schedulazione di Linux anche in caso di grossi carichi real-time Maggior controllo Maggiore robustezza