Corso completo sistemi operativi

0.0(0)
studied byStudied by 0 people
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
Card Sorting

1/200

flashcard set

Earn XP

Description and Tags

Flashcards per la preparazione all'esame sui sistemi operativi.

Study Analytics
Name
Mastery
Learn
Test
Matching
Spaced

No study sessions yet.

201 Terms

1
New cards

Sistema Operativo

Software che gestisce l'hardware di un calcolatore, estendendo la macchina e gestendo le risorse.

2
New cards

CPU

Recupera le istruzioni dalla memoria e le esegue.

3
New cards

Program Counter (PC)

Registro che contiene l'indirizzo di memoria della prossima istruzione da prendere.

4
New cards

Stack Pointer

Registro che punta alla cima dello stack in memoria.

5
New cards

Program Status Word (PSW)

Bit nel registro PSW che controlla la modalitá (kernel o utente).

6
New cards

Modalitá Kernel

Modalitá in cui la CPU ha accesso a qualsiasi istruzione e hardware.

7
New cards

Modalitá Utente

Modalitá in cui l'insieme di istruzioni eseguibili dalla CPU é ristretto.

8
New cards

Device driver

Software che da comandi e accettano risposte dai dispositivi

9
New cards

DMA (Direct Memory Access)

Chip che gestisce il flusso di bit tra la memoria e i controllori senza l'intervento della CPU.

10
New cards

Processo

Programma in esecuzione con spazio di indirizzamento e registri assegnati.

11
New cards

Tabella dei Processi

Tabella di sistema che memorizza informazioni su ciascun processo.

12
New cards

Interprocess Communication (IPC)

Come si chiama quel meccanismo grazie al quale due proocessi possono parlare tra di loro (generale)

13
New cards

UID (User Identification)

Identificativo univoco assegnato ad ogni persona che usa un sistema.

14
New cards

GID (Group Identification)

Identificativo del gruppo a cui appartiene un utente.

15
New cards

Superuser

Utente con permessi speciali che puó violare le regole di protezione.

16
New cards

PCB (Process Control Block)

Tabella di dati relativi a un processo.

17
New cards

Pointer to Process Memory

Puntatore ad una lista che contiene gli ID e gli stati delle pagine di memoria.

18
New cards

Coda Ready

Cod di processi pronti ad essere eseguiti.

19
New cards

Coda Wait

Coda di processi che stanno aspettando un evento.

20
New cards

Context Switch

Processo di salvataggio dello stato del processo precedente e caricamento di quello nuovo.

21
New cards

PID (Process Identifier)

Identificativo univoco del processo.

22
New cards

Processo Zombie

Processo figlio il cui padre non ha chiamato wait().

23
New cards

Processo Orfano

Processo figlio il cui padre é terminato senza chiamare wait().

24
New cards

Comunicazione Diretta

Metodo di IPC che connette due processi tramite un solo link, creato automaticamente.

25
New cards

Comunicazione Indiretta

Che tipo di comunicazione é quando usiamo una mailbox?

26
New cards

Messaggi Sincroni

Messaggi in cui il mittente é bloccato fino a che il messaggio non é ricevuto.

27
New cards

Messaggi Asincroni

Messaggi in cui il mittente invia il messaggio e continua la sua esecuzione.

28
New cards

Rendezvous

Situazione in cui sia l'invio che la ricezione sono bloccanti.

29
New cards

Socket

L'insieme di indirizzo IP e Porta

30
New cards

Remote procedure Call

Per quale tipo di comunicazioni, i messaggi in arrivo e in partenza vengono processati da uno stub?

31
New cards

Thread

le entitá schedulate per l'esecuzione nella CPU.

32
New cards

Multithreading

capacitá di un sistema operativo di permettere piú tracce di esecuzione concorrenti in un singolo processo.

33
New cards

Legge di Amdahl

Come si chiama la legge che identifica il guadagno di performance nell'aggiungere piú core ad un applicazione che ha sia componenti seriali che paralleli

34
New cards

Parallelismo dei dati

viene distribuito dei sottoset degli stessi dati a piú core e assegna qualche operazione ad ognuno.

35
New cards

Parallelismo dei compiti

Quando i thread sono distribuiti in diversi core e ogni thread esegue un singolo compito, come si chiama?

36
New cards

Thread impliciti ed espliciti dell'utente

Tipi di thread che possono essere creati e gestiti dall’utente

37
New cards

LightWeight Process

Come si chiama un'unitá di esecuzione piú leggera di un processo tradizionale.

38
New cards

Swapping

lo spostamento temporaneo su disco.

39
New cards

Tempo di Turnaround

é il tempo totale impiegato da un processo per essere completato.

40
New cards

Tempo di risposta

é il tempo che intercorre tra la sottomissione di un processo e la prima volta che inizia a essere eseguito.

41
New cards

Tempo di attesa

