La gestione del clock in Minix

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "La gestione del clock in Minix"

Transcript

1 La gestione del clock in Minix Sistemi Operativi Lez. 29 1

2 La periferica Il cristallo di quarzo sottoposto a tensione genera un segnale con frequenza che varia da 5 a 200 MHz Ad ogni ciclo il contatore viene decrementato quando raggiunge il valore zero: La periferica invia un Interrupt HW (IRQ 8) Il contatore viene re-inizializzato L intervallo di tempo che intercorre tra un interrupt ed il successivo è denominato clock tick 2

3 Esempio Un clock chip che contiene un contatore a 16 bit ed un cristallo che genera segnali a 5 MHz, genererà clock tick della durata compresa tra 0,2 microsecondi e 13,1 millisecondi E se il clock è a 100 Mhz? Solitamente all interno di un PC esistono più chip di clock programmabili I chip di clock usati per la sincronizzazione di CPU e BUS di sistema usano circuiti diversi da quelli usati per la gestione degli eventi 3

4 Funzionalità svolte Time of the day: solitamente ottenuto memorizzando il numero di secondi (in termini di tick) trascorsi a partire dal 1/01/1970 4

5 Funzionalità svolte Segnalare la terminazione dei quanti di tempo: i quanti di tempo sono definiti in termini di tick ad ogni interrupt di clock si decrementa il quanto di 1 Accounting per l uso della CPU 5

6 Funzionalità svolte Gestire segnali a tempo per conto dei processi eseguiti dal sistema: alcuni processi basano le loro azioni sull avverarsi o meno di certi eventi, entro intervalli di tempo predeterminati (es. ack di TCP) 6

7 Funzionalità svolte Watchdog timers: simili ai precedenti, con la differenza che allo scadere del tempo prefissato invece di inviare segnali richiamano opportune procedure di gestione Profiling: raccogliere i tempi di esecuzione di diverse componenti del sistema o dei processi utente 7

8 Implementazione Le componenti del sistema operativo coinvolte nella gestione del clock sono: Interrupt handler Clock driver (clock task) Che si appoggia su do_clocktick per svolgere le operazioni richieste Routine di servizio: leggere il clock, leggere l ora del sistema, leggere dei registri all interno del chip 8

9 Driver È la prima componente che si occupa del clock ad essere eseguita sul sistema e quindi deve provvedere alla inizializzazione del dispositivo Viene avviata in fase di boot Costituita da un loop infinito che riceve solo un tipo di messaggi provenienti da HARD_INT e generati dall interrupt handler 9

10 Clock driver 10

11 init_clock() clock_hook.proc_nr_e = CLOCK; Terminata l esecuzione di init_clock(), dopo 16,67 millisecondi arriverà il primo clock interrupt 11

12 irq_handlers [nr_irq_hook] irq_hook_t irq_hook_t irq_hook_t irq_hook_t 12

13 Strutture dati: irq_hook_t STRUTTURA DATI DI RIFERIMENTO PER LA GESTIONE DEGLI INTERRUPT, ESISTE ALMENO UN ELEMENTO irq_hook_t PER OGNI TIPO DI INTERRUPT *HANDLER n.ro IRQ hook_id pid driver policy next Generic handler 13

14 Strutture dati Minix typedef unsigned long irq_policy_t; typedef unsigned long irq_id_t; typedef struct irq_hook { struct irq_hook *next; /* next hook in chain */ int (*handler)(struct irq_hook *); /* interrupt handler */ int irq; /* IRQ vector number */ int id; /* id of this hook */ int proc_nr_e; /* (endpoint) NONE if not in use */ irq_id_t notify_id; /* id to return on interrupt */ irq_policy_t policy; /* bit mask for policy */ } irq_hook_t; typedef int (*irq_handler_t)(struct irq_hook *); 14

15 00089 /*===========================================================================* * put_irq_handler * *===========================================================================*/ PUBLIC void put_irq_handler(hook, irq, handler) irq_hook_t *hook; int irq; irq_handler_t handler; { /* Register an interrupt handler. */ int id; irq_hook_t **line; if (irq < 0 irq >= NR_IRQ_VECTORS) panic("invalid call to put_irq_handler", irq); line = &irq_handlers[irq]; id = 1; while (*line!= NULL) { if (hook == *line) return; /* extra initialization */ line = &(*line)->next; id <<= 1; } if (id == 0) panic("too many handlers for irq", irq); hook->next = NULL; hook->handler = handler; hook->irq = irq; hook->id = id; *line = hook; irq_use = 1 << irq; } 15

16 interrupt_handler() Per prima cosa aggiorna realtime (n.ro di ticks trascorsi dal boot) prevedendo eventuali lost_ticks, variabile globale aggiornata da driver e interrupt handler 16

17 interrupt_handler Aggiorna il PCB del processo nel caso di processo di sistema (quindi non billable) addebita i tick al processo billable di riferimento 17

18 interrupt_handler Nel caso di quanto terminato, o di watchdog timers scaduto viene richiamato il clock driver 18

19 do_clocktick 19

20 do_clocktick 20

21 Clock Service 21

Sistemi Operativi. Bruschi Martignoni Monga. La gestione del clock in MINIX Il clock Gestione clock MINIX Clock task IRQ Handler Message handler

Sistemi Operativi. Bruschi Martignoni Monga. La gestione del clock in MINIX Il clock Gestione clock MINIX Clock task IRQ Handler Message handler 1 Mattia Dip. di Informatica e Comunicazione Università degli Studi di Milano, Italia mattia.monga@unimi.it Lezione XXII: a.a. 2008/09 1 c 2009 M.. Creative Commons Attribuzione-Condividi allo stesso modo

Dettagli

Sistemi Operativi 1. Mattia Monga. a.a. 2008/09. Dip. di Informatica e Comunicazione Università degli Studi di Milano, Italia

