CONCLUSIONE - Nucleo (o Kernel) Interagisce direttamente con lhardware Interagisce direttamente con lhardware Si occupa dellesecuzione.

Slides:



Advertisements
Presentazioni simili
Gestione della memoria centrale
Advertisements

Il Sistema Operativo Il Sistema Operativo fa parte del software di base; e` costituito da un insieme di programmi che interagiscono e cooperano per: gestire.
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:
Gestione del processore
Gestione della Memoria
Gestione del processore
1 Come si avvia un computer... Dove è contenuto il SO ? Come si attiva?
12. Il Sistema Operativo Ing. Simona Colucci
Comandi ai dispositivi di I/O + Si usano due metodi per mandare informazioni a un dispositivo: –Istruzioni specifiche di I/O –I/O mappato in memoria (memory.
Time Sharing Il termine “Time Sharing” proviene dall'inglese e significa letteralmente “partizione di tempo”. Questa è una tecnica sviluppatasi negli.
Processi Concetto di processo Scheduling dei processi
INTRODUZIONE AI SISTEMI OPERATIVI
Il Software: Obiettivi Programmare direttamente la macchina hardware è molto difficile: lutente dovrebbe conoscere lorganizzazione fisica del computer.
Processi e Thread.
I Thread.
Software di base Il sistema operativo è un insieme di programmi che opera sul livello macchina e offre funzionalità di alto livello Es.organizzazione dei.
Linguaggi di programmazione
1 Gestione del processore Il modello a processi sequenziali.
Sistemi Operativi GESTIONE DEI PROCESSI.
Strutture dei sistemi di calcolo Funzionamento di un sistema di calcolo Struttura di I/O Struttura della memoria Gerarchia delle memorie Architetture di.
1 LINUX: struttura generale The layers of a UNIX system. User Interface.
Il sistema operativo Vito Perrone
SOFTWARE I componenti fisici del calcolatore (unità centrale e periferiche) costituiscono il cosiddetto Hardware (alla lettera, ferramenta). La struttura.
Informatica per medici
Le procedure di gestione input/output Poiché le operazioni di input/output sono più lente rispetto alla velocità del processore, occorrerà sincronizzarle.
Requisiti precedenti Contenuti Verifiche Bibliografia Maura Zini.
INTRODUZIONE l sistema operativo è il primo software che lutente utilizza quando accende il computer; 1)Viene caricato nella memoria RAM con loperazione.
Il Software Una programmazione diretta della macchina hardware da parte degli utenti è molto difficile: lutente dovrebbe conoscere lorganizzazione fisica.
Modulo 1 - Hardware u.d. 3 (syllabus – 1.3.5)
L' ARCHITETTURA DI VON NEUMANN
Software e sistema operativo 19-22/5/08 Informatica applicata B Cristina Bosco.
Il sistema operativo.
Architettura degli elaboratori
La schedulazione dei processi
Seconda Università degli Studi di Napoli Facoltà di Economia Corso di Informatica Prof.ssa Zahora Pina.
Il Sistema Operativo (1)
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.
Unità centrale di processo
Threads.
Informatica Lezione 7 Scienze e tecniche psicologiche dello sviluppo e dell'educazione (laurea triennale) Anno accademico:
STRUTTURA DI UN COMPUTER
Sistema Operativo (Software di base)
Prima di iniziare… Durata attività: due lezioni frontali + una lezione laboratorio + compiti per casa Prerequisiti: elementi base architettura dei calcolatori.
I processi.
Arch. Elab. - S. Orlando 1 Progetto del processore e supporto del processore al SO (interruzioni – eccezioni) Salvatore Orlando.
Il nucleo del Sistema Operativo
INTERFACCE Schede elettroniche che permettono al calcolatore di comunicare con le periferiche, che possono essere progettate e costruite in modo molto.
Gestione del processore (Scheduler)
Informatica Lezione 8 Scienze e tecniche psicologiche dello sviluppo e dell'educazione Anno accademico:
1 Sommario degli argomenti  Sistemi operativi: DOS, Unix/Linux,Windows  Word processors: Word  Fogli elettronici: Excel  Reti: TCP/IP, Internet, ftp,
1 Input/Output. 2 Livelli del sottosistema di I/O Hardware Gestori delle interruzioni Driver dei dispositivi Software di sistema indipendente dal dispositivo.
Corso di Laurea in Scienze e Tecnologie Chimiche corso di Informatica Generale Paolo Mereghetti DISCo – Dipartimento di Informatica, Sistemistica e Comunicazione.
1 Input/Output. 2 Livelli del sottosistema di I/O Hardware Gestori delle interruzioni Driver dei dispositivi Software di sistema indipendente dal dispositivo.
Sistema operativo Il Sistema Operativo gestisce le risorse hw e sw del sistema di elaborazione Facilita l'interazione tra utente e sistema Esistono diversi.
Sistemi operativi di rete Ing. A. Stile – Ing. L. Marchesano – 1/18.
1 Processi e Thread Processi Thread Meccanismi di comunicazione fra processi (IPC) Problemi classici di IPC Scheduling Processi e thread in Unix Processi.
1 Informatica Generale Marzia Buscemi Ricevimento: Giovedì ore , Dipartimento di Informatica, stanza 306-PS o per posta.
Corso di Laurea in Biotecnologie corso di Informatica Paolo Mereghetti DISCo – Dipartimento di Informatica, Sistemistica e Comunicazione.
Informatica Generale Marzia Buscemi
I primi elaboratori Anni ‘50 Rigidamente sequenziali
INTRODUZIONE AI SISTEMI OPERATIVI. Introduzione Il software può essere diviso un due grandi classi: Il software può essere diviso un due grandi classi:
Il modello di Von Neumann
Il computer RAM: Unità di misura MByte e GByte MHz Processore: Unità di misura Singolo o multiprocessore 32/64 bit velocità GHz Mouse tastiera video stampante.
 Ogni processo che deve essere eseguito da un sistema di elaborazione, deve essere caricato e risiedere almeno parzialmente nella memoria centrale 
Gestione delle periferiche. Le periferiche sono dispositivi che permettono le operazioni di input/output.
© 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.
Il Sistema Operativo Processi e Risorse
Transcript della presentazione:

CONCLUSIONE - Nucleo (o Kernel) Interagisce direttamente con lhardware Interagisce direttamente con lhardware Si occupa dellesecuzione dei programmi e della risposta agli eventi esterni generati dalle unità periferiche. Si occupa dellesecuzione dei programmi e della risposta agli eventi esterni generati dalle unità periferiche. Scopo principale: gestire i processi corrispondenti ai programmi che sono contemporaneamente attivi Scopo principale: gestire i processi corrispondenti ai programmi che sono contemporaneamente attivi applicazioni utente processi di servizio Fornisce alle macchine virtuali di livello superiore la visione di un insieme di unità di elaborazione virtuali ciascuna dedicata a un processo presente in memoria Fornisce alle macchine virtuali di livello superiore la visione di un insieme di unità di elaborazione virtuali ciascuna dedicata a un processo presente in memoria Gestisce il contesto di esecuzione dei vari processi Gestisce il contesto di esecuzione dei vari processi Attua una politica di alternanza (scheduling) nellaccesso alla CPU da parte dei processi in esecuzione. Attua una politica di alternanza (scheduling) nellaccesso alla CPU da parte dei processi in esecuzione.

CPU dati controllo indirizziBUS Memoria di lavoro Memoria di massa Interfaccia I/O Video/tastiera (terminale) Interfaccia I/O Nucleo: macchina astratta

dati controllo indirizziBUS Memoria di lavoro Memoria di massa Interfaccia I/O Video/tastiera (terminale) Interfaccia I/O CPU virtuale processo CPU virtuale processo CPU virtuale processo CPU virtuale processo CPU virtuale processo … … …

Interruzione interna Lesecuzione di un processo attivo si interrompe ad es. per operazioni di input/output (operazioni costose in termini di tempo) Lo stato corrente (contenuto registri ecc) del processo interrotto viene salvato in memoria Il processo passa allo stato in attesa Il controllo passa ad un processo di sistema che assegna la CPU ad un altro processo (per poter ottimizzare lutilizzo della CPU)

Interruzioni interne attivo pronto Salva stato Ripristina stato Fine Inizio

Interruzioni esterne Una periferica segnala la fine di un operazione Lesecuzione del processo corrente viene interrotta (il processo passa allo stato pronto) e passa al gestore delle interruzioni – Quindi interruzioe esterna perche riguarda le operazioni di unaltro processo! Il gestore delle interruzioni provvede a trasferire dati in memoria e risvegliare il processo in attesa che passa allo stato pronto Il controllo passa poi al nucleo che manda in esecuzione uno dei processi in stato pronto Il gestore lavora con interruzioni disabilitate

Interruzioni esterne attivo pronto attesa Salva stato Ripristina stato Fine Inizio Acknowledg. operazione

CREAZIONE: un processo utente INVOCA loperazione processo padre: processo invocante processo figlio: processo creato caratteristiche del processo ereditate dal processo padre parametri interni fasi verifica della congruità dei parametri di chiamata assegnazione di un identificatore valido individuazione delle risorse necessarie

TERMINAZIONE DI UN PROCESSO Determina il rilascio delle risorse possedute e lavvio delle attività previste per la chiusura del programma Invocato dal programma stesso dal s.o. per necessità interne Richiesto da un altro processo quando avviene unanomalia nellesecuzione del processo unoperazione di I/O di cui non si avevano i diritti

COMMUTAZIONE DI UN PROCESSO (context switch) OPERAZIONE CHE DETERMINA LAVVICENDAMENTO DEI PROCESSI NELLUSO DELLA CPU I valori posseduti nei registri vengono salvati nel PCB, mente i valori del nuovo processo (quando passa in stato di run) vengono prelevati dal PCB e spostati nei registri della CPU. Tale operazione impiega fino ad 1 millisecondo

LIMITI DEL MODELLO A PROCESSI Lentezza delle operazioni fondamentali: – Creazione e commutazione sono operazioni complesse Inadeguatezza dello scambio dati: – Lo scambio messaggi utilizzato per il trasferimento di un dato da un processo ad un altro è accettabile solo per poche informazioni Funzioni e informazioni necessarie allo scambio di contesto e allavanzamento del processo Funzioni e informazioni necessarie al possesso e controllo delle risorse

IL THREAD (flusso di esecuzione) Si è scomposto il processo in un insieme di flussi sequenziali di istruzioni (ll thread) ognuno caratterizzato dalla propria evoluzione anche contemporanea con altri flussi, mentre si è lasciato allentità logica processo il compito di possedere e condividere tutti i thread.

APPROCCIO TRADIZIONALE – processo un solo thread (single-thread) In genere il thread è dato dalla sequenza del PC durante lesecuzione del processo (ad ex 2502, 2503, 2504, 2505, 2506, 2504, 2505, 2506, 2504, 2505, 2506, 2507 Lesistenza di un solo thread in un processo significa che al processo può essere assegnato un solo processore In memoria ci sono il codice del programma, i dati, lo stack, il PCB, lo spazio di servizio per la gestione del thread da parte del s.o.

APPROCCIO TRADIZIONALE – processo con un solo thread (single-thread) Il processo è contraddistinto dal PCB con tutte le informazioni, ma le informazioni dinamiche (dati codici, diritti, informazioni sulla risorse) sono contenute in unaltra tabella chiamata TCB = thread control block che segue la vita del thread. CREAZIONE, TERMINAZIONE, COMMUTAZIONE coinvolgono solo il TCB. Quando più processi sono in esecuzione, ad ogni processo è associato un solo thread.

PROCESSO con più thread In sistemi dove sono presenti più di un processore e quando i s.o. sanno gestire processi con più flussi di informazione (più thread), è possibile fare eseguire i thread contemporaneamente in parallelo rendendo più veloce lesecuzione del programma. In questo caso i thread condividono lo stesso spazio di memoria e lo stesso file. La struttura complessiva del processo è diversa perché deve tener conto della presenza di più thread.

PROCESSO con più thread Esempio: thread di WORD: Gestione tastiera – immissione testo - memorizzazione in MC Formattazione del testo Salvataggio periodico sull HD

PROCESSO con più thread In comune ai thread di uno stesso processo ci sono: il codice I dati Il PCB Lo spazio per la gestione dei file Ogni thread ha un proprio PC Ogni thread ha propri registri Ogni thread ha propri stack Le informazioni contenute nel PC, registri e stack servono per tener conto dello stato di esecuzione del singolo thread e sono contenute nel TCB

PROCESSO con più thread Il processo ha un suo PCB, ma ogni thread del processo: è indipendente dagli altri Ha un suo TCB riservato Condivide le informazioni comuni con tutti gli altri thread Ogni thread può avanzare – parallelamente agli altri thread del processo stesso (multiprocessor) oppure – avanzamento alternato (monoprocessor)

PROCESSO con più thread risolve: problema della lentezza delle operazioni fondamentali : scambio di poche informazioni (nei registri : + veloce) problema dello scambio delle informazioni : si utilizza la memoria comune assegnata al processo dove le informazioni sono a disposizione di tutti i thread alla quale tutti i thread possono accedere non si ha più lo scambio delle informazioni che sono sempre a disposizione.

PROCESSO con più thread esempio: SITO WEB: Lapplicazione che lo gestisce si chiama server, è sempre attiva in attesa delle richieste dei client. Quando arriva la richiesta di utilizzo di un file, lapplicazione server risponde inviando le informazioni richieste. Si può pensare di avviare un processo per ogni client riducendo i tempi di risposta del server.