Real-time EDF scheduling per il kernel FreeBSD: analisi, implementazione e risultati sperimentali

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Real-time EDF scheduling per il kernel FreeBSD: analisi, implementazione e risultati sperimentali"

Transcript

1 Real-time EDF scheduling per il kernel FreeBSD: analisi, implementazione e risultati sperimentali Marco Trentini m.trentini@campus.unimib.it Relatore: Dott. Sergio Ruocco Correlatore: Prof. Francesco Tisato Facoltà di Scienze Matematiche Fisiche e Naturali Corso di Laurea Specialistica in Informatica Sessione del 24 Novembre, 2011

2 Roadmap della presentazione 1 evoluzione dei sistemi operativi Unix-like 2 FreeBSD, Linux, e sue varianti real-time 3 lo scheduler real-time SCHED DEADLINE per Linux 4 porting di SCHED DEADLINE per FreeBSD 5 risultati sperimentali 6 conclusioni e sviluppi futuri

3 Evoluzione dei sistemi operativi Unix-like

4 FreeBSD Origini, impieghi e caratteristiche principali FreeBSD nasce nel 1993 come derivazione di 386BSD la versione non commerciale di Unix sviluppata da UC-Berkeley impiegato per server, workstation e recentemente in alcuni sistemi embedded (TV Panasonic) lo scheduler (ULE) non ha supporto per il real-time e nella comunità non sono note iniziative in tal senso! ha una licenza (BSD) tecnicamente e commercialmente molto meno restrittiva di quella Linux (GPL)

5 Real-time Linux Stato dell arte Linux viene oggi impiegato in svariati ambiti: multimedia, sistemi embedded e mobili, cellulari, smartphone (Android), consumer electronics (TV, navigatori), robotica... dal 1999 si tiene il Real Time Linux Workshop, seminario internazionale dedicato al supporto ed impiego di Linux in ambiti real-time. varianti con supporto commerciale: Montavista, Windriver e Timesys; varianti con supporto communità: OCERA, AQuoSA, Frescor, LITMUS-RT, RTLinux e Preempt-RT; Variante scelta per questa tesi: SCHED DEADLINE SCHED DEADLINE = EDF + isolamento temporale (Constant Bandwidth Server) implementazione per Linux nel contesto del progetto europeo ACTOR guidato da Ericsson Research con la partecipazione, tra gli altri, di Scuola S. Anna (PI) incapsulata in un componente (modulo Linux) - lo scheduler è modulare dalla versione licenza Gnu Public License (GPL) V2 free software

6 Modello dei task real-time in SCHED DEADLINE

7 FreeBSD (sched)ule: strutture dati

8 (sched)ule + SCHED DEADLINE = FreeBSD real-time!

9 Risultati sperimentali Ambiente di test: AMD Athlon(tm) 64bit X2 Dual Core Processor ( MHz K8-class CPU); FreeBSD con patch deadline-bsd (HZ=10000) Tool: modifica di sched getparam ex e relativi parametri per portare in user space informazioni di scheduling dei thread real-time; KTR, sched switch e GtkWave per visualizzare gli eventi di scheduling in formato grafico. Misurazioni: 1 rispetto dei vincoli temporali di esecuzione; 2 confronto con le altre classi di scheduling.

10 Risultati sperimentali - (1) SCHED DEADLINE Legenda: sh tid : task di classe real-time Posix (massima priorità, simula alto carico); sh tid /93/94: task di classe deadline con runtime 200/300/300(us) e deadline 1/2/3(ms); colore linea: rosso per task ready; verde/azzurro per task running; giallo per task not ready;

11 Risultati sperimentali - (1) SCHED DEADLINE Osservazioni: rispetto priorità esecutiva; rispetto di max runtime (isolamento temporale); rispetto delle deadline (EDF); preemption tra task real-time (EDF);

12 Risultati sperimentali - (2) classe standard di ULE Legenda: sh tid : task di classe real-time Posix (massima priorità e in while(1), simula alto carico); sh tid : task di classe real-time Posix (massima priorità e in while(1)); colore linea: rosso per task ready; verde/azzurro per task running; giallo per task not ready;

13 Risultati sperimentali - (2) classe standard di ULE Osservazioni: max runtime dipende dalla time slice (default a 100ms per tutti i task); periodo di esecuzione dipende dal numero di task in stato di pronto (in Round Robin);

14 Conclusioni e direzioni future Risultati ottenuti: il porting di SCHED DEADLINE in FreeBSD è stato effettuato con successo; FreeBSD può essere impiegato in ambiti applicativi con requisiti real-time. Lavori futuri: vincolo deadline diverso dal periodo; integrare altri algoritmi di scheduling real-time (come moduli);

15 (Extra) Cosa è stato fatto - Teoria e pratica Parte teorica: studio sulla teoria dello scheduling di processi nei sistemi operativi; scheduling in Linux e FreeBSD con ricerca di proposte real-time. Parte pratica: implementazione/trapianto di SCHED DEADLINE nello scheduler di FreeBSD con risultati sperimentali.

16 (Extra) FreeBSD - Scheduling di processi Due scheduler: 4BSD, ereditato da 4.3BSD (obsoleto); il più recente ULE (da schedule), scheduler di default per la maggior parte delle architetture supportate; Obiettivi massima priorità esecutiva ai task kernel; minimizzare i tempi di risposta per i task utente interattivi; supporto per architetture multicore (SMP).

17 (Extra) FreeBSD - Scheduling di processi Due scheduler: 4BSD, ereditato da 4.3BSD (obsoleto); il più recente ULE (da schedule), scheduler di default per la maggior parte delle architetture supportate; Obiettivi massima priorità esecutiva ai task kernel; minimizzare i tempi di risposta per i task utente interattivi; supporto per architetture multicore (SMP).

18 (Extra) FreeBSD - Scheduling di processi Caratteristiche di ULE: classi di priorità: in una decisione di scheduling si manda in esecuzione il task con priorità maggiore; classi kernel con priorità statiche e senza time slice; classi utente con time slice e calcolo delle priorità dinamiche con lo scopo di favorire i task interattivi; complessità temporale di O(1) (in 4BSD era O(n)); tecnica a priorità ereditata per il problema di priorità inversa; supporto alle classi di scheduling real-time POSIX sched fifo e sched rr; bilanciamento di carico statico e periodico basato su affinity e distanza di cache, per architetture multicore (SMP).

19 (Extra) FreeBSD - Scheduling real-time (?!) FreeBSD manca di: scheduling che tenga conto di vincoli temporali; kernel preemptive a grana più fine; timer ad alta risoluzione [1ms... 10us]; Cosa risolve l implementazione di SCHED DEADLINE in FreeBSD?

20 (Extra) FreeBSD - Scheduling real-time (?!) FreeBSD manca di: scheduling che tenga conto di vincoli temporali; kernel preemptive a grana più fine; timer ad alta risoluzione [1ms... 10us]; Cosa risolve l implementazione di SCHED DEADLINE in FreeBSD?

