Concetti Chiave
- Il sistema operativo è una struttura a cipolla con strati gerarchici, ciascuno dedicato a un compito specifico, che vanno dal kernel all'interprete di comandi.
- Il gestore della memoria fraziona la RAM per eseguire i programmi, utilizzando concetti come pagine e segmenti, e supporta la memoria virtuale.
- Il file system gestisce i file organizzandoli in cartelle, consentendo operazioni come rinominare, copiare e cancellare, e supporta anche path relativi e assoluti.
- Le interfacce utente del sistema operativo possono essere CLI, che richiede la digitazione di comandi, o GUI, più intuitiva e basata su icone e finestre.
- I sistemi operativi possono essere classificati in base al numero di programmi o utenti supportati, consentendo configurazioni mono o multi-task e mono o multi-utente.
Indice
Introduzione al sistema operativo
Il sistema operativo è formato da un insieme di programmi (software) che si occupano ognuno di un compito specifico . La sua struttura è detta a cipolla e mostra i programmi secondo una struttura gerarchica nella quale ciascuno strato si serve dello strato inferiore.
Nucleo
Detto anche kernel, permette di eseguire i programmi
Gestore della memoria
Prima di essere eseguiti i programmi, essi necessitano di essere caricati nella memoria RAM . Siccome essa possiede uno spazio limitato che non permette di contenere contemporaneamente tutti i programmi, il sistema operativo si occupa di frazionare la memoria così ogni sua area può eseguire un programma. A sua volta i programmi vengono divisi in pagine e segmenti, effettuando periodicamente il caricamento del programma man mano che viene eseguito. Inoltre il sistema operativo garantisce ai programmi in esecuzione uno spazio di memoria maggiore detta memoria virtuale.
Gestore delle periferiche
Il sistema operativo garantisce l’utilizzo e l’accesso alle periferiche e permette di utilizzarne più di una contemporaneamente.
File System
Provvede alle gestione dei file, elementi che vengono registrati in una memoria di massa. Il file system consente di dare un nome e rinominare i file con nomi e di organizzare i file in cartelle e sottocartelle, di cancellarli. copiarli, tagliarli, ecc… E ne garantisce l’apertura di questi file dopo averli salvati.
Interprete di comandi (o shell o interfaccia con l’utente)
Permette all’utente di dialogare con la macchina, dare comandi ecc...La sua interfaccia può essere di due tipi:
- CLI (Command Line Interface): essa è un interfaccia testuale, ciò significa che ciascun comando deve essere digitato dall’utente, costringendolo a una conoscenza dettagliata del linguaggio di tale sistema operativo.
È un’interfaccia CLI, l’MS DOS (MicroSoft Disk Operative System) il primo sistema operativo dei primi computer. Quindi è molto vecchio;
- GUI (Graphical User Interface): Essa è un’interfaccia intuitiva, utilizzata da Windows e Linux. È facile da usare, questo perché il programma fa uso di icone, menù, finestre ecc...
Riguardo i file system:
Cosa sono i file? I file sono contenitori di dati in formato digitale. Questi dati hanno la caratteristica di: avere un nome, una locazione, un’estensione, una dimensione. Ogni dato occupa circa 1KB o svariati MB. I file che appunto contengono questi dati possono essere limitati, cioè non tutti vi possono accedere.
Questo si chiama File Locking. Si può proteggere un file anche mettendo una password, ma con Windows si devono scaricare dei programmi appositi per fare questo, come: VeraCrypt. Il file è un tipo di dato astratto, cioè può essere modificato, ecc… Immagini con esempi di estensioni di alcuni file
I file si dividono secondo una gerarchia. I file sono raggruppati in directory. I directory non sono altro che cartelle di file. Questa cartella può avere un sotto-directory , ovvero una sottocartella. I file di un file system vengono individuati attraverso un percorso (path) ovvero un nome che contiene informazioni esplicite di quel file (ovvero l’estensione se si parla di un programma in c, un power point, ecc...
Il path si distingue in relativo ed assoluto:
- Il path relativo è quello incompleto. Es Stella, download;
- Il path assoluto è il percorso verso la posizione in un sistema operativo o internet.
Il file system remoto
Un file system remoto consente a uno o più utenti di visualizzare, modificare o manipolare in altro modo i file di dati su un dispositivo di archiviazione non direttamente connesso al computer dell’utente. Questo può essere fatto nelle grandi aziende in cui viene utilizzato un archivio centrale di informazioni.
Acquisto computer e SO
Solitamente quando si acquista un computer, in esso è già installato il sistema operativo. Per poterlo utilizzare è necessario che questo venga trasferito dal disco fisso alla memoria RAM. Questa fase prende il nome di bootstrap e avviene ogni volta automaticamente all’avvio del computer
Classificazione DELL’SO
Il sistema operativo si può dividere in base al numero di programmi in esecuzione:• Mono-programmato (mono-task): si può eseguire un solo programma per volta;
• Multi-programmato (multi-task): il SO è in grado di portare avanti contemporaneamente l’esecuzione di più programmi.
In base al numero di utenti:
• Mono-utente (mono-user): un solo utente alla volta può utilizzare il sistema
• Multi-utente (multi-user): più utenti possono utilizzare il sistema. Nel caso di più utenti contemporanei, il Sistema Operativo deve fornire a ciascuno l'astrazione di un sistema “dedicato”. (Nel senso che ognuno ha il proprio utente. Programmi x86 ricorda)
Le partizioni: possiamo far coesistere più sistemi operativi sullo stesso computer attraverso una configurazione detta multi boot. Per fare questo si crea una partizione del disco fisso. Per far ciò esistono degli appositi programmi, come Partition Magic per Windows. Per linux: GParted. Questa operazione consente all’utente di scegliere all’avvio del computer quale sistema operativo usare di volta in volta.
Domande da interrogazione
- Qual è la funzione principale del nucleo (kernel) in un sistema operativo?
- Come gestisce il sistema operativo la memoria limitata della RAM?
- Quali sono le differenze tra CLI e GUI come interfacce utente?
- Cosa consente un file system remoto agli utenti?
- Quali sono le classificazioni dei sistemi operativi in base al numero di programmi e utenti?
Il nucleo, o kernel, permette di eseguire i programmi all'interno del sistema operativo.
Il sistema operativo fraziona la memoria RAM in aree per eseguire i programmi, utilizzando pagine e segmenti, e garantisce uno spazio di memoria maggiore attraverso la memoria virtuale.
La CLI è un'interfaccia testuale che richiede la digitazione di comandi, mentre la GUI è un'interfaccia intuitiva che utilizza icone e menù, rendendo l'interazione più semplice.
Un file system remoto permette agli utenti di visualizzare, modificare o manipolare file su un dispositivo di archiviazione non direttamente connesso al loro computer.
I sistemi operativi possono essere mono-programmati o multi-programmati per i programmi, e mono-utente o multi-utente per gli utenti.