Sistemi Operativi 1. Mattia Monga. a.a. 2008/09. Dip. di Informatica e Comunicazione Università degli Studi di Milano, Italia 1 Mattia Dip. di Informatica e Comunicazione Università degli Studi di Milano, Italia mattia.monga@unimi.it a.a. 2008/09 1 c 2009 M.. Creative Commons Attribuzione-Condividi allo stesso modo 2.5 Italia

Dettagli

Gestione periferiche I/O

Gestione periferiche I/O Gestione periferiche I/O Compiti del sottosistema IO Nascondere al programmatore i dettagli delle interfacce hw e dei dispositivi (utilizzo di controllori) Omogeneizzare la gestione di dispositivi diversi

Dettagli

Periferiche CPU. Misure e Sistemi Microelettronici Sistemi 6-1 SREG. Data Bus Address Bus Control Bus

Periferiche CPU. Misure e Sistemi Microelettronici Sistemi 6-1 SREG. Data Bus Address Bus Control Bus Periferiche Interface Interface Interface Interface CPU SREG CREG DREG Il processore scambia informazioni con le periferiche attraverso dei registri. Tipicamente: Control REGister; Status REGister; Data

Dettagli

GESTIONE DELLE PERIFERICHE D INGRESSO/USCITA ARGOMENTI

GESTIONE DELLE PERIFERICHE D INGRESSO/USCITA ARGOMENTI GESTIONE DELLE PERIFERICHE D INGRESSO/USCITA ARGOMENTI Compiti del sottosistema di I/O Architettura del sottosistema di I/O Gestore di un dispositivo di I/O Gestione e organizzazione dei dischi COMPITI

Dettagli

GESTIONE DELLE PERIFERICHE D INGRESSO/USCITA COMPITI DEL SOTTOSISTEMA DI I/O ARGOMENTI

GESTIONE DELLE PERIFERICHE D INGRESSO/USCITA COMPITI DEL SOTTOSISTEMA DI I/O ARGOMENTI GESTIONE DELLE PERIFERICHE D INGRESSO/USCITA ARGOMENTI Compiti del sottosistema di I/O Architettura del sottosistema di I/O Gestore di un di I/O 1. Nascondere al programmatore i dettagli delle interfacce

Dettagli

Corso di programmazione Arduino DI MALVEZZI DAVIDE

Corso di programmazione Arduino DI MALVEZZI DAVIDE Corso di programmazione Arduino DI MALVEZZI DAVIDE Argomenti Pin digitali e pin analogici Gestione di timer e bottoni Utilizzo della porta seriale Oggetto String Controllo di schermi LCD Utilizzo dell

Dettagli

GESTIONE DELLE PERIFERICHE D INGRESSO/USCITA ARGOMENTI

GESTIONE DELLE PERIFERICHE D INGRESSO/USCITA ARGOMENTI GESTIONE DELLE PERIFERICHE D INGRESSO/USCITA ARGOMENTI Compiti del sottosistema di I/O Architettura del sottosistema di I/O Gestore di un dispositivo di I/O COMPITI DEL SOTTOSISTEMA DI I/O 1. Nascondere

Dettagli

Input/output. Sistemi Operativi Lez. 32. Corso: Sistemi Operativi Danilo Bruschi A.A. 2009/2010

Input/output. Sistemi Operativi Lez. 32. Corso: Sistemi Operativi Danilo Bruschi A.A. 2009/2010 Input/output Sistemi Operativi Lez. 32 1 Ruolo del SO Le periferiche di I/O sono i dispositivi attraverso i quali un calcolatore scambia dati/ interagisce con la realtà esterna Per ogni periferica collegata

Dettagli

La gestione dei processi in Minix. Sistemi Operativi Lez. 12

La gestione dei processi in Minix. Sistemi Operativi Lez. 12 La gestione dei processi in Minix Sistemi Operativi Lez. 12 Scheduling Round robin su 16 code di priorità Quando un processo viene bloccato senza aver esaurito il suo quanto di tempo, una volta risvegliato,

Dettagli

GESTIONE DELLE PERIFERICHE D INGRESSO/USCITA. Compiti del sottosistema di I/O Architettura del sottosistema di I/O Gestore di un dispositivo di I/O

GESTIONE DELLE PERIFERICHE D INGRESSO/USCITA. Compiti del sottosistema di I/O Architettura del sottosistema di I/O Gestore di un dispositivo di I/O GESTIONE DELLE PERIFERICHE D INGRESSO/USCITA Compiti del sottosistema di I/O Architettura del sottosistema di I/O Gestore di un dispositivo di I/O Sistemi Operativi T AA 2011-2012 1 COMPITI DEL SOTTOSISTEMA

Dettagli

GESTIONE DELLE PERIFERICHE D INGRESSO/USCITA. Compiti del sottosistema di I/O Architettura del sottosistema di I/O Gestore di un dispositivo di I/O

GESTIONE DELLE PERIFERICHE D INGRESSO/USCITA. Compiti del sottosistema di I/O Architettura del sottosistema di I/O Gestore di un dispositivo di I/O GESTIONE DELLE PERIFERICHE D INGRESSO/USCITA Compiti del sottosistema di I/O Architettura del sottosistema di I/O Gestore di un dispositivo di I/O 1 COMPITI DEL SOTTOSISTEMA DI I/O 1. Nascondere al programmatore

Dettagli

GESTIONE DELLE PERIFERICHE D INGRESSO/USCITA. Compiti del sottosistema di I/O Architettura del sottosistema di I/O Gestore di un dispositivo di I/O

GESTIONE DELLE PERIFERICHE D INGRESSO/USCITA. Compiti del sottosistema di I/O Architettura del sottosistema di I/O Gestore di un dispositivo di I/O GESTIONE DELLE PERIFERICHE D INGRESSO/USCITA Compiti del sottosistema di I/O Architettura del sottosistema di I/O Gestore di un dispositivo di I/O Sistemi Operativi T AA 2011-2012 1 COMPITI DEL SOTTOSISTEMA