21 (Extra) FreeBSD - Scheduling real-time (?!) FreeBSD manca di: scheduling che tenga conto di vincoli temporali; kernel preemptive a grana più fine; timer ad alta risoluzione [1ms... 10us]; Cosa risolve l implementazione di SCHED DEADLINE in FreeBSD?

22 (Extra) FreeBSD - Scheduling real-time (?!) FreeBSD manca di: scheduling che tenga conto di vincoli temporali; kernel preemptive a grana più fine; timer ad alta risoluzione [1ms... 10us]; Cosa risolve l implementazione di SCHED DEADLINE in FreeBSD?

23 (Extra) Deadline-BSD - classe di scheduling Nuova classe di scheduling deadline. Precedenza di esecuzione: minore rispetto alle classi kernel; maggiore rispetto a tutte le classi utente; Motivazioni: evitare di ritardare l esecuzione dei gestori degli interrupt; rispetto dei vincoli temporali richide la precedenza su altri task utente; gestione della capacità di calcolo per allocare banda di utilizzo per altre classi.

24 (Extra) Deadline-BSD - classe di scheduling Nuova classe di scheduling deadline. Precedenza di esecuzione: minore rispetto alle classi kernel; maggiore rispetto a tutte le classi utente; Motivazioni: evitare di ritardare l esecuzione dei gestori degli interrupt; rispetto dei vincoli temporali richide la precedenza su altri task utente; gestione della capacità di calcolo per allocare banda di utilizzo per altre classi.

25 (Extra) Deadline-BSD - Gestione dei task Strutture dati: modifica struttura informativa dei thread; albero binario red-black (per-cpu); banda di utilizzo disponibile ed effettiva (per-cpu); Albero red-black ogni nodo rappresenta/punta ad un task; ordinato sulla base delle deadline assolute dei task; il nodo più a sinistra è quello con il minor valore; complessità temporale di gestione dell albero di O(log n).

26 (Extra) Deadline-BSD - Gestione dei task Strutture dati: modifica struttura informativa dei thread; albero binario red-black (per-cpu); banda di utilizzo disponibile ed effettiva (per-cpu); Albero red-black ogni nodo rappresenta/punta ad un task; ordinato sulla base delle deadline assolute dei task; il nodo più a sinistra è quello con il minor valore; complessità temporale di gestione dell albero di O(log n).

27 (Extra) Deadline-BSD - Isolamento temporale EDF non garantisce il rispetto del budget di esecuzione dei task. Controllo del budget: agganciato alla gestione dei tick del clock di sistema; quando un task esaurisce il suo budget viene stoppato e ri-attivato (tramite un timer) sulla base del periodo. Cosa otteniamo? l istanza del task può restare in esecuzione per al massimo il suo budget; un task non può monopolizzare la CPU, influenzando l esecuzione di altri task.

28 (Extra) Deadline-BSD - Isolamento temporale EDF non garantisce il rispetto del budget di esecuzione dei task. Controllo del budget: agganciato alla gestione dei tick del clock di sistema; quando un task esaurisce il suo budget viene stoppato e ri-attivato (tramite un timer) sulla base del periodo. Cosa otteniamo? l istanza del task può restare in esecuzione per al massimo il suo budget; un task non può monopolizzare la CPU, influenzando l esecuzione di altri task.

29 (Extra) Deadline-BSD - Isolamento temporale EDF non garantisce il rispetto del budget di esecuzione dei task. Controllo del budget: agganciato alla gestione dei tick del clock di sistema; quando un task esaurisce il suo budget viene stoppato e ri-attivato (tramite un timer) sulla base del periodo. Cosa otteniamo? l istanza del task può restare in esecuzione per al massimo il suo budget; un task non può monopolizzare la CPU, influenzando l esecuzione di altri task.

30 (Extra) Deadline-BSD - Gestione banda di utilizzo Gestione della banda di utilizzo (per-cpu) dei task di classe deadline regolata da due parametri di sistema: Sysctl: kern.sched.dl period us (default a 1s); kern.sched.dl runtime us (default a 600ms);

31 (Extra) Deadline-BSD - Test di ammissione Test di ammissione: n dl bw <= C (dl runtime us/dl period us) i=0 con C numero di CPU del sistema e n numero di task di classe deadline in stato di pronto. Cosa garantisce? sufficiente banda di CPU per rispettare i vincoli temporali di esecuzione dei task. Cosa non garantisce? l effettivo rispetto dei vincoli temporali.

32 (Extra) Deadline-BSD - Test di ammissione Test di ammissione: n dl bw <= C (dl runtime us/dl period us) i=0 con C numero di CPU del sistema e n numero di task di classe deadline in stato di pronto. Cosa garantisce? sufficiente banda di CPU per rispettare i vincoli temporali di esecuzione dei task. Cosa non garantisce? l effettivo rispetto dei vincoli temporali.

33 (Extra) Deadline-BSD - Test di ammissione Test di ammissione: n dl bw <= C (dl runtime us/dl period us) i=0 con C numero di CPU del sistema e n numero di task di classe deadline in stato di pronto. Cosa garantisce? sufficiente banda di CPU per rispettare i vincoli temporali di esecuzione dei task. Cosa non garantisce? l effettivo rispetto dei vincoli temporali.

34 (Extra) - Deadline-BSD - Granularità Uso dei timer in Deadline-BSD: per attivare nuove istanze di task; per controllare il budget di esecuzione dei task; I timer in FreeBSD sono legati alla frequenza del clock principale di sistema (parametro di configurazione del kernel, HZ). Cosa implica? non è possibile armare timer con una risoluzione inferiore al periodo di clock di sistema; diminuisce la precisione nel rispetto dei vincoli; frequenze troppo alte del clock di sistema comportano instabilità (es. a 1us).

35 (Extra) - Deadline-BSD - Granularità Uso dei timer in Deadline-BSD: per attivare nuove istanze di task; per controllare il budget di esecuzione dei task; I timer in FreeBSD sono legati alla frequenza del clock principale di sistema (parametro di configurazione del kernel, HZ). Cosa implica? non è possibile armare timer con una risoluzione inferiore al periodo di clock di sistema; diminuisce la precisione nel rispetto dei vincoli; frequenze troppo alte del clock di sistema comportano instabilità (es. a 1us).

36 (Extra) - Deadline-BSD - Granularità Uso dei timer in Deadline-BSD: per attivare nuove istanze di task; per controllare il budget di esecuzione dei task; I timer in FreeBSD sono legati alla frequenza del clock principale di sistema (parametro di configurazione del kernel, HZ). Cosa implica? non è possibile armare timer con una risoluzione inferiore al periodo di clock di sistema; diminuisce la precisione nel rispetto dei vincoli; frequenze troppo alte del clock di sistema comportano instabilità (es. a 1us).

37 (Extra) - Deadline-BSD - SMP Gestione del bilanciamento di carico per i task di classe deadline separata da quella standard di ULE. Scelta della CPU per i nuovi task: banda di utilizzo sufficiente; minir carico di task di classe deadline; la banda rimane allocata fino al uscita (exit/kill) del task.

