Sistemi Operativi e Lab.: differenze tra le versioni

Da Agent Group.
Vai alla navigazione Vai alla ricerca
Riga 477: Riga 477:


<!--Per la sessione di esami di Gennaio-Febbraio 2024, si comunica che le date fissate sono: <BR>
<!--Per la sessione di esami di Gennaio-Febbraio 2024, si comunica che le date fissate sono: <BR>
1) Mer. 17/01/2024 (mattina); periodo di iscrizione 19/12/2023-10/01/2024. <!-- TALE DATA POTREBBE ESSERE POSTICIPATA DI UNA SETTIMANA IN DIPENDENZA DI EVENTUALI IMPEGNI!--><BR>  
1) Mer. 17/01/2024 (mattina); periodo di iscrizione 19/12/2023-10/01/2024. TALE DATA POTREBBE ESSERE POSTICIPATA DI UNA SETTIMANA IN DIPENDENZA DI EVENTUALI IMPEGNI!<BR>  
2) Mer. 14/02/2024 (mattina); periodo di iscrizione 11/01/2024-07/02/2024. <!--TALE DATA POTREBBE ESSERE POSTICIPATA DI UNA SETTIMANA, IN RELAZIONE ALLA DATA DEFINITIVA DELL'APPELLO DI GENNAIO!--> <BR>  
2) Mer. 14/02/2024 (mattina); periodo di iscrizione 11/01/2024-07/02/2024. <TALE DATA POTREBBE ESSERE POSTICIPATA DI UNA SETTIMANA, IN RELAZIONE ALLA DATA DEFINITIVA DELL'APPELLO DI GENNAIO!<BR>  
<!--Gli appelli nell'applicazione verranno inseriti verso la fine delle lezioni del I semestre.-->
Gli appelli nell'applicazione verranno inseriti verso la fine delle lezioni del I semestre.
I due appelli di Gennaio-Febbraio 2024 sono stati inseriti nell'applicazione!-->
I due appelli di Gennaio-Febbraio 2024 sono stati inseriti nell'applicazione!-->



Versione delle 15:19, 25 mar 2024

ATTENZIONE IL SITO E' TORNATO ACCESSIBILE LUN. 25/03/2024 MA ATTENDERE MESSAGGIO SU MOODLE SU QUANDO IL CONTENUTO SARA' COMPLETAMENTE ACCESSIBILE, GRAZIE!

Copyright lezioni: Su indicazione dell'Ateneo si riporta questa comunicazione molto importante, che vale chiaramente anche per le video-registrazioni e altro materiale caricato sulla piattaforma Dolly/Moodle: "È vietata la copia e la riproduzione dei contenuti e immagini in qualsiasi forma. È inoltre vietata la redistribuzione e la pubblicazione dei contenuti e immagini non autorizzata espressamente dall'autore o dall'Università di Modena e Reggio Emilia."

NOTA BENE: Nell'A.A. 2023-24 la registrazione al sito dell'insegnamento, per questioni di sicurezza, avverrà solo tramite il PC della Prof.ssa Leonardi e quindi potrà essere effettuato durante una esercitazione in laboratorio oppure durante un ricevimento studenti, meglio se in presenza. Per gli studenti fino alla coorte 2019-20 (quindi con firma di frequenza A.A. 2020-21) SI DEVE PROCEDERE ALLA REGISTRAZIONE SOLO SE SI HANNO LE PROPEDEUTICITA' SODDISFATTE!!! Per gli studenti delle coorti successive invece sono state eliminate le propedeuticità (si veda per i dettagli la sezione). Esiste però un vincolo, spiegato a lezione/esercitazione per la partecipazione alle prove in itinere!


Questa pagina fornisce il materiale didattico e le informazioni relative all'insegnamento di Sistemi Operativi (9 CFU), attivo dall'A.A. 2023-24 del Corso di Laurea in Ingegneria Informatica, secondo il D.M. 270/04. Si precisa che fino all'A.A. 2022-23 questo insegnamento era denominato Sistemi Operativi e Lab. (9 CFU), ma il programma non è stato modificato.

Docente

Prof. Letizia Leonardi, letizia.leonardi@unimore.it

Ricevimento Studenti

Orario di ricevimento: Lunedì dalle 15 alle 17 (di norma, per eventuali modifiche consultare gli avvisi di Moodle) con prenotazione obbligatoria utilizzando il seguente link. Dal 27/09/2021, il ricevimento studenti potrà essere sia in presenza che in remoto: specificare cosa si preferisce nel campo DOVE dell'appuntamento; nel caso venga richiesta la modalità remota ATTENZIONE A NON USARE il meet generato automaticamente dagli appuntamenti Google, ma usare il seguente link.
Stanza: MO-27-01-019, primo piano, Edificio 27 (vedi mappa), Dipartimento di Ingegneria "Enzo Ferrari" (Università di Modena e Reggio Emilia)
Via P. Vivarelli 10, 41125 MODENA; Telefono 0592056135 letizia.leonardi@unimore.it

Esercitatore (per la parte di Laboratorio)

A.A. 2022-23 e 2021-22: Dott.ssa Silvia Cascianelli, E-Mail: silvia.cascianelli@unimore.it

L'orario di ricevimento studenti per la parte di laboratorio è il Giovedì dalle 14.30 alle 15.30 ed è necessario chiedere un appuntamento mandando, entro il giorno prima, una e-mail alla Dott.ssa Silvia Cascianelli, per concordare l'orario preciso e il luogo. Si noti che è possibile fare ricevimento sia in remoto che in presenza; in questo ultimo caso, a seconda delle disponilibità che verranno comunicate in risposta alla e-mail di prenotazione, il ricevimento potrà avvenire presso l'ufficio della docente (MO-27-02-029 - secondo piano, Edificio 27, Dipartimento di Ingegneria "Enzo Ferrari") o presso la sala riunioni del Tecnopolo (MO-52-01-025 - primo piano, Edificio 52, Dipartimento di Ingegneria "Enzo Ferrari"). Ogni appuntamento ha una durata prevista di 20 minuti.

Moodle

Per l'A.A. 2023-24 la pagina Moodle è accessibile direttamente al link.

Orario delle Lezioni

Le lezioni di questo insegnamento sono collocate nel II semestre e per l'A.A. 2023-24 inizieranno il 26 Febbraio 2024 (Lunedì).

Si avvisano gli studenti che durante la prima settimana di lezione non si terranno esercitazioni, ma 4 ore di lezione al posto della prevista esercitazione.

L'orario delle lezioni è disponibile anche nella sezione Orario delle lezioni del sito del Dipartimento di Ingegneria alla [https://www.orariolezioni.unimore.it/Orario/Dipartimento_di_Ingegneria_Enzo_Ferrari/2022-2023/1857/Docenti/LeonardiLetizia_014354.html pagina].

Lunedì

ore 11-13 (lezione)

Aula P1.2 (ex FA-1B)

Mercoledì

ore 10-12 (lezione)

Aula P1.2 (ex FA-1B)