é il tempo totale trascorso dal processo in coda senza essere in esecuzione

42
New cards

MultiProcessor Scheduling

Come si chiama la pianificazione dei processori in un sistema multiprocessore

43
New cards

Affinitá

qual é una polita di scheduling che lega un thread o un processo a una particolare core della CPU

44
New cards

Bilanciamento del carico

Tiene il carico di lavoro distribuito tra tutte le core

45
New cards

Soft affinity

Ne bilanciamento del carico tiene il carico di lavoro distribuito tra tutte le core, Nel sistema preferisce essguire un thread su un certo core, ma non impedisce la migrazione verso altri core se necessario

46
New cards

Affinity

Ne bilanciamento del carico tiene il carico di lavoro distribuito tra tutte le core, impone che un thread venga eseguito solo su un sottoinsieme specifico di core. Questa tecnica é usata per migliorare le prestazioni di applicazioni real-time.

47
New cards

Real time CPU scheduling

qual é una strategia di gestione della CPU progettata per garantire che i processi critici vengano eseguiti entro vincoli di tempo specifici.

48
New cards

Tempo di latenza di Interrupt

Tempo da quando arriva il segnale di interrupt a quando viene iniziare la routine di interruzione

49
New cards

Dispatcher

Come si chiama il controllore che passa il controllo della CPU al processo selezionato nella fase di scheduling?

50
New cards

Algoritmo O(1)

L'algoritmo di scheduling basato su code di prioritá che opera in tempo costante, indipendentemente dal numero di processi

51
New cards

Algoritmo CFS (Completely Fair Scheduler)

Algoritmo di schedulazione dei processi che garantisce una condivisione equa della CPU tra tutti i processi, utilizzando una struttura dati ad albero rosso-nero per ordinare i processi in base al loro tempo virtuale di esecuzione.
Ogni processo riceve la CPU in modo proporzionale alla sua priorità, senza usare time slice fissi, ma decidendo dinamicamente il tempo di esecuzione.

52
New cards

Mutex Lock

Utilizzato nei sistemi operativi per garantire che solo un processo alla volta possa accedere a una risorsa condivisa o a una sezione critica

53
New cards

Spinlock

Come si chiama un loop all'interno di un thread che controlla se la risorsa é disponibile.

54
New cards

Semafori

Meccanismo di sincronizzazione usato per gestire l'accesso a risorse condivise tra piú processi o thread

55
New cards

Monitor

Struttura di sincronizzazione che permette l’accesso esclusivo a una sezione critica attraverso l’uso di variabili condizionali e meccanismi di mutua esclusione integrati, facilitando la gestione della concorrenza nei programmi.

56
New cards

Single Source Allocation

si riferisce a una situazione in cui ogni risorsa di un certo tipo puó essere allocata a un solo processo alla volta.

57
New cards

Scheduling

il processo con cui il sistema operativo decide quale processo o thread eseguire e per quanto tempo sulla CPU o su altre risorse

58
New cards

Liveness

si riferisce alla capacitá di un sistema di garantire che i processi continuino a fare progressi e non rimangano bloccati indefinitamente.

59
New cards

Deadlock

come si chiama quella situazione che si verifica quando un insieme di processi richiede risorse che sono giá in uso da altri processi, creando una situazione di attesa reciproca.

60
New cards

Riutilizzabili

Le risorse che possono essere utilizzate da un solo processo alla volta, vengono allocate, utilizzate e successivamente rilasciate per altri processi

61
New cards

Consumabili

Le risorse che vengono generate da un processo e consumate da un altro(ad esempio i segnali, i messaggi o le interruzioni)

62
New cards

Mutual exclusion

Condizione per la quale i processi devono accedere uno alla volta a una determinata risorsa

63
New cards

Hold and Wait

un processo giá in possesso di risorse ne attende altre senza rilasciare quelle giá assegnate

64
New cards

No preemption

Una risorsa non puó essere sottratta a un processo, ma deve essere rilasciata volontariamente

65
New cards

Circular Waiting

Esiste una catena circolare di processi in cui ciascuno aspetta una risorsa detenuta dal successivo della catena

66
New cards

Resource Allocation Graph(RAG)

un modo per rappresentare l'allocazione delle risorse nei sistemi operativi, é utilizzato specialmente per identificare la presenza di deadlock.

67
New cards

Claim Edge

un concetto usato nei RAG per rappresentare una richiesta potenziale di una risorsa da parte di un processo, senza che la risorsa sia ancora stata effettivamente allocata.

68
New cards

Algoritmo di prevenzione del deadlock tramite un grafo delle risorse con claim edge

controlla che la richiesta effettuata dal claim edge non comporti la creazione di un ciclo e quindi di un deadlock.

69
New cards

Algoritmo dei Banchieri