38 (Extra) - Deadline-BSD - SMP Gestione del bilanciamento di carico per i task di classe deadline separata da quella standard di ULE. Scelta della CPU per i nuovi task: banda di utilizzo sufficiente; minir carico di task di classe deadline; la banda rimane allocata fino al uscita (exit/kill) del task.

39 (Extra) Deadline-BSD - Integrazione in ULE Innesto di Deadline-BSD in ULE: nuove strutture dati e relative inizializzazioni; scelta del task da mandare in esecuzione; switch di contesto; fork di thread; tick di stathz; tick di hz; passaggio del thread in stato di pronto; yielding; uscita di un thread.

40 (Extra) Deadline-BSD - Chiamate di sistema syscall: int sched_getparam_ex(pid_t, struct sched_param_ex *); int sched_getscheduler_ex(pid_t); int sched_setparam_ex(pid_t, const struct sched_param_ex *); int sched_setscheduler_ex(pid_t, int, const struct sched_param_ex *); struct sched_param_ex { int sched_priority; struct timespec sched_runtime; struct timespec sched_deadline; struct timespec sched_period; unsigned int sched_flags; struct timespec curr_runtime; struct timespec used_runtime; struct timespec curr_deadline; };

41 (Extra) Deadline-BSD - Risultati sperimentali - (1) Statistiche di scheduling: while(1) per 3 secondi con diversi vincoli temporali 200us/1ms 300us/2ms 300us/3ms (runtime/deadline) tot rtime usec (runtime totale) rtime over usec (runtime totale in eccesso) last rorun usec (ultimo runtime in eccesso) rorun max usec (massimo runtime in eccesso) cnt dmiss (nbr deadline mancate) cnt rorun (nbr runtime in eccesso) cnt timerfire (nbr attivazione timer) cnt resched (nbr rischedulazione) cnt updatecurr (nbr update runtime)

42 (Extra) Deadline-BSD - Risultati sperimentali - (1) Osservazioni: rispetto della banda di utilizzo grazie all isolamento temporale, (valori di tot rtime usec e figura); rispetto della deadline (cnt dmiss a 0); preemption tra task di classe deadline con EDF (preemption del task 94); rorun max use non va mai oltre la risoluzione del tick di clock di sistema (in questo caso pari a 100us);

Università degli Studi di Milano Bicocca Facoltà di Scienze Matematiche Fisiche e Naturali Corso di Laurea Specialistica in Informatica

Università degli Studi di Milano Bicocca Facoltà di Scienze Matematiche Fisiche e Naturali Corso di Laurea Specialistica in Informatica Università degli Studi di Milano Bicocca Facoltà di Scienze Matematiche Fisiche e Naturali Corso di Laurea Specialistica in Informatica Real-time EDF scheduling per il kernel FreeBSD: analisi, implementazione

Dettagli

Schedulazione in RTAI

Schedulazione in RTAI Schedulazione in RTAI RTAI: modulo kernel rt_hello_km.c #include #include Thread real-time... Ciclo infinito RT_TASK task; Periodico... void task_routine() { while(1) { /* Codice

Dettagli

Lo scheduling. Tipici schedulatori

Lo scheduling. Tipici schedulatori Lo scheduling Un processo durante la sua evoluzione è o running o in attesa di un evento. Nel secondo caso trattasi della disponibilità di una risorsa (CPU, I/O, struttura dati, ecc.) di cui il processo

Dettagli

scheduling Riedizione modifi cata delle slide della Prof. DI Stefano

scheduling Riedizione modifi cata delle slide della Prof. DI Stefano scheduling Riedizione modifi cata delle slide della Prof. DI Stefano 1 Scheduling Alternanza di CPU burst e periodi di I/O wait a) processo CPU-bound b) processo I/O bound 2 CPU Scheduler Seleziona uno

Dettagli

Università degli Studi di Milano Bicocca Facoltà di Scienze Matematiche Fisiche e Naturali Corso di Laurea Specialistica in Informatica

Università degli Studi di Milano Bicocca Facoltà di Scienze Matematiche Fisiche e Naturali Corso di Laurea Specialistica in Informatica Università degli Studi di Milano Bicocca Facoltà di Scienze Matematiche Fisiche e Naturali Corso di Laurea Specialistica in Informatica Real-time EDF scheduling per il kernel FreeBSD: analisi, implementazione

Dettagli

Algoritmi di scheduling

Algoritmi di scheduling Capitolo 3 Algoritmi di scheduling Come caso particolare di studio, di seguito è discussa in dettaglio la politica di scheduling del sistema operativo LINUX (kernel precedente alla versione 2.6). Sono

Dettagli

Scheduling. Scheduling 14/12/2003 1/7

Scheduling. Scheduling 14/12/2003 1/7 Scheduling In un computer multiprogrammato più processi competono per l'uso della CPU. La parte di sistema operativo che decide quale processo mandare in esecuzione è lo scheduler. Batch OS: scheduling

Dettagli

Tesina per l esame di Sistemi Operativi a cura di Giuseppe Montano. Prof. Aldo Franco Dragoni

Tesina per l esame di Sistemi Operativi a cura di Giuseppe Montano. Prof. Aldo Franco Dragoni Sistemi operativi real time basati su Linux: gestione delle risorse e dei processi. Tesina per l esame di Sistemi Operativi a cura di. Prof. Aldo Franco Dragoni Corso di laurea in Ingegneria Informatica

Dettagli

Lo scheduler di UNIX (1)

Lo scheduler di UNIX (1) Lo scheduler di UNIX (1) Lo scheduling a basso livello è basato su una coda a più livelli di priorità 1 Lo scheduler di UNIX (2) Si esegue il primo processo della prima coda non vuota per massimo 1 quanto

Dettagli

Algoritmi di scheduling - Parte 2

Algoritmi di scheduling - Parte 2 Algoritmi di scheduling - Parte 2 Automazione I 12/11/2013 Vincenzo Suraci STRUTTURA DEL NUCLEO TEMATICO ALGORITMO DEADLINE MONOTONIC PRIORITY ORDERING (DMPO) ALGORITMO TIMELINE SCHEDULING (TS) SCHEDULING

Dettagli

Sistemi Operativi. Scheduling della CPU SCHEDULING DELLA CPU. Concetti di Base Criteri di Scheduling Algoritmi di Scheduling

Sistemi Operativi. Scheduling della CPU SCHEDULING DELLA CPU. Concetti di Base Criteri di Scheduling Algoritmi di Scheduling SCHEDULING DELLA CPU 5.1 Scheduling della CPU Concetti di Base Criteri di Scheduling Algoritmi di Scheduling FCFS, SJF, Round-Robin, A code multiple Scheduling in Multi-Processori Scheduling Real-Time

Dettagli

Sistemi Operativi SCHEDULING DELLA CPU. Sistemi Operativi. D. Talia - UNICAL 5.1