Giovedì

ore 9-13 (esercitazione)

LINFA allargato

Propedeuticità

Per gli studenti fino alla coorte 2019-20 (quindi con firma di frequenza A.A. 2020-21), le propedeuticità obbligatorie per il superamento dell'esame sono Fondamenti di Informatica I e Lab., Fondamenti di Informatica II e Lab. Per gli studenti delle coorti successive, invece, sono state eliminate le propedeuticità obbligatorie, ma rimane fortemente consigliato che prima di tentare il superamento dell'esame di Sistemi Operativi e Lab. si siano superati gli esami di Fondamenti di Informatica I e Lab. e Fondamenti di Informatica II e Lab., mentre rimane solo consigliata la propedeuticità di Calcolatori Elettronici e Lab.

In caso di superamento dell'esame senza propeduticità obbligatorie rispettate IL VOTO VERRÀ PERSO!!!

Obiettivi dell'Insegnamento

L'insegnamento ha come obiettivo formativo quello di fornire la conoscenza e la capacità di comprensione di base dei Sistemi Operativi introducendo alcuni aspetti della programmazione di sistema in UNIX relativamente sia al linguaggio comandi (Shell) e sia al linguaggio di programmazione C, applicandoli a progetti concorrenti in ambiente locale di complessità crescente.

Programma dell'Insegnamento

Gli argomenti che verranno affrontati saranno:

1) Introduzione (circa 1 CFU):

  • Classificazione dei Sistemi Operativi. In particolare, sistemi multi-utente e multiprocesso.
  • Il Sistema Operativo come insieme di gestori delle risorse. Introduzione al concetto di processo/thread e loro gestore: scheduling; il problema del deadlock. Introduzione alla gestione della memoria e in particolare la memoria virtuale. Introduzione al concetto di file e directory e loro gestore: il File System a livello di organizzazione logica e fisica.

2) La programmazione di sistema utilizzando i linguaggi comandi (circa 2 CFU). Oltre ai tipici comandi utilizzati da linea di comando, si presenterà la sintassi per scrivere degli script, facendo anche uso della ricorsione, utilizzando una Shell di UNIX.

3) La programmazione di sistema utilizzando il linguaggio di programmazione C per UNIX (circa 3 CFU). Le primitive di basso livello per l'accesso ai file (in particolare, open, creat, close, read, write e lseek) e le primitive per la creazione, comunicazione e sincronizzazione dei processi (in particolare, fork, exit, wait, pipe, signal e kill).

4) Laboratorio di Sistemi Operativi (circa 3 CFU). Esercitazioni pratiche utilizzando computer provvisti di sistema operativo UNIX/LINUX. Le esercitazioni avranno come obiettivo la pratica della programmazione di sistema UNIX, utilizzando sia il linguaggio dello Shell che il linguaggio di programmazione C per arrivare allo svolgimento di un progetto completo di ricerca ricorsiva nel file system avente una parte in Shell e una in C che si coordinano l'un l'altra.

Registro

Dopo ogni lezione/esercitazione verrà compilato il registro con l'indicazione degli argomenti trattati.

Per l'A.A. corrente 2022-23, il registro si trova al link.

I registri relativi agli anni accademici precedenti sono accessibili ai seguenti link:

* Registro A.A. 2021-22 * Registro A.A. 2020-21 * Registro A.A. 2019-20 * Registro A.A. 2018-19
* Registro A.A. 2017-18 * Registro A.A. 2016-17 * Registro A.A. 2015-16 * Registro A.A. 2014-15
* Registro A.A. 2013-14 * Registro A.A. 2012-13 * Registro A.A. 2011-12 * Registro A.A. 2010-11

Esame

L'esame si compone (dall'A.A. 20-21) di un test/quiz e di una prova scritta, che vengono svolti entrambi utilizzando un PC Linux. Per maggiori dettagli, vedere il seguito di questa pagina.

Durante lo svolgimento dell’esame possono essere consultati appunti cartacei o in formato elettronico (ma non online), così come possono essere usati file precedentemente sviluppati e consultati manuali presenti in Linux.

Il test/quiz di sbarramento, per definizione, non produce un voto, ma consente l'accesso alla prova scritta. N.B. Durante la prima lezione dell'A.A. 2023-24 verrà proposta una modifica riguardo al test/quiz e se scelta porterà ad un aggiornamento della pagina nelle parti relative! IL RISULTATO DEL SONDAGGIO HA PORTATO AD UN MANTENIMENTO DEL TEST/QUIZ NELLA FORMA ATTUALE!

La sufficienza della prova scritta è rappresentata da un voto >= 18: il voto ottenuto con lo scritto rappresenterà, se sufficiente, la valutazione della verifica.

Dall'A.A. 2014-15, allo studente che risulti sufficiente ad una prova NON sarà consentito ripetere la prova per migliorare il voto! Nel documento possono essere trovati i riferimenti normativi UNIMORE a giustificazione di ciò.

Saranno organizzate anche DUE VERIFICHE IN ITINERE (LA PRIMA SULLA PARTE IN SHELL E LA SECONDA SULLA PARTE IN C, si veda la sezione Regole specifiche per le prove in itinere): in questo caso, la valutazione finale dell'insegnamento deriverà dalla media arrotondata per difetto delle due prove.

Dall'A.A. 2022-23, per l'iscrizione agli esami si useranno le liste di ESSE3. Poichè però per il calcolo dei voti viene usata una applicazione specifica si rende necessaria una REGISTRAZIONE a tale applicazione come specificato all'inizio della pagina!

Si precisa che in caso di valutazione insufficiente, sia nel test/quiz che nella prova scritta, lo studente che non avrà preso visione dei suoi errori NON potrà iscriversi a nessuna prova successiva!

Test/quiz di sbarramento

Dall'A.A. 2020-21 è stato introdotto un test/quiz di sbarramento a risposte multiple (di cui solo una sufficiente) sui comandi UNIX/Linux (20 domande, soglia di superamento 15/20!); il tempo a disposizione per tale test/quiz è 20 minuti; il test/quiz si svolge tramite Moodle: il link al Moodle dell'A.A. corrente si trova nella sezione Moodle.

Prova scritta (in Laboratorio)

La prova scritta serve a verificare, in particolare, che lo studente abbia acquisito le seguenti capacità:

  • Capacità di scrivere e verificare software in linguaggio comandi dello Shell di UNIX.
  • Capacità di scrivere e verificare software in linguaggio di programmazione C per UNIX mediante le primitive di basso livello per l'accesso ai file e per la creazione, sincronizzazione e comunicazione dei processi.

Quindi, la prova scritta comprende un singolo esercizio che richiede la soluzione di un problema di sincronizzazione in ambito locale, ottenuta facendo riferimento al sistema operativo UNIX, che si compone di due parti:

  1. una parte in Shell che deve risolvere un sottoproblema di esplorazione nel file system;
  2. una parte in linguaggio C che deve risolvere un sottoproblema concorrente facendo uso delle primitive di gestione dei processi proprie di UNIX.