Dettagli

GESTIONE DELLE PERIFERICHE D INGRESSO/USCITA. Compiti del sottosistema di I/O Architettura del sottosistema di I/O Gestore di un dispositivo di I/O

GESTIONE DELLE PERIFERICHE D INGRESSO/USCITA. Compiti del sottosistema di I/O Architettura del sottosistema di I/O Gestore di un dispositivo di I/O GESTIONE DELLE PERIFERICHE D INGRESSO/USCITA Compiti del sottosistema di I/O Architettura del sottosistema di I/O Gestore di un dispositivo di I/O Sistemi Operativi T AA 2011-2012 1 COMPITI DEL SOTTOSISTEMA

Dettagli

CONTATORE/TIMER PROGRAMMABILE CTC Z80 1. Piedinatura 2. Struttura interna 4. Modo timer 5. Modo Counter 8. Programmazione del CTC 13

CONTATORE/TIMER PROGRAMMABILE CTC Z80 1. Piedinatura 2. Struttura interna 4. Modo timer 5. Modo Counter 8. Programmazione del CTC 13 CONTATORE/TIMER PROGRAMMABILE CTC Z80 1 Piedinatura 2 Struttura interna 4 Modo timer 5 Modo Counter 8 Programmazione del CTC 13 Gerarchia di priorità delle interruzioni 17 Interfacciamento 17 Contatore/Timer

Dettagli

Input/output. Sistemi Operativi Lez. 32. Corso: Sistemi Operativi Danilo Bruschi A.A. 2011/2012

Input/output. Sistemi Operativi Lez. 32. Corso: Sistemi Operativi Danilo Bruschi A.A. 2011/2012 Input/output Sistemi Operativi Lez. 32 1 Ruolo del SO Le periferiche di I/O sono i dispositivi attraverso i quali un calcolatore scambia dati/ interagisce con la realtà esterna Per ogni periferica collegata

Dettagli

Davide Gennaretti, Matteo Nicolini

Davide Gennaretti, Matteo Nicolini Seminario sui Microcontrollori Davide Gennaretti, Matteo Nicolini AA 2003-04 II Facoltà di Ingegneria Elettronica Cesena Cosa sono i microcontrollori? Piccoli computer concentrati in un chip Un Datapath

Dettagli

Il sistema delle interruzioni nel processore MC68000 (cenni)

Il sistema delle interruzioni nel processore MC68000 (cenni) Corso di Calcolatori Elettronici I A.A. 2011-2012 Il sistema delle interruzioni nel processore MC68000 (cenni) Lezione 33 Prof. Antonio Pescapè Università degli Studi di Napoli Federico II Facoltà di Ingegneria

Dettagli

Sistemi Operativi. Bruschi Martignoni Monga. La gestione. Concetti generali Comandi Interrupt Pila sw Deadlock Gestione dei deadlock

Sistemi Operativi. Bruschi Martignoni Monga. La gestione. Concetti generali Comandi Interrupt Pila sw Deadlock Gestione dei deadlock 1 Mattia Dip. di Informatica e Comunicazione Università degli Studi di Milano, Italia mattia.monga@unimi.it Lezione XXVI: a.a. 2008/09 1 c 2009 M.. Creative Commons Attribuzione-Condividi allo stesso modo

Dettagli

Architettura del calcolatore (Seconda parte)

Architettura del calcolatore (Seconda parte) Architettura del calcolatore (Seconda parte) Ingegneria Meccanica e dei Materiali Università degli Studi di Brescia Prof. Massimiliano Giacomin LINGUAGGIO E ORGANIZZAZIONE DEL CALCOLATORE Linguaggio assembly

Dettagli

GESTIONE DELLE PERIFERICHE D INGRESSO/USCITA ARGOMENTI

GESTIONE DELLE PERIFERICHE D INGRESSO/USCITA ARGOMENTI GESTIONE DELLE PERIFERICHE D INGRESSO/USCITA ARGOMENTI Compiti del sottosistema di I/O Architettura del sottosistema di I/O Gestore di un dispositivo di I/O Gestione e organizzazione dei dischi COMPITI

Dettagli

Componenti principali

Componenti principali Componenti e connessioni Capitolo 3 Componenti principali n CPU (Unità Centrale di Elaborazione) n Memoria n Sistemi di I/O n Connessioni tra loro Architettura di Von Neumann n Dati e instruzioni in memoria

Dettagli

Input/output. Sistemi Operativi Lez. 11. Corso: Sistemi Operativi Danilo Bruschi A.A. 2013/2014

Input/output. Sistemi Operativi Lez. 11. Corso: Sistemi Operativi Danilo Bruschi A.A. 2013/2014 Input/output Sistemi Operativi Lez. 11 1 Ruolo del SO Le periferiche di I/O sono i dispositivi attraverso i quali un calcolatore scambia dati/ interagisce con la realtà esterna Per ogni periferica collegata

Dettagli

GESTIONE DELLE PERIFERICHE D INGRESSO/USCITA COMPITI DEL SOTTOSISTEMA DI I/O ARGOMENTI

GESTIONE DELLE PERIFERICHE D INGRESSO/USCITA COMPITI DEL SOTTOSISTEMA DI I/O ARGOMENTI GESTIONE DELLE PERIFERICHE D INGRESSO/USCITA ARGOMENTI Compiti del sottosistema di I/O Architettura del sottosistema di I/O Gestore di un dispositivo di I/O Gestione e organizzazione dei dischi COMPITI

Dettagli

INGEGNERIA E TECNOLOGIE DEI SISTEMI DI CONTROLLO Processori per sistemi di controllo. Classificazione. I microcontrollori

