Processi e thread in Windows 2000

Slides:



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

Meccanismi di IPC Problemi classici di IPC
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 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
1 Processi e Thread Meccanismi di IPC, Inter Process Communication (1)
1 Processi e Thread Meccanismi di IPC (1). 2 Comunicazioni fra processi/thread Processi/thread eseguiti concorrentemente hanno bisogno di interagire per.
Domande di riepilogo sulla gestione del processore
Scheduling in Linux (Kernel 2.6)
Processi Concetto di processo Scheduling dei processi
Processi e Thread.
I Thread.
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,
Concorrenza e Sincronizzazione di Thread e Processi
La schedulazione dei processi
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.
Threads.
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)
Gestione del processore (Scheduler)
Processi e Thread Processi Thread
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.
IL NUCLEO Avvio e terminazione dei processi Assegnazione della CPU ai diversi processi Sincronizzazione tra i processi Sincronizzazione dei processi con.
INTRODUZIONE AI SISTEMI OPERATIVI. Introduzione Il software può essere diviso un due grandi classi: Il software può essere diviso un due grandi classi:
© 2016 Giorgio Porcu - Aggiornamennto 31/01/2016 I STITUTO T ECNICO SECONDO BIENNIO T ECNOLOGIE E P ROGETTAZIONE Il Sistema Operativo Thread G IORGIO P.
Giuseppe Andronico CCR-WS10 Santa Tecla, 18 Maggio 2010 Introduzione MPI & GPU.
Hardware e Software Hardware costituito dai componenti materiali, tangibili del computer: tastiera, video, mouse, scheda madre, scheda video, stampante,
D. Talia - UNICAL 1. 1 Sistemi Operativi Domenico Talia Facoltà di Ingegneria Università della Calabria.
E’ costituita da due blocchi:  Interfaccia di rete  Blocco di simulazione L’ interfaccia di rete fornisce il collegamento elettrico con la rete sotto.
Il Sistema Operativo. Sistema Operativo (Software di base) Il sistema operativo è un insieme di programmi che opera sul livello macchina e offre funzionalità.
Informatica di base FoLUG - Forlì Linux User Group - – 2012 Pag. 1 “Partizionamento” FoLUG Forlì Linux User Group Quello che occorre.
IL SISTEMA OPERATIVO (seconda parte) PROGRAMMI UTENTE INTERPRETE COMANDI FILE SYSTEM GESTIONE DELLE PERIFERICHE GESTIONE DELLA MEMORIA GESTIONE DEI PROCESSI.
Summary di (quasi) tutti gli utenti non presentati…
dCache Test effettuati al CNAF
Process synchronization
Il Sistema Operativo Gestione dei Processi
Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill
I Circuiti Sequenziali ed i Flip/Flop
I PROCESSI.
Il Sistema Operativo Ripasso
CRITTOGRAFIA Per crittografia si intende la protezione delle informazioni mediante l'utilizzo di codici e cifre. La crittografia è un componente fondamentale.
Sistema di Analisi e di Acquisizione
GPT Vs. MBR Vantaggi introdotti dalla formattazione con la tabella delle partizioni GPT.
Giordano Scuderi Unico SRL Catania
Organizzazione fisica
* Il Sistema Operativo GNU/Linux * Sistema Operativo e Applicazioni
La storia dei social è come vengono utilizzati
Capitolo 7 Le infrastrutture SoftWare
analizzatore di protocollo
SUBNETTING E SUPERNETTING
Processi e Thread Meccanismi di IPC (1).
Sistemi Operativi.
Realizziamo un fumetto
Scheduling in Linux (Kernel 2.4 e 2.6)
File System ed Input/Output
Telecomunicazioni autrice S. Martina Anno scolastico 2008/09.
LINUX: struttura generale
LE PARTI INTERNE DEL COMPUTER
Scheduling (Schedulazione)
Algoritmi.
Transcript della presentazione:

Processi e thread in Windows 2000

Win32 Application Programming Interface L’API Win32 fornisce un insieme di funzioni che girano su tutte le versioni di Windows (con qualche piccola differenza)

Windows 2000: Processi e Thread (1) Unità di esecuzione di base utilizzate per la gestione della CPU e delle risorse

Relazione fra job, processi, thread e fibre Processi e Thread (2) Relazione fra job, processi, thread e fibre

Thread e Fibre I thread sono implementati nel kernel Solo i thread hanno uno stato, lo scheduler lavora solo sui thread Ogni thread può ospitare più fibre Le fibre sono thread user-level Le chiamate Win32 che realizzano le fibre non sono vere system call (sono eseguite interamente in spazio utente)

Windows: Meccanismi di IPC (1) Meccanismi di scambio dati : Pipe byte : funzionano come in Unix message : preservano i limiti dei singoli messaggi named pipe : possono essere utilizzate anche in rete Mailslots simili ai pipe permettono di aver più ricevitori e di inviare messaggi in broadcast Aree di memoria condivise è possibile mappare aree di memoria di due processi diversi nello stesso spazio di RAM

Windows: Meccanismi di IPC (2) Meccanismi di sincronizzazione : Semafori sono oggetti del kernel creati con CreateSemaphore() DuplicateHandle(), per passarli ad altri processi una volta creati ReleaseSemaphore() corrisponde alla up WaitForSingleObject() corrisponde alla down Mutex ReleaseMutex() corrisponde alla up

Windows Meccanismi di IPC (3) Sezioni Critiche sono locali allo Spazio di Indirizzamento del thread che le ha create implementate interamente in spazio utente EnterCriticalSection() / LeaveCriticalSection() Eventi due stati set / cleared ( fissato /liberato…) attesa su evento : WaitForSingleObject() SetEvent() segnala che l’evento si è verificato varie versioni con semantica diversa

Chiamate Win32 per la gestione di Job, Processi, Thread & Fibre Alcune chiamate Win32 per la gestione delle entità di esecuzione

Scheduling in Windows 2000 (1) Win32 permette all’utente di specificare : priorità di un processo (6 livelli diversi) priorità di un thread all’interno di un processo (7 livelli diversi) Windows 2000 mappa le 42 combinazioni possibili su 32 livelli di priorità

Scheduling in Windows 2000 (2) Corrispondenza fra le priorità di Win32 e quelle di Windows 2000

Scheduling in Windows 2000 (3) Windows 2000 fornisce 32 priorità diverse per i thread

Scheduling in Windows 2000 (4) 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 l’attesa su un semaforo, mutex, evento (+1 background, +2 foreground) l’input nella finestra di dialogo associata al thread è pronto

Scheduling in Windows 2000 (5) Algoritmo di scheduling : Come variano le priorità nel tempo (cont.): la priorità viene abbassata se: un thread usa tutto il suo quanto (-1), fino a ritornare all priorità base 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à) Quando una finestra va in foreground il quanto dei thread corrispondenti viene allungato

Scheduling in Windows 2000 (6) Un esempio di inversione di priorità