Il tempo a disposizione per la prova scritta è di 120 MINUTI per l'esame completo (se in presenza, mentre in remoto potrebber essere 110 minuti).

Dato che lo svolgimento della prova scritta avviene utilizzando un PC Linux, lo studente dovrà produrre un insieme di file corrispondenti alla soluzione dell'esercizio: i file che risolvono il primo sottoproblema DEVONO avere il nome che termina con .sh (si vedano le indicazioni specifiche sui nomi nel seguito), mentre i file che risolvono il secondo problema DEVONO avere il nome che termina con .c per il file che contiene il sorgente in linguaggio C (si veda le indicazioni specifiche sul nome nel seguito) e il nome makefile per quello che verrà usato dal comando make.
Nota bene: Saranno corrette SOLO le soluzioni che non conterranno né errori di sintassi nella parte Shell e C (cioè per il C errori di compilazione) né errori di collegamento (linking) nella parte C (cioè errori segnalati dal gcc).

Istruzioni specifiche per iniziare una prova in Laboratorio

Si ricorda che le regole per gli esami in presenza sono caricate su Moodle! Alla data del 25/03/2024 sono in modifica e quindi per ora non sono ancora presenti su Moodle!

Regole specifiche per le prove in itinere

1) Alle prove in itinere di un certo A.A. possono partecipare (chiaramente) SOLO gli studenti che stanno frequentando in tale A.A. In particolare, l'applicazione usata per la iscrizione visualizza l'appello corrispondente ad una prova in itinere SOLO agli studenti che hanno effettuato la registrazione all'applicazione in quello specifico A.A. Studenti che si sono registrati all'applicazione in anni precedenti e che NON hanno già partecipato a una qualche prova potranno chiedere l'iscrizione ad una prova in itinere sono presentandosi personalmente una volta chiuse le iscrizioni: tali richiesta saranno soddisfatte se e solo se ci sarà un turno pianificato non saturo.
2) Alla seconda prova in itinere sulla SOLA PARTE IN LINGUAGGIO C possono partecipare solo gli studenti che hanno superato la prima prova in itinere.
3) La validità della prima prova in itinere (PARTE SHELL) è di un anno solare e quindi fino alla sessione di esami di Gennaio-Febbraio dell'anno seguente (cioe' fino al termine dell'A.A. in cui si è svolta). In altre parole, una volta superata la parte SHELL, lo studente può svolgere sempre solo la PARTE C per i seguenti appelli dell'A.A., anche in caso di prendere una insufficienza nella PARTE C. Solo se lo studente NON riesce a superare la PARTE C entro il termine previsto, allora dovrà sostenere l'esame totale.
4) La regola precedente NON vale se però uno studente ad un certo punto decide di iscriversi alla prova totale: in tal caso, il voto conseguito nella PARTE SHELL viene annullato!
5) Nel caso in cui il primo appello della sessione dopo le lezioni risultasse troppo ravvicinato alla seconda prova in itinere, chi non supera la seconda prova in itinere potrà svolgere la SOLA PARTE IN LINGUAGGIO C esclusivamente nel secondo appello della sessione: questo vincolo può derivare sia dalla data di scadenza all'appello e anche perchè il lasso di tempo a disposizione fra un esame e l'altro sarebbe troppo poco o per consentire ad uno studente insufficiente di recuperare le proprie carenze oppure anche solo per avere i risultati della seconda prova in itinere.
6) Il tempo per svolgere le prove in itinere è rispettivamente di 60 minuti a per la prima prova in itinere (PARTE SHELL) e di 90 minuti per la seconda prova in itinere (PARTE C) se in presenza (in remoto potrebbe essere un tempo minore).

Note sugli esami

  1. Si ricorda che in caso di valutazione insufficiente lo studente dovrà prendere visione dei suoi errori (per cercare di non commetterli nuovamente) PRIMA di poter partecipare ad una qualunque altra prova. ATTENZIONE: la visione DEVE avvenire al massimo entro 2/3 settimane dalla pubblicazione/comunicazione dei risultati e, comunque, almeno 2/3 settimane prima della scadenza per la iscrizione all'appello successivo! La stessa tempistica vale a maggior ragione se viene richiesta la consegna di una versione corretta!
  2. Le prove scritte (a meno di richieste da parte di studenti Fuori Corso) si svolgono solo durante i periodi di esami.
  3. Dall'A.A. 2014-15, non sarà possibile ripetere la prova scritta per migliorare il voto!
  4. Nella sezione laboratorio il 10/04/2020 sono stati caricati dei file per la creazione 'veloce' di gerarchie di prova.

Appelli

ATTENZIONE: Si ricorda che nell'A.A. 2020-21 è stato introdotto un test/quiz di sbarramento a risposte multiple (di cui solo una sufficiente) sui comandi UNIX/Linux (20 domande, soglia di superamento 15/20!


NOTA DEL 26/09/2023: Sono stati inseriti su ESSE3 le date degli appelli; si faccia attenzione alle note indicate nel seguito; per ora gli appelli sono chiusi, cioè non è possibile procedere alla iscrizione e saranno aperti solo qualche settimana prima di ogni appello con le regole stabilite nell'A.A. 2022-23!

Per tutte le date, il luogo esatto dell'esame e l'orario esatto verrà comunicato in seguito, così come le date di scadenza delle iscrizioni verrà fissata appena inserite le date nell'applicazione.


Per la sessione di esami di Giugno-Settembre 2024, si comunica che le date fissate sono:
3) Gio. 6/06/2024 (mattina); PER LA SOLA SECONDA PROVA IN ITINERE; ATTENZIONE CHE QUESTA DATA POTREBBE ESSERE CANCELLATA NEL CASO SI RIESCA A SVOLGERE LA SECONDA PROVA IN ITINERE NELL'ULTIMA ESERCITAZIONE PREVISTA DA ORARIO;
4) Mer. 12/06/2024 (mattina);
5) Mer. 10/07/2024 (mattina);
6) Mer. 11/09/2024 (mattina);
Gli appelli nell'applicazione verranno inseriti verso la fine delle lezioni del II semestre.

Si sottolinea che se non si dovesse riuscire a fissare la seconda prova in itinere, il sesto appello corrisponderebbe alla prima prova "in itinere" (PI) sulla parte Shell che verrà svolta durante la settimana di interruzione delle lezioni (riservata ai soli studenti che si sono iscritti o hanno modificato quest'anno la loro iscrizione all'applicazione); nel caso si decida di non fissare le prove in itinere, la data indicata per la seconda prova in itinere sarebbe a questo punto un appello 'normale'!