INGEGNERIA E TECNOLOGIE DEI SISTEMI DI CONTROLLO Processori per sistemi di controllo. Classificazione. I microcontrollori INGEGNERIA E TECNOLOGIE DEI SISTEMI DI CONTROLLO per sistemi di controllo Prof. Carlo Rossi DEIS - Università di Bologna Tel: 051 2093020 email: crossi@deis.unibo.it Classificazione General Purpose CISC

Dettagli

Architettura dei sistemi di elaborazione (Input/Output parte 2)

Architettura dei sistemi di elaborazione (Input/Output parte 2) Architettura dei sistemi di elaborazione (Input/Output parte 2) Gestione dell I/O Il processore può comunicare con uno o più dispositivi esterni secondo schemi temporali imprevedibili che dipendono dalle

Dettagli

GESTIONE DELLE PERIFERICHE D INGRESSO/USCITA ARGOMENTI

GESTIONE DELLE PERIFERICHE D INGRESSO/USCITA ARGOMENTI GESTIONE DELLE PERIFERICHE D INGRESSO/USCITA ARGOMENTI Compiti del sottosistema di I/O Architettura del sottosistema di I/O Gestore di un dispositivo di I/O Gestione di unità disco COMPITI DEL SOTTOSISTEMA

Dettagli

Componenti principali. Programma cablato. Architettura di Von Neumann. Programma cablato. Cos e un programma? Componenti e connessioni

Componenti principali. Programma cablato. Architettura di Von Neumann. Programma cablato. Cos e un programma? Componenti e connessioni Componenti principali Componenti e connessioni Capitolo 3 CPU (Unita Centrale di Elaborazione) Memoria Sistemi di I/O Connessioni tra loro 1 2 Architettura di Von Neumann Dati e instruzioni in memoria

Dettagli

Componenti e connessioni. Capitolo 3

