Capitolo 5: I thread
|
|
|
- Onorato Bossi
- 10 anni fa
- Visualizzazioni
Transcript
1 Capitolo 5: I thread Generalità. Modelli multithread. Problematiche relative ai thread. Pthread. 5.1
2 I thread Il thread è un flusso di controllo relativo ad un dato processo. Molti sistemi operativi moderni consentono ad un processo di contenere più flussi di controllo. Generazione di thread vs generazione di processi figli. La creazione di processi è un meccanismo dispendioso in termini di tempo e risorse necessarie. Quando le funzionalità da eseguire sono sostanzialmente analoghe ma semplicemente multiplate non ha senso ridondare l intero apparato a corredo di un processo. È il caso ad esempio di un demone HTTP che deve servire migliaia di client per restituire risorse complesse (immagini, audio, video). Generalmente è più opportuno replicare semplicemente i flussi di controllo di un medesimo processo. È il caso dei server RPC ed RMI che sono tipicamente multithread. 5.2
3 Single e multithreading Thread = unità atomica di utilizzo della CPU. Comprende: Identificatore del thread; Program counter; Register set; Stack. Due o più thread relativi al medesimo processo condividono: Sezione di codice e di dati; Risorse (file aperti). 5.3
4 Vantaggi Prontezza di risposta. Migliore interazione con l utente nel caso di applicazioni interattive. Condivisione di risorse. I thread condividono memoria e risorse del processo al quale appartengono e questo rende possibile avere un elevato numero di thread all interno dello stesso spazio di indirizzi. Economia. È più economico cambiare il contesto di thread piuttosto che fra processi dato che essi condividono memoria e risorse: in Solaris T creazione processo 30 T creazione thread T context switching processo 5 T context switching thread Utilizzo di architetture multiprocessore. I benefici del multithreading aumentano fortemente su macchine multi-cpu (i thread vengono eseguiti con un parallelismo reale). 5.4
5 Thread user/kernel space La gestione dei thread è effettuata a livello utente attraverso una opportuna libreria. Essa fornisce al programmatore le API per la creazione e gestione dei thread. Le librerie di thread a livello utente possono essere implementate secondo due approcci: Libreria completamente residente all interno dello user space senza supporto da parte del kernel. Invocare una funzione di libreria si traduce in una chiamata di funzione locale. Libreria a livello kernel. Invocare una funzione delle API della libreria comporta una chiamata di sistema. Tre principali librerie di thread: POSIX Pthread (user/kernel thread). Java thread (user/kernel thread). Win32 thread (kernel thread). 5.5
6 Modello molti-a-uno Il modello molti-a-uno riunisce molti thread di livello utente in un unico kernel thread. La gestione è effettuata a livello utente e quindi è efficiente. L intero processo si blocca se un thread esegue una chiamata di sistema bloccante. Non è possibile eseguire thread multipli in parallelo su più processori in quanto un solo thread per volta può accedere al kernel. 5.6
7 Modello uno-a-uno Il modello uno-a-uno mappa ciascun thread utente in un kernel thread. Aumenta il livello di concorrenza possibile: Un thread può essere in esecuzione mentre un altro esegue una chiamata di sistema bloccante. Più thread possono essere eseguiti in parallelo su più processori. Obbliga alla mappatura di uno user thread su un kernel thread. L overhead della creazione di un kernel thread si ripercuote sull applicazione. Esempi: In genere è posto un limite al multithreading. Windows NT/XP/2000 Linux Solaris
8 Modello molti-a-molti Permette di aggregare molti thread a livello utente verso un numero più piccolo o equivalente di kernel thread. Permette al sistema operativo di creare un numero sufficiente di kernel thread in base alle caratteristiche dell architettura. Non soffre di alcuna delle limitazioni dei precedenti modelli. Esempio: Windows NT/2000 con il pacchetto ThreadFiber. 5.8
9 Modello a due livelli Variante del modello molti-a-molti che permette anche di associare un thread di livello utente ad un kernel thread. Esempi: True64 UNIX Solaris 9 IRIX 5.9
10 fork() ed exec() Le chiamate di sistema fork() ed exec() hanno, nel caso dei thread, una semantica differente rispetto a quella dei processi. La chiamata exec() ha un funzionamento pressoché analogo: si procede a rimpiazzare l intero processo inclusi tutti i suoi thread. Se un thread in un programma chiama una fork() si potrebbe a seconda della specifica applicazione: duplicare tutti i thread duplicare solo il thread che invoca la fork(). Quale delle due versioni di fork() è da usare? Se la chiamata è seguita da una exec(), non è necessario duplicare l intero thread set dal momento che il programma specificato come parametro della exec() rimpiazzerà l intero processo. In caso di fork() singola è opportuno che si duplichi l intero thread set. 5.10
11 Cancellazione di thread È l atto di terminare un thread prima che abbia completato la propria esecuzione. La cancellazione di un thread target può avvenire in due differenti scenari: Cancellazione asincrona: un thread termina immediatamente il thread target. Cancellazione differita: il thread target può periodicamente effettuare un controllo di terminazione avendo così l opportunità di terminare in modo ordinario. La cancellazione asincrona comporta problemi quando: in fase di cancellazione un thread sta modificando dati condivisi con altri thread; le risorse assegnate ad un thread cancellato non vengano integralmente restituite. In tal caso il sistema operativo potrebbe reclamarle senza esito. 5.11
12 Gestione dei segnali (1/2) Nei sistemi UNIX per notificare ad un processo che si è verificato un particolare evento si usa un segnale. Un segnale può essere ricevuto in modo sincrono o asincrono a seconda della sua origine e dell evento che lo ha generato. La gestione dei segnali può essere affidata al: 1. Gestore di default dello specifco segnale (eseguito dal kernel); 2. Gestore definito dall utente. Trattare un segnale può significare: 1. ignorarlo; 2. condurre ad un intervento stabilito dal signal manager; 3. condurre alla terminazione del programma. 5.12
13 Gestione dei segnali (2/2) La gestione di segnali è più complessa nel caso di multithreading. Riguardo al signal delivery esistono differenti possibilità: Consegnare il segnale al thread cui il segnale viene applicato. Consegnare il segnale ad ogni thread del processo. Consegnare il segnale al alcuni thread del processo. Designare un thread specifico che riceva tutti i segnali per conto del processo. Il metodo adoperato in genere dipende dal tipo di segnale. I segnali sincroni devono essere consegnati al thread che ha causato l evento. Nel caso di segnali asincroni la situazione è più complessa: Alcuni segnali asincroni dovrebbero essere inviati a tutti i thread (come p.es nel caso di terminazione di un processo). In taluni casi UNIX permette di lasciare al thread la decisione sui segnali da accettare e su quelli da bloccare: un segnale asincrono verrà consegnato solo al primo thread che non lo blocca. In Windows i segnali vengono emulati attraverso le Asyncronous Procedure Call (APC). 5.13
14 Nei server multithread: Gruppi di thread si potrebbero esaurire le risorse di sistema (specialmente tempo di CPU e memoria) se non viene posto limite alla creazione di thread concorrenti; prima che la richiesta possa essere servita occorre attendere un tempo imprecisato in attesa della creazione di un nuovo thread. Come soluzione si può pensare di creare numerosi thread all avvio del processo e metterli dentro ad un pool dove restano in attesa di lavoro. Quando un server multithread riceve una richiesta, si limiterà a risvegliare uno dei thread disponibili all interno del pool. Espletata la richiesta il thread rientra nel pool in sleeping. Se il pool non ha thread disponibili, il server resterà in attesa. Vantaggi: Servire la richiesta all interno di un thread esistente è tipicamente più veloce che attendere la creazione di un thread. Un pool di thread limita il numero di thread esistenti in contemporanea. Le dimensioni dei pool di thread possono essere fissate in modo euristico oppure dinamicamente in base ai pattern di carico. 5.14
15 LWP Il modello molti-a-molti ed il modello a due livelli richiedono una comunicazione fra kernel e libreria di thread per mantenere un appropriato numero di kernel thread allocati all applicazione. Si adopera una struttura intermedia tra user thread e kernel thread denominata LightWeight Process (LWP). Un LWP appare alla libreria dei thread utente come un processore virtuale sul quale schedulare l esecuzione. Una applicazione CPU-bound su un sistema monoprocessore implica che un solo thread per volta possa essere eseguito, quindi per essa sarà sufficiente un unico LWP per thread. Una applicazione I/O-bound tipicamente richiede un LWP per ciascuna chiamata di sistema bloccante. 5.15
16 Attivazione dello schedulatore Il kernel mette a disposizione un set di LWP (processori virtuali) per ciascuna applicazione. Essa può schedulare su ciascuno di essi un thread. L attivazione dello schedulatore fornisce upcall (chiamate al thread) un meccanismo di comunicazione dal kernel alla libreria dei thread. La libreria di thread esegue un upcall manager per processore virtuale. Esso provvede alla gestione degli eventi diretti al thread. Quando un kernel thread sta per bloccarsi viene scatenato un evento che attiva una upcall. Il kernel informa l applicazione che uno specifico thread sta per bloccarsi e alloca un nuovo LWP per l applicazione. Questa esegue un upcall manager su di esso. L upcall manager del thread in fase di blocco ne salva lo stato e rilascia il processore virtuale. Poi provvede a schedulare un nuovo thread eleggibile per il LWP appena rilasciato. Al verificarsi dell evento per cui il thread era bloccato, il kernel fa una upcall alla libreria dei thread segnalando l eleggibilità per l esecuzione del thread fermo. Il gestore di upcall per questo evento richiede un processore virtuale e vi schedula l esecuzione del thread sbloccato. L attivazione dello schedulatore permette ad una applicazione di mantenere il corretto numero di kernel thread. 5.16
17 Pthread Standard POSIX (IEEE c). API per la creazione e la sincronizzazione dei thread. Fornisce una specifica per il comportamento della libreria dei thread. I progettisti di sistemi operativi possono implementare la specifica nel modo che desiderano. Frequente nei sistemi operativi di UNIX (Solaris, Linux, Mac OS X). Le API di Pthread possono essere considerate come librerie di thread a livello utente. Non esiste alcuna relazione fra un thread creato usando le API di Pthread e un thread del kernel associato. 5.17
Sistemi Operativi. Processi GESTIONE DEI PROCESSI. Concetto di Processo. Scheduling di Processi. Operazioni su Processi. Processi Cooperanti
GESTIONE DEI PROCESSI 4.1 Processi Concetto di Processo Scheduling di Processi Operazioni su Processi Processi Cooperanti Concetto di Thread Modelli Multithread I thread in diversi S.O. 4.2 Concetto di
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:
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)?
Definizione Parte del software che gestisce I programmi applicativi L interfaccia tra il calcolatore e i programmi applicativi Le funzionalità di base
Sistema operativo Definizione Parte del software che gestisce I programmi applicativi L interfaccia tra il calcolatore e i programmi applicativi Le funzionalità di base Architettura a strati di un calcolatore
Modello dei processi. Riedizione delle slide della Prof. Di Stefano
Modello dei processi Riedizione delle slide della Prof. Di Stefano 1 Processi Modello di Processi asincroni comunicanti Process Scheduling Operazioni sui Processi Cooperazione tra Processi Interprocess
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
GESTIONE DEI PROCESSI
Sistemi Operativi GESTIONE DEI PROCESSI Processi Concetto di Processo Scheduling di Processi Operazioni su Processi Processi Cooperanti Concetto di Thread Modelli Multithread I thread in Java Concetto
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
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
Il Sistema Operativo. C. Marrocco. Università degli Studi di Cassino
Il Sistema Operativo Il Sistema Operativo è uno strato software che: opera direttamente sull hardware; isola dai dettagli dell architettura hardware; fornisce un insieme di funzionalità di alto livello.
Il Sistema Operativo
Il Sistema Operativo Il Sistema Operativo Il Sistema Operativo (S.O.) è un insieme di programmi interagenti che consente agli utenti e ai programmi applicativi di utilizzare al meglio le risorse del Sistema
Architettura di un sistema operativo
Architettura di un sistema operativo Dipartimento di Informatica Università di Verona, Italy Struttura di un S.O. Sistemi monolitici Sistemi a struttura semplice Sistemi a livelli Virtual Machine Sistemi
Il Concetto di Processo
Processi e Thread Il Concetto di Processo Il processo è un programma in esecuzione. È l unità di esecuzione all interno del S.O. Solitamente, l esecuzione di un processo è sequenziale (le istruzioni vengono
Pronto Esecuzione Attesa Terminazione
Definizione Con il termine processo si indica una sequenza di azioni che il processore esegue Il programma invece, è una sequenza di azioni che il processore dovrà eseguire Il processo è quindi un programma
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
Sistemi Operativi STRUTTURA DEI SISTEMI OPERATIVI 3.1. Sistemi Operativi. D. Talia - UNICAL
STRUTTURA DEI SISTEMI OPERATIVI 3.1 Struttura dei Componenti Servizi di un sistema operativo System Call Programmi di sistema Struttura del sistema operativo Macchine virtuali Progettazione e Realizzazione
Sistema Operativo. Fondamenti di Informatica 1. Il Sistema Operativo
Sistema Operativo Fondamenti di Informatica 1 Il Sistema Operativo Il Sistema Operativo (S.O.) è un insieme di programmi interagenti che consente agli utenti e ai programmi applicativi di utilizzare al
Processi e thread. Dipartimento di Informatica Università di Verona, Italy. Sommario
Processi e thread Dipartimento di Informatica Università di Verona, Italy Sommario Concetto di processo Stati di un processo Operazioni e relazioni tra processi Concetto di thread Gestione dei processi
Corso di Sistemi di Elaborazione delle informazioni
Corso di Sistemi di Elaborazione delle informazioni Sistemi Operativi Francesco Fontanella Complessità del Software Software applicativo Software di sistema Sistema Operativo Hardware 2 La struttura del
Il Sistema Operativo (1)
E il software fondamentale del computer, gestisce tutto il suo funzionamento e crea un interfaccia con l utente. Le sue funzioni principali sono: Il Sistema Operativo (1) La gestione dell unità centrale
VMware. Gestione dello shutdown con UPS MetaSystem
VMware Gestione dello shutdown con UPS MetaSystem La struttura informatica di una azienda Se ad esempio consideriamo la struttura di una rete aziendale, i servizi offerti agli utenti possono essere numerosi:
Lezione 1 Introduzione
Lezione 1 Introduzione Ingegneria dei Processi Aziendali Modulo 1 Servizi Web Unità didattica 1 Protocolli Web Ernesto Damiani Università di Milano I Servizi Web Un Servizio Web è un implementazione software
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
Sistemi Operativi MECCANISMI E POLITICHE DI PROTEZIONE. D. Talia - UNICAL. Sistemi Operativi 13.1
MECCANISMI E POLITICHE DI PROTEZIONE 13.1 Protezione Obiettivi della Protezione Dominio di Protezione Matrice di Accesso Implementazione della Matrice di Accesso Revoca dei Diritti di Accesso Sistemi basati
MECCANISMI E POLITICHE DI PROTEZIONE 13.1
MECCANISMI E POLITICHE DI PROTEZIONE 13.1 Protezione Obiettivi della Protezione Dominio di Protezione Matrice di Accesso Implementazione della Matrice di Accesso Revoca dei Diritti di Accesso Sistemi basati
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
T E O R I A D I P R O G E T T A Z I O N E D E L S O F T W A R E
Threading T E O R I A D I P R O G E T T A Z I O N E D E L S O F T W A R E Caratteristiche principali dei thread Consentono di eseguire elaborazioni simultanee in un programma scritto in C#. Possono essere
Il Software. Il software del PC. Il BIOS
Il Software Il software del PC Il computer ha grandi potenzialità ma non può funzionare senza il software. Il software essenziale per fare funzionare il PC può essere diviso nelle seguenti componenti:
La gestione di un calcolatore. Sistemi Operativi primo modulo Introduzione. Sistema operativo (2) Sistema operativo (1)
La gestione di un calcolatore Sistemi Operativi primo modulo Introduzione Augusto Celentano Università Ca Foscari Venezia Corso di Laurea in Informatica Un calcolatore (sistema di elaborazione) è un sistema
SISTEMI OPERATIVI. I thread. Prof. Luca Gherardi Prof.ssa Patrizia Scandurra (anni precedenti) (MODULO DI INFORMATICA II)
SISTEMI OPERATIVI (MODULO DI INFORMATICA II) I thread Prof. Luca Gherardi Prof.ssa Patrizia Scandurra (anni precedenti) Università degli Studi di Bergamo a.a. 2012-13 Sommario Generalità: il concetto di
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 11 Martedì 12-11-2013 1 Tecniche di allocazione mediante free list Generalmente,
I THREAD O PROCESSI LEGGERI Generalità
I THREAD O PROCESSI LEGGERI Generalità Thread: segmento di codice (funzione) Ogni processo ha un proprio SPAZIO DI INDIRIZZAMENTO (area di memoria) Tutti i thread genereti dallo stesso processo condividono
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
Sistema operativo: Gestione della memoria
Dipartimento di Elettronica ed Informazione Politecnico di Milano Informatica e CAD (c.i.) - ICA Prof. Pierluigi Plebani A.A. 2008/2009 Sistema operativo: Gestione della memoria La presente dispensa e
Database. Si ringrazia Marco Bertini per le slides
Database Si ringrazia Marco Bertini per le slides Obiettivo Concetti base dati e informazioni cos è un database terminologia Modelli organizzativi flat file database relazionali Principi e linee guida
Gestione della memoria centrale
Gestione della memoria centrale Un programma per essere eseguito deve risiedere in memoria principale e lo stesso vale per i dati su cui esso opera In un sistema multitasking molti processi vengono eseguiti
Telematica II 17. Esercitazione/Laboratorio 6
Multitasking e Multithreading Telematica II 17. Esercitazione/Laboratorio 6 Multitasking si riferisce all abilità di un computer di eseguire processi (jobs) multipli in maniera concorrente si ricorda che
Java Virtual Machine
Java Virtual Machine programmi sorgente: files.java compilatore files.class bytecode linker/loader bytecode bytecode Java API files.class interprete macchina ospite Indipendenza di java dalla macchina
Introduzione alle applicazioni di rete
Introduzione alle applicazioni di rete Definizioni base Modelli client-server e peer-to-peer Socket API Scelta del tipo di servizio Indirizzamento dei processi Identificazione di un servizio Concorrenza
Protezione. Protezione. Protezione. Obiettivi della protezione
Protezione Protezione La protezione riguarda i meccanismi per il controllo dell accesso alle risorse in un sistema di calcolo da parte degli utenti e dei processi. Meccanismi di imposizione fissati in
Corso di Sistemi Operativi Ingegneria Elettronica e Informatica prof. Rocco Aversa. Raccolta prove scritte. Prova scritta
Corso di Sistemi Operativi Ingegneria Elettronica e Informatica prof. Rocco Aversa Raccolta prove scritte Realizzare una classe thread Processo che deve effettuare un numero fissato di letture da una memoria
Approccio stratificato
Approccio stratificato Il sistema operativo è suddiviso in strati (livelli), ciascuno costruito sopra quelli inferiori. Il livello più basso (strato 0) è l hardware, il più alto (strato N) è l interfaccia
Premessa Le indicazioni seguenti sono parzialmente tratte da Wikipedia (www.wikipedia.com) e da un tutorial di Pierlauro Sciarelli su comefare.
Macchine virtuali Premessa Le indicazioni seguenti sono parzialmente tratte da Wikipedia (www.wikipedia.com) e da un tutorial di Pierlauro Sciarelli su comefare.com 1. Cosa sono In informatica il termine
CAPITOLO 7 - SCAMBIO DI MESSAGGI
CAPITOLO 7 - SCAMBIO DI MESSAGGI Lo scambio di messaggi è una forma di comunicazione nel quale un processo richiede al sistema operativo di mandare dei dati direttamente ad un altro processo. In alcuni
Linux nel calcolo distribuito
openmosix Linux nel calcolo distribuito Dino Del Favero, Micky Del Favero [email protected], [email protected] BLUG - Belluno Linux User Group Linux Day 2004 - Belluno 27 novembre openmosix p. 1 Cos è
Sistemi Operativi IMPLEMENTAZIONE DEL FILE SYSTEM. D. Talia - UNICAL. Sistemi Operativi 9.1
IMPLEMENTAZIONE DEL FILE SYSTEM 9.1 Implementazione del File System Struttura del File System Implementazione Implementazione delle Directory Metodi di Allocazione Gestione dello spazio libero Efficienza
Introduzione alla Virtualizzazione
Introduzione alla Virtualizzazione Dott. Luca Tasquier E-mail: [email protected] Virtualizzazione - 1 La virtualizzazione è una tecnologia software che sta cambiando il metodo d utilizzo delle risorse
Programmazione concorrente in Java. Dr. Paolo Casoto, Ph.D. - 2012 1
+ Programmazione concorrente in Java 1 + Introduzione al multithreading 2 La scomposizione in oggetti consente di separare un programma in sottosezioni indipendenti. Oggetto = metodi + attributi finalizzati
2. I THREAD. 2.1 Introduzione
2. I THREAD 2.1 Introduzione Il tipo di parallelismo che è opportuno avere a disposizione nelle applicazioni varia in base al grado di cooperazione necessaria tra le diverse attività svolte in parallelo:
NOTE OPERATIVE. Prodotto Inaz Download Manager. Release 1.3.0
Prodotto Inaz Download Manager Release 1.3.0 Tipo release COMPLETA RIEPILOGO ARGOMENTI 1. Introduzione... 2 2. Architettura... 3 3. Configurazione... 4 3.1 Parametri di connessione a Internet... 4 3.2
MODELLO CLIENT/SERVER. Gianluca Daino Dipartimento di Ingegneria dell Informazione Università degli Studi di Siena [email protected]
MODELLO CLIENT/SERVER Gianluca Daino Dipartimento di Ingegneria dell Informazione Università degli Studi di Siena [email protected] POSSIBILI STRUTTURE DEL SISTEMA INFORMATIVO La struttura di un sistema informativo
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
2.5. L'indirizzo IP identifica il computer di origine, il numero di porta invece identifica il processo di origine.
ESERCIZIARIO Risposte ai quesiti: 2.1 Non sono necessarie modifiche. Il nuovo protocollo utilizzerà i servizi forniti da uno dei protocolli di livello trasporto. 2.2 Il server deve essere sempre in esecuzione
Sistemi Operativi. Lez. 13: primitive per la concorrenza monitor e messaggi
Sistemi Operativi Lez. 13: primitive per la concorrenza monitor e messaggi Osservazioni I semafori sono strumenti particolarmente potenti poiché consentono di risolvere ogni problema di sincronizzazione
Nelle reti di calcolatori, le porte (traduzione impropria del termine. port inglese, che in realtà significa porto) sono lo strumento
I protocolli del livello di applicazione Porte Nelle reti di calcolatori, le porte (traduzione impropria del termine port inglese, che in realtà significa porto) sono lo strumento utilizzato per permettere
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
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
Multithreading in Java. Fondamenti di Sistemi Informativi 2014-2015
Multithreading in Java Fondamenti di Sistemi Informativi 2014-2015 Multithreading La programmazione concorrente consente di eseguire più processi o thread nello stesso momento. Nel secondo caso si parla
Comunicazione tra Processi
Comunicazione tra Processi Comunicazioni in un Sistema Distribuito Un sistema software distribuito è realizzato tramite un insieme di processi che comunicano, si sincronizzano, cooperano. Il meccanismo
Assegnamento di un indirizzo IP temporaneo a dispositivi Barix
Assegnamento di un indirizzo IP temporaneo a dispositivi Barix V 1.0 GUIDA RAPIDA Introduzione L obiettivo di questa guida rapida è fornire all utente un modo per poter assegnare un indirizzo IP temporaneo
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
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
Ambienti di calcolo a griglia Parte 2. Risorse (e loro gestione) Job di griglia e applicazioni di griglia Riservare le risorse ai job
Ambienti di calcolo a griglia Parte 2 Risorse (e loro gestione) Job di griglia e applicazioni di griglia Riservare le risorse ai job Docente: Marcello CASTELLANO La vera rivoluzione non è più la capacità
SUPPORTO TECNICO AI PRODOTTI:
SUPPORTO TECNICO AI PRODOTTI: PROCEDURA INTEGRATA GESTIONE CONDOMINIO RENT MANAGER SERVIZIO DI ASSISTENZA CLIENTI - INSTALLAZIONE DELLA PROCEDURA SU ALTRE STAZIONI DI LAVORO - SOSTITUZIONE DEL SERVER O
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
Sistemi Operativi GESTIONE DELLA MEMORIA CENTRALE. D. Talia - UNICAL. Sistemi Operativi 6.1
GESTIONE DELLA MEMORIA CENTRALE 6.1 Gestione della Memoria Background Spazio di indirizzi Swapping Allocazione Contigua Paginazione 6.2 Background Per essere eseguito un programma deve trovarsi (almeno
Comunicazione tra Computer. Protocolli. Astrazione di Sottosistema di Comunicazione. Modello di un Sottosistema di Comunicazione
I semestre 04/05 Comunicazione tra Computer Protocolli Prof. Vincenzo Auletta [email protected] http://www.dia.unisa.it/professori/auletta/ Università degli studi di Salerno Laurea in Informatica 1
INFORMATICA. Il Sistema Operativo. di Roberta Molinari
INFORMATICA Il Sistema Operativo di Roberta Molinari Il Sistema Operativo un po di definizioni Elaborazione: trattamento di di informazioni acquisite dall esterno per per restituire un un risultato Processore:
Il SOFTWARE DI BASE (o SOFTWARE DI SISTEMA)
Il software Software Il software Il software è la sequenza di istruzioni che permettono ai computer di svolgere i loro compiti ed è quindi necessario per il funzionamento del calcolatore. Il software può
CVserver. CVserver. Micky Del Favero [email protected]. BLUG - Belluno Linux User Group Linux Day 2008 - Feltre 25 ottobre 2008. Un cluster di VServer
Un cluster di VServer Micky Del Favero [email protected] BLUG - Belluno Linux User Group Linux Day 2008 - Feltre 25 ottobre 2008 p. 1 Motivazione Legge di Murphy: Se qualcosa può andare storto allora lo farà.
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
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.)
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
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
11/02/2015 MANUALE DI INSTALLAZIONE DELL APPLICAZIONE DESKTOP TELEMATICO VERSIONE 1.0
11/02/2015 MANUALE DI INSTALLAZIONE DELL APPLICAZIONE DESKTOP TELEMATICO VERSIONE 1.0 PAG. 2 DI 38 INDICE 1. PREMESSA 3 2. SCARICO DEL SOFTWARE 4 2.1 AMBIENTE WINDOWS 5 2.2 AMBIENTE MACINTOSH 6 2.3 AMBIENTE
Sistemi Operativi (modulo di Informatica II)
Sistemi Operativi (modulo di Informatica II) La comunicazione tra processi Patrizia Scandurra Università degli Studi di Bergamo a.a. 2008-09 Sommario Processi cooperanti La comunicazione tra processi Necessità
Capitolo 3: Strutture dei sistemi operativi
Capitolo 3: Strutture dei sistemi operativi Componenti del sistema Servizi di un sistema operativo Chiamate del sistema Programmi di sistema Struttura del sistema Macchine virtuali Progettazione e realizzazione
1) GESTIONE DELLE POSTAZIONI REMOTE
IMPORTAZIONE ESPORTAZIONE DATI VIA FTP Per FTP ( FILE TRANSFER PROTOCOL) si intende il protocollo di internet che permette di trasferire documenti di qualsiasi tipo tra siti differenti. Per l utilizzo
Architettura hardware
Architettura dell elaboratore Architettura hardware la parte che si può prendere a calci Sistema composto da un numero elevato di componenti, in cui ogni componente svolge una sua funzione elaborazione
Potenza Elaborativa, Sistemi Operativi e Virtualizzazione
Potenza Elaborativa, Sistemi Operativi e Virtualizzazione Roma, Febbraio 2011 Operating Systems & Middleware Operations Potenza Elaborativa e Sistemi Operativi La virtualizzazione Operating Systems & Middleware
Organizzazione Monolitica
Principali componenti di un sistema Applicazioni utente Interprete di comandi (shell) Interfaccia grafica (desktop) Gestore del processore / Scheduler(s) Gestore della memoria Gestore delle periferiche/
Installazione e caratteristiche generali 1
Installazione e caratteristiche generali 1 Introduzione SIGLA Ultimate e SIGLA Start Edition possono essere utilizzati solo se sono soddisfatti i seguenti prerequisiti: Microsoft.Net Framework 3.5 (consigliato
Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2015-16. Pietro Frasca.
Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2015-16 Pietro Frasca Lezione 15 Martedì 24-11-2015 Struttura logica del sottosistema di I/O Processi
Lezione 5. Processi e thread. Sistemi operativi. Marco Cesati System Programming Research Group Università degli Studi di Roma Tor Vergata
Lezione 5 Sistemi operativi 24 marzo 2015 System Programming Research Group Università degli Studi di Roma Tor Vergata SO 15 5.1 Di cosa parliamo in questa lezione? Relazione tra processi e thread, e relative
