vuoi
o PayPal
tutte le volte che vuoi
IN MANIERA MOLTO SEMPLICE il
segnale di lettura/scrittura. Sul fronte di discesa del clock t , lo slave recepisce la
1
richiesta di lettura e l’indirizzo posto sul bus, ponendo quindi il dato sul bus dati. Al
successivo fronte di discesa del clock t , il master legge il dato.
2
• Descrivere il processo di arbitraggio nel funzionamento del BUS
o Esistono due meccanismi di arbitraggio:
L’arbitraggio centralizzato impiega un’unità funzionale dedicata, che svolge la
→
funzione di arbitro del BUS, e alcune linee del BUS di controllo che si occupano di
collegare l’unità arbitro alle potenziali unità funzionali richiedenti il controllo del BUS.
Queste linee sono il Bus Request (richiesta di cessione del controllo) e il Bus Grant
In termini di priorità, di base l’unità a contatto
(conferma di cessione del controllo).
con l’arbitro ha priorità maggiore rispetto a quella che si trova lontano dall’unità
arbitro che, invece, ha priorità minore.
Nel caso di arbitraggio distribuito, invece, non c’è la presenza dell’arbitro ma è
→
prevista una linea di richiesta BUS per ogni unità che hanno priorità diverse e
fissate; ogni unità può attivare solo la propria linea di richiesta BUS.
• Descrivere l’algoritmo di scheduling First-Come-First-Served (FCFS)
Nell’algoritmo
o First- Come-First-Served (FCFS) la coda dei processi pronti viene
gestita in modalità FIFO (First Input First Output) e i processi sono schedulati
secondo l’ordine di arrivo nella coda, vale a dire il primo ad entrare in coda è il primo
ad essere servito. Lo svantaggio del FCFS è che c’è un effetto di ritardo a catena
per i processi brevi che attendono i processi più lunghi e non è possibile influire
sull’ordine dei processi, con un conseguente scarso grado di utilizzo della CPU.
• Descrivere la tecnica del time sharing
o Il time-sharing è un modo di gestione delle risorse da parte del sistema operativo,
attraverso il quale l'esecuzione dell'attività della CPU viene suddivisa in intervalli
temporali detti quanti di tempo, al quale sono legati uno o più processi. Allo scadere
di un quanto l’esecuzione del processo corrente viene interrotta e si passa al
processo successivo.
Grazie al time-sharing il calcolare è in grado di servire più utenti
contemporaneamente, quest’ultimo dipende da tre fattori importanti:
→ La velocità del processore
→ Il tempo assegnato ad ogni utente
Il tipo di operazione che l’utente deve eseguire
→
L’obiettivo principale per i sistemi time-sharing è perciò quello di minimizzare il
tempo di risposta dei programmi e, di conseguenza, quello di minimizzare il tempo di
attesa medio da parte degli utenti per ottenere dal programma una risposta alle
proprie richieste.
• Descrivere l’architettura a strati di un sistema operativo
o Il sistema operativo ha una struttura a strati, cosiddetta a cipolla, in questa
architettura ogni strato è una macchina virtuale formata da un insieme di programmi
che esegue operazioni fornite a livello inferiore, ciò permette anche di nascondere i
suoi punti deboli e mostrare all’utente solo le sue peculiarità.
Gli strati sono i seguenti strati: detto Kernel, è attaccato direttamente all’hardware
→ Nucleo o gestore della CPU,
ed è il cervello che controlla tutta la macchina.
→ Gestore della memoria, ha il compito di gestire in maniera efficiente la memoria.
→ Gestione delle periferiche I/O, gestisci e controlla i dispositivi I/O, cercando di
evitare possibili conflitti.
→ Gestore dei file (file system), gestisce i file memorizzati in tutte le memorie
è lo strato che si interfaccia con l’utente, ossia è ciò che
→ Interprete dei comandi,
trasforma le nostre gesta (con mouse o tastiera ad esempio.
• Indicare quali sono le principali funzioni del sistema operativo
o Le principali funzioni svolte dal sistema operativo sono:
→ Esecuzione di programmi applicativi, verifica dispositivi I/O o caricamento dei
programmi nella memoria centrale
→ Accesso ai dispositivi di I/O, gestione di tutte le operazioni di questi dispostivi,
compresa lettura e scrittura organizzazione mediante l’utilizzo di cartelle
→ Archiviazione di dati e programmi,
condivisione dei file in base all’utente e protezione di
→ Controllo di accesso,
determinati file sempre in base all’utente
→ Contabilizzazione, ottimizzazione del tempo di risposta dei programmi interattivi
→ Gestione dei malfunzionamenti, con eventuale risoluzione quando possibile
• Descrivere la tecnica delle partizioni fisse per la gestione della memoria
o In questa tecnica la memoria viene divisa in diverse partizioni.
Per ogni partizione, saranno indicati: indirizzo iniziale, indirizzo finale (o lunghezza),
e PID del programma che la occupa (questo campo varrà 0 se la partizione risulta
libera).
• Riportare la tecnica di caricamento dinamico e memoria virtuale
o Il concetto di caricamento dinamico prevede che il programma sia caricato solo
parzialmente in memoria e sia scaricato subito al termine; infatti, ad ogni processo è
assegnata un’area di memoria centrale ed un’area su disco, detta area di swap
l’area
(ossia del disco dove sono presenti le pagine in memoria secondaria, ed
l’esecuzione. L’utilizzo
aggiornata durante di entrambe le memorie (centrale e are4a
di swap) consente di avere a disposizione una Memoria Virtuale più grande della
memoria fisica.
• Descrivere il protocollo DMA (Direct Memory Access)
o Il DMA è un processore specializzato di trasferimento dei dati dal dispositivo di I/O
alla memoria centrale e viceversa. La CPU, per attivare il DMA invia una serie di
l’indirizzo da cui iniziare a leggere
informazioni al controllore DMA, come ad esempio
o scrivere; a questo punto, la CPU cessa dalle operazioni di I/O lasciando il controllo
al DMA controller. Al termine del trasferimento dati il DMA controller invia un segnale
di interrupt request alla CPU.
• Riportare e descrivere un tipo di struttura logica della directory
o La struttura logica della directory può essere:
un livello, presenta un’unica directory per ogni file system creando problematiche
→
di unicità dei nomi e impossibilità di multiutenza
→ due livelli, il primo è la directory principale ed è una per ogni utente, il secondo
invece ha una struttura ad un livello, aiutando nella ricerca dei file ma non permette il
raggruppamento
→ albero, organizzazione gerachica di n livelli con possibilità di raggruppamento
→ grafico aciclico, estensione di quella ad albero, permette avere lo stesso file ma
con nomi differenti
• Quali sono le funzionalità di una rete di calcolatori
→
o Condividere risorse: ad esempio, stampanti, dischi, altro, ma anche programmi e
dati
→ Semplificare la manutenzione: poiché vengono gestite tutte in un unico punto
→ Migliorare la tolleranza ai guasti: uno rotto può essere subito sostituito
→ Eseguire applicazioni distribuite: eseguire programmi in parallelo
Accedere alle informazioni remote: l’utente può accedere ad informazioni quali,
→
ad esempio, quelle in web
Comunicare con altri utenti: l’utente può comunicare con altri utenti
→
→ Eseguire compiti con altri utenti: eseguire lavori di collaborazione con altri utenti
• Elencare i componenti di una rete di calcolatori e, per ciascuno di essi, darne una breve
descrizione
→
o Dispositivo o scheda di rete: è un dispositivo hardware di comunicazione, serve
per codificare e trasmettere o ricevere e decodificare i dati inviati/ricevuti dal
calcolatore
→ Mezzo di trasmissione: è il supporto fisico usato per la propagazione e
trasmissione dei segnali
→ Connettore di rete: connettore standard di collegamento del dispositivo di rete al
mezzo di trasmissione
→ Protocollo di rete: rappresenta un insieme di regole che garantiscono la
compatibilità, la corretta configurazione e gestione della comunicazione tra i
dispositivi in rete.
• Classificare le reti di calcolatori in funzione della loro estensione geografica
–
→
o Le reti PAN Personal Area Network consentono la connessione di dispositivi
vicini tra di loro, ad esempio all’interno di una stessa stanza.
–
→ Le reti LAN Local Area Network collegano tra di loro calcolatori che si trovano
nel raggio di qualche centinaio di metri: ad esempio, un edificio o un campus. La sua
dimensione è fissa quindi consente di conoscere il tempo di trasmissione massimo
nel caso peggiore. Sono reti caratterizzate da una velocità di trasmissione da 100
Mbps fino ad 1Gbps, sono caratterizzate da un basso ritardo di propagazione del
basso tasso d’errore.
segnale e un – riescono a coprire l’area
→ Le reti MAN Metropolitan Area Network fino ad
un’intera città con una dimensione di decine di km. I calcolatori sono tutti
interconnessi tramite server centrale.
–
→ Le reti WAN Wide Are Network consentono la copertura di nazioni o continenti.
Una WAN è costituita da un insieme di calcolatori (detti host) sui quali girano i
programmi utilizzati dagli utenti e da una comunication subnet che connette gli host
tra di loro.
→ Internet è una rete geografica su scala mondiale accessibile a tutti gli utenti. Offre
molteplici servizi, soprattutto di tipo client-server.
• Cos’è una rete client-server e quali sono i suoi vantaggi
È una rete nata tra gli anni ’80 e ’90,
o caratterizzata da un calcolatore centrale, detto
server (fornisce servizi richiesti)., a cui accedono altri calcolatori, detti client
(elaborano dati), tutti con propria capacità di calcolo.
Una volta autorizzato, il client chiede un servizio al server che risponde fornendogli il
servizio richiesto e questo può avvenire in contemporanea da parte di più clientLe
reti client-server presentano i seguenti vantaggi:
→ risorse centralizzate e condivise
→ memorizzazione dei dati a livello centrale per il loro utilizzo da parte di tutti gli
utenti
→ sicurezza dei dati
→ facilità di gestione di un grande numero di utenti
→ scalabilità del sistema
ottimizzazione dell’uso delle risorse
→
Oltre ai vantaggi, una rete client/server presenta comunque una serie di svantaggi:
→ costo elevato di hardware e software di rete
→ presenza di un amministratore di rete<