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,

Slides:



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

Requisiti precedenti Contenuti Verifiche Bibliografia Maura Zini.
Gestione dei processi A. Ferrari.
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.
1 Casi di studio ISO 9660 FAT-12, FAT-16, FAT-32 NTFS.
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
Domande di riepilogo sulla gestione del processore
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)
5.1 Sistemi operativi Scheduling della CPU Concetti di base Criteri di scheduling Algoritmi di scheduling Scheduling in sistemi con più processori Valutazione.
Scheduling della CPU Concetti fondamentali Criteri di scheduling
Scheduling della CPU Concetti di base Criteri di scheduling
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.
Sistemi operativi. Informatica 1 SCICO - a.a. 2010/11 2 Insieme di programmi per gestire le risorse del calcolatore – Risorse: memoria di massa, tastiera.
1 Matteo Cristani Dipartimento di Informatica Facoltà di Scienze MM. FF. NN. Università degli Studi di Verona Corso di.
Gestione dei processi Un sistema operativo multitasking è in grado di gestire più processi Un processo corrisponde ad un programma in esecuzione. Un programma.
Introduzione: Sistemi Operativi I
SOFTWARE Lhardware è la parte che si può prendere a calci; il software quella contro cui si può solo imprecare. SOFTWARE E linsieme dei dati e dei programmi.
Processi, Thread, Multitasking, Multithreading. Ingredienti 1 CPU 1 Memoria RAM Tanti programmi che condividono la stessa memoria Esigenza di far girare.
I Thread.
Scheduling della CPU.
FACOLTÁ DI INGEGNERIA CORSO DI LAUREA INGEGNERIA INFORMATICA Progetto e Sviluppo di un Algoritmo di Scheduling per il Sistema RTAI Candidato: Luca Marzario.
1 Gestione del processore Il modello a processi sequenziali.
Organizzazione della Memoria (Unix) Text contiene le istruzioni in linguaggio macchina del codice eseguibile, può essere condiviso in caso di processi.
Sistemi Operativi SCHEDULING DELLA CPU.
Sistemi Operativi GESTIONE DEI PROCESSI.
Corso di Laurea in Ingegneria Informatica Laboratorio di Sistemi Operativi II anno, III periodo 2 crediti 13 ore di lezione 16 ore di esercitazione.
1 LINUX: struttura generale The layers of a UNIX system. User Interface.
Introduzione ai Sistemi Operativi
Requisiti precedenti Contenuti Verifiche Bibliografia Maura Zini.
La schedulazione dei processi
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,
Processi e Thread Job: Insieme di processi che condividono quote e limiti. Processo: Contenitore di risorse (una lista di thread, una lista di handle e.
1 Lucidi delle esercitazioni di Sistemi di Elaborazione in Rete Università degli Studi della Calabria Corso di Laurea in Ingegneria Gestionale A.A. 2003/2004.
Struttura di un SO Menu Struttura SO Algoritmo Programma Processo
Threads.
Scheduling della CPU.
Informatica Lezione 7 Scienze e tecniche psicologiche dello sviluppo e dell'educazione (laurea triennale) Anno accademico:
Sistema Operativo (Software di base)
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 Amministrazione dei processi nel sistema operativo Unix (Bach: the Design of the Unix Operating System (cap: 6, 7, 8)
1 Input/Output. 2 Livelli del sottosistema di I/O Hardware Gestori delle interruzioni Driver dei dispositivi Software di sistema indipendente dal dispositivo.
1 Input/Output. 2 Livelli del sottosistema di I/O Hardware Gestori delle interruzioni Driver dei dispositivi Software di sistema indipendente dal dispositivo.
1 Processi e Thread Processi e thread in Windows 2000.
1 Processi e Thread Scheduling (Schedulazione). 2 Scheduling Introduzione al problema dello Scheduling (1) Lo scheduler si occupa di decidere quale fra.
1 Processi e Thread Processi Thread Meccanismi di comunicazione fra processi (IPC) Problemi classici di IPC Scheduling Processi e thread in Unix Processi.
1 Processi e Thread Processi Thread Meccanismi di comunicazione fra processi (IPC) Problemi classici di IPC Scheduling Processi e thread in Unix Processi.
1 Informatica Generale Marzia Buscemi Ricevimento: Giovedì ore , Dipartimento di Informatica, stanza 306-PS o per posta.
1 Processi e Thread Processi e thread in Unix. 2 UNIX/Linux Molte versioni di UNIX –trattiamo le caratteristiche più comuni) Ci riferiamo allo standard.
Corso di Laurea in Biotecnologie corso di Informatica Paolo Mereghetti DISCo – Dipartimento di Informatica, Sistemistica e Comunicazione.
Informatica Generale Marzia Buscemi
Processi, Thread, Multitasking, Multithreading (Thread-Fu)
Fabio Garufi - TAADF Tecniche Automatiche di Acquisizione Dati Sistemi operativi.
IL NUCLEO Avvio e terminazione dei processi Assegnazione della CPU ai diversi processi Sincronizzazione tra i processi Sincronizzazione dei processi con.
Fabio Garufi - TAADF Tecniche Automatiche di Acquisizione Dati Sistemi operativi.
INTRODUZIONE AI SISTEMI OPERATIVI. Introduzione Il software può essere diviso un due grandi classi: Il software può essere diviso un due grandi classi:
Scheduler e politiche di Marco Arcamone.
IL NUCLEO Le funzioni del nucleo sono: Avvio e terminazione dei processi Assegnazione della CPU ai diversi processi Sincronizzazione tra i processi Sincronizzazione.
Scheduling in Linux (Kernel 2.4 e 2.6)
Processi e thread in Windows 2000
Scheduling (Schedulazione)
Transcript della presentazione:

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, ecc..) Fa una segnalazione ad un oggetto (rilascia un semaforo) Termina il suo quanto di tempo. Lo scheduler gestisce un array con 32 entry (liste di thread, una per ogni priorità dei thread)

