TPSI Flashcards

(70 cards)

1
Q

Quale tipo di segnale è utilizzato nei sistemi analogici e cos’è?

A

Trattano segnali continui cioè variabili nel tempo⸲ che possono assumere un’infinità di valori all’internodi un intervallo

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Quale tipo di segnale è utilizzato nei sistemi digitali e cos’è?

A

Trattano segnali discreti cioè variabili nel tempo⸲ che possono assumere un numero finito di valori all’interno di un intervallo

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Esempio di segnale analogico

A

La temperatura⸲ la pressione atmosferica⸲ il suono

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Esempio di segnale digitale

A

La temperatura misurata da un termometro digitale⸲ il suono registrato in un file mp3

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Che cos’è un sistema?

A

Un sistema è un insieme di elementi che interagiscono tra loro per svolgere una funzione specifica

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Come funziona la conversione analogico-digitale?

A

La conversione analogico-digitale è un processo che trasforma un segnale analogico in un segnale digitale. Questo processo avviene attraverso due fasi: il campionamento e la quantizzazione

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Che cos’è il campionamento?

A

Il campionamento è il processo di misurazione del valore di un segnale analogico a intervalli regolari di tempo

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Che cos’è la quantizzazione?

A

La quantizzazione è il processo di approssimazione del valore misurato a un valore discreto⸲ che può essere rappresentato in forma digitale

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Come funziona la conversione digitale-analogica?

A

La conversione digitale-analogica è un processo che trasforma un segnale digitale in un segnale analogico. Questo processo avviene attraverso due fasi: la ricostruzione e il filtraggio

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Che cos’è la ricostruzione?

A

La ricostruzione è il processo di creazione di un segnale analogico a partire da un segnale digitale⸲ utilizzando i valori discreti ottenuti durante la quantizzazione

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Che cos’è il filtraggio?

A

Il filtraggio è il processo di rimozione delle componenti indesiderate da un segnale analogico ricostruito⸲ al fine di ottenere un segnale più pulito e fedele all’originale

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Che cos’è un convertitore analogico-digitale (ADC)?

A

Un convertitore analogico-digitale (ADC) è un dispositivo elettronico che esegue la conversione di un segnale analogico in un segnale digitale

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Che cos’è un convertitore digitale-analogico (DAC)?

A

Un convertitore digitale-analogico (DAC) è un dispositivo elettronico che esegue la conversione di un segnale digitale in un segnale analogico

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Che cosa è la virtualizzazione?

A

La virtualizzazione è una tecnica che consente di astrarre risorse hardware e di eseguirle in ambienti isolati⸲ permettendo un uso più flessibile e sicuro dei sistemi

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Che cos’è un hypervisor?

A

Un hypervisor è un software che consente di creare e gestire macchine virtuali⸲ permettendo di eseguire più sistemi operativi su un singolo hardware fisico

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Che cos’è un container?

A

Un container è un contenitore virtuale che consente di eseguire applicazioni in modo isolato e portabile⸲ utilizzando il kernel del sistema operativo sottostante

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

Che differenza c’è tra virtualizzazione e containerizzazione?

A

La virtualizzazione crea macchine virtuali complete con il proprio sistema operativo⸲ mentre la containerizzazione utilizza il kernel del sistema operativo host per eseguire più applicazioni isolate in contenitori leggeri

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

Come fa l’host a gestire più macchine virtuali?

A

L’host gestisce le macchine virtuali attraverso l’hypervisor⸲ che si occupa di allocare le risorse hardware e di garantire l’isolamento tra le diverse macchine virtuali

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

In che modo i container condividono le risorse?

A

I container condividono le risorse del kernel del sistema operativo host⸲ consentendo un uso più efficiente delle risorse rispetto alle macchine virtuali

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

In che ambito viene utilizzata la virtualizzazione?

A

La virtualizzazione viene utilizzata in vari ambiti⸲ tra cui il cloud computing⸲ lo sviluppo software⸲ il testing e la gestione dei server

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
21
Q

Che vantaggi offre la virtualizzazione?

A

La virtualizzazione offre vantaggi come l’ottimizzazione delle risorse hardware⸲ la facilità di gestione e distribuzione delle applicazioni⸲ la riduzione dei costi e l’aumento della sicurezza

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
22
Q

Che svantaggi presenta la virtualizzazione?

A

Gli svantaggi della virtualizzazione includono la complessità nella gestione delle macchine virtuali⸲ le prestazioni inferiori rispetto all’esecuzione diretta su hardware fisico e la necessità di risorse hardware adeguate

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
23
Q