Si ribadisce che tutte le date sopra indicate sono state inserite in ESSE3 per rendere visibile, a chi deve fare il controllo sull'inserimento degli appelli (le trovate usando la funzione Ricerca Appelli SENZA fare il login in ESSE3, usando la pagina), che questi sono stati pianificati: il periodo di iscrizione però a queste prove è volutamente chiuso e verrà aperto solo nei tempi necessari per garantire la possibilità agli studenti di iscriversi. Dato che per il calcolo dei voti viene usata un’applicazione specifica si rende necessaria la registrazione citata all'inizio della pagina usando l'applicazione specifica che però verrà usata solo dalle docenti e per comunicare prima della verbalizzazione i voti delle prove scritte.
NOTA BENE: la convalida della registrazione al sito del corso avviene, da parte della Prof.ssa Leonardi, SOLO dopo che lo studente ha consegnato il foglio di riepilogo firmato; il foglio di riepilogo va stampato appena viene presentato dal browser altrimenti lo studente non lo riesce più a recuperare e lo può recuperare solo la Prof.ssa Leonardi. PROCEDERE ALLA REGISTRAZIONE SOLO SE SI HANNO LE PROPEDEUTICITA' SODDISFATTE, per gli studenti per i quali sono ancora in vigore!!! Nel caso di invio per mail, il foglio firmato va scansionato e inviato in allegato SOLO come PDF!

Di norma le iscrizioni/cancellazioni ad un appello si chiudono almeno una settimana dell'appello e comunque le indicazioni della data di chiusura dell'appello sono riportate per ogni appello.

Si ricorda però che la iscrizione relativa agli appelli di Giugno e Luglio (quelli subito dopo la conclusione delle lezioni) sarà possibile per gli studenti in corso solo se avranno compilato il questionario di rilevazione dell'opinione studenti (OPIS).

Testi Prove Scritte (con alcune soluzioni)

I testi delle prove scritte si trovano nella pagina Esami di Sistemi Operativi e Lab.: di alcuni di essi viene fornita anche una possibile soluzione.

Tramite l'applicazione (sviluppata da Tommaso Labieni, laureato in Ingegneria Informatica) si possono fare delle ricerche mirate secondo vari criteri di ricerca sui testi di esame presenti nella pagina sopra riferita. Alla data del 30/08/2022, per quanto riguarda la ricerca per categorie, sono disponibili le categorie di tutti gli esami.

Risultati Prove Scritte

Dall'A.A. 2010-11, gli studenti che hanno partecipato ad una prova scritta (escluso la prima Prova in Itinere) di Sistemi Operativi e Lab. possono prendere visione del voto globale collegandosi all'applicazione utilizzata per l'iscrizione alla prova e selezionando la voce Dati iscrizione corso (in lato a sinistra).

Nel documento si trova la statistica relativa ai risultati della Prima Prova in Itinere dell'A.A. 2022-23 svolta il 12 Aprile 2023.

Nel documento si trova la statistica relativa ai risultati della Prima Prova in Itinere dell'A.A. 2021-22 svolta il 13 Aprile 2022.

Nel documento si trova la statistica relativa ai risultati della Prima Prova in Itinere dell'A.A. 2020-21 svolta il 22 Aprile 2021.

NOTA BENE PER ORA LA STATISTICA DELLA PRIMA PROVA IN ITINERE DEL A.A. 2019-20 MANCA!

Nel documento si trova la statistica relativa ai risultati della Prima Prova in Itinere dell'A.A. 2018-19 svolta il 5 Aprile 2019.

Nel documento si trova la statistica relativa ai risultati della Prima Prova in Itinere dell'A.A. 2017-18 svolta l'11 Aprile 2018.

Nel documento si trova la statistica relativa ai risultati della Prima Prova in Itinere dell'A.A. 2016-17 svolta il 7 Aprile 2017.

Nel documento si trova la statistica relativa ai risultati della Prima Prova in Itinere dell'A.A. 2015-16 svolta il 15 Aprile 2016.

Nel documento si trova la statistica relativa ai risultati della Prima Prova in Itinere dell'A.A. 2014-15 svolta il 17 Aprile 2015.

Nel documento si trova la statistica relativa ai risultati della Prima Prova in Itinere dell'A.A. 2013-14 svolta il 11 Aprile 2014.

Nel documento si trova la statistica relativa ai risultati della Prima Prova in Itinere dell'A.A. 2012-13 svolta il 12 Aprile 2013.

Nel documento si trova la statistica relativa ai risultati della Prima Prova in Itinere dell'A.A. 2011-12 svolta il 13 Aprile 2012.

Nel documento si trova la statistica relativa ai risultati della Prima Prova in Itinere dell'A.A. 2010-11 svolta il 29 Aprile 2011.

Consigli Utili

Per superare agevolmente la prova scritta, che si svolgerà in laboratorio, si consiglia agli studenti di seguire con continuità le lezioni ed, in particolare, le esercitazioni in laboratorio. Inoltre, si consiglia di preparare la prova scritta sperimentando direttamente i concetti presentati a lezione sul calcolatore. Può risultare estremamente difficile superare con successo l'esame senza una conoscenza di tipo sperimentale, ottenuta con esercitazioni in laboratorio.

Testi Consigliati

Materiale come slide, esercizi e testi di esame (e alcune soluzioni) sono disponibili in questa pagina.

Comunque, testi di riferimento possono essere:

HAVILAND K., GRAY D., SALAMA B., Unix System Programming, Casa Editrice Addison-Wesley, 1999.
BOURNE S. R., UNIX System V, Casa Editrice Addison-Wesley, 1990.

