Misure di intervalli temporali
|
|
- Vittorio Ilario Vecchio
- 6 anni fa
- Visualizzazioni
Transcript
1 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 memorizzare il tempo in cui abbiamo eseguito le misure con il multimetro. È però ancora più utile eseguire misure di intervalli temporali, sia nel caso di fenomeni ripetitivi (ad esempio il periodo di oscillazione di un pendolo, la frequenza di un sistema oscillante) che nel caso di fenomeni singoli o stocastici (il tempo di caduta di un grave, l intervallo tra il passaggio di due raggi cosmici). Laboratorio di Calcolo B 131
2 Reazione ad un evento Come prima cosa dobbiamo essere capaci di comunicare al computer che è successo qualcosa. Un modo di farlo è utilizzare le linee di ingresso della porta parallela: il passaggio da 0 a 1 di una di tali linee sarà l evento di cui vogliamo misurare il timing. Sarà quindi necessario trasformare l evento fisico che ci interessa nella (rapida) transizione di una tensione da 0 a 5 Volts (trasduzione). Dal punto di vista del computer, si dovranno semplicemente leggere i bits della locazione 0x379, cui corrisponde il device /dev/pp1 (in modo analogo, il device /dev/pp0 usato per le 8 linee di output corrisponde all indirizzo di memoria 0x378). Soltanto i bits 3,4,5,6 e 7 sono utili, e corrispondono rispettivamente ai segnali Error, Select, Paper Out, Ack e Busy; noi useremo Ack. Laboratorio di Calcolo B 132
3 L oscillatore Per i nostri esperimenti useremo un oscillatore basato sul circuito integrato 555. Non sono importanti i dettagli del suo funzionamento: basta sapere che il 555 induce continuamente una carica del condensatore C attraverso R A ed R B seguita da una scarica attraverso R B. L uscita rimane al valore 0 V per un tempo t L e quindi a +5 V per un tempo t H. +Vcc RESET t H t L R A R B DISCH TRIG 555 OUT V out THRES V C C t H = (R A +R B )C t L = R B C Laboratorio di Calcolo B 133
4 Il metodo del polling Il metodo del polling è molto intuitivo: si chiede in continuazione al dispositivo se è successo qualcosa (nel nostro caso una transizione 0-1); se la risposta è no si continua, se è sì si analizza l evento (nel nostro caso si misura la distanza temporale dall evento precedente, in modo da determinare il periodo di oscillazione del nostro oscillatore). pstat = open("/dev/pp1", O_RDONLY); for (i=0; i<n_meas; i++) { old = 1; cc = 0; while(1) { read(pstat,&c,1); if ( (c & 0x40)!= 0) { if (old == 0) { if (cc == 0) { gettimeofday(&t,null); cc = 1; else { gettimeofday(&t1,null); dt = delta_t(t1,t); break; old = 1; else { old = 0; Laboratorio di Calcolo B 134
5 Difetti del polling Il polling costituisce una buona tecnica nel caso di una macchina single process single user, ovvero una macchina che non ha null altro da fare che interrogare il dispositivo. Nella realtà però un computer esegue molte operazioni allo stesso tempo, ed alcune di queste (in particolare tutte quelle che hanno a che fare con la gestione dei dispositivi esterni e del sistema) hanno priorità maggiore rispetto ai processi dell utente. Di conseguenza tali processi possono venire interrotti in qualunque momento, anche in funzione del carico della macchina, e ciò degrada la risoluzione della misura temporale. Inoltre il continuo accesso al device consuma tutte le risorse del computer, e gli impedisce di fare qualcosa di utile durante l attesa dell evento. Laboratorio di Calcolo B 135
6 Il kernel e lo scheduler Nei computers multi-process, la CPU esegue un programma detto kernel che ha il compito di gestire il dialogo con i dispositivi esterni (tramite i device drivers) e di coordinare (attraverso lo scheduler) l esecuzione dei processi utente. Lo scheduler attiva a turno i diversi processi che chiedono di usare la CPU, ma prima di farlo attiva un timer; la routine di handling del timer restituisce il controllo allo scheduler, che seleziona un nuovo processo utente. Interrup t Handler Device Scheduler Device Driver Kernel User Process User Process User Process User Process Laboratorio di Calcolo B 136
7 L interrupt Quando un dispositivo deve dialogare con la CPU, attira la sua attenzione utilizzando un segnale digitale detto interrupt. La CPU reagisce eseguendo, il più rapidamente possibile, la routine di interrupt handling definita per quel segnale. L interrupt handler ha le seguenti caratteristiche: Non può essere a sua vola interrotto: gli altri interrupt vengono ritardati, l interrupt in corso di gestione viene disabilitato. L esecuzione dell handler deve essere rapida, per non perdere altri interrupts. Di solito solo le operazioni indispensabili vengono realmente eseguite nell handler (tophalf), mentre quelle meno urgenti vengono eseguite (ed eventualmente accorpate) in una routine interrompibile che viene detta bottom-half; Le routines del kernel possono disabilitare temporaneamente la gestione degli interrupts, con lo scopo di evitare conflitti nella gestione di variabili condivise con gli interrupt handlers; cioè provoca piccoli ritardi nell esecuzione degli handlers (latenza); Laboratorio di Calcolo B 137
8 Un interrupt handler per la porta parallela Il segnale Ack della parallela può anche mandare un interrupt alla CPU. Utilizzerete un device (/dev/ppint) che si comporta nella seguente maniera: In scrittura, riceve il numero di interrupts che devono essere eseguiti ed abilita la porta parallela al loro invio. L interrupt handler che viene installato registra il tempo di arrivo di ciascuno degli interrupts, e li disabilita quando ne ha ricevuto la quantità prevista. In lettura il device restituisce il tempo (à la gettimeofday) di arrivo degli interrupts, permettendo così una misura del periodo. Laboratorio di Calcolo B 138
9 void pp_th_interrupt(int irq, void *dev_id, struct pt_regs *regs) { if (tv_head < (tv_data + n_timeval) ) { do_gettimeofday(tv_head); /* save the interrupt time */ tv_head++; if (tv_head == (tv_data + n_timeval) ) { outb_p(0x00, pp_base+2); /* disable the interrupts */ /* Queue the bottom-half */ queue_task_irq_off(&pp_task, &tq_immediate); mark_bh(immediate_bh); pp_th_count++; /* record that an interrupt arrived */ /* Install the interrupt handler */ request_irq(pp_irq, pp_th_interrupt, SA_INTERRUPT, pp-th", NULL); Laboratorio di Calcolo B 139
10 Utilizzo di /dev/ppint struct timeval t[250]; char c,tim[17]; pi = open("/dev/ppint",o_rdwr); for (j=0; j<10; j++) { c = 250; write(pi,&c,1); for (i=0; i<250; i++) { read(pi,tim,16); tim[16] = 0; sscanf(tim,"%d.%d",&(t[i].tv_sec),&(t[i].tv_usec)); for (i=1; i<250; i++) { HFILL(101,delta_t(t[i-1],t[i]),0.,1.); close (par); Vengono richieste 250 misure Vengono letti e decodificati i dati Istogramma dei periodi Laboratorio di Calcolo B 140
11 Esercitazione in laboratorio Esercitazione in laboratorio Dovete realizzare un programma che esegua la misura del periodo di un segnale ripetitivo applicato all ingresso ACK della porta parallela con i metodi del polling e dell interrupt. Il programma dovrebbe essere facile da realizzare. Però è importante utilizzarlo bene per capire la differenza tra i due metodi: dovete analizzare un intervallo piuttosto ampio di frequenze di ingresso (diciamo da 100 ms a 5 µs) perché le differenze tra i due metodi diventano maggiori all aumentare della frequenza. Dovete ripetere le misura molte volte e fare degli istogrammi, in modo da essere in grado di stimare non solo valore medio e varianza, ma anche la popolazione delle code (ovvero l errore massimo che potete commettere). Infine dovete ripetere le misure in condizioni di CPU sovraccarica (ad esempio facendo girare contemporaneamente un programma che esegue un calcolo in loop). Laboratorio di Calcolo B 141
12 Consigli per il programma Utilizzate due functions separate per le due misure, e fate in modo che entrambe utilizzino la medesima function per l analisi dei dati (istogrammazione, calcolo di media e varianza, calcolo dell errore massimo). Siccome i tempi vengono sempre restituiti nel formato di gettimeofday avrete anche bisogno di una function che calcoli la differenza tra due tempi espressi in questo formato. Visto che le misure a periodi lunghi prendono molto tempo potrebbe essere una buona idea di aggiornare gli istogrammi e le misure in tempo reale, eventualmente aggiustando in modo dinamico la scala dell istogramma. Laboratorio di Calcolo B 142
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
DettagliIl 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
DettagliSistemi 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
DettagliSistemi 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
DettagliSistemi 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
DettagliInterrupt-Driven I/O Gli Interrupts sono segnali hardware: - generati da device periferici es. fine di un operazione di I/O -oppure generati dalla CPU, a fronte di eccezioni i es. divisione per zero, stack
DettagliPeriferiche 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
DettagliSincronizzazione. 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
DettagliCognome: Nome: Matricola: Sistemi Operativi A.A , prova scritta del 25 settembre 2008.
ognome: Nome: Matricola: Sistemi Operativi A.A. 2007-2008, prova scritta del 25 settembre 2008. Usa questa pagina per la brutta, staccala, non consegnarla. Sistemi Operativi A.A. 2007-2008, prova scritta
DettagliComponenti 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
DettagliUniversità degli Studi di Cassino
Corso di Gestione eccezioni nel MIPS Interruzioni Anno Accademico 2004/2005 Francesco Tortorella Modi di esecuzione user / kernel Due modi di esecuzione: User kernel Per ognuno dei due modi di esecuzione
DettagliGESTIONE 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
DettagliComponenti 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
DettagliModi di esecuzione user / kernel
Corso di Gestione eccezioni nel MIPS Interruzioni Anno Accademico 2006/2007 Francesco Tortorella Modi di esecuzione user / kernel Due modi di esecuzione: User kernel Per ognuno dei due modi di esecuzione
DettagliUniversità di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A Pietro Frasca.
Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2016-17 Pietro Frasca Lezione 5 Martedì 25-10-2016 Definizione di processo Esiste una distinzione concettuale
DettagliCorso 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
Dettaglisenza stato una ed una sola
Reti Combinatorie Un calcolatore è costituito da circuiti digitali (hardware) che provvedono a realizzare fisicamente il calcolo. Tali circuiti digitali possono essere classificati in due classi dette
DettagliUniversità di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A Pietro Frasca.
Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2016-17 Pietro Frasca Lezione 1 Martedì 11-10-2016 1 Introduzione Un sistema operativo è un software
DettagliSistemi 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
DettagliArchitettura di un sistema di calcolo
Richiami sulla struttura dei sistemi di calcolo Gestione delle Interruzioni Gestione della comunicazione fra processore e dispositivi periferici Gerarchia di memoria Protezione. 2.1 Architettura di un
DettagliGESTIONE 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
DettagliLA 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
DettagliI Processi nel Sistema Operativo Unix. Gerarchie di processi Unix. Stati di un processo Unix. Stati di un processo Unix.
I Processi nel Sistema Operativo Unix Processi Unix Unix è un sistema operativo multiprogrammato a divisione di tempo: l unità di computazione è il processo. Caratteristiche del processo Unix: processo
DettagliQuanto bene conosciamo i Segnali Sismici?
Quanto bene conosciamo i Segnali Sismici? In generale, quello registrato non è esattamente il moto del suolo ma la risposta dell apparato strumentale a questo movimento In pratica, lo strumento provoca
DettagliElettronica dei Sistemi Programmabili A.A. 2013-2014. Microcontrollori. Introduzione allo sviluppo di progetti
Elettronica dei Sistemi Programmabili A.A. 2013-2014 Microcontrollori Introduzione allo sviluppo di progetti Premessa Qualunque sistema basato su microcontrollore deve eseguire un codice memorizzato in
DettagliISA Input / Output (I/O) Data register Controller
ISA Input / Output (I/O) Numerose Periferiche di tanti tipi diversi, collegati alla CPU mediante BUS diversi. Solo Input (tastiera, mouse), producono dati che la CPU deve leggere. Solo Output (Schermo),
DettagliComponenti 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
DettagliCLASSIFICAZIONE DEI SISTEMI OPERATIVI (in ordine cronologico)
CLASSIFICAZIONE DEI SISTEMI OPERATIVI (in ordine cronologico) - Dedicati Quelli dei primi sistemi operativi. La macchina viene utilizzata da un utente per volta che può eseguire un solo programma per volta.
DettagliBootstrap. Bootstrap. Shutdown. Struttura di un SO. Elementi principali di un SO:
Bootstrap Bootstrap All accensione di un calcolatore vengono attivati programmi di diagnostica scritti nella ROM (Read Only Memory) che verificano l assenza di guasti Poi viene attivato il programma di
DettagliCALCOLATORI ELETTRONICI II
CALCOLATORI ELETTRONICI II L INTERFACCIA PARALLELA Argomenti della lezione Le interfacce parallele Il dispositivo Intel 855 Architettura Funzionamento Le interfacce parallele Esempio Le interfacce parallele
DettagliII.3.1 Inverter a componenti discreti
Esercitazione II.3 Caratteristiche elettriche dei circuiti logici II.3.1 Inverter a componenti discreti Costruire il circuito dell invertitore in logica DTL e verificarne il funzionamento. a) Posizionando
DettagliInput/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
DettagliComponenti di un sistema operativo
Componenti di un sistema operativo Dipartimento di Informatica Università di Verona, Italy Componenti di un S.O. Gestione dei processi Gestione della memoria primaria Gestione della memoria secondaria
DettagliSistemi Operativi Teledidattico
Sistemi Operativi Teledidattico Anno 2002 3a esercitazione 5/10/2002 Paolo Torroni processi fork (creazione di un figlio) exec (sostituzione di codice del programma in esecuzione) wait (attesa della terminazione
DettagliIL TEMPO
IL TEMPO LORENZO.BRACCIALE@UNIROMA2.IT DOVE STUDIARE Gapil http://users.lilik.it/~mirko/gapil/gapilse26.html#gapilsu125.html Linux http://www.linuxsa.org.au/tips/time.html IL FUSO ORARIO In Italia: GMT
DettagliEsercitazione 8 : LINEE DI TRASMISSIONE
Esercitazione 8 : LINEE DI TRASMISSIONE Specifiche Scopo di questa esercitazione è verificare il comportamento di spezzoni di linea in diverse condizioni di pilotaggio e di terminazione. L'esecuzione delle
DettagliLaboratorio di Calcolo B 100
Porte seriale e parallela La porta seriale e la posta parallela sono semplici dispositivi di connessione dei computer con dispositivi esterni. Vengono principalmente utilizzate per stampanti, mouse, tastiere.
DettagliLezione 3 Sistemi Operativi e misure di performance. Parleremo di
Lezione 3 Sistemi Operativi e misure di performance Parleremo di Ambienti di Elaborazione e Natura della computazione Classi di Sistemi Operativi Efficienza, Performance del Sistema, e Servizi Utente Sistemi
Dettagli1.5 Control bus Sistemi: architettura dei microprocessori
Control bus 1.5 Control bus Le azioni di lettura, scrittura, acquisizione ed emissione sono governate dalla CPU che sincronizza gli altri dispositivi attraverso il controlo bus. Il control bus è costitituito
DettagliCorso Arduino Maggio Riccardo Binetti Lezione 1 - Blinking LEDs with style
Corso Arduino 2014 21 Maggio 2014 Riccardo Binetti punkerbino@gmail.com Lezione 1 - Blinking LEDs with style Riccardo Binetti Arduino 2014 Lezione 1 1 / 24 Fate domande Riccardo Binetti Arduino 2014 Lezione
Dettagli1. Che cos è un sistema multiprogrammato? Si può realizzare la multiprogrammazione
1. Che cos è un sistema multiprogrammato? Si può realizzare la multiprogrammazione su un sistema con una sola CPU? 2. Qual è la differenza tra un interruzione e una trap? Si faccia qualche esempio. 1.
DettagliUniversità di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A Pietro Frasca.
Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2016-17 Pietro Frasca Lezione 8 Martedì 8-11-2016 1 Algoritmi di scheduling basati sulle priorità Assegnano
DettagliSistemi operativi Modulo II I semafori 2 Select
Il sistema operativo LINUX Semafori 2 Giorgio Di Natale Stefano Di Carlo Politecnico di Torino Dip. Automatica e Informatica La system call read è bloccante Non
DettagliTECN.PROG.SIST.INF. - Politiche di schedulazione del processore. Roberta Gerboni
Roberta Gerboni 1 Gli stati di un processo Gli stati possibili nei quali si può trovare un processo sono: Hold (parcheggio): il programma (chiamato job) è stato proposto al sistema e attende di essere
DettagliInformatica Generale 07 - Sistemi Operativi:Gestione dei processi
Informatica Generale 07 - Sistemi Operativi:Gestione dei processi Cosa vedremo: Esecuzione di un programma Concetto di processo Interruzioni Sistemi monotasking e multitasking Time-sharing Tabella dei
DettagliEsercizio 2 (punti 7) Dato il seguente programma C: #include <stdio.h> int swap(int * nome, int length);
Fondamenti di Informatica L-A (A.A. 004/005) - Ingegneria Informatica Prof.ssa Mello & Prof. Bellavista I Prova Intermedia del 11/11/004 - durata h - COMPITO B Esercizio 1 (punti 1) Una associazione di
DettagliTEORIA DEI SISTEMI OPERATIVI. Sistemi monoprogrammatie multiprogrammati
TEORIA DEI SISTEMI OPERATIVI Sistemi monoprogrammatie multiprogrammati 1 STRUTTURA DEL SISTEMA OPERATIVO UTENTE La struttura di un sistema operativo è di tipo gerarchico: i programmi che lo compongono
DettagliOperazioni di I/O. Schema di collegamento fra dispositivi periferici e CPU
Operazioni di I/O 1 Schema di collegamento fra dispositivi periferici e CPU Memoria CPU buffer interfaccia Registro di controllo Registro Di stato Unità di controllo Dispositivo fisico 2 1 Unità di interfaccia
DettagliFacciamo lampeggiare un led
Facciamo lampeggiare un led Passiamo a fare qualche esercizio, il più semplice per iniziare a programmare con Arduino è il canonico esercizio blink, che trovate anche negli esempi del programma. Si tratta
DettagliIl ciclo del processore semplificato BOOTSTRAP FETCH EXECUTE
Roadmap Inquadramento del problema La fase di interrupt nel ciclo del processore Le cause di interruzione Le fasi di uninterruzione Ripristino del programma Latenza Identificazione di dispositivi: soluzioni
DettagliIntroduzione alle architetture per il controllo dei manipolatori
Introduzione alle architetture per il controllo dei manipolatori Nicola SMALDONE Controllo digitale Perché un sistema di elaborazione dati? Le uscite dell impianto vengono campionate mediante un convertitore
DettagliSTRUTTURE DI CONTROLLO DEL C++
STRUTTURE DI CONTROLLO DEL C++ Le istruzioni if e else Le istruzioni condizionali ci consentono di far eseguire in modo selettivo una singola riga di codice o una serie di righe di codice (che viene detto
DettagliIl 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
DettagliSistemi in tempo reale: applicazioni alla robotica. Sistemi in tempo reale: applicazioni alla robotica p.1/15
Sistemi in tempo reale: applicazioni alla robotica Sistemi in tempo reale: applicazioni alla robotica p.1/15 Sistemi operativi Hardware Firmware Kernel Driver Applicazioni Interfacce Sistemi in tempo reale:
DettagliSISTEMI OPERATIVI. Nucleo di un SO. Il Nucleo. Il nucleo di un SO Gestione delle interruzioni Sincronizzazione tra processi Dispatcher. 06.
SISTEMI OPERATIVI 06.a Il Nucleo Nucleo di un SO Il nucleo di un SO Gestione delle interruzioni Sincronizzazione tra processi Dispatcher 1 Architettura di base dei SO Due le strutture di riferimento: a
DettagliGESTIONE DELLA MEMORIA CENTRALE 6.1 D. - UNICAL
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
DettagliSistemi 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
DettagliCognome: Nome: Matricola:
Cognome: Nome: Matricola: Sistemi Operativi A.A. 2006-2007, prova scritta del 23 aprile 2007 Libri e appunti chiusi. Vietato comunicare con chiunque. Vietato l'uso di cellulari, calcolatrici, palmari e
DettagliCorso di Informatica Applicata. Lezione 7. Università degli studi di Cassino
Università degli studi di Cassino Corso di Laurea in Ingegneria della Produzione Industriale Corso di Informatica Applicata Lezione 7 Ing. Saverio De Vito e-mail: saverio.devito@portici.enea.it Tel.: +39
DettagliMakefile. Il file dependency system di Unix (serve ad automatizzare il corretto aggiornamento di più file che hanno delle dipendenze)
Makefile Il file dependency system di Unix (serve ad automatizzare il corretto aggiornamento di più file che hanno delle dipendenze) 1 makefile: idea di fondo (1) Permette di esprimere dipendenze fra file
DettagliAlgebra di Boole: Concetti di base. E un algebra basata su tre operazioni logiche
Fondamenti di Informatica Algebra di Boole: Concetti di base Fondamenti di Informatica - D. Talia - UNICAL Algebra di Boole E un algebra basata su tre operazioni logiche OR AND NOT Ed operandi che possono
Dettagli5. I device driver. Device driver - gestori delle periferiche. Struttura interna del sistema operativo Linux. Tipi di periferiche. Tipi di periferiche
Device driver - gestori delle periferiche Struttura interna del sistema operativo Linux Sono moduli software che realizzano l interfacciamento e la gestione dei dispositivi periferici Interagiscono con
DettagliModulo 3. Software. Corso di Sistemi di elaborazione delle informazioni -Autore: Ing. Maurizio Patanè
Modulo 3 Software Cosa è il software E l insieme di programmi che consente al computer di funzionare e di svolgere le funzioni richieste dall utente. Esistono fondamentalmente due tipologie di software:
DettagliLSS Reti Logiche: multivibratori e T555
LSS 2016-17 Reti Logiche: multivibratori e T555 Piero Vicini A.A. 2016-2017 Multivibratori Un multivibratore e un circuito che presenta per l uscita solo due stati stabili e/o metastabili. Il circuito
DettagliLivelli del sottosistema di I/O
Input/Output 1 Livelli del sottosistema di I/O Software di I/O di livello utente Software di sistema indipendente dal dispositivo Driver dei dispositivi Gestori delle interruzioni Hardware Modo utente
DettagliCorso 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
DettagliELETTRONICA APPLICATA E MISURE
Ingegneria dell Informazione ELETTRONICA APPLICATA E MISURE Dante DEL CORSO B8 Esercizi parte B (2)» Generatore Q-T e Q» Monostabili» Laboratorio ELN-1 22/10/2013-1 ElapB8-2013 DDC Page 1 2013 DDC 1 Come
DettagliReti logiche (2) Circuiti sequenziali
Reti logiche (2) Circuiti sequenziali 1 Un ripasso Algebra booleana: operatori, postulati, identità, operatori funzionalmente completi Circuiti combinatori: tabelle di verità, porte logiche Decodificatore
DettagliSTRUTTURE DEI SISTEMI DI CALCOLO
STRUTTURE DEI SISTEMI DI CALCOLO 2.1 Strutture dei sistemi di calcolo Funzionamento Struttura dell I/O Struttura della memoria Gerarchia delle memorie Protezione Hardware Architettura di un generico sistema
DettagliIl linguaggio di programmazione Python
Università Roma Tre Dipartimento di Matematica e Fisica Percorso Abilitante Speciale Classe A048 Matematica Applicata Corso di Informatica Il linguaggio di programmazione Python Marco Liverani (liverani@mat.uniroma3.it)
DettagliINGEGNERIA 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
Dettagli5. Quinta esercitazione autoguidata: liste semplici
22 5. Quinta esercitazione autoguidata: liste semplici 5.1. Liste rappresentate mediante strutture e puntatori (LISTE1.C, LISTE2.C) Scrivere un programma che - costruisce una lista di k interi (con k letto
DettagliD2x - Presentazione della lezione D2. D2a STADI DI USCITA
D2x - Presentazione della lezione D2 /- Obiettivi! conoscere diverse forme di stadi di uscita di dispositivi logici! saper calcolare resistori di pull-up per open collector! saper eseguire calcoli di fanout!
DettagliIL PROJECT MANAGEMENT COME FATTORE DI SUCCESSO, CULTURA E PROFESSIONE. incontro 18 set a parte
IL PROJECT MANAGEMENT COME FATTORE DI SUCCESSO, CULTURA E PROFESSIONE incontro 18 set 2009 2 a parte 8 Programmazione temporale WBS, Gantt, Pert Analisi del reticolo Critical Path Method 1 esempio qui
DettagliL'Allocazione Dinamica della Memoria nel linguaggio C
L'Allocazione Dinamica della Memoria nel linguaggio C Prof. Rio Chierego riochierego@libero.it http://www.riochierego.it/informatica.htm Sommario Questo documento tratta l'allocazione dinamica della memoria
DettagliUniversità di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A Pietro Frasca.
Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2013-14 Pietro Frasca Lezione 15 Martedì 26-11-2013 1 Allocazione dei dispositivi e tecniche di spooling
DettagliStrutture Dati Dinamiche
Strutture Dati Dinamiche Motivazioni Le variabili considerate fino a questo punto devono essere dichiarate staticamente, ossia la loro esistenza, il loro nome e la loro dimensione devono essere previsti
DettagliConcetti base di acquisizione dati
Introduzione (concetti base) e Registratore (di ) digitale Gestione di un semplice circuito con la porta Misure di tempo 1 / 21 analogici Una grandezza fisica che fornisce informazioni sullo stato di un
DettagliCorso di Calcolatori Elettronici I
Corso di Calcolatori Elettronici I Il sistema di Input-Output Roberto Canonico Università degli Studi di Napoli Federico II A.A. 2014-2015 Roberto Canonico Corso di Calcolatori Elettronici I A.A. 2014-2015
DettagliELABORAZIONE DELLE INFORMAZIONI (ALGORITMI E LINGUAGGI DI PROGRAMMAZIONE)
1 LEZIONE 9 ELABORAZIONE DELLE INFORMAZIONI (ALGORITMI E LINGUAGGI DI PROGRAMMAZIONE) Laboratorio di Informatica per l Educazione A. A. 2014/2015 IN SINTESI (ELABORAZIONE) Con i COMPUTER, le macchine diventano
DettagliRegolatori di tensione dissipativi. Regolatori serie. Schema elettrico. Controllo della tensione d uscita Politecnico di Torino 1
Regolatori di tensione dissipativi 1 Schema elettrico Controllo della tensione d uscita 2 2003 Politecnico di Torino 1 Schema elettrico 3 Schema di principio I regolatori serie sono composti da un elemento
DettagliCiclo del Processore. Memoria
Ciclo del Nella figura seguente è riportata la rappresentazione semplificata ed essenziale di un computer. RESET Canali Di Ingresso Uscita Uscita Ingressi Fig. 1 Rappresentazione semplificata di un computer
DettagliIl polling consiste nella scansione ciclica, da parte della CPU, di tutte le periferiche per verificare la disponibilità o meno alla comunicazione.
TECNICHE DI INTERRUZIONE NEI MICROCOMPUTER Abbiamo analizzato nel modulo E la procedura con cui avviene lo scambio di informazioni in un microcomputer tra la CPU e la memoria. Il µp, che svolge la funzione
DettagliEsame di INFORMATICA Lezione 4
Università di L Aquila Facoltà di Biotecnologie Esame di INFORMATICA Lezione 4 MACCHINA DI VON NEUMANN Il sottosistema di memorizzazione (memoria) contiene dati + istruzioni, inseriti inizialmente tramite
DettagliQuinta Esercitazione. Principali primitive di accesso ai File
Esempio: processi padre e figlio condividono di file aperti PRIMA della creazione Quinta Esercitazione Gestione File-System Segnali processo padre fork() Sistema tabella dei file attivi i-node Eugenio
DettagliPage. Mis F FF ELETTRONICA APPLICATA E MISURE. Misure di tempo e frequenza. Ingegneria dell Informazione
Ingegneria dell Informazione Misure di tempo e ELETTRONICA APPLICATA E MISURE F2 Misure tempo e Tempo e Frequenza: sono le grandezze fisiche che oggi si misurano con minore incertezza a parita di incertezza
DettagliFunzioni, puntatori, strutture. Lab. Calc. AA 2006/07
Funzioni, puntatori, strutture sommario In questa lezione integriamo le informazioni fornite su puntatori e funzioni approfondendo i seguenti punti Puntatori a puntatori Puntatori e array come parametri
DettagliIl sistema di I/O. Sistemi Operativi 13.1
Il sistema di 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 Prestazioni 13.1 Introduzione Un elaborazione eseguita da
DettagliIl Sistema Operativo Concorrenza e Grafi di precedenza
ISTITUTO TECNICO SECONDO BIENNIO GIORGIO PORCU www.thegiorgio.it Sommario Elaborazione concorrente Elaborazione sequenziale Elaborazione concorrente Elaborazione parallela Grafi di Precedenza Grafi di
DettagliIl linguaggio C. Puntatori e dintorni
Il linguaggio C Puntatori e dintorni 1 Puntatori : idea di base In C è possibile conoscere e denotare l indirizzo della cella di memoria in cui è memorizzata una variabile (il puntatore) es : int a = 50;
DettagliIl Processore. Informatica di Base -- R.Gaeta 27
Il Processore Il processore (detto anche CPU, ovvero, Central Processing Unit) è la componente dell unità centrale che fornisce la capacità di elaborazione delle informazioni contenute nella memoria principale
DettagliPROCESSI NON SEQUENZIALI E TIPI DI INTERAZIONE
PROCESSI NON SEQUENZIALI E TIPI DI INTERAZIONE 1 ALGORITMO, PROGRAMMA, PROCESSO Algoritmo Procedimento logico che deve essere eseguito per risolvere un determinato problema. Programma Descrizione di un
DettagliSistemi Operativi Esercizi Ricapitolazione. Docente: Claudio E. Palazzi
Sistemi Operativi Esercizi Ricapitolazione Docente: Claudio E. Palazzi cpalazzi@math.unipd.it Problema Sincronizzazione Semafori Si considerino tre processi (A, B e C) i quali devono eseguire alcune operazioni
DettagliAndrea Di Dato. e fu così che i maker misero le ali
e fu così che i maker misero le ali di Andrea Di Dato NaLUG, FSFE, INAF OA Capodimonte SysAdmin, Astrofilo, divulgatore, padre e marito a.didato@fsfe.org OpenHardwareDay - Napoli 25 Marzo 2017 Cos è Arduino
DettagliScheduling della CPU
Scheduling della CPU 1 Scheduling della CPU Obiettivo della multiprogrammazione: massimizzazione dell utilizzo della CPU. Scheduling della CPU: commuta l uso della CPU tra i vari processi. Scheduler della
DettagliProgetto del processore e supporto del processore al SO (interruzioni eccezioni) Salvatore Orlando
Progetto del processore e supporto del processore al SO (interruzioni eccezioni) Salvatore Orlando Arch. Elab. - S. Orlando 1 Eccezioni e interruzioni Il progetto del controllo del processore si complica
DettagliLab 1: Java Multithreading
Dept. of Computer Science Lab 1: Java Multithreading Matteo Camilli matteo.camilli@unimi.it Laboratorio di Sistemi Operativi a.a. 2015/16 Università degli Studi di Bergamo 1 Outline Programmazione multithreading
DettagliPROGRAMMAZIONE: Le strutture di controllo
PROGRAMMAZIONE: Le strutture di controllo Prof. Enrico Terrone A. S: 2008/09 Le tre modalità La modalità basilare di esecuzione di un programma è la sequenza: le istruzioni vengono eseguite una dopo l
DettagliComprendere il funzionamento dei convertitori V/f Saper effettuare misure di collaudo
SCH 32 Convertitore tensione/frequenza Obiettivi Strumenti e componenti Comprendere il funzionamento dei convertitori V/f Saper effettuare misure di collaudo R1 = 1,2 KΩ; R2 = 3,6 KΩ; R4 = 180 Ω; R5 =
DettagliUn esempio per iniziare. Il controllo del programma in C. Altri cenni su printf() Esercizi (printf) printf( 8!=%d, fatt);
Un esempio per iniziare Il controllo del programma in C DD Cap.3 pp.91-130 /* calcolo di 8!*/ #include #define C 8 int main() int i=1; int fatt=1; while (i
Dettagli