2 Scheduling in Windows 2000 Windows 2000 fornisce 32 priorità diverse per i thread

3 Scheduling in Windows 2000 Win32 permette allutente di specificare : –priorità di un processo (6 livelli diversi) –priorità di un thread allinterno di un processo (7 livelli diversi) Attraverso le API SetPriorityClass e SetThreadPriority Windows 2000 mappa le 42 combinazioni possibili su 32 livelli di priorità

4 Scheduling in Windows 2000 Corrispondenza fra le priorità di Win32 e quelle di Windows 2000

5 Scheduling in Windows 2000 Algoritmo di scheduling : Si esegue il primo thread della prima coda non vuota per massimo 1 quanto (20ms--120ms) Scheduling round robin fra thread con la stessa priorità Come variano le priorità nel tempo : –i thread tipicamente entrano a priorità 8 –la priorità viene elevata se: viene completata una operazione di I/O (+1 disco, +2 linea seriale, +6 tastiera, +8 scheda audio …) termina lattesa su un semaforo, mutex linput nella finestra di dialogo associata al thread è pronto

6 Scheduling in Windows 2000 Algoritmo di scheduling : Come variano le priorità nel tempo –la priorità viene abbassata se: un thread usa tutto il suo quanto (-1) –se un thread non ha girato per un tempo maggiore di una soglia fissata, allora passa per 2 quanti a priorità 15 (serve a gestire potenziali inversioni di priorità)

7 Lo scheduler di Linux Vengono schedulati i thread, non i processi Tre classi di thread : real-time FIFO, real-time Round Robin, Timesharing Ogni thread ha –una priorità nellintervallo [0, +40], generalmente allinizio la priorità di default è 20 (può essere variata con la system call nice(valore) : nuova_priorità = 20 – valore) –un quanto (misurato in jiffy o tick = 10ms) Lo scheduler calcola la goodness (gdn) di ogni thread come if (class == real-time) gdn = priority if (class == timeshar && quantum > 0) gdn = quantum + priority if (class == timeshar && quantum == 0) gdn = 0

8 Lo scheduler di Linux Algoritmo di scheduling : Ogni volta viene selezionato il thread con goodness maggiore Ogni volta che arriva un tick (segnale del clock) il quanto del processo in esecuzione viene decrementato Un thread viene de-schedulato se si verifica una delle seguenti condizioni –il quanto diventa 0 –il thread si blocca su semafori, mutex, ecc.. –diventa ready un thread con una goodness maggiore

9 Lo scheduler di Linux Algoritmo di scheduling: Quando tutti i quanti dei processi ready sono andati a 0, lo scheduler ricalcola il quanto di ogni processo (anche se blocked) come segue : quantum = quantum / 2 + priority Perche i processi bloccati avranno del quantum rimanente.