In alternativa la seconda parte del testo seguente contiene tutti gli argomenti del corso (mentre la prima parte puo' essere usata per un ripasso del Linguaggio C):

BELLAVIA G., CORRADI A., LEONARDI L., Fondamenti di Informatica II: Dispense del corso (seconda edizione), Casa Editrice Esculapio, Progetto Leonardo, 1994.

Per un eserciziario relativo al Linguaggio C si segnala:

LEONARDI L.: Linguaggio C: Raccolta di esercizi e relative soluzioni, Ed. Esculapio - Progetto Leonardo, 1996.

Slide dell'Insegnamento

Copyright lezioni a distanza: Su indicazione dell'Ateneo si riporta questa comunicazione molto importante, che vale chiaramente anche per le video-registrazioni caricate sulla piattaforma Dolly/Moodle: "E' vietata la copia e la riproduzione dei contenuti e immagini in qualsiasi forma. E' inoltre vietata la redistribuzione e la pubblicazione dei contenuti e immagini non autorizzata espressamente dall'autore o dall'Università di Modena e Reggio Emilia."

Sono disponibili i file in formato PDF con le slide usate durante le lezioni di teoria sui seguenti argomenti che necessitano tutti, a parte il primo file, di password di lettura (tale password sarà comunicata durante la prima lezione), oltre agli esempi mostrati interattivamente e che sono reperibili nella sezione Esempi Interattivi:

  1. Programma del corso e modalità di esame - versione del 25/02/2023
  2. Slide introduttive sui Sistemi Operativi (con password di lettura) - versione del 03/03/2023 (corretta una parola)
  3. Slide introduttive su File System (con password di lettura) - versione del 27/02/2022
  4. Slide su UNIX e Shell (con password di lettura) - versione del 14/03/2023 (corrette slide 23, 24 e 25)
  5. Slide sulle primitive UNIX per file facenti parte della libreria standard del linguaggio C (con password di lettura) - versione del 16/04/2023
  6. Slide sulle tabelle di UNIX per l'interazione con i file (con password di lettura) - versione del 3/04/2022
  7. Slide sui processi UNIX (con password di lettura) - versione del 27/04/2023 (corretta slide 23)
  8. Slide sulle pipe e fifo UNIX (con password di lettura) - versione del 12/05/2022
  9. Slide sui segnali UNIX (con password di lettura) - versione del 20/05/2022

Inoltre sono disponibili le Slide sulla sicurezza degli studenti.

Altra documentazione:

  1. Regole sui nomi dei file/directory in UNIX/LINUX
  2. Slide sui tipici controlli che si devono effettuare all'interno di un file comandi
  3. Slide di ripasso sui principali costrutti del Bourne Shell
  4. Slide di ripasso di alcune caratteristiche del linguaggio C
  5. Documento dove sono indicate le sintassi NON accettate del Linguaggio C e il tipo schema da utilizzare nelle soluzione delle parti C degli esami!

Vecchio materiale:

  1. Manuale Bourne Shell (in inglese)
  2. Introduzione alla Bourne Shell (in inglese)
  3. Documento dove sono indicate le sintassi alternative e quelle NON accettate dal Bourne Shell rispetto alla BASH e altre informazioni utili (data aggiornamento documento 22/3/2019 ore 15,25)!
  4. Slide sulla utility make (a cura di Giulio Salierno, modificato il 15/05/2018)
  5. Istruzioni su istallazione Ubuntu
  6. Slide su UNIX e il Bourne Shell (con password di lettura) validi fino all'A.A. 2016-17

Esempi Interattivi

Nota bene: nelle prove riportate nei vari documenti sottostanti le indicazioni delle directory da utilizzare sono commenti per il docente e non per lo studente!

Esempi Interattivi A.A. 2022-23

Nei pdf che seguono si troverà, mano a mano che le lezioni procedono, il dettaglio delle sessioni interattive mostrate a lezione: i documenti potrebbero riportare la preparazione delle lezioni e quindi non è detto che rispecchino al 100% le reali sessioni interattive svolte a lezione, ma sono sicuramente una loro buona approssimazione.In particolare:

  • nel documento (protetto sempre dalla stessa password delle slide) ssi troverà il dettaglio delle sessioni interattive relative alle lezioni di shell (data aggiornamento documento 03/04/2023 ore 16:40)!
  • nel documento (protetto sempre dalla stessa password delle slide) si troverà il dettaglio delle sessioni interattive relative alle lezioni di C (data aggiornamento documento 31/05/2023 ore 13:38)!

Esempi Interattivi A.A. precedenti

  1. FILE DELL'A.A. 2021-22
    • nel documento (protetto sempre dalla stessa password delle slide) si troverà, mano a mano, che le lezioni di shell procedono (si spera) il dettaglio delle sessioni interattive: il documento potrebbe riportare la preparazione delle lezioni e quindi non è detto che rispecchi al 100% la reale sessione interattiva svolta a lezione, ma è sicuramente una sua buona approssimazione (data aggiornamento documento 30/03/2022 ore 14:17)!
    • nel documento (protetto sempre dalla stessa password delle slide) si troverà, mano a mano, che le lezioni di C procedono (si spera) il dettaglio delle sessioni interattive: il documento potrebbe riportare la preparazione delle lezioni e quindi non è detto che rispecchi al 100% la reale sessione interattiva svolta a lezione, ma è sicuramente una sua buona approssimazione (data aggiornamento documento 01/06/2022 ore 12:20)!
  2. FILE DELL'A.A. 2020-21
    • nel documento (protetto sempre dalla stessa password delle slide) si troverà, mano a mano, che le lezioni di shell procedono (si spera) il dettaglio delle sessioni interattive: il documento potrebbe riportare la preparazione delle lezioni e quindi non è detto che rispecchi al 100% la reale sessione interattiva svolta a lezione, ma è sicuramente una sua buona approssimazione (data aggiornamento documento 12/04/2021 ore 19:00)!
    • nel documento (protetto sempre dalla stessa password delle slide) si troverà, mano a mano, che le lezioni di C procedono (si spera) il dettaglio delle sessioni interattive: il documento potrebbe riportare la preparazione delle lezioni e quindi non è detto che rispecchi al 100% la reale sessione interattiva svolta a lezione, ma è sicuramente una sua buona approssimazione (data aggiornamento documento 31/05/2021 ore 18:31)!
  3. FILE DELL'A.A. 2019-20
    • nel documento (protetto sempre dalla stessa password delle slide) si troverà, mano a mano, che le lezioni di shell procedono (si spera) il dettaglio delle sessioni interattive: il documento riporta la preparazione delle lezioni e quindi non è detto che rispecchi al 100% la reale sessione interattiva svolta a lezione, ma è sicuramente una sua buona approssimazione (data aggiornamento documento 04/04/2020 ore 14:30)! NOTA BENE: nel documento sono indicate le sintassi alternative e quelle NON accettate dal Bourne Shell rispetto alla BASH e altre informazioni utili (data aggiornamento documento 22/3/2019 ore 15,25)!.
    • nel documento (protetto sempre dalla stessa password delle slide) si troverà, mano a mano, che le lezioni di C procedono (si spera) il dettaglio delle sessioni interattive: il documento riporta la preparazione delle lezioni e quindi non è detto che rispecchi al 100% la reale sessione interattiva svolta a lezione, ma è sicuramente una sua buona approssimazione (data aggiornamento documento 28/05/2020 ore 18:10)! Nel video (caricato il 16/01/2021) si può trovare illustrato un ulteriore schema di comunicazione (non presentato a lezione/esercitazione) che può essere presente nei testi di esame.
  4. FILE DELL'A.A. 2018-19
    • nel documento (protetto sempre dalla stessa password delle slide) si troverà, mano a mano, che le lezioni di shell procedono (si spera) il dettaglio delle sessioni interattive: il documento riporta la preparazione delle lezioni e quindi non è detto che rispecchi al 100% la reale sessione interattiva svolta a lezione, ma è sicuramente una sua buona approssimazione (data aggiornamento documento 28/03/2019 ore 12:15)!
    • nel documento (protetto sempre dalla stessa password delle slide) si troverà, mano a mano, che le lezioni di C procedono (si spera) il dettaglio delle sessioni interattive: il documento riporta la preparazione delle lezioni e quindi non è detto che rispecchi al 100% la reale sessione interattiva svolta a lezione, ma è sicuramente una sua buona approssimazione (data aggiornamento documento 30/05/2019 ore 15:00)!
  5. FILE DELL'A.A. 2017-18
    • nel documento (protetto sempre dalla stessa password delle slide) si troverà, mano a mano, che le lezioni di shell procedono (si spera) il dettaglio delle sessioni interattive: il documento riporta la preparazione delle lezioni e quindi non è detto che rispecchi al 100% la reale sessione interattiva svolta a lezione, ma è sicuramente una sua buona approssimazione (data aggiornamento documento 21/03/2018 ore 15:40)!
    • nel documento (protetto sempre dalla stessa password delle slide) si troverà, mano a mano, che le lezioni di C procedono (si spera) il dettaglio delle sessioni interattive: il documento riporta la preparazione delle lezioni e quindi non è detto che rispecchi al 100% la reale sessione interattiva svolta a lezione, ma è sicuramente una sua buona approssimazione (data aggiornamento documento 06/06/2018 ore 14:50)!
  6. FILE DELL'A.A. 2016-17
    • nel documento (protetto sempre dalla stessa password delle slide) si troverà, mano a mano, che le lezioni di shell procedono (si spera) il dettaglio delle sessioni interattive: il documento riporta la preparazione delle lezioni e quindi non è detto che rispecchi al 100% la reale sessione interattiva svolta a lezione, ma è sicuramente una sua buona approssimazione (data aggiornamento documento 29/3/2017 ore 18,30)!
    • nel documento (protetto sempre dalla stessa password delle slide) si troverà, mano a mano, che le lezioni di C procedono (si spera) il dettaglio delle sessioni interattive: il documento riporta la preparazione delle lezioni e quindi non è detto che rispecchi al 100% la reale sessione interattiva svolta a lezione, ma è sicuramente una sua buona approssimazione (data aggiornamento documento 22/5/2017 ore 15,00).
  7. FILE DELL'A.A. 2015-16
    • nel documento (protetto sempre dalla stessa password delle slide) si trova il dettaglio delle sessioni interattive: il documento riporta la preparazione delle lezioni e quindi non è detto che rispecchi al 100% la reale sessione interattiva svolta a lezione, ma è sicuramente una sua buona approssimazione (data aggiornamento documento 27/3/2016 ore 14,20)!
    • nel documento (protetto sempre dalla stessa password delle slide) si trova il dettaglio delle sessioni interattive: il documento riporta la preparazione delle lezioni e quindi non è detto che rispecchi al 100% la reale sessione interattiva svolta a lezione, ma è sicuramente una sua buona approssimazione (data aggiornamento documento 17/5/2016 ore 11,00).

NOVITA' dall'A.A. 2016-17:

  • nel documento sono indicati in modo sintetico tutti gli esempi del costrutto if che possono essere trovati nelle soluzioni dei compiti svolti; si rimanda al file indicato per i dettagli.
  • nel documento sono indicati in modo sintetico tutti gli esempi del costrutto case che possono essere trovati nelle soluzioni dei compiti svolti; si rimanda al file indicato per i dettagli.
  • nel documento sono indicati in modo sintetico tutti gli esempi dei comandi expr, shift, read e grep che possono essere trovati nelle soluzioni dei compiti svolti; si rimanda al file indicato per i dettagli.

Small sh

Un 'embrione' di una shell che si ispira alla Bourne Shell può essere ottenuto dai seguenti file:

Laboratorio

MATERIALE GENERALE

La video-registrazione della "Guida all'installazione ambiente di lavoro: Ubuntu 16.04 32bit su VirtualBox (a cura di Stefano Allegretti)" si trova su Moodle alla URL. Inoltre sono disponibili le Slide con istruzioni su istallazione macchina virtuale con Ubuntu.

Per una guida sintetica all'uso delle macchine virtuali del Laboratorio Virtuale (LV) si veda il documento (a cura di Silvia Cascianelli, con la solita password).

La video-registrazione su "Editor di testo: vi, vim, vimtutor" si trova sempre su Moodle alla URL. Inoltre sono disponibili le Slide sull'editor vi di UNIX (con password di lettura) - versione del 5/03/2020 ore 14,45 NOTA BENE: se si vogliono disattivare i colori mostrati dall'editor vim si può usare il comando :syntax off (dopo avere usato il tasto escape).

Le due video-registrazioni su "Compilazione/linking di un progetto C (a cura di Stefano Allegretti)" si trovano su Moodle alla sezione. Inoltre sono disponibili le Slide sulla utility make (presentate da Silvia Cascianelli il 20/04/2023).

Laboratorio A.A. 2022-23

Il laboratorio che verrà utilizzato per le esercitazioni è il laboratorio LINFA (ex aula FA-2F, al secondo piano dell'ala nuova delle aule del Dipartimento di Ingegneria) nella sua forma allargata che comprende l'aula a fianco: chiaramente, gli studenti che staranno nell'aula a fianco dovranno portare il proprio portatile.

Il materiale per le esercitazioni dell'A.A. 2022-23 verrà caricato mano a mano che procederanno le esercitazioni (con la solita password) su Moodle e poi anche qui nel seguito. Per quanto riguarda i file con le possibili soluzioni, queste verranno caricate (sempre mano a mano) qui (in gitHub).

ESERCITAZIONI C

  • Per la esercitazione di Giovedì 25 Maggio 2023 fare riferimento agli esercizi specificati nel documento.
  • Per la esercitazione di Giovedì 18 Maggio 2023 fare riferimento agli esercizi specificati nel documento.
  • Per la esercitazione di Giovedì 11 Maggio 2023 fare riferimento agli esercizi specificati nel documento.
  • Per la esercitazione di Giovedì 4 Maggio 2023 fare riferimento agli esercizi specificati nel documento.
  • Per la esercitazione di Giovedì 27 Aprile 2023 fare riferimento agli esercizi specificati nel documento.
  • Per la esercitazione di Giovedì 20 Aprile 2023 fare riferimento agli esercizi specificati nel documento.

ESERCITAZIONI SHELL

  • Per la esercitazione extra di Mercoledì 5 Aprile 2023 fare riferimento agli esercizi specificati nel documento.
  • Per la esercitazione di Giovedì 30 Marzo 2023 fare riferimento agli esercizi specificati nel documento; nel documento si trovano le soluzioni.
  • Per la esercitazione di Giovedì 23 Marzo 2023 fare riferimento agli esercizi specificati nel documento; nel documento si trovano le soluzioni.
  • Per la esercitazione di Giovedì 16 Marzo 2023 fare riferimento agli esercizi specificati nel documento; nel documento si trovano le soluzioni.
  • Per la esercitazione di Giovedì 9 Marzo 2023 fare riferimento agli esercizi specificati nel documento; nel documento si trovano le soluzioni. N.B. Ricaricati file domenica 12/03/2023 perchè c'era un errore nella numerazione degli esercizi che è stato corretto!

Laboratorio A.A. precedenti

MATERIALE A.A. 2021-22

Il laboratorio che verrà utilizzato per le esercitazioni è il laboratorio LINFA (ex aula FA-2F, al secondo piano dell'ala nuova delle aule del Dipartimento di Ingegneria) nella sua forma allargata che comprende l'aula a fianco: chiaramente, gli studenti che staranno nell'aula a fianco dovranno portare il proprio portatile.

Il materiale per le esercitazioni dell'A.A. 2021-22 verrà caricato mano a mano che procederanno le esercitazioni (con la solita password) su Moodle e poi anche qui nel seguito. Per quanto riguarda le possibili soluzioni, queste verranno caricate (sempre mano a mano) qui (in gitHub) a parte per le prime due esercitazione e per alcune soluzioni della terza esercitazione dove saranno fornite direttamente come PDF.

ESERCITAZIONI C

  • Per la esercitazione di Lunedì 30 Maggio 2022 fare riferimento agli esercizi specificati nel documento; le possibili soluzioni sono disponibili a partire dalla pagina
  • Per la esercitazione di Lunedì 23 Maggio 2022 fare riferimento agli esercizi specificati nel documento; le possibili soluzioni sono disponibili a partire dalla pagina per il primo esercizio e daranno disponibili su gitHub per il secondo.
  • Per la esercitazione di Lunedì 16 Maggio 2022 fare riferimento agli esercizi specificati nel documento; le possibili soluzioni sono disponibili a partire dalla pagina.
  • Per la esercitazione di Lunedì 9 Maggio 2022 fare riferimento agli esercizi specificati nel documento; le possibili soluzioni prodotte saranno caricate in gitHub.
  • Per la esercitazione di Lunedì 2 Maggio 2022 fare riferimento agli esercizi specificati nel documento; le possibili soluzioni prodotte saranno caricate in gitHub.
  • Per la esercitazione proposta a casa (nell'annuncio di Giovedì 21 Aprile 2022) fare riferimento agli esercizi specificati nel documento; le possibili soluzioni prodotte saranno caricate in gitHub.

ESERCITAZIONI SHELL

  • Per la esercitazione di Lunedì 4 Aprile 2022 fare riferimento agli esercizi specificati nel documento; nel documento si trovano i riferimenti alle soluzioni che sono caricati nella pagina dei Testi Esami.
  • Per la esercitazione di Lunedì 28 Marzo 2022 fare riferimento agli esercizi specificati nel documento; nel documento si trovano i riferimenti alle soluzioni che sono caricati nella pagina dei Testi Esami. N.B. Purtroppo mi sono resa conto solo il 30/03/2022 che i concetti per risolvere l'ultimo esercizio sono stati forniti solo con la lezione appunto del 30/03/2022!
  • Per la esercitazione proposta a casa (nell'annuncio di Venerdì 25 Marzo 2022) fare riferimento agli esercizi specificati nel documento; le due possibili soluzioni prodotte saranno caricate in gitHub.
  • Per la esercitazione di Lunedì 21 Marzo 2022 fare riferimento agli esercizi specificati nel documento; nel documento si trovano parte delle soluzioni.
  • Per la esercitazione di Lunedì 14 Marzo 2022 fare riferimento agli esercizi specificati nel documento; nel documento si trovano le soluzioni.
  • Per la esercitazione di Lunedì 7 Marzo 2022 fare riferimento agli esercizi specificati nel documento; nel documento si trovano le soluzioni.

MATERIALE A.A. 2020-21

IMPORTANTISSIMO (10/03/2021): Stante il perdurare della nota situazione di emergenza dovuta al COVID-2019, le attività di laboratorio saranno sempre svolte in remoto: molto probabilmente verrà utilizzato ZOOM come strumento che consente di suddividere gli studenti in carie 'stanze' virtuali; verrà chiaramente messa una indicazione specifica su Dolly. IMPORTANTISSIMO (10/03/2020): Stante il perdurare della nota situazione di emergenza dovuta al COVID-2019, si stanno organizzando anche le attività di laboratorio sulla piattaforma Dolly! Si ricorda agli studenti che hanno bisogno di supporto di usare il forum creato allo scopo nella sezione Lezioni con Collaborate della piattaforma Dolly. Il laboratorio che verrà utilizzato per le esercitazioni è il laboratorio LINFA (ex aula FA-2F, al secondo piano dell'ala nuova delle aule del Dipartimento di Ingegneria); per l'A.A. 2018-19 per la prima volta verrà usato il laboratorio nella sua forma allargata che comprende anche l'aula a fianco: chiaramente, gli studenti che staranno nell'aula a fianco dovranno portare il proprio portatile. per l'A.A. 2017-18, sono previsti due turni: I) ore 8-11 a cura del Prof. Nicola Bicocchi e II) dalle 11 alle 14 a cura della Prof.ssa Leonardi.

La video-registrazione della "Guida all'installazione ambiente di lavoro: Ubuntu 16.04 32bit su VirtualBox (a cura di Stefano Allegretti)" si trova su DOLLY2020 alla URL.

La video-registrazione su "Editor di testo: vi, vim, vimtutor" si trova sempre su DOLLY2020 alla URL.

Le due video-registrazioni su "Compilazione/linking di un progetto C (a cura di Stefano Allegretti)" si trovano su DOLLY2020 alla URL

Per il materiale delle esercitazioni dell'A.A. 2020-21, gli esercizi e le soluzioni sono recuperabili qui nel seguito (con la solita password):

ESERCITAZIONI C

  • Per la esercitazione di Venerdì 4 Giugno 2021 fare riferimento agli esercizi specificati nel documento; nel documento si trovano le soluzioni.
  • Per la esercitazione di Venerdì 28 Maggio 2021 fare riferimento agli esercizi specificati nel documento; nel documento si trovano le soluzioni.
  • Per la esercitazione di Venerdì 21 Maggio 2021 fare riferimento agli esercizi specificati nel documento; nel documento si trovano le soluzioni.
  • Per la esercitazione di Venerdì 14 Maggio 2021 fare riferimento agli esercizi specificati nel documento; nel documento si trovano le soluzioni.
  • Per la esercitazione di Venerdì 7 Maggio 2021 fare riferimento agli esercizi specificati nel documento (ricaricato alle 11:40); nel documento si trovano le soluzioni.
  • Per la esercitazione di Venerdì 30 Aprile 2021 fare riferimento agli esercizi specificati nel documento; nel documento si trovano le soluzioni.
  • Per la esercitazione di Venerdì 23 Aprile 2021 fare riferimento agli esercizi specificati nel documento; nel documento si trovano le soluzioni.

ESERCITAZIONI SHELL

  • Per la esercitazione di Venerdì 16 Aprile 2021 fare riferimento agli esercizi specificati nel documento; nel documento si trovano le soluzioni.
  • Per la esercitazione di Venerdì 9 Aprile 2021 fare riferimento agli esercizi specificati nel documento; nel documento si trovano le soluzioni.
  • Per esercitarsi durante le vacanze di Pasqua 2021 fare riferimento agli esercizi specificati nel documento; nel documento si trovano le soluzioni.
  • Per la esercitazione di Venerdì 26 Marzo 2021 fare riferimento agli esercizi specificati nel documento; nel documento si trovano le soluzioni.
  • Per la esercitazione di Venerdì 19 Marzo 2021 fare riferimento agli esercizi specificati nel documento; nel documento si trovano le soluzioni.

MATERIALE A.A. 2019-20

CREAZIONE GERARCHIE DI PROVA (10/04/2020): Grazie ad un vostro collega, Marco Michelini, ai seguenti link sono scaricabili un file principale e un file ricorsivo, oltre ad un file di spiegazioni, per creare delle gerarchie di prova (le versioni che trovate qui sono state da me leggermente modificate rispetto alla versione originale):
- file principale
- file ricorsivo
- spiegazioni

Per il materiale delle esercitazioni dell'A.A. 2019-20, gli esercizi e le soluzioni sono recuperabili qui nel seguito (con la solita password):

ESERCITAZIONI C

  • Per la esercitazione di Lunedì 25 Maggio 2020 fare riferimento agli esercizi specificati nel documento nel documento si trovano le soluzioni.
  • Per la esercitazione di Lunedì 18 Maggio 2020 fare riferimento agli esercizi specificati nel documento nel documento si trovano le soluzioni.
  • Per la esercitazione di Lunedì 11 Maggio 2020 fare riferimento agli esercizi specificati nel documento nel documento si trovano le soluzioni.
  • Per la esercitazione di Lunedì 4 Maggio 2020 fare riferimento agli esercizi specificati nel documento nel documento si trovano le soluzioni.
  • Per la esercitazione di Lunedì 27 Aprile 2020 fare riferimento agli esercizi specificati nel documento nel documento si trovano le soluzioni.
  • Per la esercitazione di Lunedì 20 Aprile 2020 fare riferimento agli esercizi specificati nel documento nel documento si trovano le soluzioni.

ESERCITAZIONI SHELL

  • Per la esercitazione di Lunedì 6 Aprile 2020 fare riferimento agli esercizi specificati nel documento nel documento si trovano le soluzioni.
  • Per la esercitazione di Lunedì 30 Marzo 2020 fare riferimento agli esercizi specificati nel documento nel documento si trovano le soluzioni.
  • Per la esercitazione di Lunedì 23 Marzo 2020 fare riferimento agli esercizi specificati nel documento nel documento si trovano le soluzioni.
  • Per la esercitazione di Lunedì 16 Marzo 2020 fare riferimento agli esercizi specificati nel documento nel documento si trovano le soluzioni.
  • Per la esercitazione di Lunedì 9 Marzo 2020 fare riferimento agli esercizi specificati nel documento: nel documento si trovano le soluzioni.



OSSERVAZIONI:

  1. Nel caso si producano file Windows che si vogliono poi usare in UNIX si puo' usare il comando dos2unix se disponibile, altrimenti il comando `tr -d \\r < nomefiledos > nomefileunix`.
  2. Nel caso si abbiano dei problemi di ordinamento con il comando sort o dei problemi con l'espansione tipo [a-z]* utilizzare i seguenti due comandi: LC_ALL=C; export LC_ALL o anche solo: LC_COLLATE=C; export LC_COLLATE

Elaborati svolti

Qui nel seguito si trova un elenco (molto) parziale degli elaborati realizzati negli ultimi anni presso il Dipartimento di Ingegneria "Enzo Ferrari" (DIEF), relativi all'insegnamento di Sistemi Operativi e Lab. del Corso di Laurea di Ingegneria Informatica (D.M. 270/04): gli elaborati sono elencati in ordine cronologico inverso. L'elenco di tutti gli elaborati presentati dai laureandi triennali di Ingegneria Informatica si trova qui.

ELABORATI DI LAUREA DISCUSSI NELL'A.A. 2022-2023

 * Imad Ayoub (prova finale del 9/10/2023): 
   "SCHEDULING IN LINUX: DALLE ORIGINI AL COMPLETELY FAIR SCHEDULER"
   Elaborato Completo (PDF).

ELABORATI DI LAUREA DISCUSSI NELL'A.A. 2021-2022

 * Pallante Laura (prova finale del 6/10/2022): 
   "SHELL DEI SISTEMI UNIX"
   Elaborato Completo (PDF).

ELABORATI DI LAUREA DISCUSSI NELL'A.A. 2018-2019

 * Bruno Paolo (prova finale del 16/10/2019): 
   "IL PROCESSO DI INIT E LA SUA EVOLUZIONE NEI SISTEMI OPERATIVI GNU/LINUX"
   Elaborato Completo (PDF).

ELABORATI DI LAUREA DISCUSSI NELL'A.A. 2012-2013

 * Cristallo Alberto (prova finale del 10/07/2013): 
   "LINUX: ANALISI DELL'EVOLUZIONE DELLO SCHEDULER"
   Elaborato Completo (PDF).

ELABORATI DI LAUREA DISCUSSI NELL'A.A. 2011-2012

 * Sentimenti Marco (prova finale del 29/10/2012): 
   "UNIX FUNCTION HELPER: SUPPORTO ALL'APPRENDIMENTO DELLE PRIMITIVE UNIX"
   Elaborato Completo (PDF) Il codice cui fa riferimento tale elaborato è scaricabile qui (file JAR).

Strumenti Software

Si indicano di seguito gli strumenti software che si utilizzano durante il corso e si indica dove è possibile reperirli.

  • La Heirloom Bourne Shell cioè una versione abbastanza simile alla Bourne Shell può essere scaricata dal sito. Sempre della Heirloom si trova il manuale per la Bourne Shell: qui.
  • Varie cose sull'editor vi di UNIX. Questo link porta ad una pagina che contiene varie cose sull'editor vi di UNIX.
  • Client SSH per Windows. Per collegarsi ad un server SSH da Windows, è possibile usare il programma putty, scaricando il file putty.exe, oppure installando il programma SSHSecureShellClient-3.2.2.exe. È necessario impostare come protocollo SSH e indicare un host a cui collegarsi.
  • Ambiente UNIX per Windows. Il progetto Cygwin ha come obiettivo la realizzazione di un ambiente UNIX che esegua sotto Windows, traducendo le system call di UNIX in chiamate alle API di Windows. Tramite diversi programmi di setup è possibile scaricare e installare i programmi Cygwin.
  • Storia di UNIX. Se interessati si può scaricare un diagramma (varie pagine in formato A4-PDF) che mostra la storia del Sistema Operativo Unix (per dettagli si veda la pagina).
  • Storia di Windows. Se interessati si può scaricare un diagramma (varie pagine in formato a A4-PDF) che mostra la storia del Sistema Operativo Windows (per dettagli si veda la pagina).
  • Storia dei Linguaggi di programmazione. Se interessati si può scaricare un diagramma (varie pagine in formato a A4-PDF) che mostra la storia dei Linguaggi di Programmazione (per dettagli si veda la pagina).
  • Tabella codici ASCII. In questa pagina si trova la tabella dei codici ASCII.
  • Generazione codici ASCII speciali. In questa pagina si trova come generare i simboli ASCII speciali.
  • Estensioni dei file. In questa pagina si trova una lista delle estensioni più comuni dei file che indicano il formato o l'uso del file.