Sistemi Operativi SCHEDULING DELLA CPU. Sistemi Operativi. D. Talia - UNICAL 5.1 SCHEDULING DELLA CPU 5.1 Scheduling della CPU Concetti di Base Criteri di Scheduling Algoritmi di Scheduling FCFS, SJF, Round-Robin, A code multiple Scheduling in Multi-Processori Scheduling Real-Time

Dettagli

Scheduling. Lo scheduler è la parte del SO che si occupa di

Scheduling. Lo scheduler è la parte del SO che si occupa di Scheduling Lo scheduler è la parte del SO che si occupa di decidere quale fra i processi pronti può essere mandato in esecuzione L algoritmo di scheduling (la politica utilizzata dallo scheduler) ha impatto

Dettagli

Sistemi Operativi. Scheduling dei processi

Sistemi Operativi. Scheduling dei processi Sistemi Operativi Scheduling dei processi Scheduling dei processi Se più processi sono eseguibili in un certo istante il sistema deve decidere quale eseguire per primo La parte del sistema operativo che

Dettagli

Lezione 6. Sistemi operativi. Marco Cesati System Programming Research Group Università degli Studi di Roma Tor Vergata.

Lezione 6. Sistemi operativi. Marco Cesati System Programming Research Group Università degli Studi di Roma Tor Vergata. Lezione 6 Sistemi operativi 31 marzo 2015 System Programming Research Group Università degli Studi di Roma Tor Vergata SO 15 6.1 Di cosa parliamo in questa lezione? La schedulazione 1 e caratteristiche

Dettagli

RTAI e scheduling. Andrea Sambi

RTAI e scheduling. Andrea Sambi RTAI e scheduling Andrea Sambi Scheduling Linux Due politiche di scheduling priority-driven possibili. FIFO priorità uguali Processo 1 iniziato Processo 1: iterazione 1 Processo 1: iterazione 2 Processo

Dettagli

Low Power Scheduling per Sistemi Real Time

Low Power Scheduling per Sistemi Real Time Low Power Scheduling per Sistemi Real Time Corso di Sistemi Real Time A.A. 2007-08 Ing. Giordano Kaczynski Sistemi Real Time 1 Introduzione Il consumo di energia nei sistemi portatili negli ultimi anni

Dettagli

Scheduling della CPU

Scheduling della CPU Scheduling della CPU Sistemi multiprocessori e real time Metodi di valutazione Esempi: Solaris 2 Windows 2000 Linux 6.1 Sistemi multiprocessori simmetrici Fin qui si sono trattati i problemi di scheduling

Dettagli

Il software di base comprende l insieme dei programmi predisposti per un uso efficace ed efficiente del computer.

Il software di base comprende l insieme dei programmi predisposti per un uso efficace ed efficiente del computer. I Sistemi Operativi Il Software di Base Il software di base comprende l insieme dei programmi predisposti per un uso efficace ed efficiente del computer. Il sistema operativo è il gestore di tutte le risorse

Dettagli

Lezione R14. Sistemi embedded e real-time

Lezione R14. Sistemi embedded e real-time Lezione R14 Sistemi embedded e 22 gennaio 2013 Dipartimento di Ingegneria Civile e Ingegneria Informatica Università degli Studi di Roma Tor Vergata SERT 13 R14.1 Di cosa parliamo in questa lezione? In

Dettagli

Lez. 4 Lo scheduling dei processi. Corso: Sistemi Operativi Danilo Bruschi

Lez. 4 Lo scheduling dei processi. Corso: Sistemi Operativi Danilo Bruschi Sistemi Operativi Lez. 4 Lo scheduling dei processi 1 Cicli d'elaborazione In ogni processo i burst di CPU si alternano con i tempi di I/O 2 Uso tipico di un calcolatore 3 CPU-bound e I/O-bound Processi

Dettagli

Sistemi Operativi SCHEDULING DELLA CPU

Sistemi Operativi SCHEDULING DELLA CPU Sistemi Operativi SCHEDULING DELLA CPU Scheduling della CPU Concetti di Base Criteri di Scheduling Algoritmi di Scheduling FCFS, SJF, Round-Robin, A code multiple Scheduling in Multi-Processori Scheduling

Dettagli

Gianluigi Magnasco easitec S.r.l. Parma, 16 Settembre 2010

Gianluigi Magnasco easitec S.r.l. Parma, 16 Settembre 2010 Soft Control facile con RTX e Windows Embedded Standard 7 RTX 2009: funzionalità ed uso pratico Gianluigi Magnasco easitec S.r.l. Parma, 16 Settembre 2010 Definizione di Sistema Tempo Reale: Definizione

Dettagli

Scheduling. Sistemi Operativi e Distribuiti A.A. 2004-2005 Bellettini - Maggiorini. Concetti di base

Scheduling. Sistemi Operativi e Distribuiti A.A. 2004-2005 Bellettini - Maggiorini. Concetti di base Scheduling Sistemi Operativi e Distribuiti A.A. 2-25 Bellettini - Maggiorini Concetti di base Il massimo utilizzo della CPU si ottiene mediante la multiprogrammazione Ogni processo si alterna su due fasi

Dettagli

Porting su architettura ARM Marvell 88F6281 ed analisi comparativa delle patch real-time RTAI e Xenomai per il kernel Linux

Porting su architettura ARM Marvell 88F6281 ed analisi comparativa delle patch real-time RTAI e Xenomai per il kernel Linux UNIVERSITÀ POLITECNICA DELLE MARCHE FACOLTÀ DI INGEGNERIA Corso di Laurea Specialistica in Ingegneria Elettronica Porting su architettura ARM Marvell 88F6281 ed analisi comparativa delle patch real-time

Dettagli

Lo Scheduling Real Time in Linux. Universita degli studi di Roma La Sapienza Ivan Gualandri Matricola 693512 Relatore: Giorgio Richelli

Lo Scheduling Real Time in Linux. Universita degli studi di Roma La Sapienza Ivan Gualandri Matricola 693512 Relatore: Giorgio Richelli Lo Scheduling Real Time in Linux Universita degli studi di Roma La Sapienza Ivan Gualandri Matricola 693512 Relatore: Giorgio Richelli Scopo Motivazione Obiettivi 1) Lo scopo di questo progetto è presentare

Dettagli

Obiettivo della multiprogrammazione: massimizzazione dell utilizzo CPU. Scheduling della CPU: commuta l uso della CPU tra i vari processi