Componenti e connessioni. Capitolo 3 Componenti e connessioni Capitolo 3 Componenti principali CPU (Unità Centrale di Elaborazione) Memoria Sistemi di I/O Connessioni tra loro Architettura di Von Neumann Dati e instruzioni in memoria (lettura

Dettagli

Chiamata di procedura remota

Chiamata di procedura remota Con gli strumenti gia` visti, si puo` realizzare come segue: lato chiamante: send asincrona immediatamente seguita da una receive lato chiamato: una receive seguita, al termine dell azione richiesta, da

Dettagli

L architettura del calcolatore (Seconda parte)

L architettura del calcolatore (Seconda parte) L architettura del calcolatore (Seconda parte) Percorso di Preparazione agli Studi di Ingegneria Università degli Studi di Brescia Docente: Massimiliano Giacomin ORGANIZZAZIONE DEL CALCOLATORE: RICHIAMI

Dettagli

Sistemi Operativi. Bruschi Martignoni Monga. La gestione. MINIX Architettura I device driver Block device. Memory driver Implementazione

Sistemi Operativi. Bruschi Martignoni Monga. La gestione. MINIX Architettura I device driver Block device. Memory driver Implementazione 1 Mattia Lezione XXVII: Dip. di Informatica e Comunicazione Università degli Studi di Milano, Italia mattia.monga@unimi.it a.a. 2008/09 1 c 2009 M.. Creative Commons Attribuzione-Condividi allo stesso

Dettagli

Chiamata di procedura remota

Chiamata di procedura remota Chiamata di procedura remota Meccanismo di comunicazione e sincronizzazione tra processi in cui un processo che richiede un servizio ad un altro processo rimane sospeso fino al completamento del servizio

Dettagli

INGEGNERIA E TECNOLOGIE DEI SISTEMI DI CONTROLLO Processori per sistemi di controllo

INGEGNERIA E TECNOLOGIE DEI SISTEMI DI CONTROLLO Processori per sistemi di controllo INGEGNERIA E TECNOLOGIE DEI SISTEMI DI CONTROLLO Processori per sistemi di controllo Prof. Carlo Rossi DEIS - Università di Bologna Tel: 051 2093020 email: crossi@deis.unibo.it Classificazione Processori

Dettagli

Struttura dei Sistemi di Calcolo

Struttura dei Sistemi di Calcolo Struttura dei Sistemi di Calcolo Operazioni dei sistemi di calcolo Struttura dell I/O Struttura della memoria Gerarchia delle memorie Protezione hardware Invocazione del Sistema Operativo 1 Architettura

Dettagli

La gestione dei processi in Minix

La gestione dei processi in Minix La gestione dei processi in Minix Sistemi Operativi Lez. 28 Scheduling Round robin su 16 code di priorità Quando un processo viene bloccato senza aver esaurito il suo quanto di tempo, una volta risvegliato,

Dettagli

Sistemi a microprocessore

Sistemi a microprocessore Sistemi a microprocessore Programma: Segnali analogici e digitali Uso di segnali digitali per la rappresentazione dei numeri interi La memoria e la CPU I programmi in linguaggio macchina La connessione

Dettagli

Sistemi Operativi 1. Lezione III: Concetti fondamentali. Mattia Monga. 7 marzo 2008

Sistemi Operativi 1. Lezione III: Concetti fondamentali. Mattia Monga. 7 marzo 2008 1 Dip. di Informatica e Comunicazione Università degli Studi di Milano, Italia mattia.monga@unimi.it 7 marzo 2008 1 c 2008 M. Monga. Creative Commons Attribuzione-Condividi allo stesso modo 2.5 Italia

Dettagli

Sistemi Operativi 1. Mattia Monga. 7 marzo Dip. di Informatica e Comunicazione Università degli Studi di Milano, Italia

Sistemi Operativi 1. Mattia Monga. 7 marzo Dip. di Informatica e Comunicazione Università degli Studi di Milano, Italia 1 Dip. di Informatica e Comunicazione Università degli Studi di Milano, Italia mattia.monga@unimi.it 7 marzo 2008 1 c 2008 M. Monga. Creative Commons Attribuzione-Condividi allo stesso modo 2.5 Italia

Dettagli

Trasparenze del Corso di Sistemi Operativi

Trasparenze del Corso di Sistemi Operativi Università di Udine Facoltà di Scienze MM.FF.NN. Laurea in Informatica A.A. 2018/19 Trasparenze del Corso di Sistemi Operativi Marina Lenisa Università di Udine Copyright c 2000-04 Marino Miculan (miculan@dimi.uniud.it)

Dettagli

Interruzioni parte prima. Inquadramento del problema

Interruzioni parte prima. Inquadramento del problema Corso di Calcolatori Elettronici I A.A. 2010-2011 Interruzioni parte prima Lezione 32 Prof. Roberto Canonico Università degli Studi di Napoli Federico II Facoltà di Ingegneria Corso di Laurea in Ingegneria

Dettagli

Arduino Ciclo while, do while, for

Arduino Ciclo while, do while, for Arduino Ciclo while, do while, for I linguaggi di programmazione forniscono varie strutture di controllo che consentono percorsi di esecuzione più complicati. Una istruzione loop (ciclo) ci consente di

Dettagli

Il Theremin con il microcontrollore

Il Theremin con il microcontrollore Il Theremin con il microcontrollore Possiamo costruire uno strumento simile al Theremin utilizzando un dispositivi programmabile come il microcontrollore e un sensore di distanza (ultrasuoni). A secondo

Dettagli

Gestione software Il meccanismo delle interruzioni - 3

Gestione software Il meccanismo delle interruzioni - 3 Il meccanismo delle interruzioni - 3 Il valore emesso sul canale dal controllore delle interruzioni designa il servizio richiesto alla CPU Tale valore è un indice nel vettore delle interruzioni, contenente

Dettagli

il Nucleo e la gestione dei processi

il Nucleo e la gestione dei processi il Nucleo e la gestione dei processi 1. Programmi, processi e risorse Differenza fra programmi e processi Il Programma rappresenta la descrizione del procedimento logico (algoritmo) che deve essere eseguito

Dettagli

Sistemi Operativi Anno Accademico 2011/2012. Segnali: Interrupt software per la gestione di eventi asincroni

Sistemi Operativi Anno Accademico 2011/2012. Segnali: Interrupt software per la gestione di eventi asincroni Anno Accademico 2011/2012 Segnali: Interrupt software per la gestione di eventi asincroni Concetto di segnale Un segnale è un interrupt software Un segnale può essere generato da un processo utente o dal

Dettagli

Interruzioni. Inquadramento del problema

Interruzioni. Inquadramento del problema Corso di Calcolatori Elettronici I Interruzioni Prof. Roberto Canonico Università degli Studi di Napoli Federico II Dipartimento di Ingegneria Elettrica e delle Tecnologie dell Informazione Corso di Laurea

Dettagli

GESTIONE DELLE PERIFERICHE D INGRESSO/USCITA ARGOMENTI. Compiti del sottosistema di I/O

GESTIONE DELLE PERIFERICHE D INGRESSO/USCITA ARGOMENTI. Compiti del sottosistema di I/O GESTIONE DELLE PERIFERICHE D INGRESSO/USCITA ARGOMENTI Compiti del sottosistema di I/O Architettura del sottosistema di I/O Gestore di un dispositivo di I/O Gestione e organizzazione dei dischi 1 COMPITI

Dettagli

Il problema dello I/O e gli Interrupt. Appunti di Sistemi per la cl. 4 sez. D A cura del prof. Ing. Mario Catalano

Il problema dello I/O e gli Interrupt. Appunti di Sistemi per la cl. 4 sez. D A cura del prof. Ing. Mario Catalano Il problema dello I/O e gli Interrupt Appunti di Sistemi per la cl. 4 sez. D A cura del prof. Ing. Mario Catalano Il Calcolatore e le periferiche Periferica Decodifica Indirizzi Circuiti di Controllo Registri

Dettagli

Input/output. Sistemi Operativi Lez.14. Corso: Sistemi Operativi Danilo Bruschi A.A. 2006/2007

Input/output. Sistemi Operativi Lez.14. Corso: Sistemi Operativi Danilo Bruschi A.A. 2006/2007 Input/output Sistemi Operativi Lez.14 Ruolo del SO Le periferiche di I/O sono i dispositivi attraverso i quali un calcolatore scambia dati/interagisce con la realtà esterna Per ogni periferica collegata

Dettagli

Input/Output. Input/Output

Input/Output. Input/Output Massimo VIOLANTE Politecnico di Torino Dipartimento di Automatica e Informatica Sommario Organizzazione di sistema; Trasferimento dati; Gestione I/O. 2 M. Violante 1.1 Organizzazione di sistema Memoria

Dettagli

Pag. 1. Il Nucleo del sistema operativo (la gestione dei processi)

Pag. 1. Il Nucleo del sistema operativo (la gestione dei processi) shell Programmi utente Modo utente Il Nucleo del sistema operativo (la gestione dei processi) Interfaccia delle chiamate di sistema File system Gestione processi Device driver Gestione memoria HARDWARE

Dettagli

Calcolatori Elettronici T Ingegneria Informatica 04 Interruzioni

Calcolatori Elettronici T Ingegneria Informatica 04 Interruzioni Calcolatori Elettronici T Ingegneria Informatica 04 Interruzioni Stefano Mattoccia Gestione eventi con una CPU: polling In un sistema a microprocessore è di fondamentale importanza poter gestire eventi

Dettagli

Signalling (IPC) Signalling (segnalazione)

Signalling (IPC) Signalling (segnalazione) Signalling (IPC) Signalling (segnalazione) è un particolare tipo di Inter-Process Communications che permettere di sincronizzare dei processi spedendo e ricevendo dei messaggi minimali che informano dell'accadimento

Dettagli

Lezione XII: La gestione delle eccezioni in MINIX

Lezione XII: La gestione delle eccezioni in MINIX 1 Dip. di Informatica e Comunicazione Università degli Studi di Milano, Italia mattia.monga@unimi.it 4 aprile 2008 1 c 2008 M. Monga. Creative Commons Attribuzione-Condividi allo stesso modo 2.5 Italia

Dettagli

MAC1 Simulatore di Microprocessore

MAC1 Simulatore di Microprocessore MAC1 Simulatore di Microprocessore INTRODUZIONE Architettura del MAC-1 - Indirizzabilità della memoria a 16 bit ( 64 Kb) - Indirizzabilità diretta a 12 bit (limitata ai primi 4 Kb) - 16 registri a 16 bit

Dettagli

Comunicazione con sincronizzazione estesa

Comunicazione con sincronizzazione estesa Comunicazione con sincronizzazione estesa 1 Chiamate di procedura remota e rendez-vous Chiamata di procedura remota Rendez vous Linguaggio ADA 2 Chiamata di operazione remota Meccanismo di comunicazione

Dettagli

Informatica B a.a 2005/06 (Meccanici 4 squadra) PhD. Ing. Michele Folgheraiter

Informatica B a.a 2005/06 (Meccanici 4 squadra) PhD. Ing. Michele Folgheraiter Informatica B a.a 2005/06 (Meccanici 4 squadra) Scaglione: da PO a ZZZZ PhD. Ing. Michele Folgheraiter Funzionamento macchina di von Neumann clock Memoria Centrale: Tutta l informazione prima di essere

Dettagli

Struttura dei Sistemi di Calcolo

Struttura dei Sistemi di Calcolo Università di Udine Facoltà di Scienze MM.FF.NN. A.A. 2009-2010 Copyright c 2000 04 Marino Miculan (miculan@dimi.uniud.it) La copia letterale e la distribuzione di questa presentazione nella sua integrità

Dettagli

Esercizio sulla gestione di file in Unix. Sistemi Operativi T AA

Esercizio sulla gestione di file in Unix. Sistemi Operativi T AA Esercizio sulla gestione di file in Unix Sistemi Operativi T AA 2011-2012 1 Esercizio Si vuole realizzare un programma C che, utilizzando le system call di Unix, realizzi uno schema di comunicazione tra

Dettagli

LABORATORIO DI SISTEMI OPERATIVI

LABORATORIO DI SISTEMI OPERATIVI LABORATORIO DI SISTEMI OPERATIVI Corso di Laurea Triennale in Ingegneria Informatica A.A. 2018/2019 Guglielmo Cola Email: g.cola@iet.unipi.it Web: iet.unipi.it/g.cola Processi in Unix/Linux (parte II)

Dettagli

Corso di Calcolatori Elettronici I. Interruzioni. Prof. Roberto Canonico

Corso di Calcolatori Elettronici I. Interruzioni. Prof. Roberto Canonico Corso di Calcolatori Elettronici I Interruzioni Prof. Roberto Canonico Università degli Studi di Napoli Federico II Dipartimento di Ingegneria Elettrica e delle Tecnologie dell Informazione Corso di Laurea

Dettagli

Esercizio 1. Progettare la PO a partire dal microprogramma eseguibile e successivamente:

Esercizio 1. Progettare la PO a partire dal microprogramma eseguibile e successivamente: Architettura degli Elaboratori Prima prova di verifica intermedia - A.A. 2014-2015 Riportare Nome, Cognome, Numero di matricola e Corso di appartenenza su tutti i fogli consegnati. I risultati saranno

Dettagli

Introduzione. Caratteristiche generali. Sistemi e Tecnologie per l'automazione LS. HW per elaborazione digitale in automazione: Microcontrollori e DSP

Introduzione. Caratteristiche generali. Sistemi e Tecnologie per l'automazione LS. HW per elaborazione digitale in automazione: Microcontrollori e DSP Laurea Specialistica in Ingegneria Informatica Laurea Specialistica in Ingegneria Elettronica e delle Telecomunicazioni Sistemi e Tecnologie per l'automazione LS HW per elaborazione digitale in automazione:

Dettagli

Sistemi e Tecnologie per l'automazione LS. HW per elaborazione digitale in automazione: Microcontrollori e DSP

Sistemi e Tecnologie per l'automazione LS. HW per elaborazione digitale in automazione: Microcontrollori e DSP Laurea Specialistica in Ingegneria Informatica Laurea Specialistica in Ingegneria Elettronica e delle Telecomunicazioni Sistemi e Tecnologie per l'automazione LS HW per elaborazione digitale in automazione:

Dettagli

Sistemi Operativi. Sistemi I/O SISTEMI DI INPUT/OUTPUT. Hardware di I/O. Interfaccia di I/O per le applicazioni. Sottosistema per l I/O del kernel

Sistemi Operativi. Sistemi I/O SISTEMI DI INPUT/OUTPUT. Hardware di I/O. Interfaccia di I/O per le applicazioni. Sottosistema per l I/O del kernel SISTEMI DI INPUT/OUTPUT 10.1 Sistemi I/O Hardware di I/O Interfaccia di I/O per le applicazioni Sottosistema per l I/O del kernel Trasformazione delle richieste di I/O Stream Prestazioni 10.2 I/O Hardware

Dettagli

Esercizio 1. Scrivere un programma C in cui: Il master thread:

Esercizio 1. Scrivere un programma C in cui: Il master thread: Scrivere un programma C in cui: Il master thread: Esercizio 1 Inizializza una variabile globale a=0 crea un thread produttore ed un thread consumatore. In un ciclo infinito visualizza il valore di a. Il

Dettagli

LA GESTIONE DELLA I/O

LA GESTIONE DELLA I/O LA GESTIONE DELLA I/O Il S.O. È l interfaccia tra l hardware e i programmi che effettuano richieste di I/O Sottosistema di I/O strutturato in moduli chiamati DRIVER uno per ogni dispositivo I Driver rendono

Dettagli

Sistemi Operativi SISTEMI DI INPUT/OUTPUT. D. Talia - UNICAL. Sistemi Operativi 10.1

Sistemi Operativi SISTEMI DI INPUT/OUTPUT. D. Talia - UNICAL. Sistemi Operativi 10.1 SISTEMI DI INPUT/OUTPUT 10.1 Sistemi I/O Hardware di I/O Interfaccia di I/O per le applicazioni Sottosistema per l I/O del kernel Trasformazione delle richieste di I/O Stream Prestazioni 10.2 I/O Hardware

Dettagli

Lezione E12. Sistemi operativi open-source, embedded e real-time

Lezione E12. Sistemi operativi open-source, embedded e real-time Lezione E12 Sistemi operativi open-source, embedded e real-time 17 dicembre 2013 Dipartimento di Ingegneria Civile e Ingegneria Informatica Università degli Studi di Roma Tor Vergata SOSERT 13 E12.1 Di

Dettagli

Sistemi Operativi 1. Mattia Monga. a.a. 2008/09. Dip. di Informatica e Comunicazione Università degli Studi di Milano, Italia

Sistemi Operativi 1. Mattia Monga. a.a. 2008/09. Dip. di Informatica e Comunicazione Università degli Studi di Milano, Italia 1 Mattia Dip. di Informatica e Comunicazione Università degli Studi di Milano, Italia mattia.monga@unimi.it a.a. 2008/09 1 c 2009 M.. Creative Commons Attribuzione-Condividi allo stesso modo 2.5 Italia

Dettagli

C UDP in Windows p53 - variante 1

C UDP in Windows p53 - variante 1 // UDPclient.c C UDP in Windows p53 - variante 1 /* Testo del problema Il processo client invia la stringa "INVIAMI UN NUMERO" diverse volte in un intervallo di tempo di 1 secondo ad un processo server

Dettagli

Processi Aspetti avanzati. Terminazione Segnali

Processi Aspetti avanzati. Terminazione Segnali Processi Aspetti avanzati Terminazione Segnali Inizializzazione e terminazione di un programma Dal punto di vista dell'utente, ogni programma "inizia" dalla funzione main() E' la prima funzione utente

Dettagli

Principali periferiche

Principali periferiche Principali periferiche Timer Periferica per il conteggio esatto del tempo Esempio: 8254 3 contatori "indietro" da 16 bit: si può impostare un valore iniziale fino a 0xFFFF in ciascuno dei tre contatori;

Dettagli

Sistemi Operativi. Lezione 3 Processi e Thread

Sistemi Operativi. Lezione 3 Processi e Thread Lezione 3 Processi e Thread Introduzione Sino ai sistemi batch la CPU di un sistema svolgeva un attività, la portava a termine e solo allora avviava un altra attività Con l avvento della multiprogrammazione

Dettagli

Sistemi di Elaborazione: esercizio con il D12

Sistemi di Elaborazione: esercizio con il D12 Sistemi di Elaborazione: esercizio con il D12 Un sistema basato su PIC18F8720 a 24 MHz è dotato di 32 KB di EPROM agli indirizzi alti e 64 KB di RAM statica agli indirizzi bassi. Il sistema è dotato inoltre

Dettagli

Sistemi operativi. Lez. 9: primitive per la concorrenza i semafori

Sistemi operativi. Lez. 9: primitive per la concorrenza i semafori Sistemi operativi Lez. 9: primitive per la concorrenza i semafori Disabilitazione interrupt Due processi possono trovarsi in sezione critica simultaneamente solo perché chi vi è entrato per primo è stato

Dettagli

Struttura di timekeeping. Francesco Famulari

Struttura di timekeeping. Francesco Famulari Struttura di timekeeping Francesco Famulari Argomenti Tutto il codice esaminato si riferisce al kernel vanilla Linux 3.9.4. Gli argomenti presentati sono: Passaggio alla nuova architettura del time system

Dettagli

Il registratore digitale

Il registratore digitale Il registratore digitale Nella pratica di laboratorio capita spesso di dover registrare segnali lentamente variabili per intervalli di tempo lunghi. Lo scopo della seconda esperienza è quello di realizzare

Dettagli

Informatica A (per gestionali) A.A. 2004/2005. Esercizi C e diagrammi a blocchi. Preparazione prima prova intermedia

Informatica A (per gestionali) A.A. 2004/2005. Esercizi C e diagrammi a blocchi. Preparazione prima prova intermedia Informatica A (per gestionali) A.A. 2004/2005 Esercizi C e diagrammi a blocchi Preparazione prima prova intermedia Indice 1 Array... 3 1.1 Filtraggio...3 1.2 Trasformazione...3 2 Struct e array... 5 2.1

Dettagli

Vogliamo far lampeggiare i led collegati come in figura ai bit della porta D del PIC 18F8722 presente sulla demo board in dotazione al laboratorio.

Vogliamo far lampeggiare i led collegati come in figura ai bit della porta D del PIC 18F8722 presente sulla demo board in dotazione al laboratorio. Lampeggio di 8 led Vogliamo far lampeggiare i led collegati come in figura ai bit della porta D del PIC 18F8722 presente sulla demo board in dotazione al laboratorio. Bit7 Bit6 Bit5 Bit4 Bit3 Bit2 Bit1

Dettagli

Corso di Calcolatori Elettronici I Interruzioni ing. Alessandro Cilardo

Corso di Calcolatori Elettronici I Interruzioni ing. Alessandro Cilardo Corso di Calcolatori Elettronici I Interruzioni ing. Alessandro Cilardo Corso di Laurea in Ingegneria Biomedica Gestione di eventi Ciclo base del processore: le istruzioni sono eseguite una dopo l altra

Dettagli

Sistemi Operativi (M. Cesati)

Sistemi Operativi (M. Cesati) Sistemi Operativi (M. Cesati) Compito scritto del 17 febbraio 2015 Nome: Matricola: Corso di laurea: Cognome: Crediti da conseguire: 5 6 9 Scrivere i dati richiesti in stampatello. Al termine consegnare

Dettagli

Sincronizzazione. Soluzioni hardware Stefano Quer Dipartimento di Automatica e Informatica Politecnico di Torino

Sincronizzazione. Soluzioni hardware Stefano Quer Dipartimento di Automatica e Informatica Politecnico di Torino Sincronizzazione Soluzioni hardware Stefano Quer Dipartimento di Automatica e Informatica Politecnico di Torino 2 Soluzioni hardware Le soluzioni hardware al problema della SC possono essere classificate

Dettagli

Architettura del Calcolatore

Architettura del Calcolatore Giuseppe Manco Lezione 3 17 Ottobre 2003 Architettura del calcolatore Il calcolatore è uno strumento programmabile per la rappresentazione, la memorizzazione e l elaborazione delle informazioni un calcolatore

Dettagli

Laboratorio Informatica Classe 4A Serale Venerdì 18/02/2011. Gruppo. Cognome Riontino Nome Raffaele. Cognome Nome

Laboratorio Informatica Classe 4A Serale Venerdì 18/02/2011. Gruppo. Cognome Riontino Nome Raffaele. Cognome Nome Laboratorio Informatica Classe 4A Serale Venerdì 18/02/2011 Gruppo Cognome Riontino Nome Raffaele Cognome Nome TRACCIA 2 ARGOMENTO: LISTE TEMPO: 4h 1. Utilizzando Typedef definire un nuovo tipo di dato

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

PARTE 1 CONCETTI INTRODUTTIVI 2

PARTE 1 CONCETTI INTRODUTTIVI 2 PARTE 1 CONCETTI INTRODUTTIVI 2 1.1 CHE COSA È UN S.O. 2 1.2 EVOLUZIONE STORICA DEI S.O. 2 1.2.1 SINGLE USER SYSTEMS 2 1.2.2 SISTEMI BATCH 2 1.2.3 SISTEMI TIME SHARING 3 1.2.4 SISTEMI REAL TIME 3 1.3 SISTEMI

Dettagli

Variabili e Funzioni. Informatica 1 / 19

Variabili e Funzioni. Informatica 1 / 19 Variabili e Funzioni Informatica 1 / 19 Programmi C e Un programma C e composto da funzioni e variabili Variabile: memorizza valori appartenenti ad un insieme di definizione (dipendente dal tipo) Funzione:

Dettagli

Fondamenti di Informatica

Fondamenti di Informatica Esercizio 1. (3 punti) Fondamenti di Informatica PROVA SCRITTA 25 gennaio 2016 Data l istruzione assembler MIPS add $1,$2,$3, memorizzata all interno della memoria istruzioni della CPU, descrive la sua

Dettagli

Segnali. Tecnica di comunicazione asincrona tra processi. Si può solo inviare uno tra un insieme fissato di segnali

Segnali. Tecnica di comunicazione asincrona tra processi. Si può solo inviare uno tra un insieme fissato di segnali Segnali ed allarmi Segnali Tecnica di comunicazione asincrona tra processi Si può solo inviare uno tra un insieme fissato di segnali Il destinatario viene interrotto, e si salta ad una procedura specifica

Dettagli

Sistemi Operativi (M. Cesati)

Sistemi Operativi (M. Cesati) Sistemi Operativi (M. Cesati) Compito scritto del 25 settembre 2014 Nome: Matricola: Corso di laurea: Cognome: Crediti da conseguire: 5 6 9 Scrivere i dati richiesti in stampatello. Al termine consegnare

Dettagli

Misure di intervalli temporali

Misure di intervalli temporali Misure di intervalli temporali Abbiamo visto che il computer ci mette a disposizione un orologio con la precisione di 1 µs (accessibile tramite la routine gettimeofday). Abbiamo usato questo orologio per

Dettagli

Lezione XXVII: La gestione dell I/O in MINIX

Lezione XXVII: La gestione dell I/O in MINIX 1 Dip. di Informatica e Comunicazione Università degli Studi di Milano, Italia mattia.monga@unimi.it 20 maggio 2008 1 c 2008 M. Monga. Creative Commons Attribuzione-Condividi allo stesso modo 2.5 Italia

Dettagli

Sistemi Operativi 1. Mattia Monga. 20 maggio Dip. di Informatica e Comunicazione Università degli Studi di Milano, Italia

Sistemi Operativi 1. Mattia Monga. 20 maggio Dip. di Informatica e Comunicazione Università degli Studi di Milano, Italia 1 Dip. di Informatica e Comunicazione Università degli Studi di Milano, Italia mattia.monga@unimi.it 20 maggio 2008 1 c 2008 M. Monga. Creative Commons Attribuzione-Condividi allo stesso modo 2.5 Italia

Dettagli

Sistemi Operativi. La gestione delle risorse

Sistemi Operativi. La gestione delle risorse Sistemi Operativi La gestione delle risorse Introduzione Il sistema operativo ha il compito di fornire la gestione dell hardware ai programmi dell utente. Utente utilizza i programmi applicativi Programmi

Dettagli

IL SISTEMA DELLE INTERRUZIONI

IL SISTEMA DELLE INTERRUZIONI IL SISTEMA DELLE INTERRUZIONI CORSO DI CALCOLATORI ELETTRONICI I CdL Ingegneria Elettronica (A-I) ICAR Consiglio Nazionale delle Ricerche DIS - Università degli Studi di Napoli Federico II Supporti didattici

Dettagli