Glossario OS - Sistemi Operativi

Termini chiave dei sistemi operativi: processi, thread, scheduling, memoria virtuale, file system, kernel e meccanismi di gestione dell'hardware.

  • A

  • Accesso diretto alla memoria (DMA)

    Tecnica di I/O in cui un controller dedicato trasferisce dati tra un dispositivo e la memoria centrale senza impegnare la CPU per ogni byte: il processore avvia il trasferimento e viene notificato con un interrupt al termine, liberando cicli di calcolo.
  • Affinità del processore

    Tendenza o vincolo dello scheduler a rieseguire un processo sempre sulla stessa CPU in un sistema multiprocessore, per sfruttare i dati già presenti nella cache. Può essere debole, come semplice preferenza, o forte, come obbligo imposto dall'utente.
  • Albero dei processi

    Struttura gerarchica che rappresenta le relazioni padre-figlio tra i processi di un sistema: ogni processo, creato ad esempio con fork(), discende da un genitore, con radice nel primo processo avviato dal kernel (init o systemd).
  • Algoritmi di sostituzione delle pagine

    Politiche che, in caso di page fault senza frame liberi, scelgono quale pagina rimuovere dalla memoria per far posto a quella richiesta. Esempi sono FIFO, LRU (meno usata di recente) e l'algoritmo ottimale, che minimizza i fault ma non è realizzabile.
  • Allocazione dei frame

    Criterio con cui il SO ripartisce i frame di memoria fisica tra i processi: può essere fissa o proporzionale alla dimensione, con rimpiazzo locale, solo tra i propri frame, o globale, sottraendone anche ad altri processi.
  • Anello di protezione (protection ring)

    Livello gerarchico di privilegio imposto dalla CPU per isolare il codice: l'anello 0 (kernel) ha il massimo controllo sull'hardware, gli anelli esterni (fino a 3, spazio utente) hanno privilegi via via minori, prevenendo accessi non autorizzati.
  • B

  • Biometric Authentication

    Autenticazione che verifica l'identità tramite caratteristiche fisiche o comportamentali dell'utente, come impronte digitali, volto, iride o dinamica di digitazione. Il tratto rilevato viene convertito in un modello matematico e confrontato con quello registrato; a livello di sistema operativo integra o sostituisce la password, come in Windows Hello o Touch ID su macOS.
  • BIOS

    Firmware che all'accensione inizializza e verifica l'hardware del computer e avvia il caricamento del sistema operativo. È il primo software eseguito su molte macchine, oggi spesso sostituito da UEFI.
  • Bootloader

    Programma di avvio che, terminata la fase del firmware (BIOS o UEFI), individua e carica in memoria il kernel del sistema operativo, gli passa i parametri e ne avvia l'esecuzione. Su Linux l'esempio più diffuso e GRUB, che consente anche di scegliere fra più sistemi installati sulla stessa macchina.
  • Buffer

    Il buffer è un'area di memoria temporanea dove i dati sostano transitando tra due componenti che lavorano a velocità diverse, come la CPU e un disco. Accumulandoli e rilasciandoli con ritmo costante, smorza le differenze di velocità, riduce le operazioni di I/O ed evita perdite quando produttore e consumatore non sono sincronizzati.
  • C

  • Coda multilivello con retroazione

    Variante dello scheduling a code multilivello in cui i processi si spostano tra le code in base al comportamento: chi consuma interi quanti scende di priorità, chi cede prima la CPU sale. Favorisce i processi interattivi e previene la starvation con l'aging.
  • Condizioni di Coffman

    Le quattro condizioni necessarie che devono valere contemporaneamente perché si verifichi un deadlock: mutua esclusione, possesso e attesa (hold and wait), assenza di prelazione e attesa circolare; negarne anche una sola previene lo stallo.
  • Container

    Unità di virtualizzazione a livello di sistema operativo che isola un'applicazione e le sue dipendenze condividendo il kernel dell'host: più leggero di una macchina virtuale, non emula hardware ma sfrutta funzioni del kernel per separare processi e risorse.
  • Context Switch

    Operazione con cui il sistema operativo salva lo stato (contesto) di un processo o thread in esecuzione (registri, program counter, puntatore di stack, informazioni di memoria) e ripristina quello di un altro, permettendo di alternare più attività sulla stessa CPU. Innescato dallo scheduler o da interruzioni, ha un costo che ne consiglia la parsimonia.
  • D

  • Daemon

    Processo che gira in background senza terminale di controllo ne interazione diretta con l'utente, restando in attesa di eventi o richieste da servire. E tipico dei servizi di sistema, come i demoni di stampa, di rete o di log; su Linux tali processi sono avviati e supervisionati da init o systemd.
  • Descrittore di file (file descriptor)

    Intero non negativo che il kernel assegna a un file o flusso di I/O aperto da un processo, usato come riferimento nelle chiamate di sistema di lettura e scrittura; per convenzione 0, 1 e 2 sono standard input, output ed error.
  • Descrittore di processo (PCB)

    Struttura dati mantenuta dal kernel per ogni processo, detta Process Control Block; conserva stato del processo, program counter, registri della CPU, informazioni di scheduling, di gestione della memoria e di I/O necessarie a sospenderlo e riprenderlo.
  • Dispatcher

    Componente dello scheduler a breve termine che assegna concretamente la CPU al processo scelto: esegue il cambio di contesto, passa alla modalità utente e salta all'istruzione da riprendere. Il tempo che impiega è detto latenza di dispatch.
  • Dispositivo a blocchi e dispositivo a caratteri

    Classificazione dei dispositivi di I/O nei sistemi Unix: quelli a blocchi (dischi) trasferiscono dati in unità di dimensione fissa con accesso casuale, quelli a caratteri (terminali, porte seriali) trasferiscono flussi di byte in modo sequenziale.
  • Driver

    Il driver è il software che consente al sistema operativo di comunicare con un dispositivo hardware, traducendo le richieste generiche del kernel nei comandi specifici della periferica. Nasconde i dettagli dell'hardware dietro un'interfaccia uniforme, così il sistema tratta stampanti, dischi o schede di rete diverse in modo omogeneo.
  • E

  • Earliest Deadline First (EDF)

    Algoritmo di scheduling real-time a priorità dinamica che assegna la CPU al processo con la scadenza (deadline) più imminente. È ottimale su monoprocessore: se un insieme di task è schedulabile, EDF ne rispetta tutte le scadenze.
  • ext4

    File system molto diffuso su Linux, evoluzione di ext2/ext3. Usa extent (intervalli contigui di blocchi) al posto della mappatura a blocchi singoli per ridurre la frammentazione, journaling tramite lo strato JBD2 per limitare la corruzione dopo un crash, e allocazione ritardata per scelte più efficienti. Supporta volumi molto grandi e nomi di file lunghi.
  • F

  • File System

    Componente del sistema operativo che organizza i dati in file e directory su un dispositivo di memorizzazione, gestendone nome, struttura gerarchica, permessi di accesso e metadati. Definisce come i blocchi del supporto vengono allocati e ritrovati; esempi diffusi sono ext4, NTFS e APFS.
  • First-Come First-Served (FCFS)

    Algoritmo di scheduling senza prelazione che serve i processi nell'ordine di arrivo, gestendoli con una coda FIFO. Semplice ma soggetto all'effetto convoglio: processi brevi restano penalizzati da uno lungo che occupa a lungo la CPU.
  • Frammentazione interna ed esterna

    Spreco di memoria nell'allocazione: la frammentazione interna è lo spazio inutilizzato dentro un blocco assegnato, tipica della paginazione; quella esterna è memoria libera ma suddivisa in porzioni non contigue troppo piccole, tipica della segmentazione.
  • G

  • Gestore di interrupt (ISR)

    Routine del sistema operativo eseguita in risposta a un interrupt, il cui indirizzo è reperito nella tabella dei vettori di interrupt: salva il contesto corrente, serve la richiesta della periferica e ripristina l'esecuzione interrotta.
  • Gruppi di controllo (cgroups)

    Funzione del kernel Linux che limita, contabilizza e isola l'uso delle risorse (CPU, memoria, I/O di rete e disco) di un insieme di processi: insieme ai namespace costituisce la base tecnica dei container.
  • H

  • Hypervisor

    L'hypervisor è il software che crea e gestisce macchine virtuali, ripartendo CPU, memoria e I/O fisici tra più sistemi operativi ospiti sullo stesso hardware. Quello di tipo 1 gira direttamente sull'hardware, quello di tipo 2 sopra un sistema operativo esistente; entrambi isolano le macchine virtuali tra loro.
  • Hypervisor di tipo 1 e di tipo 2

    Classificazione degli hypervisor: quello di tipo 1 (bare-metal) gira direttamente sull'hardware fisico gestendo i guest senza SO sottostante, quello di tipo 2 (hosted) gira come applicazione su un sistema operativo ospite già installato.
  • I

  • I/O mappato in memoria (memory-mapped I/O)

    Tecnica in cui i registri di controllo e i buffer di un dispositivo sono associati a indirizzi dello spazio di memoria: la CPU comunica con la periferica leggendo e scrivendo quegli indirizzi con normali istruzioni di accesso alla memoria, senza istruzioni di I/O dedicate.
  • Identity Federation

    Meccanismo che consente a più sistemi o organizzazioni di condividere le identità tramite un provider di identità fidato, così che un utente autenticato una sola volta acceda a servizi correlati senza nuove credenziali. Si appoggia a protocolli come SAML, OAuth 2.0 e OpenID Connect ed è alla base del single sign-on tra domini distinti.
  • Identity Governance

    Insieme di processi e strumenti che gestiscono il ciclo di vita delle identità digitali, dalla creazione alla revoca, garantendo che ogni utente disponga solo dei permessi necessari e aggiornati nel tempo. Comprende il provisioning degli account, la revisione periodica degli accessi e la separazione dei compiti.
  • Identity Proofing

    L'identity proofing è il processo con cui si raccolgono, convalidano e verificano le informazioni su una persona per accertarne l'identità reale, con un dato livello di confidenza, prima di emettere credenziali digitali. Impiega documenti, dati biometrici o controlli di affidabilità, ed è distinto dalla verifica compiuta a ogni successivo accesso.
  • Indirizzo logico e indirizzo fisico

    L'indirizzo logico (o virtuale) è generato dalla CPU nello spazio di indirizzamento del processo; l'indirizzo fisico individua la cella reale nella RAM. La MMU converte il primo nel secondo a tempo di esecuzione.
  • Init System

    Primo processo in spazio utente avviato dal kernel al termine del boot, con PID 1, da cui discendono tutti gli altri processi. Monta i file system, avvia e arresta i servizi in modo ordinato e ne gestisce il ciclo di vita. Storicamente era SysV init; oggi su molte distribuzioni Linux è sostituito da systemd, con avvio parallelo dei servizi.
  • Inode

    Struttura dati che nei file system Unix conserva i metadati di un file (tipo, permessi, proprietario, dimensione, timestamp e posizione dei blocchi su disco) ma non il nome, che risiede nella directory. Ogni file possiede un inode identificato da un numero univoco all'interno del file system.
  • Interrupt

    L'interrupt è un segnale che sospende il normale flusso di esecuzione della CPU per gestire un evento, come l'arrivo di dati da una periferica o lo scadere di un timer. La CPU salva lo stato corrente, esegue la relativa routine di servizio e poi riprende l'esecuzione dal punto interrotto.
  • IPC (Inter-Process Communication)

    Insieme di meccanismi offerti dal sistema operativo affinché processi distinti si scambino dati e si coordinino, superando l'isolamento dei rispettivi spazi di indirizzamento. Comprende pipe e named pipe, code di messaggi, memoria condivisa, semafori e socket; la memoria condivisa è la più veloce ma richiede sincronizzazione esplicita per evitare corse critiche.
  • J

  • Journaling

    Tecnica con cui il file system registra le operazioni previste in un giornale (log) prima di applicarle effettivamente ai dati. In caso di crash o spegnimento improvviso permette di ripristinare rapidamente uno stato coerente, rigiocando o annullando le operazioni incomplete, come avviene in ext4 o NTFS.
  • Just-In-Time Access (JIT)

    Il Just-In-Time Access concede permessi privilegiati solo per il tempo strettamente necessario a svolgere un compito, revocandoli subito dopo. Applicando il principio del minimo privilegio, riduce la finestra di esposizione sfruttabile in caso di compromissione di un account, invece di mantenere diritti elevati in modo permanente.
  • K

  • Kernel

    Nucleo del sistema operativo che gestisce le risorse hardware (CPU, memoria, periferiche) e fa da tramite tra hardware e software applicativo. Esegue in modalità privilegiata (kernel mode) ed espone le sue funzioni ai programmi tramite le chiamate di sistema; si occupa di scheduling, gestione della memoria, file system e driver di dispositivo.
  • Kernel ibrido

    Architettura di kernel che combina l'approccio monolitico e quello a microkernel, eseguendo in modalità kernel alcuni servizi che un microkernel puro terrebbe in spazio utente, per bilanciare prestazioni e modularità.
  • Kernel monolitico

    Architettura di kernel in cui l'intero insieme dei servizi del SO (gestione processi, memoria, file system, driver) gira in un unico spazio di indirizzamento in modalità kernel, garantendo alte prestazioni ma minore isolamento tra i componenti.
  • M

  • Memoria condivisa (shared memory)

    Meccanismo IPC in cui più processi mappano nel proprio spazio di indirizzamento una stessa regione di memoria fisica, potendo così scambiare dati alla massima velocità senza copie tramite kernel; richiede sincronizzazione esplicita per evitare corse critiche.
  • Memory Management

    Insieme delle attivita con cui il sistema operativo assegna, protegge e libera la memoria fra i processi. Tramite memoria virtuale, paginazione e MMU traduce gli indirizzi logici in fisici, isola gli spazi di indirizzamento e sposta su disco (swap) le pagine inutilizzate quando la RAM scarseggia.
  • Microkernel

    Architettura di kernel che mantiene nel nucleo solo le funzioni essenziali (scheduling di base, IPC, gestione minima della memoria) e sposta driver, file system e altri servizi in processi in spazio utente, aumentando modularità e robustezza a scapito di overhead di comunicazione.
  • Modalità utente e modalità kernel

    Doppia modalità operativa della CPU con cui il SO protegge il sistema: in modalità kernel il codice accede a tutte le istruzioni e all'hardware, in modalità utente le operazioni privilegiate sono vietate e vanno richieste tramite una chiamata di sistema.
  • Modelli di multithreading

    Schemi di corrispondenza tra thread utente e thread kernel: molti-a-uno (più thread utente su uno kernel), uno-a-uno (ogni thread utente su un thread kernel) e molti-a-molti (multiplazione di N thread utente su M thread kernel).
  • Modulo del kernel (LKM)

    Frammento di codice caricabile e scaricabile a runtime che estende le funzionalità del kernel (tipicamente un driver o un file system) senza dover ricompilare o riavviare il sistema operativo.
  • Mount

    Il mount è l'operazione che rende accessibile un file system collegandolo a un punto (mount point) della gerarchia delle cartelle. Il sistema associa il dispositivo o la partizione a quella posizione, così i suoi file appaiono nell'albero unico; senza mount il volume resta inutilizzabile. L'operazione inversa è l'unmount.
  • Multitasking

    Capacità del sistema operativo di gestire più attività nello stesso periodo alternandole rapidamente sulla CPU, così che appaiano procedere insieme anche su un solo processore. Nel modello preemptive lo scheduler può sottrarre la CPU a un processo allo scadere del suo quanto di tempo, garantendo equità e reattività tra i task in esecuzione.
  • N

  • Namespace del kernel Linux

    Funzione del kernel Linux che fornisce a un gruppo di processi una vista isolata di una risorsa di sistema (PID, rete, mount, hostname, utenti): i processi in namespace diversi non vedono le risorse altrui, abilitando l'isolamento dei container.
  • NTFS

    File system sviluppato da Microsoft e usato da Windows fin dalla linea NT. Organizza le informazioni nella Master File Table (MFT) e supporta permessi ACL, journaling dei metadati, compressione, cifratura e file di grandi dimensioni, offrendo maggiore affidabilità e sicurezza rispetto ai precedenti FAT e FAT32.
  • P

  • Page Fault

    Il page fault è l'eccezione sollevata quando un programma accede a una pagina di memoria virtuale non presente in RAM. Il sistema operativo la individua, la carica dal disco in un frame libero, aggiorna la tabella delle pagine e riprende l'istruzione. Page fault troppo frequenti provocano il thrashing.
  • Paginazione su richiesta

    Tecnica di memoria virtuale che carica in RAM una pagina solo quando viene effettivamente riferita: l'accesso a una pagina assente provoca un page fault, il SO la recupera dal disco in un frame libero e riprende l'istruzione interrotta.
  • Paging

    Tecnica di gestione della memoria che divide lo spazio di indirizzamento in blocchi di dimensione fissa detti pagine, mappati su cornici (frame) della memoria fisica tramite una tabella delle pagine. Elimina la frammentazione esterna, semplifica l'allocazione e abilita la memoria virtuale; la MMU traduce gli indirizzi e la TLB accelera la conversione.
  • Panico del kernel (kernel panic)

    Errore fatale rilevato dal kernel da cui non può ripristinarsi in sicurezza: il sistema operativo interrompe l'esecuzione, mostra informazioni diagnostiche e in genere si arresta o riavvia per evitare corruzione dei dati.
  • Paravirtualizzazione

    Tecnica di virtualizzazione in cui il sistema operativo guest viene modificato per dialogare direttamente con l'hypervisor tramite chiamate dedicate (hypercall), evitando la costosa emulazione dell'hardware e migliorando le prestazioni rispetto alla virtualizzazione completa.
  • Partition

    Suddivisione logica di un disco in aree indipendenti, ciascuna utilizzabile come unità a se con un proprio file system. Consente di separare sistema operativo, dati o più sistemi sullo stesso disco. Lo schema di partizionamento e descritto in tabelle come il vecchio MBR o la più moderna GPT.
  • Passwordless Authentication

    L'autenticazione passwordless elimina l'uso delle password a favore di metodi più sicuri come biometria, PIN locali o chiavi crittografiche. Standard come FIDO2 e le passkey usano coppie di chiavi asimmetriche: la chiave privata resta sul dispositivo, rendendo l'accesso resistente al phishing e al furto di credenziali.
  • PID (Process ID)

    Numero intero univoco che il sistema operativo assegna a ogni processo in esecuzione per identificarlo e gestirlo. Serve a inviare segnali, sospendere o terminare il processo e seguirlo nella tabella dei processi. Su sistemi Unix il PID 1 spetta al processo init; i valori vengono riciclati dopo la terminazione dei processi.
  • Pipe con nome (FIFO)

    Canale IPC unidirezionale rappresentato come file speciale nel file system, che consente a processi non imparentati di comunicare: i dati scritti a un estremo vengono letti dall'altro in ordine FIFO, a differenza della pipe anonima limitata ai processi parenti.
  • POST (Power-On Self-Test)

    Sequenza di controlli diagnostici che il firmware (BIOS o UEFI) esegue all'accensione per verificare che l'hardware essenziale (CPU, memoria, scheda video e periferiche di base) funzioni correttamente prima di passare il controllo al bootloader. Eventuali guasti sono segnalati con codici a video o segnali acustici.
  • Preemption

    La preemption è la capacità del sistema operativo di sospendere forzatamente un processo o thread in esecuzione per assegnare la CPU a un altro, tipicamente allo scadere del quanto di tempo o all'arrivo di un task più prioritario. È alla base del multitasking reattivo e impedisce che un processo monopolizzi il processore.
  • Privileged Access Management (PAM)

    Insieme di pratiche e strumenti che proteggono, controllano e monitorano gli account con privilegi elevati, come amministratori di sistema, root o service account. Applica il principio del minimo privilegio, custodisce e ruota le credenziali in un vault, concede accessi temporanei e registra le sessioni, riducendo il rischio di abusi o compromissioni.
  • Processo

    Programma in esecuzione dotato di risorse proprie: spazio di memoria separato, descrittori di file, contesto della CPU e un identificatore (PID). E l'unità di base gestita e schedulata dal sistema operativo, che ne isola la memoria dagli altri processi; un processo può contenere uno o più thread.
  • Processo orfano

    Processo ancora in esecuzione il cui processo genitore è terminato. Nei sistemi Unix viene adottato dal processo init (PID 1), che ne raccoglie lo stato di uscita evitando che resti indefinitamente uno zombie.
  • Q

  • Quanto di tempo

    Intervallo massimo di CPU assegnato a un processo negli algoritmi con prelazione come il round robin; alla sua scadenza un interrupt del timer restituisce il controllo allo scheduler. Detto anche time slice o quanto temporale.
  • R

  • RAID

    Il RAID combina più dischi in un unico insieme logico per aumentare prestazioni, affidabilità o entrambe. I vari livelli offrono compromessi diversi: lo striping (RAID 0) distribuisce i dati per la velocità, il mirroring (RAID 1) li duplica, il RAID 5 usa la parità per tollerare il guasto di un disco.
  • Registry di sistema

    Database gerarchico in cui Windows conserva impostazioni di sistema, driver, servizi, profili utente e configurazioni delle applicazioni. È organizzato in chiavi radice (hive) come HKEY_LOCAL_MACHINE e HKEY_CURRENT_USER, con chiavi e valori; sostituisce i vecchi file .ini e una sua corruzione può impedire l'avvio o il corretto funzionamento del computer.
  • Richiesta di interrupt (IRQ)

    Segnale hardware con cui un dispositivo comunica alla CPU la necessità di attenzione (es. dato pronto, operazione completata): a ogni linea IRQ è associato un gestore che il sistema operativo esegue per servire la periferica.
  • Risk-Based Authentication (RBA)

    Tecnica di autenticazione adattiva che valuta il rischio di ogni tentativo di accesso analizzando segnali di contesto come dispositivo, posizione, indirizzo IP e comportamento dell'utente. In base al livello di rischio stimato adatta i controlli, richiedendo fattori aggiuntivi solo quando emergono anomalie.
  • Round Robin

    Il Round Robin è un algoritmo di scheduling che assegna a ogni processo pronto un breve turno, il quanto di tempo, a rotazione ciclica in una coda. Quando il quanto scade il processo viene prelazionato e rimesso in fondo. Garantisce equità e buona reattività, evitando che un processo monopolizzi la CPU.
  • Runlevel

    Stato operativo predefinito dei sistemi Unix con init SysV che determina quali servizi sono attivi. Convenzionalmente 0 arresta il sistema, 1 è la modalità single-user, 3 il multiutente testuale con rete, 5 il multiutente con interfaccia grafica e 6 il riavvio. Su Linux con systemd i runlevel sono sostituiti dai target, per esempio graphical.target.
  • S

  • Scheduler

    Componente del sistema operativo che decide quale processo o thread pronto eseguire sulla CPU e per quanto tempo, ripartendo il tempo di calcolo tra le attivita. Applica politiche come round-robin o a priorita e, nei sistemi time-sharing, alterna rapidamente i processi dando l'illusione della parallelita.
  • Scheduler a lungo termine e a breve termine

    Livelli di schedulazione del SO: lo scheduler a lungo termine decide quali processi ammettere in memoria, quello a breve termine sceglie con alta frequenza quale processo pronto assegnare alla CPU. Un eventuale scheduler a medio termine gestisce lo swapping.
  • Scheduling a code multilivello

    Politica che ripartisce i processi in code distinte per classe (es. interattivi, batch), ciascuna con un proprio algoritmo; tra le code si applica una schedulazione a priorità fissa o a divisione di tempo. I processi non migrano tra le code.
  • Scheduling a priorità

    Algoritmo che assegna la CPU al processo con priorità più alta, con o senza prelazione. Rischia la starvation dei processi a bassa priorità, mitigata dall'aging, che innalza gradualmente la priorità di chi attende da tempo.
  • Secure Boot

    Funzione dello standard UEFI che verifica la firma digitale del bootloader e dei componenti caricati all'avvio, consentendo l'esecuzione solo di codice attendibile e impedendo il caricamento di rootkit o software non firmato durante il boot.
  • Segmentation

    La segmentation è una gestione della memoria che la suddivide in segmenti di dimensione variabile legati alla logica del programma, come codice, dati e stack. Ogni indirizzo unisce segmento e offset; una tabella dei segmenti fornisce base e limite, permettendo protezione e condivisione ma esponendo alla frammentazione esterna.
  • Segnale (sistemi operativi)

    Meccanismo asincrono con cui il kernel o un processo notifica un evento a un altro processo, che può gestirlo, ignorarlo o subirne l'azione predefinita. Esempi tipici nei sistemi Unix sono SIGKILL, SIGTERM e SIGSEGV.
  • Session Hijacking Protection

    Insieme di controlli volti a impedire il furto o l'uso illecito di una sessione autenticata, cioè dell'identificativo (cookie o token) che tiene l'utente connesso. Comprende trasporto cifrato con HTTPS, cookie con attributi Secure, HttpOnly e SameSite, rigenerazione dell'ID dopo il login, scadenze brevi e verifica di parametri come indirizzo IP o user agent.
  • Shell

    Interprete dei comandi che fa da tramite tra l'utente e il kernel del sistema operativo, ricevendo istruzioni e avviando i relativi programmi. Nella forma testuale (CLI) si digitano comandi, come in Bash o PowerShell; esistono anche shell grafiche che gestiscono desktop, icone e finestre.
  • Shortest Job First (SJF)

    Algoritmo che assegna la CPU al processo con il più breve tempo di elaborazione stimato; minimizza il tempo medio di attesa ma richiede di prevedere la durata dei burst e può provocare la starvation dei processi lunghi.
  • Single Sign-On (SSO)

    Il Single Sign-On permette a un utente di autenticarsi una sola volta presso un provider di identità e accedere poi a più servizi senza reinserire le credenziali. Un token o una sessione condivisa attesta l'avvenuta autenticazione; protocolli come SAML e OpenID Connect ne sono implementazioni diffuse.
  • Sistema operativo distribuito

    Sistema operativo che gestisce un insieme di calcolatori indipendenti collegati in rete presentandoli all'utente come un'unica macchina coerente, coordinando in modo trasparente risorse, processi e comunicazione tra i nodi.
  • Sistema operativo real-time (RTOS)

    Sistema operativo progettato per garantire tempi di risposta deterministici entro scadenze definite: in un RTOS hard il mancato rispetto di una scadenza è un fallimento, in uno soft comporta solo un degrado della qualità del servizio.
  • Socket di dominio Unix

    Endpoint di comunicazione IPC tra processi sullo stesso host, identificato da un percorso nel file system: offre un'interfaccia analoga ai socket di rete ma con maggiore efficienza, potendo scambiare anche descrittori di file e credenziali.
  • Spazio utente (user space)

    Regione di memoria e contesto di esecuzione riservati ai programmi applicativi, separati dallo spazio kernel: il codice in spazio utente non accede direttamente all'hardware ne alla memoria del kernel e interagisce con esso tramite chiamate di sistema.
  • Spooling

    Tecnica che accoda su disco i lavori destinati a un dispositivo lento e condiviso (tipicamente la stampante) in un buffer intermedio, così che i processi non attendano il dispositivo e questo elabori le richieste in sequenza in modo asincrono.
  • Stati del processo

    Insieme delle condizioni in cui un processo può trovarsi nel suo ciclo di vita: tipicamente nuovo, pronto, in esecuzione, in attesa e terminato. Il sistema operativo governa le transizioni tra questi stati tramite scheduler e dispatcher.
  • Swap

    Spazio su disco (partizione o file) usato dal sistema operativo come estensione della RAM: le pagine di memoria meno utilizzate vengono trasferite li' per liberare memoria fisica per i processi attivi, e ricaricate quando servono. Fa parte della memoria virtuale; un uso intenso e continuo, detto thrashing, degrada molto le prestazioni per la lentezza del disco.
  • System Call

    La system call è la richiesta con cui un programma in spazio utente chiede un servizio al kernel, ad esempio leggere un file, creare un processo o allocare memoria. Provoca il passaggio controllato in modalità privilegiata ed è il ponte tra applicazioni e sistema operativo, esposto in forma più comoda dalle librerie di sistema.
  • T

  • Tabella delle pagine

    Struttura dati per processo che mappa i numeri di pagina dello spazio logico ai frame della memoria fisica; ogni voce contiene il frame e bit di controllo (validità, protezione, modifica). È consultata dalla MMU a ogni accesso in memoria.
  • Thrashing

    Condizione di degrado in cui un sistema in sovraccarico di memoria passa più tempo a gestire page fault e swapping che a eseguire i processi, con crollo dell'utilizzo utile della CPU. Si verifica quando i working set superano i frame disponibili.
  • Thread

    Flusso di esecuzione leggero interno a un processo, che ne condivide spazio di indirizzamento, memoria e risorse ma dispone di proprio stack, registri e program counter. Più thread di uno stesso processo possono girare in parallelo su core diversi; la condivisione della memoria li rende efficienti ma richiede sincronizzazione, con mutex e semafori, per evitare corse critiche.
  • Thread a livello utente e a livello kernel

    Distinzione tra thread gestiti da una libreria nello spazio utente, veloci ma invisibili al kernel, e thread gestiti direttamente dal kernel, schedulabili singolarmente: se uno si blocca su I/O gli altri thread del processo possono proseguire.
  • TLB (Translation Lookaside Buffer)

    Piccola cache associativa nella MMU che memorizza le traduzioni recenti da numero di pagina logico a frame fisico, evitando di consultare ogni volta la tabella delle pagine in memoria. Un TLB miss impone l'accesso alla tabella delle pagine.
  • Trap

    Interruzione sincrona generata dall'esecuzione stessa di un'istruzione, per un errore (es. divisione per zero) o una richiesta volontaria di servizio al SO: a differenza dell'interrupt hardware, la trap è prodotta dal processore in risposta al codice in corso.
  • U

  • UEFI

    Firmware moderno che sostituisce il BIOS come primo software eseguito all'accensione. Inizializza l'hardware e avvia il boot manager; offre interfaccia più ricca, avvio più rapido, supporto a dischi grandi tramite partizioni GPT e la funzione Secure Boot, che verifica la firma digitale dei componenti caricati.
  • Unikernel

    Immagine di macchina eseguibile specializzata e monolitica ottenuta collegando l'applicazione con i soli servizi del sistema operativo strettamente necessari, in un unico spazio di indirizzamento: risulta minimale, con avvio rapido e superficie di attacco ridotta.
  • Unità di gestione della memoria (MMU)

    Componente hardware che traduce in tempo reale gli indirizzi logici generati dalla CPU in indirizzi fisici, usando tabella delle pagine e TLB, e applica la protezione della memoria generando un'eccezione (page fault) sugli accessi non validi.
  • V

  • Virtual Memory

    La memoria virtuale fa apparire a ogni processo uno spazio di indirizzi ampio e continuo, indipendente dalla RAM fisica. La MMU traduce gli indirizzi virtuali in fisici tramite le tabelle delle pagine, e le pagine inattive possono essere spostate su disco, permettendo di eseguire programmi più grandi della memoria fisica.
  • W

  • Working set

    Insieme delle pagine riferite da un processo in una finestra temporale recente; approssima la memoria di cui ha effettivamente bisogno. Il SO usa il modello del working set per allocare i frame ed evitare il thrashing sospendendo processi se necessario.
  • Z

  • Zombie Process

    Processo che ha terminato l'esecuzione ma la cui voce resta nella tabella dei processi finché il genitore non ne raccoglie lo stato di uscita con una chiamata della famiglia wait(). Occupa solo una voce e il PID, non risorse di calcolo o memoria; se il genitore non lo raccoglie il processo init lo adotta e lo ripulisce, evitando l'accumulo di zombie.
Preferenze cookie

Gestisci i cookie usati su Glossario Italiano. Puoi modificare le preferenze in qualsiasi momento dal link "Gestisci preferenze" in fondo a ogni pagina.

  • Necessari
    Login, sicurezza (CSRF), preferenze cookie. Sempre attivi.
    Sempre on
  • Statistici
    Misurano in forma aggregata come viene usato il sito. Nessun profilo personale.
  • Marketing
    Cookie di reti pubblicitarie esterne, se attivati in futuro. Oggi GLS non usa script di terze parti e i nostri sponsor sono editoriali, non profilano.