Obiettivo della multiprogrammazione: massimizzazione dell utilizzo CPU. Scheduling della CPU: commuta l uso della CPU tra i vari processi Scheduling della CPU Scheduling della CPU Obiettivo della multiprogrammazione: massimizzazione dell utilizzo CPU Scheduling della CPU: commuta l uso della CPU tra i vari processi Scheduler della CPU (a

Dettagli

Principi di Schedulazione in tempo reale

Principi di Schedulazione in tempo reale Principi di Schedulazione in tempo reale 1 Task in tempo reale Un task t i è una sequenza di processi in tempo reale τ ik ciascuno caratterizzato da q un tempo d arrivo r ik (r=release time, oppure a=arrival

Dettagli

Processi e Thread. Scheduling (Schedulazione)

Processi e Thread. Scheduling (Schedulazione) Processi e Thread Scheduling (Schedulazione) 1 Scheduling Introduzione al problema dello Scheduling (1) Lo scheduler si occupa di decidere quale fra i processi pronti può essere mandato in esecuzione L

Dettagli

ASPETTI GENERALI DI LINUX. Parte 2 Struttura interna del sistema LINUX

ASPETTI GENERALI DI LINUX. Parte 2 Struttura interna del sistema LINUX Parte 2 Struttura interna del sistema LINUX 76 4. ASPETTI GENERALI DEL SISTEMA OPERATIVO LINUX La funzione generale svolta da un Sistema Operativo può essere definita come la gestione dell Hardware orientata

Dettagli

Pag. 1. Introduzione allo scheduling. Concetti fondamentali. Scheduling della CPU. Concetti fondamentali. Concetti fondamentali. Algoritmi.

Pag. 1. Introduzione allo scheduling. Concetti fondamentali. Scheduling della CPU. Concetti fondamentali. Concetti fondamentali. Algoritmi. Concetti fondamentali Scheduling della CU Introduzione allo scheduling Uno degli obbiettivi della multiprogrammazione è quello di massimizzare l utilizzo delle risorse e in particolare della CU er raggiungere

Dettagli

Scheduling della CPU:

Scheduling della CPU: Coda dei processi pronti (ready( queue): Scheduling della CPU primo ultimo PCB i PCB j PCB k contiene i descrittori ( process control block, PCB) dei processi pronti. la strategia di gestione della ready

Dettagli

Concetti di base. Scheduling della CPU. Diagramma della durata dei CPU-burst. Sequenza Alternata di CPU Burst e I/O Burst

Concetti di base. Scheduling della CPU. Diagramma della durata dei CPU-burst. Sequenza Alternata di CPU Burst e I/O Burst Impossibile visualizzare l'immagine. Scheduling della CPU Concetti di base La multiprogrammazione cerca di ottenere la massima utilizzazione della CPU. L esecuzione di un processo consiste in cicli d esecuzione

Dettagli

J. Assfalg Appunti di Sistemi Operativi

J. Assfalg Appunti di Sistemi Operativi Lo scheduler di Linux (kernel 2.4) La politica di scheduling di Linux si propone il raggiungimento dei seguenti obiettivi (molti dei quali sono in contrasto): timesharing gestione di priorità dinamiche

Dettagli

Corso di Informatica

Corso di Informatica Corso di Informatica Modulo T3 3-Schedulazione 1 Prerequisiti Concetto di media Concetto di varianza 2 1 Introduzione Come sappiamo, l assegnazione della CPU ai processi viene gestita dal nucleo, attraverso

Dettagli

La schedulazione. E.Mumolo mumolo@units.it

La schedulazione. E.Mumolo mumolo@units.it La schedulazione E.Mumolo mumolo@units.it Concetti fondamentali Multiprogrammazione: esecuzione simultanea di più sequenze di esecuzione Pseudo-parallelismo su una sola CPU Esecuzione parallela su più

Dettagli

SCHEDULATORI DI PROCESSO

SCHEDULATORI DI PROCESSO Indice 5 SCHEDULATORI DI PROCESSO...1 5.1 Schedulatore Round Robin...1 5.2 Schedulatore a priorità...2 5.2.1 Schedulatore a code multiple...3 5.3 Schedulatore Shortest Job First...3 i 5 SCHEDULATORI DI

Dettagli

Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2013-14. Pietro Frasca.

Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2013-14. Pietro Frasca. Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2013-14 Pietro Frasca Lezione 3 Martedì 15-10-2013 1 Struttura ed organizzazione software dei sistemi

Dettagli

Sistemi operativi e reti A.A. 2013-14. Lezione 2

Sistemi operativi e reti A.A. 2013-14. Lezione 2 Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2013-14 Pietro Frasca Lezione 2 Giovedì 10-10-2013 1 Sistemi a partizione di tempo (time-sharing) I

Dettagli

Esercitazione E1 Scheduling, deadlock, monitor

Esercitazione E1 Scheduling, deadlock, monitor Esercitazione E1 Scheduling, deadlock, monitor Sistemi Operativi - prof. Silvio Salza - a.a. 2008-2009 E1-1 Scheduling I cinque processi A,B,C,D,E richieste di CPU si presentano nell ordine. Le loro richieste

Dettagli

ISTVAS Ancona Introduzione ai sistemi operativi Tecnologie Informatiche

ISTVAS Ancona Introduzione ai sistemi operativi Tecnologie Informatiche ISTVAS Ancona Introduzione ai sistemi operativi Tecnologie Informatiche Sommario Definizione di S. O. Attività del S. O. Struttura del S. O. Il gestore dei processi: lo scheduler Sistemi Mono-Tasking e

Dettagli

Con 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. 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

Dettagli

Gli stati di un processo

Gli stati di un processo Roberta Gerboni 1 Gli stati di un processo Gli stati possibili nei quali si può trovare un processo sono: Hold (parcheggio): il programma (chiamato job) è stato proposto al sistema e attende di essere

Dettagli

Laureando: Damiano Vittor. Relatore: Dott. Ing. Massimiliano Nolich

Laureando: Damiano Vittor. Relatore: Dott. Ing. Massimiliano Nolich Università degli studi di Trieste Facoltà di Ingegneria Dipartimento di Elettrotecnica, Elettronica ed Informatica Sviluppo di un Driver per il Controllo di un Robot Mobile in Ambiente Multipiattaforma

Dettagli

Sistemi Real-Time Ing. Rigutini Leonardo

Sistemi Real-Time Ing. Rigutini Leonardo Sistemi Real-Time Ing. Rigutini Leonardo Dipartimento di Ingegneria dell informazione Università di Siena Sistema Real-Time Sistema in cui la correttezza non dipende solamente dai valori di output ma anche

Dettagli

Computazione multi-processo. Condivisione, Comunicazione e Sincronizzazione dei Processi. Segnali. Processi e Threads Pt. 2

Computazione multi-processo. Condivisione, Comunicazione e Sincronizzazione dei Processi. Segnali. Processi e Threads Pt. 2 Computazione multi-processo Avere più processi allo stesso momento implica/richiede Processi e Threads Pt. 2 Concorrenza ed efficienza Indipendenza e protezione dei dati ma deve prevedere/permettere anche:

Dettagli

Scheduling della CPU. Sistemi multiprocessori e real time Metodi di valutazione Esempi: Solaris 2 Windows 2000 Linux

Scheduling della CPU. Sistemi multiprocessori e real time Metodi di valutazione Esempi: Solaris 2 Windows 2000 Linux Scheduling della CPU Sistemi multiprocessori e real time Metodi di valutazione Esempi: Solaris 2 Windows 2000 Linux Sistemi multiprocessori Fin qui si sono trattati i problemi di scheduling su singola

Dettagli

Lo schedulatore del kernel

Lo schedulatore del kernel Lo schedulatore del kernel Lo schedulatore Lo schedulatore è un programma del kernel che si occupa di scegliere un processo/lavoro che ha richiesto una risorsa. Lo schedulatore a lungo termine LTS è quello

Dettagli

Scheduling della CPU. Contenuti delle lezioni del 23 e del 26 Marzo 2009. Sequenza alternata di CPU burst e di I/O burst.

Scheduling della CPU. Contenuti delle lezioni del 23 e del 26 Marzo 2009. Sequenza alternata di CPU burst e di I/O burst. Contenuti delle lezioni del 23 e del 26 Marzo 2009 Scheduling della CPU Introduzione allo scheduling della CPU Descrizione di vari algoritmi di scheduling della CPU Analisi dei criteri di valutazione nella

Dettagli

Scheduling della CPU

Scheduling della CPU Scheduling della CPU Scheduling della CPU Obiettivo della multiprogrammazione: massimizzazione dell utilizzo della CPU. Scheduling della CPU: attivita` di allocazione della risorsa CPU ai processi. Scheduler

Dettagli

Implementazione di sistemi real time

Implementazione di sistemi real time Implementazione di sistemi real time Automazione 28/10/2015 Vincenzo Suraci STRUTTURA DEL NUCLEO TEMATICO HARDWARE ABSTRACTION LAYER IMPLEMENTAZIONE EVENT-DRIVEN IMPLEMENTAZIONE TIME-DRIVEN SISTEMI DI

Dettagli

Scheduling della CPU. Concetti fondamentali. Concetti fondamentali. Concetti fondamentali. Dispatcher. Scheduler della CPU

Scheduling della CPU. Concetti fondamentali. Concetti fondamentali. Concetti fondamentali. Dispatcher. Scheduler della CPU Scheduling della CPU Concetti fondamentali Criteri di scheduling Algoritmi di scheduling Concetti fondamentali L obiettivo della multiprogrammazione è di avere processi sempre in esecuzione al fine di

Dettagli

Lezione 4 La Struttura dei Sistemi Operativi. Introduzione

Lezione 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.)

Dettagli

Il sistema operativo TinyOS

Il sistema operativo TinyOS tesi di laurea Anno Accademico 2005/2006 relatore Ch.mo prof. Domenico Cotroneo candidato Giovanni Chierchia Matr. 534 / 804 ::. Obiettivi del lavoro di tesi Studio del sistema operativo TinyOS Studio

Dettagli

Scheduling della CPU Simulazione in linguaggio Java

Scheduling della CPU Simulazione in linguaggio Java Scheduling della CPU Simulazione in linguaggio Java Realizzato da: Amelio Francesco 556/001699 Di Matteo Antonio 556/000067 Viola Antonio 556/000387 Progetto di Sistemi Operativi Docente Giancarlo Nota

Dettagli

Scheduling della CPU

Scheduling della CPU Scheduling della CPU Scheduling della CPU Concetti fondamentali Criteri di scheduling Algoritmi di scheduling Scheduling dei thread Scheduling multiprocessore Scheduling real time Scheduling in Linux Valutazione

Dettagli

Come valutare e scegliere un Sistema Operativo Embedded

Come valutare e scegliere un Sistema Operativo Embedded Come valutare e scegliere un Sistema Operativo Embedded Valter Minute Adeneo Embedded vminute@adeneo-embedded.com ARM e sistemi operativi Milioni di dispositivi contengono processori ARM Per sfruttare

Dettagli

Stimare il WCET Metodo classico e applicazione di un algoritmo genetico

Stimare il WCET Metodo classico e applicazione di un algoritmo genetico Stimare il WCET Metodo classico e applicazione di un algoritmo genetico Sommario Introduzione Definizione di WCET Importanza del WCET Panoramica dei classici metodi per calcolare il WCET [1] Utilizzo di

Dettagli

FONDAMENTI di INFORMATICA L. Mezzalira

FONDAMENTI di INFORMATICA L. Mezzalira FONDAMENTI di INFORMATICA L. Mezzalira Possibili domande 1 --- Caratteristiche delle macchine tipiche dell informatica Componenti hardware del modello funzionale di sistema informatico Componenti software

Dettagli

Sistemi Operativi. Schedulazione della CPU

Sistemi Operativi. Schedulazione della CPU Sistemi Operativi (modulo di Informatica II) Schedulazione della CPU Patrizia Scandurra Università degli Studi di Bergamo a.a. 2008-09 Sommario Concetti di base Come si realizza il multi-tasking Come si

Dettagli

1. Che cos è la multiprogrammazione? Si può realizzare su un sistema monoprocessore? 2. Quali sono i servizi offerti dai sistemi operativi?

1. Che cos è la multiprogrammazione? Si può realizzare su un sistema monoprocessore? 2. Quali sono i servizi offerti dai sistemi operativi? 1. Che cos è la multiprogrammazione? Si può realizzare su un sistema monoprocessore? 2. Quali sono i servizi offerti dai sistemi operativi? 1. La nozione di multiprogrammazione prevede la possibilità di

Dettagli

Progetti F.O.S.S. Ieri e Oggi

Progetti F.O.S.S. Ieri e Oggi Progetti F.O.S.S. Ieri e Oggi Progetti F.O.S.S. più famosi Linux NetBSD Gnome KDE MySQL Inkscape blender Gimp Wine Python Java Eclipse OpenOffice emule PostgreSQL VLC Firefox Thunderbird Cos'è Python Python

Dettagli

Criteri di Scheduling Algoritmi di Scheduling Multiple-Processor Scheduling Asymmetric/Symmetric multiprocessing Processori Multicore

Criteri di Scheduling Algoritmi di Scheduling Multiple-Processor Scheduling Asymmetric/Symmetric multiprocessing Processori Multicore Criteri di Scheduling Algoritmi di Scheduling Multiple-Processor Scheduling Asymmetric/Symmetric multiprocessing Processori Multicore 5.2 Silberschatz, Galvin and Gagne 2005 1 Massimizzare lʼutilizzo della

Dettagli

Scheduling. Dipartimento di Informatica Università di Verona, Italy. Sommario

Scheduling. Dipartimento di Informatica Università di Verona, Italy. Sommario Scheduling Dipartimento di Informatica Università di Verona, Italy Sommario Concetto di scheduling Tipi di scheduling Lungo termine Breve termine (scheduling della CPU) Medio termine Scheduling della CPU

Dettagli

Generazione Automatica di Asserzioni da Modelli di Specifica

Generazione Automatica di Asserzioni da Modelli di Specifica UNIVERSITÀ DEGLI STUDI DI MILANO BICOCCA FACOLTÀ DI SCIENZE MATEMATICHE FISICHE E NATURALI Corso di Laurea Magistrale in Informatica Generazione Automatica di Asserzioni da Modelli di Specifica Relatore:

Dettagli

Diagramma delle durate dei CPU burst. Lo scheduler della CPU. Criteri di scheduling. Dispatcher

Diagramma delle durate dei CPU burst. Lo scheduler della CPU. Criteri di scheduling. Dispatcher Schedulazione della CPU Scheduling della CPU Introduzione allo scheduling della CPU Descrizione di vari algorimi di scheduling della CPU Analisi dei criteri di valutazione nella scelta di un algoritmo

Dettagli

Linux nei sistemi Real-Time. Andrea Sambi

Linux nei sistemi Real-Time. Andrea Sambi Linux nei sistemi Real-Time Andrea Sambi Sistemi Real-Time Sistema Real-Time (RT) non è sinonimo di sistema veloce. Un Processo Real-Time deve terminare rispettando i vincoli temporali (le deadline) stabiliti

Dettagli

Un sistema operativo è un insieme di programmi che consentono ad un utente di

Un sistema operativo è un insieme di programmi che consentono ad un utente di INTRODUZIONE AI SISTEMI OPERATIVI 1 Alcune definizioni 1 Sistema dedicato: 1 Sistema batch o a lotti: 2 Sistemi time sharing: 2 Sistema multiprogrammato: 3 Processo e programma 3 Risorse: 3 Spazio degli

Dettagli

I Thread. I Thread. I due processi dovrebbero lavorare sullo stesso testo

I 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)?

Dettagli

Strumento per l iniezione di guasti software nel sistema operativo GNU/Linux

Strumento per l iniezione di guasti software nel sistema operativo GNU/Linux Tesi di laurea Strumento per l iniezione di guasti software nel sistema operativo GNU/Linux Anno Accademico 2009/2010 Relatore Ch.mo prof. Marcello Cinque Correlatore Ch.mo ing. Roberto Natella Candidato

Dettagli

Capitolo 1: Introduzione

Capitolo 1: Introduzione Capitolo 1: ntroduzione Che cos è un sistema operativo? Sistemi mainframe. Sistemi desktop. Sistemi multiprocessore. Sistemi distribuiti. Sistemi cluster. Sistemi in tempo reale. Sistemi palmari. Migrazione

Dettagli

5. Scheduling della CPU. 5.1 Concetti Fondamentali. 5.1.2. Lo scheduler della CPU

5. Scheduling della CPU. 5.1 Concetti Fondamentali. 5.1.2. Lo scheduler della CPU 5. Scheduling della CPU 1 Il multitasking e il time sharing (quando è usato) cercano di massimizzare l utilizzo della CPU. Per questo, il progettista del SO deve stabilire delle regole per decidere, quando

Dettagli

5. Scheduling della CPU

5. Scheduling della CPU 1 5. Scheduling della CPU Il multitasking e il time sharing (quando è usato) cercano di massimizzare l utilizzo della CPU. Per questo, il progettista del SO deve stabilire delle regole per decidere, quando

Dettagli

GENERAZIONE PROCESSO FIGLIO (padre attende terminazione del figlio)

GENERAZIONE PROCESSO FIGLIO (padre attende terminazione del figlio) GENERAZIONE PROCESSO FIGLIO (padre attende terminazione del figlio) #include void main (int argc, char *argv[]) { pid = fork(); /* genera nuovo processo */ if (pid < 0) { /* errore */ fprintf(stderr,

Dettagli

Capitolo 5: Scheduling della CPU! Scheduling della CPU! Concetti di Base! Alternanza di Sequenze di CPU- e I/O-Burst!

Capitolo 5: Scheduling della CPU! Scheduling della CPU! Concetti di Base! Alternanza di Sequenze di CPU- e I/O-Burst! Capitolo 5: Scheduling della CPU Criteri di Scheduling Algoritmi di Scheduling Cenni Scheduling per sistemi multprocessore Modelli Asimmetrico e Simmetrico Scheduling della CPU 5.2 Concetti di Base Alternanza

Dettagli

Calcolatori Elettronici A a.a. 2008/2009

Calcolatori Elettronici A a.a. 2008/2009 Calcolatori Elettronici A a.a. 2008/2009 PRESTAZIONI DEL CALCOLATORE Massimiliano Giacomin Due dimensioni Tempo di risposta (o tempo di esecuzione): il tempo totale impiegato per eseguire un task (include

Dettagli

Software Open Source per sistemi embedded

Software Open Source per sistemi embedded Software Open Source per sistemi embedded Alberto Ferrante OSLab ALaRI, Facoltà di Informatica Università della Svizzera italiana ferrante@alari.ch Outline Introduzione Perché usare il software OS in ambito

Dettagli

Sistemi Operativi a.a. 2004-2005. Esercizi - 2

Sistemi Operativi a.a. 2004-2005. Esercizi - 2 Sistemi Operativi a.a. 004-005 Esercizi - Renzo Davoli Alberto Montresor. I diritti di memorizzazione elettronica, di riproduzione e di adattamento parziale o totale (compresi microfilm e copie fotostatiche)

Dettagli

Sistema operativo: Gestione dei processi

Sistema operativo: Gestione dei processi Dipartimento di Elettronica ed Informazione Politecnico di Milano Informatica - ICA Prof. Pierluigi Plebani A.A. 2011/2012 Sistema operativo: Gestione dei processi La presente dispensa e da utilizzarsi

Dettagli

Scheduling della CPU Introduzione ai Sistemi Operativi Corso di Abilità Informatiche Laurea in Fisica

Scheduling della CPU Introduzione ai Sistemi Operativi Corso di Abilità Informatiche Laurea in Fisica Scheduling della CPU Introduzione ai Sistemi Operativi Corso di Abilità Informatiche Laurea in Fisica prof. Ing. Corrado Santoro A.A. 2010-11 Architettura di un sistema operativo Progr 1 Progr 2 Progr

Dettagli

Scheduling della CPU

Scheduling della CPU Scheduling della CPU Scheduling della CPU Concetti fondamentali Criteri di scheduling Algoritmi di scheduling Scheduling dei thread Scheduling multiprocessore Scheduling real time Scheduling in Linux Valutazione

Dettagli

Secondo biennio Articolazione Informatica TPSIT Prova Quarta

Secondo biennio Articolazione Informatica TPSIT Prova Quarta Sistema operativo: gestione memoria centrale La Memoria Virtuale consente di superare i limiti della Memoria Centrale : A. no B. a volte C. si, ma non sempre e' adeguata D. si, attraverso tecniche di gestione

Dettagli

SISTEMI OPERATIVI. Schedulazione della CPU. Prof. Luca Gherardi Prof.ssa Patrizia Scandurra (anni precedenti) (MODULO DI INFORMATICA II)

SISTEMI OPERATIVI. Schedulazione della CPU. Prof. Luca Gherardi Prof.ssa Patrizia Scandurra (anni precedenti) (MODULO DI INFORMATICA II) SISTEMI OPERATIVI (MODULO DI INFORMATICA II) Schedulazione della CPU Prof. Luca Gherardi Prof.ssa Patrizia Scandurra (anni precedenti) Università degli Studi di Bergamo a.a. 2012-13 Sommario Concetti base

Dettagli

I processi. Un processo è una attività, controllata da un programma, che si svolge su un processore.

I processi. Un processo è una attività, controllata da un programma, che si svolge su un processore. I processi Cos è un processo? Un processo è una attività, controllata da un programma, che si svolge su un processore. Il programma è una entità statica che descrive la sequenza di istruzioni che devono

Dettagli

in collaborazione con l'università degli studi di Bergamo Facoltà d'ingegneria presenta:

in collaborazione con l'università degli studi di Bergamo Facoltà d'ingegneria presenta: in collaborazione con l'università degli studi di Bergamo Facoltà d'ingegneria presenta: Panoramica del kernel linux Relatore: Luca Amigoni Sommario Presentazione Processi e scheduling Gestione della memoria

Dettagli

e-dva - eni-depth Velocity Analysis

e-dva - eni-depth Velocity Analysis Lo scopo dell Analisi di Velocità di Migrazione (MVA) è quello di ottenere un modello della velocità nel sottosuolo che abbia dei tempi di riflessione compatibili con quelli osservati nei dati. Ciò significa

Dettagli

Dipartimento di Informtica e Sistemistica Università di Roma La Sapienza

Dipartimento di Informtica e Sistemistica Università di Roma La Sapienza Dipartimento di Informtica e stica Università di Roma La Sapienza Cosa è un sistema operativo Esempi di Insieme di componenti SW che gestiscono le operazioni di basso livello dell elaboratore Compiti di

Dettagli

Scheduling. Livelli Algoritmi

Scheduling. Livelli Algoritmi Scheduling Livelli Algoritmi Introduzione Lo scheduling Ha lo scopo di decidere quale processo eseguire in un dato istante Si realizza mediante un componente specifico del sistema operativo Lo scheduler

Dettagli

Sistemi Operativi (modulo di Informatica II) I processi

Sistemi Operativi (modulo di Informatica II) I processi Sistemi Operativi (modulo di Informatica II) I processi Patrizia Scandurra Università degli Studi di Bergamo a.a. 2009-10 Sommario Il concetto di processo Schedulazione dei processi e cambio di contesto

Dettagli

Scheduling Introduzione Tipi di scheduler Scheduler di lungo termine (SLT) Scheduler di medio termine (SMT) Scheduler di breve termine (SBT)

Scheduling Introduzione Tipi di scheduler Scheduler di lungo termine (SLT) Scheduler di medio termine (SMT) Scheduler di breve termine (SBT) Scheduling Introduzione Con scheduling si intende un insieme di tecniche e di meccanismi interni del sistema operativo che amministrano l ordine in cui il lavoro viene svolto. Lo Scheduler è il modulo

Dettagli

STRUTTURE DEI SISTEMI DI CALCOLO

STRUTTURE DEI SISTEMI DI CALCOLO STRUTTURE DEI SISTEMI DI CALCOLO 2.1 Strutture dei sistemi di calcolo Funzionamento Struttura dell I/O Struttura della memoria Gerarchia delle memorie Protezione Hardware Architettura di un generico sistema

Dettagli

1 Processo, risorsa, richiesta, assegnazione 2 Concorrenza 3 Grafo di Holt 4 Thread 5 Sincronizzazione tra processi

1 Processo, risorsa, richiesta, assegnazione 2 Concorrenza 3 Grafo di Holt 4 Thread 5 Sincronizzazione tra processi 1 Processo, risorsa, richiesta, assegnazione 2 Concorrenza 3 Grafo di Holt 4 Thread 5 Sincronizzazione tra processi Il processo E' un programma in esecuzione Tipi di processo Stati di un processo 1 indipendenti

Dettagli

SISTEMI OPERATIVI. Prof. Enrico Terrone A. S: 2008/09

SISTEMI OPERATIVI. Prof. Enrico Terrone A. S: 2008/09 SISTEMI OPERATIVI Prof. Enrico Terrone A. S: 2008/09 Che cos è il sistema operativo Il sistema operativo (SO) è il software che gestisce e rende accessibili (sia ai programmatori e ai programmi, sia agli

Dettagli

La Gestione delle risorse Renato Agati

La Gestione delle risorse Renato Agati Renato Agati delle risorse La Gestione Schedulazione dei processi Gestione delle periferiche File system Schedulazione dei processi Mono programmazione Multi programmazione Gestione delle periferiche File

Dettagli

Sistemi Operativi. Rappresentazione e gestione delle attività e della computazione: processi e thread

Sistemi Operativi. Rappresentazione e gestione delle attività e della computazione: processi e thread Modulo di Sistemi Operativi per il corso di Master RISS: Ricerca e Innovazione nelle Scienze della Salute Unisa, 17-26 Luglio 2012 Sistemi Operativi Rappresentazione e gestione delle attività e della computazione:

Dettagli

Scheduling di processi HRT

Scheduling di processi HRT Scheduling di processi HRT Primo modello per la schedulazione di processi periodici N processi P1, P2,, PN indipendenti senza vincoli di precedenza, senza risorse condivise; ogni processo Pj (j = 1, 2,,N)

Dettagli

Università degli Studi di Cagliari Corso di Laurea Specialistica in Ingegneria Elettronica SISTEMI OPERATIVI

Università degli Studi di Cagliari Corso di Laurea Specialistica in Ingegneria Elettronica SISTEMI OPERATIVI Università degli Studi di Cagliari Corso di Laurea Specialistica in Ingegneria Elettronica SISTEMI OPERATIVI SISTEMI A ORIENTAMENTO SPECIFICO I SISTEMI MULTIMEDIALI Obiettivi! Identificare le caratteristiche

Dettagli

Sistemi Operativi Kernel

Sistemi Operativi Kernel Approfondimento Sistemi Operativi Kernel Kernel del Sistema Operativo Kernel (nocciolo, nucleo) Contiene i programmi per la gestione delle funzioni base del calcolatore Kernel suddiviso in moduli. Ogni

Dettagli

Prestazioni CPU Corso di Calcolatori Elettronici A 2007/2008 Sito Web:http://prometeo.ing.unibs.it/quarella Prof. G. Quarella prof@quarella.

Prestazioni CPU Corso di Calcolatori Elettronici A 2007/2008 Sito Web:http://prometeo.ing.unibs.it/quarella Prof. G. Quarella prof@quarella. Prestazioni CPU Corso di Calcolatori Elettronici A 2007/2008 Sito Web:http://prometeo.ing.unibs.it/quarella Prof. G. Quarella prof@quarella.net Prestazioni Si valutano in maniera diversa a seconda dell

Dettagli

Gestione dei processi. Marco Cesati. Schema della lezione. Blocco di controllo 2. Sezioni e segmenti. Gestione dei processi. Job.

Gestione dei processi. Marco Cesati. Schema della lezione. Blocco di controllo 2. Sezioni e segmenti. Gestione dei processi. Job. Di cosa parliamo in questa lezione? Lezione 4 Cosa è un processo e come viene gestito dal SO 1 e job 2 Il blocco di controllo Sistemi operativi 3 Struttura di un file eseguibile 4 La schedulazione dei

Dettagli