In che ambito viene utilizzata la containerizzazione?

A

La containerizzazione viene utilizzata principalmente nello sviluppo e distribuzione di applicazioni⸲ nel cloud computing e nella gestione dei microservizi

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
24
Q

Che vantaggi offre la containerizzazione?

A

La containerizzazione offre vantaggi come la portabilità delle applicazioni⸲ l’isolamento tra le applicazioni⸲ l’efficienza nell’uso delle risorse e la facilità di distribuzione e scalabilità

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
25
Che svantaggi presenta la containerizzazione?
Gli svantaggi della containerizzazione includono la dipendenza dal kernel del sistema operativo host⸲ la complessità nella gestione dei contenitori e la necessità di strumenti specifici per la gestione e l'orchestrazione dei containers
26
Esempi di hypervisor
VMware ESXi⸲ Microsoft Hyper-V⸲ Oracle VirtualBox
27
Esempi di container
Docker⸲ Kubernetes⸲ OpenShift
28
Cosa sono i codici posizionali?
Codici in cui il valore di un simbolo dipende dalla sua posizione all'interno di una sequenza come nel sistema decimale⸲ binario⸲ ottale e esadecimale
29
Cosa sono i codici non posizionali?
Codici in cui il valore di un simbolo non dipende dalla sua posizione all'interno di una sequenza⸲ come nel sistema romano⸲ Gray⸲ ASCII e Unicode
30
Cosa sono i codici pesati?
Codici in cui il valore di un simbolo è determinato da un peso specifico associato a ciascun simbolo⸲ come nel BCD⸲ 2431⸲ Aiken
31
Cosa sono i codici non pesati?
Codici in cui il valore di un simbolo non è determinato da un peso specifico⸲ come nel sistema Gray⸲ ASCII e Unicode
32
Cosa sono i codici a larghezza fissa?
Codici in cui ogni simbolo ha la stessa lunghezza⸲ come ASCII e BCD
33
Cosa sono i codici a larghezza variabile?
Codici in cui la lunghezza dei simboli può variare⸲ come nel sistema Huffman e nel codice Morse
34
Cos'è la codifica di Gray?
La codifica di Gray è un sistema di codifica binaria in cui due numeri consecutivi differiscono per un solo bit. È utilizzata per ridurre gli errori di transizione nei circuiti digitali
35
Cos'è la codifica BCD?
La codifica BCD (Binary-Coded Decimal) è un sistema di codifica in cui ogni cifra decimale è rappresentata da un gruppo di quattro bit. Ad esempio⸲ il numero decimale 25 è rappresentato in BCD come 0010 0101
36
Cos'è la codifica Aiken?
La codifica Aiken è un sistema di codifica binaria in cui ogni cifra decimale è rappresentata da un gruppo di quattro bit⸲ ma con una differenza rispetto al BCD: la cifra 0 è rappresentata da 0000 e la cifra 9 da 1001. È utilizzata in alcune applicazioni di calcolo
37
Cos'è la codifica di Huffman?
La codifica di Huffman è un algoritmo di compressione dei dati che utilizza una codifica a lunghezza variabile per rappresentare i simboli in base alla loro frequenza di occorrenza. I simboli più frequenti sono rappresentati da codici più brevi⸲ mentre quelli meno frequenti da codici più lunghi
38
Come vengono classificati i sistemi operativi?
Per utenza (single-user⸲ multi-user)⸲ per accesso (time-sharing⸲ batch)⸲ o per schedulazione (preemptive⸲ non preemptive)
39
Quali sono le architetture dei sistemi operativi?
Architettura monolitica (MSDOS)⸲ architettura a microkernel (Minix)⸲ architettura a kernel ibrido (Windows)⸲ architettura a kernel monolitico (Unix)
40
Cos'è lo scheduling?
Lo scheduling è il processo di pianificazione e gestione dell'esecuzione dei processi in un sistema operativo. Determina l'ordine in cui i processi vengono eseguiti e le risorse allocate loro
41
Cos'è uno scheduling preemptive?
Lo scheduling preemptive consente al sistema operativo di interrompere un processo in esecuzione per assegnare la CPU a un altro processo con priorità più alta. Ciò garantisce una risposta rapida e una gestione efficiente delle risorse
42
Cos'è uno scheduling non preemptive?
Lo scheduling non preemptive consente a un processo di completare la sua esecuzione prima di passare il controllo a un altro processo. In questo caso⸲ un processo in esecuzione non può essere interrotto fino al suo completamento
43
Cos'è un interrupt?
Un interrupt è un segnale inviato al processore da un dispositivo hardware o software per richiedere l'attenzione del sistema operativo. Gli interrupt consentono al sistema di rispondere a eventi esterni⸲ come l'arrivo di dati da un dispositivo di input/output
44
Cos'è un deadlock?
Un deadlock è una situazione in cui due o più processi si bloccano a vicenda⸲ impedendo a ciascuno di continuare la propria esecuzione. Ciò accade quando i processi attendono risorse che sono già allocate ad altri processi
45
Cos'è il file system?
Il file system è un componente del sistema operativo che gestisce l'archiviazione e l'organizzazione dei file su un dispositivo di memorizzazione. Fornisce un'interfaccia per creare⸲ leggere⸲ scrivere e cancellare file e directory
46
Quali sono i principali tipi di file system?
I principali tipi di file system includono FAT (File Allocation Table)⸲ NTFS (New Technology File System)⸲ ext4 (Fourth Extended File System) e HFS+ (Hierarchical File System Plus)
47
Cos'è il cache controller?
Il cache controller è un componente del sistema operativo che gestisce la cache⸲ una memoria veloce utilizzata per memorizzare temporaneamente i dati più frequentemente utilizzati. Il cache controller decide quali dati devono essere memorizzati nella cache e quando devono essere rimossi
48
Cos'è la MMU?
La Memory Management Unit (MMU) è un componente del sistema operativo che gestisce l'accesso alla memoria. La MMU traduce gli indirizzi virtuali utilizzati dai processi in indirizzi fisici nella memoria principale⸲ consentendo una gestione efficiente della memoria e la protezione dei processi
49
Cos'è un gestore di risorse?
Un gestore di risorse è un componente del sistema operativo che gestisce le risorse hardware e software del sistema⸲ come la CPU⸲ la memoria⸲ i dispositivi di input/output e le reti. Il gestore di risorse assegna le risorse ai processi in esecuzione e garantisce un utilizzo efficiente delle risorse disponibili
50
Cos'è un driver di dispositivo?
Un driver di dispositivo è un software che consente al sistema operativo di comunicare con un dispositivo hardware specifico⸲ come una stampante⸲ una scheda grafica o un disco rigido. I driver traducono le richieste del sistema operativo in comandi comprensibili dal dispositivo
51
Cos'è un kernel?
Il kernel è il nucleo del sistema operativo che gestisce le risorse hardware e software del sistema. Il kernel fornisce servizi di base come la gestione della memoria⸲ la pianificazione dei processi e la gestione dei dispositivi di input/output
52
Cos'è l'userspace?
L'userspace è la parte della memoria in cui vengono eseguiti i processi degli utenti. In questa area⸲ i processi possono accedere a risorse come file e dispositivi⸲ ma non possono accedere direttamente alle risorse di sistema protette dal kernel
53
Cos'è il kernel space?
Il kernel space è la parte della memoria in cui viene eseguito il kernel del sistema operativo. In questa area⸲ il kernel ha accesso completo alle risorse di sistema e può gestire processi⸲ memoria e dispositivi
54
Cos'è il buffering?
Il buffering è una tecnica utilizzata per migliorare le prestazioni del sistema operativo memorizzando temporaneamente i dati in una memoria intermedia (buffer) prima di inviarli a un dispositivo di output o di input. Ciò consente di ridurre il numero di operazioni di I/O e migliorare l'efficienza del sistema
55
Cos'è il paging?
Il paging è una tecnica di gestione della memoria che suddivide la memoria virtuale in pagine di dimensioni fisse e la memoria fisica in frame di dimensioni corrispondenti. Il sistema operativo utilizza una tabella di paginazione per mappare le pagine virtuali agli frame fisici⸲ consentendo un utilizzo efficiente della memoria e la protezione dei processi
56
Cos'è lo spooling?
Lo spooling (Simultaneous Peripheral Operation On-Line) è una tecnica utilizzata per gestire le operazioni di input/output in modo asincrono. Consente di memorizzare temporaneamente i dati in un'area di memoria (spool) prima di inviarli a un dispositivo di output⸲ come una stampante⸲ consentendo al sistema di continuare a elaborare altre operazioni nel frattempo
57
Cos'è un processo?
Un processo è un'istanza di un programma in esecuzione⸲ che include il codice del programma⸲ i dati e le risorse necessarie per l'esecuzione. Ogni processo ha un proprio spazio di memoria e può essere gestito dal sistema operativo in modo indipendente dagli altri processi
58
Cos'è un thread?
Un thread è un'unità di esecuzione all'interno di un processo. I thread condividono lo stesso spazio di memoria del processo e possono eseguire operazioni in parallelo⸲ consentendo una maggiore efficienza nell'utilizzo delle risorse del sistema
59
Che differenza c'è tra un processo e un thread?
La principale differenza tra un processo e un thread è che i processi hanno spazi di memoria separati⸲ mentre i thread condividono lo stesso spazio di memoria all'interno di un processo. Ciò consente ai thread di comunicare più facilmente tra loro⸲ ma richiede anche una maggiore attenzione nella gestione della sincronizzazione e della concorrenza
60
Quali sono gli stati di un processo?
1. Ready: il processo è pronto per essere eseguito. 2. Running: il processo è attualmente in esecuzione. 3. Blocked: il processo è in attesa di un evento⸲ come l'I/O o la sincronizzazione con altri processi. 4. Terminated: il processo ha completato la sua esecuzione e sta per essere rimosso dal sistema
61
Che cos'è l'interleaving?
L'interleaving è una tecnica di gestione dei processi in cui il sistema operativo alterna l'esecuzione di più processi in modo da garantire che ciascun processo abbia l'opportunità di essere eseguito. Ciò consente di migliorare l'efficienza del sistema e ridurre i tempi di attesa per i processi
62
Cos'è l'overlapping?
L'overlapping è una tecnica di gestione dei processi in cui il sistema operativo consente a più processi di essere eseguiti contemporaneamente⸲ sfruttando le risorse del sistema in modo più efficiente. Ciò consente di ridurre i tempi di attesa e migliorare le prestazioni complessive del sistema
63
Che tipologie di prototipo software esistono?
Prototipi a bassa fedeltà (sketch⸲ wireframe)⸲ prototipi a media fedeltà (mockup⸲ prototipo interattivo) e prototipi ad alta fedeltà (prototipo funzionante)
64
Quali sono le fasi di prototipazione del software?
1. Raccolta dei requisiti: identificare le esigenze degli utenti e le funzionalità richieste. 2. Progettazione del prototipo: creare un modello del software che rappresenti le funzionalità e l'interfaccia utente. 3. Valutazione e revisione: testare il prototipo con gli utenti e raccogliere feedback 4. Sviluppo
65
Che metodologie di sviluppo software esistono?
Metodologie di sviluppo software tradizionali (Waterfall⸲ V-Model)⸲ metodologie agili (Scrum⸲ Kanban⸲ Extreme Programming)⸲ metodologie ibride (Agile-Waterfall) e DevOps
66
Cos'è il modello Waterfall?
Il modello Waterfall è un approccio tradizionale allo sviluppo software che prevede una sequenza lineare di fasi⸲ tra cui analisi dei requisiti⸲ progettazione⸲ implementazione⸲ test e manutenzione. Ogni fase deve essere completata prima di passare alla successiva
67
Cos'è il modello V-Model?
Il modello V-Model è un'estensione del modello Waterfall che enfatizza la verifica e la validazione in ogni fase del processo di sviluppo. Le fasi di test sono parallele alle fasi di sviluppo⸲ garantendo che ogni requisito sia testato e verificato
68
Cos'è il modello Agile?
Il modello Agile è un approccio flessibile e iterativo allo sviluppo software che enfatizza la collaborazione tra team⸲ la consegna continua di funzionalità e l'adattamento ai cambiamenti dei requisiti. Le metodologie Agile⸲ come Scrum e Kanban⸲ si concentrano su cicli di sviluppo brevi e frequenti feedback degli utenti
69
Cos'è il modello Scrum?
Il modello Scrum è una metodologia Agile che utilizza iterazioni brevi chiamate sprint per sviluppare software. Ogni sprint ha una durata fissa e include pianificazione⸲ sviluppo⸲ test e revisione. Il team Scrum si riunisce regolarmente per discutere i progressi e pianificare le attività future
70
Che cos'è la prototipazione incrementale?
La prototipazione incrementale è un approccio allo sviluppo software in cui il prototipo viene sviluppato in piccoli incrementi⸲ consentendo agli utenti di testare e fornire feedback su ogni incremento. Ciò consente di adattare il prototipo alle esigenze degli utenti e migliorare continuamente il software