Algoritmo utilizzato per evitare il deadlock nell'allocazione delle risorse. Simula l'assegnazione delle risorse richieste da un processo e verifica se il sistema rimane in uno stato sicuro. Se lo stato è sicuro, le risorse vengono allocate; altrimenti, la richiesta viene posticipata.

70
New cards

Deadlock Detection

é un approccio in cui il sistema permette il verificarsi del deadlock e poi cerca di rilevarlo e risolverlo

71
New cards

Resource Allocation Graph (RAG)

É un metodo per individuare il deadlock quanto ogni tipo di risorsa ha una sola istanza(cioé non esistono piú copie della stessa risorsa) disponibile nel sistema.

72
New cards

Resource Allocation Graph (RAG)

é un metodo per individuare il deadlock Se c'é un ciclo allora significa che c'é un deadlock

73
New cards

Multiple Istance per Risorsa

che approccio é quando ogni tipo di risorsa puó avere piú di un istanza disponibile(ogni tipo di risorsa ha piú copie disponibili).

74
New cards

Memoria principale

È la memoria del computer che conserva i dati e i programmi in esecuzione in modo temporaneo durante l’elaborazione.
Ha accesso diretto e veloce da parte della CPU, ma perde il contenuto quando il sistema viene spento.

75
New cards

Page Table base Register (PTBR)

indica l'inizio della tabella delle pagine

76
New cards

Page Table Length Register (PTLR)

Specifica la dimensione della tabella delle pagine, aiutando a controllare che gli accessi siano validi

77
New cards

Translation Lookaside Buffer (TLB)

Memorizza le traduzioni(mapping) piú recenti degli indirizzi virtuali a quelli fisici

78
New cards

Dynamic Loading

Tecnica in cui un programma carica in memoria solamente le parti di codice e i dati che gli servono in quel momento, invece di caricare l'intero programma dall'inizio

79
New cards

linking

il processo che collega il codice scritto dal programmatore con le librerie e altri moduli necessari per eseguire il programma.

80
New cards

Buddy system

Invece di avere partizioni completamente variabili, la memoria viene suddivisa ricorsivamente in coppie di dimensioni via via minori, l'obiettivo é ridurre la frammentazione esterna

81
New cards

Stream

è un canale di comunicazione full-duplex tra un processo utente e un dispositivo I/O. I dati possono quindi andare in entrambe le direzioni contemporaneamente

82
New cards

Software che estende la macchina hardware e gestisce le risorse, fornendo servizi tramite chiamate di sistema

Cos’è un sistema operativo?

83
New cards

Processori, memoria principale, dischi, dispositivi di I/O e bus di sistema

Quali componenti hardware controlla il SO?

84
New cards

Registro della CPU che contiene l’indirizzo della prossima istruzione

Che cos’é il Program Counter(PC)?

85
New cards

Punta alla cima dello stack corrente, usato per frame di procedura.

A che cosa serve lo Stack Pointer?

86
New cards

Modalitá utente(istruzioni limitate) e modalitá kernel (privilegiata)

Quali modalitá di esecuzione esistono in una CPU?

87
New cards

Istruzione hardware o software che passa il controllo al kernel, usata per syscall o eccezioni

Che cosa é una trap?

88
New cards

Registri CUPU → cache → ram → disco magnetico → nastro

Elenca i livelli della gerarchia di memoria

89
New cards

Hit: dato in cache → accesso veloce; Miss: serve RAM→ accesso piú lento

Differenza tra cache hit e cache miss

90
New cards

Chip che interfaccia dispositivo e CPU, gestito via driver kernel

Cos’é un controllore di I/O?

91
New cards

Controllore avvia I/O, poi quando termina genera IRQ; CPU salva contesto e chiama Handler.

Come funziona un interruppt da dispositivo?

92
New cards

Copia blocchi tra memoria e dispositivo senza CPU, riducendo l’overhead.

A cosa serve il DMA?

93
New cards

Programma in esecuzione con spazio di indirizzamento e PCP (Process Control Block)

Definisci Processo

94
New cards

PID, stato, registri, PC, SP, lista file aperti, limiti memoria, parent/child, prioritá

Cosa contiene un PCB?

95
New cards

Ready, Running, Waiting, Terminated

Quali stati puó assumere un processo?

96
New cards

Salvataggio/ripristino di PCB e registri per cambiare processo, genera overhead.

Cos’é il content switch?

97
New cards

Con duplicazione(foro) o esecuzione di un programma differente attraverso syscall.

Come si crea un processo figlio?

98
New cards

Diventa zombie(risorse non deallocate finché il padre non chiama wait

Cosa succede se un figlio termina senza wait() del padre?

99
New cards

Figlio diventa orfano e viene adottato da init.

Cosa succede se il padre termina senza wait sul figlio?

100
New cards

Identificativi di utente e gruppo; ogni processo eredita UID del creatore.

Che cosa sono UID e GID?