Podcast
Questions and Answers
Quale delle seguenti affermazioni descrive meglio il ruolo del sistema operativo nella gestione dei file?
Quale delle seguenti affermazioni descrive meglio il ruolo del sistema operativo nella gestione dei file?
Il sistema operativo deve permettere a un processo di accedere liberamente ai dati di un altro processo.
Il sistema operativo deve permettere a un processo di accedere liberamente ai dati di un altro processo.
False
Qual è la funzione principale della memoria secondaria nel sistema operativo?
Qual è la funzione principale della memoria secondaria nel sistema operativo?
Memorizzare i file permanentemente.
Il sistema operativo deve trovare velocemente spazio libero quando un file viene ______.
Il sistema operativo deve trovare velocemente spazio libero quando un file viene ______.
Signup and view all the answers
Abbina le seguenti funzioni del sistema operativo con le loro descrizioni:
Abbina le seguenti funzioni del sistema operativo con le loro descrizioni:
Signup and view all the answers
Quale dei seguenti servizi è considerato completamente invisibile agli utenti?
Quale dei seguenti servizi è considerato completamente invisibile agli utenti?
Signup and view all the answers
L'interprete dei comandi fa parte del kernel del sistema operativo.
L'interprete dei comandi fa parte del kernel del sistema operativo.
Signup and view all the answers
Cosa fa un interprete dei comandi quando l'utente scrive un comando?
Cosa fa un interprete dei comandi quando l'utente scrive un comando?
Signup and view all the answers
In un sistema operativo Unix-like, il comando per rimuovere un file è ___.
In un sistema operativo Unix-like, il comando per rimuovere un file è ___.
Signup and view all the answers
Abbina i seguenti interpreti dei comandi ai loro nomi:
Abbina i seguenti interpreti dei comandi ai loro nomi:
Signup and view all the answers
Quale affermazione è vera riguardo le interfacce dei sistemi operativi?
Quale affermazione è vera riguardo le interfacce dei sistemi operativi?
Signup and view all the answers
Le chiamate di sistema sono sempre visibili agli utenti.
Le chiamate di sistema sono sempre visibili agli utenti.
Signup and view all the answers
Elenca due esempi di interpreti dei comandi.
Elenca due esempi di interpreti dei comandi.
Signup and view all the answers
Chi ha inventato le interfacce grafiche nel 1973?
Chi ha inventato le interfacce grafiche nel 1973?
Signup and view all the answers
Windows è stato lanciato nel 1995 come un sistema operativo indipendente.
Windows è stato lanciato nel 1995 come un sistema operativo indipendente.
Signup and view all the answers
Quali sono due esempi di interfacce grafiche per Unix?
Quali sono due esempi di interfacce grafiche per Unix?
Signup and view all the answers
Gli ________ sono programmi di sistema utilizzati per comunicare via email e navigare in rete.
Gli ________ sono programmi di sistema utilizzati per comunicare via email e navigare in rete.
Signup and view all the answers
Abbina i seguenti tipi di programmi ai loro scopi:
Abbina i seguenti tipi di programmi ai loro scopi:
Signup and view all the answers
Quale di queste affermazioni sui programmi di sistema è vera?
Quale di queste affermazioni sui programmi di sistema è vera?
Signup and view all the answers
I processi sono programmi in esecuzione.
I processi sono programmi in esecuzione.
Signup and view all the answers
Qual è uno dei compiti del task manager di Windows?
Qual è uno dei compiti del task manager di Windows?
Signup and view all the answers
Il sistema operativo Macintosh è stato lanciato nel ______.
Il sistema operativo Macintosh è stato lanciato nel ______.
Signup and view all the answers
Quale di queste opzioni non è un tipo di programma di sistema menzionato?
Quale di queste opzioni non è un tipo di programma di sistema menzionato?
Signup and view all the answers
Quale di queste affermazioni descrive meglio una Chiamata di Sistema?
Quale di queste affermazioni descrive meglio una Chiamata di Sistema?
Signup and view all the answers
Le API sono una via diretta per effettuare chiamate di sistema.
Le API sono una via diretta per effettuare chiamate di sistema.
Signup and view all the answers
Cosa fa una Chiamata di Sistema 'open' in un programma C?
Cosa fa una Chiamata di Sistema 'open' in un programma C?
Signup and view all the answers
Le ______ sono utilizzate per facilitare l'interazione con il Sistema Operativo.
Le ______ sono utilizzate per facilitare l'interazione con il Sistema Operativo.
Signup and view all the answers
Abbina le seguenti funzioni alle loro descrizioni:
Abbina le seguenti funzioni alle loro descrizioni:
Signup and view all the answers
Quanti processi possono attivare chiamate di sistema in un sistema multi-utente?
Quanti processi possono attivare chiamate di sistema in un sistema multi-utente?
Signup and view all the answers
Le API sono specifiche per ogni linguaggio di programmazione.
Le API sono specifiche per ogni linguaggio di programmazione.
Signup and view all the answers
Qual è la funzione principale delle API nel contesto delle chiamate di sistema?
Qual è la funzione principale delle API nel contesto delle chiamate di sistema?
Signup and view all the answers
Le API per i sistemi Windows sono chiamate ______.
Le API per i sistemi Windows sono chiamate ______.
Signup and view all the answers
Quale dei seguenti linguaggi permette di utilizzare direttamente le system call in Unix?
Quale dei seguenti linguaggi permette di utilizzare direttamente le system call in Unix?
Signup and view all the answers
Quale delle seguenti operazioni è svolta dalla chiamata di sistema 'fopen'?
Quale delle seguenti operazioni è svolta dalla chiamata di sistema 'fopen'?
Signup and view all the answers
Un sistema operativo gestisce solo uno alla volta i processi in esecuzione.
Un sistema operativo gestisce solo uno alla volta i processi in esecuzione.
Signup and view all the answers
Qual è la responsabilità principale del sistema operativo nella gestione dei processi?
Qual è la responsabilità principale del sistema operativo nella gestione dei processi?
Signup and view all the answers
La chiamata di sistema 'fclose' serve a ______ un file aperto.
La chiamata di sistema 'fclose' serve a ______ un file aperto.
Signup and view all the answers
Abbina le seguenti operazioni ai loro relativi tipi di gestione.
Abbina le seguenti operazioni ai loro relativi tipi di gestione.
Signup and view all the answers
Quale tra le seguenti non è un tipo di operazione nella gestione dei processi?
Quale tra le seguenti non è un tipo di operazione nella gestione dei processi?
Signup and view all the answers
Il sistema operativo deve gestire l'accesso simultaneo alla memoria RAM da parte di più processi.
Il sistema operativo deve gestire l'accesso simultaneo alla memoria RAM da parte di più processi.
Signup and view all the answers
Cos'è un processo concorrente?
Cos'è un processo concorrente?
Signup and view all the answers
La funzione 'fprintf' è utilizzata per ______ dati su un file.
La funzione 'fprintf' è utilizzata per ______ dati su un file.
Signup and view all the answers
Quale sistema operativo utilizza principalmente le chiamate di sistema descritte?
Quale sistema operativo utilizza principalmente le chiamate di sistema descritte?
Signup and view all the answers
Study Notes
Strutture dei Sistemi Operativi
- Un sistema operativo fornisce molti servizi agli utenti e ai loro programmi (Figura 2.1).
- Questi servizi includono l'esecuzione di programmi, operazioni di input/output (I/O), gestione dei file, comunicazioni, allocazione delle risorse, gestione degli errori e altro ancora.
- Alcune parti dei servizi sono completamente invisibili all'utente, altre sono parzialmente visibili, mentre altre vengono usate direttamente dall'utente. Il livello di visibilità dipende dal tipo di utente.
- Ad esempio, l'interfaccia utente con il sistema operativo (GUI, touch-screen, riga di comando) è visibile, mentre le chiamate di sistema, la gestione di processi e memoria sono quasi sempre invisibili. La protezione e la sicurezza sono parzialmente visibili.
Interfaccia col Sistema Operativo
- L'interfaccia è lo strumento che gli utenti usano per interagire con il sistema operativo (SO) e utilizzare i suoi servizi.
- Può essere un interprete di comandi o un'interfaccia grafica (GUI) con finestre e menu, o una combinazione di entrambi.
Interprete dei comandi
- Generalmente non fa parte del kernel del SO, ma è un programma separato.
- Esempi includono la shell di MS-DOS e le shell Unix.
- La shell si aspetta istruzioni dall'utente, legge la riga di comando, esegue l'istruzione e passa eventuali argomenti del programma all'eseguibile appropriato.
- I comandi vengono solitamente interpretati e poi lanciati come file eseguibili.
Interfaccia grafica
- I moderni SO offrono interfacce grafiche per gli utenti.
- Sono generalmente più facili da usare rispetto a un'interfaccia di testo.
- I primi successi commerciali delle GUI risalgono a Macintosh (1984).
- Windows ha poi adottato questo paradigma e lo ha integrato in futuro.
- Sistemi operativi come Unix offrono varie interfacce grafiche proprietarie e open source (ad esempio KDE e GNOME).
Programmi/Servizi di Sistema
- Non fanno parte del kernel del SO, ma vengono forniti con esso.
- Facilitano l'utilizzo del sistema.
- Esempi includono gli editor di testo, compilatori, debugger, interpreti, ambienti di sviluppo, programmi di posta elettronica e browser web, e il task manager.
Chiamate di sistema (System Call)
- Rappresentano l'interfaccia tra i processi degli utenti e il SO.
- Consentono ai processi degli utenti di richiedere servizi al SO.
- In Unix, le system call sono procedure che possono essere inserite direttamente nei programmi scritti in linguaggi ad alto livello come C o C++.
- Sembrano subroutine ma trasferiscono il controllo al SO per l'esecuzione della system call.
Chiamate di sistema (System Call): le API
- I programmatori possono utilizzare le API, interfacce per la programmazione di applicazioni, invece delle system call.
- Le API sono uno strato intermedio tra le applicazioni e le system call.
- Questo rende più facile l'utilizzo e migliora la portabilità delle applicazioni perché possono essere utilizzate in più ambienti.
- Esistono API specifiche per vari sistemi operativi, come le API Windows e le API POSIX per varie versioni di Unix, Linux e macOS.
Categorie di system call
- Ogni operazione ha un tipo di system call.
- Ecco alcuni esempi per Windows e Unix (Figura 2.8a).
Gestione dei processi
- In un determinato momento, possono essere attivi più processi anche se solo uno è in esecuzione.
- I processi competono per le risorse hardware come la CPU, memoria primaria e secondaria, e dispositivi di input/output.
- Il SO regola e gestisce l'accesso ai processi per evitare conflitti.
Gestione della memoria primaria
- I programmi devono essere caricati in memoria primaria per essere eseguiti.
- Un sistema time sharing ha più processi contemporaneamente attivi e i relativi codici e dati vengono caricati in memoria.
- Il SO deve tenere traccia di quali parti della RAM sono utilizzate da quali processi.
- Il sistema gestisce la RAM in base alle necessità e all'evoluzione del lavoro dei diversi processi.
Gestione dei file e del file system
- Quasi tutte le informazioni in un sistema sono in file.
- I file sono organizzati gerarchicamente in un file system utilizzando cartelle o directory.
- Il SO gestisce la creazione, la cancellazione, e la manutenzione di file e directory.
- In particolare, il sistema deve gestire la memorizzazione efficiente del file system in memoria secondaria.
Gestione della memoria secondaria
- I file sono memorizzati permanentemente in memoria secondaria (disco rigido).
- Il SO deve decidere dove e come memorizzare i file, e trovarli velocemente quando necessari.
- Il sistema deve gestire lo spazio libero ed accessi concorrenti per efficienza.
Gestione di un sistema di protezione
- Il SO deve proteggere ogni processo dalle attività degli altri processi.
- Ad esempio, evitare che un processo usurpi risorse o acceda a dati protetti di altri processi
Macchine virtuali
- Il SO trasforma la macchina reale in una sorta di macchina virtuale.
- Questo permette agli utenti di utilizzare la MV indipendentemente dall'hardware sottostante.
- L'utente ha a disposizione risorse virtuali, come CPU, file system, etc. condivise con altri utenti e con il SO.
- Aumenta la portabilità delle applicazioni tra diversi sistemi operativi.
Approfondimenti
- Sezione 2.6: spiega il rapporto tra applicazione e sistema operativo.
- Sezione 2.8: dettaglio sulla struttura del sistema operativo.
Studying That Suits You
Use AI to generate personalized quizzes and flashcards to suit your learning preferences.
Related Documents
Description
Questo quiz esplora il ruolo del sistema operativo nella gestione dei file, incluse le funzioni della memoria secondaria e l'interprete dei comandi. Testa le tue conoscenze su come i sistemi operativi interagiscono con i dati e i processi. Scopri se sei in grado di associare correttamente le funzioni e le descrizioni del sistema operativo.